Hallo liebe Com,
Als Basis für Trinity Tutorials die ich in Zukunft machen möchte fertige ich hier ein Grundlegendes Tutorial an, welches das Erstellen eines NPC's beinhaltet.
Wie erstellen wir einen NPC und wo ?
Mit unserem Datenbank-Programm (zB. Naivcat; HeidiSQL) öffnen wir die Datenbank und öffnen World, wir suchen nach Creature_Template, dort sind die NPC's gespeichert und da müssen wir sie auch einfügen. Und das geht wie jetzt beschrieben:
-Wir erstellen eine neue Row/Zeile (dafür klicken wir auf den Knopf mit dem Plus oder drücken die "Einfg"-Taste auf der Windows Tastatur).
Was bedeuten die Werte in der Datenbank ??
Wichtige Sachen die wir einfügen müssen/sollten
Unwichtige Sachen
-Den ersten Wert den unser NPC erhalten wird ist die EntryID, welche einzigartig sein muss (Die EntryID dient zB. zum spawnen des NPC's im Spiel, deswegen darf sie bei den Kreaturen nur einmal vorkommen, hohe ID's wie zb. 80000;80001 etc. sind nicht vergeben, wir nehmen am besten solche)
-Difficulty_Entry1-3; KillCredit1-2 intressieren uns vorerst nicht (Difficulty_Entry wird für die Monster in Heroischer Fassung/25 Spieler Fassung benötigt; KillCredit braucht man für Quests wenn mehrere Monster gezählt werden sollen)
-Der nächste Wert der uns interessiert ist der Modelid1 Wert, er gibt das Aussehen des Monsters an, 15369 ist als Beispiel ein klener süßer Murloc. Die ModelId lässt sich im spiel via .npc info herrausfinden. ModelId1 sollte einen Wert enthalten da der NPC sonst unsichtabr (aber anklickbar) ist. Die anderen ModelId's lassen das Monster, wenn sie vorhanden sind, in dem Aussehen, welches dem Wert zugeteilt ist, gelegentlich spawnen.
Beispiel zum Verständnis:
MobXY hat modelid1: 3345 und modlid2: (leer)
MobXY spawnt immer mit Aussehen 3345
Hat MobXY jetzt jedoch einen Wert bei modelid2, dann spawnt MobXY zufällig mit dem Wert von modelid1 ODER modelid2
-Dann kommt auch schon der Wert name, das versteht sich von selbst, wenn wir hier "Testmob" eintragen, wird der NPC im Spiel "Testmob" heißen.
-Der Wert subname gibt den Namen unter dem eigentlichen an (also dort wo bei Spielern der Gildenname steht)
-Iconname ist unwichtig
-gossip_menu_id ist nur bedingt wichtig. Das gossip_menu ist das Menü, welches beim Rechtsklicken erscheint(also der Text der im Fenster kommt). Ist kein Gossip Menü vorhanden, öffnet sich kein Fenster beim Rechtsklick
-minlevel gibt das Level an mit dem der NPC mindestens spawnt
-maxlevel gibt das Level an mit dem der NPC maximal spawnt
-exp ist ein Wert den man nicht unbedingt verändern muss, er regelt den HP Wert des NPC, wie genau er das tut ist irrelevant
-faction_A und faction_H diese beiden Werte geben an welche fraktion der NPC für faction_A (Allianz) und faction_H(Horde) hat. (Faction 35 ist Argentumkreuzzug, soll ein NPC "grün" für Allianz und Horde sein schreiben wir 35 bei faction_A und faction_H)
-npcflag ist ein wichtiger Wert! Wollen wir dass unser NPC ein Händler wird müssen wir eine bestimmte Zahl eingeben, wenn der NPC Sachen verkaufen und reparieren kann/soll MUSS er die npcflag 4096 haben
-speed_walk ist die laufgeschwindigkeit, standart: 1,14286
-scale gibt die größe an, scale 1 ist die normale größe, scale 3 ist die dreifache größe
-mindmg ist der minimal verursachte Nahkampfschaden
-maxdmg ist der maximal verursachte Nahkampfschaden
-dmschool gibt an von welcher Art der Schaden ist (Heilig, Frost etc)
-attackpower deffiniert die werte mindmg und maxdmg genauer (einfach ausprobieren wie die 3 Werte den gewünschten Schaden austeilen)
-dmg_multiplier Faktor von Mind und maxdmg; Beispiel: mindmg 5 maxdmg 10 und dmg_multiplier 10, dann trifft das monster zwischen 50 und 100
-baseattacktime gibt an in welchen Abständen (in Millisekunden) das Monster zuschlägt. (Wert 3500 lässt das Monster alle 3,5 Sekunden angreifen)
-rangeattacktime siehe oben (gilt für höhere Reichweiten als Nahkampf)
unit_class der wert ist unnötiger als alles andere
-unit_flags ist ein Wert der den NPC zum Beispiel gegen Stuns immun macht
-family gibt die Familie des NPC's an (Katze, Spinne, Vogel etc.)[
-dynamicflags hat mit der Namensdarstellung zu tun
-Trainer_type/spell/class/race deffinieren Lehrer genauer
-minrangedmg, maxrangedmg und rangedattackpower sind wie die Werte mindmg, maxdmg und attackpower, nur geben sie die Fernkampfdaten an
-type ist die "Rasse" des NPC's Beispiel: Humanoid, Drachkin
-type_flags gibt an ob der NPC zähmbar ist, kürschnerbar etc.
-lootid gibt die Beute an die das Monster droppen soll, zu finden ist der loot unter creature_loot_template
-pickpocketloot gibt die Beute an die beim Taschendiebstahl erhalten wird (also müssen wir dort die ID der Beute reinschreiben)
-skinloot dasselbe wie oben dran bloß das es die Beute beim Kürschnern ist
-resistance 1-6 gibt die Resistenz gegen den Resistenz 1-6 an (Wenn Resistenz 1 Feuer ist und in der Spalte 60 steht hat der NPC 60 Feuerwiderstand)
-spell1-8 ist die ID eines Spells die der NPC casten kann
Petspelldataid und VehicleID sind irrelevant
-mingold gibt an wieviel Kupfer mindestens droppt
-maxgold gibt an wieviel Kupfer maximal droppt
Die restlichen Werte sind unwichtig für einen Standartmäßigen NPC
Alle grüngeschriebenen Werte sollten/müssen eingefügt werden, schwarze Sachen sind optional.
Hier nochmal alle Werte die ihr berücksichtigen müsst wenn ihr euch einen NPC erstellen wollt(Also die Werte die ihr MINDESTENS braucht um den NPC ordentlich zu spawnen)
entryID
modelid1
name
minlevel
maxlevel
faction_A
faction_H
mindmg
maxdmg
attackpower
dmg_multiplier
baseattacktime
mingold
maxgold
Wer sich die Werte und ihre Bedeutungen im originalen genauer anschauen möchte, der besucht bitte dort steht alles beschrieben.