Pitufo759

Miembro
  • Contenido

    53
  • Registrado

  • Última Visita

2 Seguidores

Sobre Pitufo759

Firestorm User

  • Nombre Wuan
  • Clase Monje
  • Nivel 100
  • Reino Gul'dan

Visitantes recientes en el perfil

1114 visitas al perfil
  1. Hola, - Enlace Bugtracker - Scalding Whelp (2725) - Añadir Loot: Scalding Wheko Corpse (62390) INSERT INTO `creature_loot_template` (`Entry`,`Item`,`Reference`,`Chance`,`QuestRequired`,`LootMode`,`GroupId`,`MinCount`,`MaxCount`) VALUES ('2725','62390','0','16','1','1','1','1','1'); Un Saludo
  2. Cierto, si mal no me equivoco: npcflag: Representa el funcionamiento que va a tener dicho NPC. A continuación se mostrar los diferentes tipos. Gossip: Si el NPC tiene más opciones. 268435456 Tranfoguration: NPC transfigurador Un Saludo
  3. TEORÍA Un NPC puede ser muchas cosas, es decir, puede ser un reparador, un instructor de clase o simplemente un NPC estático. Para poder realizar esto sera necesario usar una única tabla. creature_template: entry: ID del NPC que le queremos asignar una función. npcflag: Representa el funcionamiento que va a tener dicho NPC. A continuación se mostrar los diferentes tipos. 1 Gossip: Si el NPC tiene más opciones. 2 Quest Giver: Si el NPC empieza o termina alguna misión. 16 Trainer: El NPC es un entrenador 32 Class Trainer: El NPC es un entrenador de clase. 64 Profesion Trainer: El NPC es un entrenador de profesión. 128 Vendor: El NPC es un vendedor. 4096 Repairer: El NPC es un reparador. 8192 Flight Master: El NPC es un maestro de vuelo. 16384 Spitirt Healer: El NPC es el ángel que resucita cuando mueres. 65536 Innkeeper: El NPC es un tabernero. 131072 Banker: El NPC es un banquero. 524288 Tabard Designer: El NPC es un diseñador de Tabardos (Hermandad). 2097152 Auctioneer: El NPC es un subastador. 4194304 Stable Master: El NPC es un maestro de establo. 8388608 Guid Banker: El NPC es un banquero de hermandad. Así pues, al contrario que en otras reparaciones, no vamos a borrar (DELETE) ni a insertar (INSERT INTO), si no que vamos a sobrescribir (UPDATE). Mediante esta opción podemos cambiar de una forma rápida una columna de un registro, sin interferir en las demás columnas. !OJO¡ Siempre que vallamos a usar la sentencia UPDATE, debemos asegurarnos que la clave principal (entry) sea la correcta. La sentencia SQL a usar sera: UPDATE `tabla` SET `columna`=XXXXX WHERE `entry`=XXXXX; En el caso que nuestro NPC realice diferentes funciones, la sentencia SQL variaría un poco. En este caso seria: UPDATE `tabla` SET `columna`='columna'|XXX|XXX|XXX WHERE `entry`=XXXXX; EJEMPLO PRÁCTICO Vamos a realizar un par de ejemplos prácticos. Tenemos al NPC 84861 Dr. Hadley Ricard, quien es un NPC con el funcionamiento de un Quest Giver, pero no tiene esa opción y no podemos hablar con el. Para ello, vamos a ejecutar la siguiente sentencia atendiendo a su ID, y al npcflag: Quest Giver, que le corresponde el 2. Una vez tenemos los datos usamos la sentencia anterior mostrada y sustituimos. UPDATE `creature_template` SET `npcflag`=2 WHERE `entry`=84861; Ya tenemos actualizado el npcflag del NPC, pero ahora el NPC 88228 Sargento Faucefasta es un NPC que también un Quest Giver, pero también hace función de vendedor. Para ello la sentencia atendiendo de la ID y las npcflag: Quest Giver (2) y Vendor (128) UPDATE `creature_template` SET `npcflag`=`npcflag`|2|128 WHERE `entry`=84861; Ya tendríamos el NPC actualizado, ahora ya sera un vendedor y misionero. Un Saludo
  4. Ok, lo postee, por que el otro día fue a matarlo por el anillo que suelta y no soltó nada de loot ni el Espíritu Primigenio que tiene un 99% de salir, quizás lo han corregido ya y lo implementan en el próximo update. Cierto, se me paso poner la creature_id correcta a la hora de insertar valores. Correción: DELETE FROM `creature_onkill_reputation` WHERE `creature_id`=86213; INSERT INTO `creature_onkill_reputation` (`creature_id`, `RewOnKillRepFaction1`, `MaxStanding1`, `IsTeamAward1`, `RewOnKillRepValue1`, `TeamDependent`) VALUES (86213, 1731, 7, 0, 50, 0); Un Saludo
  5. Las misiones en si, son bastante complejas a la hora de poder realizarlas, ya que influyen en muchas tablas. En este caso, únicamente se ha tratado el "colocar" una misión en un NPC. npcflag y unit_flag son columnas de la tabla creature_template. Aun que cierto es que influyen en que una misión no se puede realizar, pero lo hacen de una manera indirecta, ya que si el NPC que nos tiene que dar la misión es un questgiver y en la BD esta puesto como si fuera un Gossip, impediría poder realizara correctamente. En ese caso seria una corrección del NPC en cuestión. No obstante en ocasiones en diferentes misiones que no se pueden completar por que no se consiguen por X o por Y los objetivos, hay que tocar la tabla quest_template, pero esta ya es mas complicada, debido a que tiene 124 columnas. Aun que cada problema de misiones se abarcan de diferente manera dependiendo que fallo sea. En resumen una misión puede tener un fallo por: No tiene anexada la mision al NPC El NPC no tiene el npcflag o faction que suele ser lo mas común. Fallo dentro de la misión. (Id mal relacionadas de los objetivos o falto de ellos) Un saludo
  6. TEORÍA Para implementar en un NPC una misión que no esta usaremos 2 diferentes tablas. creature_queststarter: En esta tabla se guarda que misión empieza un NPC. Sus campos: id: Corresponde al NPC que da la misión. quest: Corresponde a la ID de la misión. creature_questender: En esta tabla se guarda que misión termina un NPC. Sus campos: id: Corresponde al NPC que da la misión. quest: Corresponde a la ID de la misión. Una vez que sabemos esto podemos empezar con un simple ejemplo. Como sabemos antes de hacer cualquier acción de insertar algo a la base de datos, primeros debemos asegurarnos que no existe nada con los identificadores que vamos a trabajar ( ID y Quest), para ello primero, ejecutamos una sentencia de DELETE. DELETE FROM `tabla` WHERE `id`=XXXXX AND `quest`=XXXXX; Por lo tanto, realizamos un borrado de un registro de la tabla "tabla" cuando ID y quest concuerden con el registro. En el caso de que no exista un registro con los datos introducidos, la sentencia SQL no realizara "nada". Ahora realizaremos una sentencia de INSERT INTO, para insertar un registro en una tabla especifica. INSERT INTO `tabla`(`id`, `quest`) VALUES (XXXXX, XXXXX); Por lo tanto, hemos especificado una tabla que contiene, esas 2 columnas, y vamos a insertar unos valores, que han de estar en el mismo orden que las columnas. Es decir el 1º valor corresponderá a la ID del NPC, y el segundo valor a la ID de la misión. EJEMPLO PRÁCTICO Vamos a realizar un ejemplo practico. Para empezar tenemos esta misión El Buen Doctor(35146) que la empieza el NPC Marybelle Walsh(84632) y termina en el NPC Dr. Hadley Ricard(84861) 1º Establecemos el comienzo de la misión Y seguidamente la finalización de la misión: DELETE FROM `creature_queststarter`WHERE `id`=84632 AND `quest`=35146; INSERT INTO `creature_queststarter`(`id`, `quest`) VALUES (84632, 35146); DELETE FROM `creature_questender`WHERE `id`=84861 AND `quest`=35146; INSERT INTO `creature_questender`(`id`, `quest`) VALUES (84861, 35146); Una vez tengamos esto, ya esta implementado la misión en los NPC a los que corresponde. Un Saludo
  7. Hola, Archimago Khadgar (83823) Archimago Khadgar (84702) Cordana Cantovil (83929) Agregar a estos 3 NPC´s la serie de misiones legendarias asta el Acto 2. Misiones Agujas del Traidor (36157) La tarea de Khadgar (35989) Núcleo de Llamas (35990) Núcleo de Hierro (35991) Núcleo de Vida (35992) A por Teron'Gor (35993) El poder secreto de Draenor (36158) Los Ojos del Archimago (35994) Dragón Fugitivo (36000) La Historia del Dragón (36206) Bronce Deslustrado (35995) Poder Liberado (36004) La Caída del Imperio (35997) El Legado de los Reyes Hechiceros (35998) El Juego de Visión (36005) Cazador Cazado (36006) DELETE FROM `creature_queststarter`WHERE `id`=83823 AND `quest`=36157; INSERT INTO `creature_queststarter`(`id`, `quest`) VALUES (83823, 36157); DELETE FROM `creature_questender`WHERE `id`=83823 AND `quest`=36157; INSERT INTO `creature_questender`(`id`, `quest`) VALUES (83823, 36157); DELETE FROM `creature_queststarter`WHERE `id`=83823 AND `quest`=35989; INSERT INTO `creature_queststarter`(`id`, `quest`) VALUES (83823, 35989); DELETE FROM `creature_questender`WHERE `id`=83823 AND `quest`=35989; INSERT INTO `creature_questender`(`id`, `quest`) VALUES (83823, 35989); DELETE FROM `creature_queststarter`WHERE `id`=83823 AND `quest`=35990; INSERT INTO `creature_queststarter`(`id`, `quest`) VALUES (83823, 35990); DELETE FROM `creature_questender`WHERE `id`=83823 AND `quest`=35990; INSERT INTO `creature_questender`(`id`, `quest`) VALUES (83823, 35990); DELETE FROM `creature_queststarter`WHERE `id`=83823 AND `quest`=35991; INSERT INTO `creature_queststarter`(`id`, `quest`) VALUES (83823, 35991); DELETE FROM `creature_questender`WHERE `id`=83823 AND `quest`=35991; INSERT INTO `creature_questender`(`id`, `quest`) VALUES (83823, 35991); DELETE FROM `creature_queststarter`WHERE `id`=83823 AND `quest`=35992; INSERT INTO `creature_queststarter`(`id`, `quest`) VALUES (83823, 35992); DELETE FROM `creature_questender`WHERE `id`=83823 AND `quest`=35992; INSERT INTO `creature_questender`(`id`, `quest`) VALUES (83823, 35992); DELETE FROM `creature_queststarter`WHERE `id`=83823 AND `quest`=35993; INSERT INTO `creature_queststarter`(`id`, `quest`) VALUES (83823, 35993); DELETE FROM `creature_questender`WHERE `id`=83823 AND `quest`=35993; INSERT INTO `creature_questender`(`id`, `quest`) VALUES (83823, 35993); DELETE FROM `creature_queststarter`WHERE `id`=83823 AND `quest`=36158; INSERT INTO `creature_queststarter`(`id`, `quest`) VALUES (83823, 36158); DELETE FROM `creature_questender`WHERE `id`=83823 AND `quest`=36158; INSERT INTO `creature_questender`(`id`, `quest`) VALUES (83823, 36158); DELETE FROM `creature_queststarter`WHERE `id`=83823 AND `quest`=35994; INSERT INTO `creature_queststarter`(`id`, `quest`) VALUES (83823, 35994); DELETE FROM `creature_questender`WHERE `id`=83823 AND `quest`=35994; INSERT INTO `creature_questender`(`id`, `quest`) VALUES (83823, 35994); DELETE FROM `creature_queststarter`WHERE `id`=83823 AND `quest`=36000; INSERT INTO `creature_queststarter`(`id`, `quest`) VALUES (83823, 36000); DELETE FROM `creature_questender`WHERE `id`=84702 AND `quest`=36000; INSERT INTO `creature_questender`(`id`, `quest`) VALUES (84702, 36000); DELETE FROM `creature_queststarter`WHERE `id`=84702 AND `quest`=36206; INSERT INTO `creature_queststarter`(`id`, `quest`) VALUES (84702, 36206); DELETE FROM `creature_questender`WHERE `id`=84702 AND `quest`=36206; INSERT INTO `creature_questender`(`id`, `quest`) VALUES (84702, 36206); DELETE FROM `creature_queststarter`WHERE `id`=84702 AND `quest`=35995; INSERT INTO `creature_queststarter`(`id`, `quest`) VALUES (84702, 35995); DELETE FROM `creature_questender`WHERE `id`=84702 AND `quest`=35995; INSERT INTO `creature_questender`(`id`, `quest`) VALUES (84702, 35995); DELETE FROM `creature_queststarter`WHERE `id`=84702 AND `quest`=36004; INSERT INTO `creature_queststarter`(`id`, `quest`) VALUES (84702, 36004); DELETE FROM `creature_questender`WHERE `id`=83823 AND `quest`=36004; INSERT INTO `creature_questender`(`id`, `quest`) VALUES (83823, 36004); DELETE FROM `creature_queststarter`WHERE `id`=83823 AND `quest`=35997; INSERT INTO `creature_queststarter`(`id`, `quest`) VALUES (83823, 35997); DELETE FROM `creature_questender`WHERE `id`=83823 AND `quest`=35997; INSERT INTO `creature_questender`(`id`, `quest`) VALUES (83823, 35997); DELETE FROM `creature_queststarter`WHERE `id`=83823 AND `quest`=35998; INSERT INTO `creature_queststarter`(`id`, `quest`) VALUES (83823, 35998); DELETE FROM `creature_questender`WHERE `id`=83823 AND `quest`=35998; INSERT INTO `creature_questender`(`id`, `quest`) VALUES (83823, 35998); DELETE FROM `creature_queststarter`WHERE `id`=83823 AND `quest`=35998; INSERT INTO `creature_queststarter`(`id`, `quest`) VALUES (83823, 35998); DELETE FROM `creature_questender`WHERE `id`=83929 AND `quest`=35998; INSERT INTO `creature_questender`(`id`, `quest`) VALUES (83929, 35998); DELETE FROM `creature_queststarter`WHERE `id`=83929 AND `quest`=36006; INSERT INTO `creature_queststarter`(`id`, `quest`) VALUES (83929, 36006); DELETE FROM `creature_questender`WHERE `id`=83929 AND `quest`=36006; INSERT INTO `creature_questender`(`id`, `quest`) VALUES (83929, 36006); Un Saludo
  8. Hola Lroxirex, Para cambiar el nombre a un NPC, no se cambia de ahí, ese "name" esta reservado para el nombre original del servidor. Para cambiarlo al Español se ha de usar esta sentencia: UPDATE `locales_creature` SET `name_loc7`='Dexyl Filoletal' WHERE `entry`=79188; Un Saludo
  9. Hola, Enlace BugTracker Aqualir (86213) Agregar Loot al NPC aqualir y añadida al matarlo que de reputación. UPDATE `creature_template`SET `lootid`=86213 WHERE `entry`=86213; DELETE FROM `creature_loot_template` WHERE `entry`=86213; INSERT INTO `creature_loot_template` (`entry`,`item`,`chanceorquestchance`,`lootmode`,`groupid`,`mincountorref`,`maxcount`,`itembonuses`) VALUES (86213,120945,99,1,0,1,1,''), (86213,119387,41,1,0,1,1,''), (86213,119368,0.06,1,0,1,1,''); DELETE FROM `creature_onkill_reputation` WHERE `creature_id`=86213; INSERT INTO `creature_onkill_reputation` (`creature_id`, `RewOnKillRepFaction1`, `MaxStanding1`, `IsTeamAward1`, `RewOnKillRepValue1`, `TeamDependent`) VALUES (70069, 1731, 7, 0, 50, 0); Un Saludo
  10. Hola, Enlace BugTracker Ba'Ruun (82326) Agregar Loot al NPC Ba´ruun UPDATE `creature_template`SET `lootid`=82326 WHERE `entry`=82326; DELETE FROM `creature_loot_template` WHERE `entry`=82326; INSERT INTO `creature_loot_template` (`entry`,`item`,`chanceorquestchance`,`lootmode`,`groupid`,`mincountorref`,`maxcount`,`itembonuses`) VALUES (82326,113540,98,1,0,1,1,''), (82326,106401,0.11,1,0,1,1,''), (82326,116699,0.09,1,0,1,1,''), (82326,106471,0.05,1,0,1,1,''), (82326,106456,0.03,1,0,1,1,''), (82326,116498,0.03,1,0,1,1,''), (82326,118802,0.02,1,0,1,1,''), (82326,116701,0.02,1,0,1,1,''), (82326,106399,0.02,1,0,1,1,''), (82326,116504,0.02,1,0,1,1,''), (82326,106436,0.02,1,0,1,1,''), (82326,106403,0.02,1,0,1,1,''), (82326,116500,0.02,1,0,1,1,''), (82326,116483,0.02,1,0,1,1,''), (82326,116694,0.02,1,0,1,1,''), (82326,116495,0.02,1,0,1,1,''), (82326,116505,0.02,1,0,1,1,''), (82326,116506,0.02,1,0,1,1,''), (82326,106418,0.02,1,0,1,1,''), (82326,106435,0.02,1,0,1,1,''), (82326,106402,0.02,1,0,1,1,''), (82326,116458,0.02,1,0,1,1,''), (82326,106446,0.02,1,0,1,1,''), (82326,116467,0.02,1,0,1,1,''), (82326,116482,0.02,1,0,1,1,''), (82326,116464,0.02,1,0,1,1,''), (82326,106406,0.02,1,0,1,1,''), (82326,116700,0.02,1,0,1,1,''), (82326,106445,0.02,1,0,1,1,''), (82326,116490,0.02,1,0,1,1,''); Un Saludo
  11. Hola, Enlace BugTracker Floristula (84890) Cambio de Nombre a Español de "Chancroflor" a "Florístula". (Que no se de donde se han sacado el nombre) y añadirle loot. UPDATE `locales_creature` SET `name_loc7`='Vindicador Errante' WHERE `entry`=84890; UPDATE `creature_template`SET `lootid`=84890 WHERE `entry`=84890; DELETE FROM `creature_loot_template` WHERE `entry`=84890; INSERT INTO `creature_loot_template` (`entry`,`item`,`chanceorquestchance`,`lootmode`,`groupid`,`mincountorref`,`maxcount`,`itembonuses`) VALUES (84890,119178,100,1,0,1,1,''); Un Saludo
  12. Hola, Enlace al BugTracker Vinculador Errante (77776) Cambio de Nombre a Español de "Vindicador Deambulante" a "Vindicador Errante" UPDATE `locales_creature` SET `name_loc7`='Vindicador Errante' WHERE `entry`=77776; Un Saludo
  13. TALADOR: Shirzir: Si esta Disponible y Si da Loot
  14. TALADOR: Avatar de Socrethar: Si da Loot Estratega Ankor : Si da Loot