Ich möchte euch zeigen, wie ihr über die Datenbank in TrinityCore einen NPC erstellen könnt.
Ich werde eine ganze Tutorialreihe schreiben, um einen akzeptablen Server einzurichten. Darunter verstehe ich NPCs, Quests, Items und Event Erstellung.
Bei Tutorial wünschen bitte PN!
Ansonsten: wer Hilfe braucht, oder Fragen hat, auf Skype adden: Nekatus
So. Nun zur Erstellung.
-
Schritt 1: Verbindung
Starte Navicat(oder ein anderes beliebiges Datenbankprogramm).
Verbinde dich mit deinem Server.
Öffne World -> Creature_Template
Nun siehen wir viele Spalten, Zeilen und Zellen. Lass dich davon nicht abschrecken. Es ist einfacher als es aussieht.
Schritt 2: NPC Erstellung
Als erstes erstellen wir einen neuen Eintrag. Dazu klicke unten links auf das +
Nun erscheint eine leere Spalte. Das ist die Spalte, die unserem NPC zugewiesen sein wird.
Die Funktionen, die den einzelnen Spalten zugewiesen wird, sehen wir oben. Z.b steht über der ersten Spalte unseres NPCs 'Entry'
Jetzt hör ich auf zu reden und fange an.
Zu den Spalten:
entry = da schreiben wir die ID rein, mit der wir unseren NPC nachher Ingame spawnen wollen. Benutzt eine ID die noch nicht verwendet wurde!! falls sie schon verwendet wurde, wird dies angezeigt.
difficulty_entry_1 - 3, sowie KillCredit könnt ihr auslassen. Diese Spalten sind für einen Standart NPC nicht wichtig.
modelid1 - 4 = da schreiben wir die DisplayID rein. D.h wie unser NPC hinterher aussieht. wenn ihr in modelid1 - 4 verschiedene IDs eintragt, variieren die IDs, d.h der NPC spawnt mit zufälliger DisplayID.
name = spricht für sich
subname = der "untername", z.b 'Händler' oder 'Wache'
Iconname = Das Maussymbol, wenn wir mit der Maus über den npc halten.
Code:
speak = sprechblase attack = schwert
gossip_menu_id = die ID des Textes, wenn wir den NPC ansprechen. Wird im Update genauer erklärt werden.
minlevel = mindest lvl des npcs
maxlevel = maximal lvl des npcs
exp = die Erfahrung die wir beim kill erhalten
faction_A = wie sich der npc der Allianz gegenüber verhalten soll
Code:
14 = Feindlich 35 = Freundlich
npcflag = die Art bzw Funktion des npcs
Code:
1 Standart 2 Questgeber 16 Lehrer 128 Verkäufer 4096 Reparierer(sollte mit 128 kombiniert werden) 8192 Flugmeister 1634 Lehrer für Berufe 32768 Geisterheiler 131072 Bankier 1048576 Kampfmeister(PVP) 2097152 Auktionator 41844304 Stallmeister 8388608 Gildenbank ihr koennt die IDs auch addieren, um einem npc mehrere Funktionen zuzuweisen.
speed_run = wie schnell der npc RENNT (standart ist 1)
scale = die Grösse des npcs (standart ist 1)
rank = ob der npc elite, boss etc ist
Code:
0 normal 1 elite 2 rare elite 3 boss 4 rare
maxdmg = maximal Schaden den der npc machen soll
dmgschool = Die Art des Schadens
Code:
0 = normal 1 = heilig 2 = feuer 3 = natur 4 = frost 5 = schatten 6 = arkan
dmg_multiplier = der DMG Multiplikator des npcs
baseattacktime = die Angriffsgeschwindigkeit in MILLIsekunden(3600 = 3,6sek)
rangeattacktime = das gleiche für Fernkampf
unit_class = Klasse des npc
Code:
- 1 Krieger (npc hat nur Leben) - 2 Paladin (npc hat Leben und Mana. Aber mehr Leben als der Magier - 4 Schurke (npc hat nur Leben) - 8 Magier (npc hat Leben und Mana. Aber mehr Mana als der Paladin
dynamicflags = ist mir unbekannt
family = Die "Familie" des npc. Man kann es auch als Unterklasse sehen.
Code:
1 Wolf 2 Cat 3 Spider 4 Bear 5 Boar 6 Crocolisk 7 Carrion Bird 8 Crab 9 Gorilla 11 Raptor 12 Tallstrider 15 Felhunter 16 Voidwalker 17 Succubus 19 Doomguard 20 Scorpid 21 Turtle 23 Imp 24 Bat 25 Hyena 26 Owl 27 Wind serpent 28 Remote Control 29 Felguard 30 Dragonhawk 31 Ravager 32 Warp Stalker 33 Sporebat 34 Nether Ray 35 Serpent 37 Moth 38 Chimaera 39 Devilsaur 40 Ghoul 41 Silithid 42 Worm 43 Rhino 44 Wasp 45 Core Hound 46 Spirit Beast
Code:
0 = Der Lehrer ist ein Klassenlehrer. Dazu müsst ihr in die Spalte 'Trainer_class' die Klassen ID eintragen. 1 = Der Lehrer bringt uns Reiten bei, wenn wir eine bestimmte Rasse spielen. Die Rassen ID müsst ihr in 'trainer_race' eintragen. 2 = Der Lehrer bringt uns Berufe bei, wenn wir einen bestimmten Zauber bzw Beruf erlernt haben. Die Zauber bzw Berufs ID müsst ihr in 'Trainer_spell' eintragen. 3 = Der Lehrer ist ein Klassenlehrer. Das selbe wie bei 0. Wo der Unterschied liegt, weiss ich nicht.
trainer_spell = ID (nur wenn ihr einen Lehrer erstellt)
trainer_class = ID (nur wenn ihr einen Lehrer erstellt)
- KlassenIDs:
Code:
1 Krieger 2 Paladin 3 Jaeger 4 Schurke 5 Priester 6 Todesritter 7 Schamane 8 Magier 9 Hexenmeister 11 Druide
- RassenIDs:
Code:
1 Mensch 2 Ork 3 Zwerg 4 Nachtelf 5 Untoter 6 Tauren 7 Gnom 8 Troll 10 Blutelf 11 Draenei
maxrangedmg = maximal Fernkampfschaden
rangeattackpower = Fernkampfangriffskraft
type = Der Typ des npc
Code:
0None 1Beast 2Dragonkin 3Demon 4Elemental 5Giant 6Undead 7Humanoid 8Critter 9Mechanical 10Not specified 11Totem 12Non-Combat Pet 13Gas Cloud
lootid = die LootID aus 'creature_loot_template'
pickpocketloot = ist mir unbekannt
skinloot = ist mir unbekannt
resistance 1 = Heilig
resistance 2 = Feuer
resistance 3 = Natur
resistance 4 = Frost
resistance 5 = Schatten
resistance 6 = Arkan
spell1-8 = Die Zauber die man benutzen kann, wenn der NPC ein Fahrzeug ist.
PetSpellDataID = Die Zauber die angezeigt werden, wenn der npc ein Pet ist.
VehicleID = Ist mir unbekannt.
mingold = Das Gold dass der npc mindestens dabei hat (in Kupfer!!)
maxgold = Das Gold dass der npc maximal dabei har (in Kupfer!!)
AiName = Hab ich mal was drüber gelesen. Wird im Update kommen!
MovementType = Ob der npc rumläuft oder nur steht
0 Der npc bleibt auf der Stelle stehen
1 Läuft zufällig innerhalb des Spawnradius herum
2 Bewegt sich per Wegpunkt
InhabitType = Ob der npc nur auf Land, Wasser oder Luft angreifen kann.(z.b Fische ziehen sich zurück wenn man das Wasser verlässt)
Code:
1 Nur auf Land 2 Nur im Wasser 4 Nur in der Luft Ihr könnt die Zahlen auch addieren.(z.b 1 + 2 + 4 = 7, d.h der npc kann auf allen Ebenen angreifen)
Health_mod = Das Leben des npc
Mana_mod = Das Mana des npc
Armor_mod = Rüstung des npc
RacialLeader = Ist mir unbekannt
Questitem1-6 = Ist mir unbekannt. Wird NICHT für Questdrops benötigt.
movementID = ist mir unbekannt
RegenHealth = ob sich der npc regeneriert.
1 = ja
0 = nein
mechanic_immune_mask = ist mir unbekannt
flags_extra = wird für bestimmte Bosse benötigt. Liste zu den Flags wird im Update kommen.
ScriptName = Der scriptname, falls vorhanden, der dem npc zugewiesen werden soll.
WDBVerified = ist mir unbekannt.
So. das war die Spaltenerklärung. Ich werde die Spalten, zu denen ich nichts geschrieben habe noch austesten.
Updates folgen!
Mehr Tutorials folgen!
Verzeiht mir bitte Fehler. Wenn ich etwas falsches geschrieben habe, bitte schreibt es in die Kommentare!
Ich hoffe ich konnte euch helfen.
Ich würde mich sehr über ein + freuen! Ich habe mein bestes getan.







