Register for your free account! | Forgot your password?

Go Back   elitepvpers > Popular Games > World of Warcraft > WoW Private Server
You last visited: Today at 21:28

  • Please register to post and access all features, it's quick, easy and FREE!

Advertisement



TrinityCore - smart_scripts

Discussion on TrinityCore - smart_scripts within the WoW Private Server forum part of the World of Warcraft category.

Reply
 
Old   #1

 
elite*gold: 808
Join Date: Jul 2010
Posts: 7,984
Received Thanks: 1,652
TrinityCore - smart_scripts

smart_scripts


Dieses Tutorial soll einige Grundladen der smart_scripts vermitteln. Es ist in einigen Projekten untser smart_scripts oder SAI bekannt.

Praktische Beispiele, an denen ich die smart_scripts demonstriere, sind ein Teleport und ein Buff.


Praktisches Beispiel in einem Projekt:
Es soll ein Teleporter gebaut werden, der die Spieler von der aktuellen Position zu einer anderen festgelegten telepotieren soll.

SQL:
Code:
INSERT INTO  smart_scripts (entryorguid, source_type, id, link, event_type, event_phase_mask, event_chance, event_flags, event_param1, event_param2, event_param3, event_param4, action_type, action_param1, action_param2, action_param3, action_param4, action_param5, action_param6, target_type, target_param1, target_param2, target_param3, target_x, target_y, target_z, target_o, comment) VALUES 
('190000', 0, 1, 0, 62, 0, 100, 0, '50000', 1, 0, 0, 62, 1, 0, 0, 0, 0, 0, 0, 8, 0, 0, '1234', '5678', '9800', '3.5', 'Testteleport');
Wir nehmen die SQL einmal komplett auseinander.

190000 - Die Entry der Creature
1 - die ID des Scripts, kann beliebig fortlaufen.
62 - Eventtype
100 - Somit wird gewährleistet, dass eine 100%ige Chance besteht, dass das Event ausgelöst wird
50000 - Die ID des Gossipmenüs
62 - Actiontype (hier teleport)
1 - Map des Zielorts
8 - Target, hier der Spieler.
1234 - X - Koordinate
4567 - Y - Koordinate
8900 - Z - Koordinate
3.5 - Orentiation
Testteleport - Ein Kommentar

Somit haben wir die Relevanten Daten einmal komplett auseinander genommen. Da dieses recht verwirrend ausschaut, kann man die SQL - Datei auch folgendermaßen aufbauen, um selbst besser zurechtzufinden:

SQL:
Code:
SET @entry := 190000;
SET @gossipmenu := 50000;
SET @event := 62;
SET @action := 62;


INSERT INTO  smart_scripts (entryorguid, source_type, id, link, event_type, event_phase_mask, event_chance, event_flags, event_param1, event_param2, event_param3, event_param4, action_type, action_param1, action_param2, action_param3, action_param4, action_param5, action_param6, target_type, target_param1, target_param2, target_param3, target_x, target_y, target_z, target_o, comment) VALUES 
('@entry', 0, 1, 0, @event, 0, 100, 0, '@gossipmenu', 1, 0, 0, @action, 1, 0, 0, 0, 0, 0, 0, 8, 0, 0, '1234', '5678', '9800', '3.5', 'Testteleport');

Somit haben wir unsere Datei etwas sortiert und als Datenbankdeveloper sieht man etwas besser durch. Natürlich kann man es beliebig weiter verfeinern, das soll der grobe Schliff sein.




Praktisches Beispiel in einem Projekt:
Ihr bekommt die Aufgabe, einen NPC zu basteln, welcher den Spielern den Buff 1234 gibt. Dieses sollt ihr schnell machen.

SQL
Code:
REPLACE INTO smart_scripts (entryorguid, source_type, id, link, event_type, event_phase_mask, event_chance, event_flags, event_param1, event_param2, event_param3, event_param4, action_type, action_param1, action_param2, action_param3, action_param4, action_param5, action_param6, target_type, target_param1, target_param2, target_param3, target_x, target_y, target_z, target_o, comment) VALUES 
('190005', 0, 1, 0, 62, 0, 100, 0, '121201', 1, 0, 0, 85, 48161, 2, 0, 0, 0, 0, 0, 8, 0, 0, 0, 0, 0, 0, 'Machtwort Seelenstärke');
Hier seht Ihr im Vergleich des ersten Beispieles etwas anderes. Verändert wurde der Actiontype, der nun 85 beträgt. Dahinter der Param1, sprich Parameter 1 ist die ID des spells, der Parameter 2 ist der Castflag, der ausgelöst wird, wenn es getriggert wurde. In dem Falle, wenn der Spieler den Spell abruft.




Ich hoffe, ich konnte in Kurzfassung Euch ein bisschen den Sinn der Smart_scripts näher bringen.

Wenn Fragen offen sind oder ich einige Praktische Beispiele noch hinzufügen soll, so schreibt mir eine PN oder hier in den Thread.


Nützliche Links:





(c) by °"Crazy"° - elitepvpers.com
°"Crazy"° is offline  
Thanks
5 Users
Old 12/26/2011, 21:08   #2
 
elite*gold: 0
Join Date: Nov 2010
Posts: 2,997
Received Thanks: 3,391
Verstehe zwar nicht von WoW aber solche arbeit ist sicher sehr schwer
und ein danke für die mühe sehr wert.
CrystalPrime is offline  
Thanks
1 User
Old 12/29/2011, 13:15   #3
 
n1_Roxxer's Avatar
 
elite*gold: 0
Join Date: Nov 2010
Posts: 477
Received Thanks: 134
toppse halt
gj bro
n1_Roxxer is offline  
Thanks
1 User
Old 12/29/2011, 13:22   #4

 
elite*gold: 808
Join Date: Jul 2010
Posts: 7,984
Received Thanks: 1,652
Quote:
Originally Posted by n1_Roxxer View Post
toppse halt
gj bro
Schön, Dich auch mal wieder zu sehen.

Habe eben noch einen Fehler in der SQL - Syntax behoben.
°"Crazy"° is offline  
Thanks
1 User
Old 12/29/2011, 14:02   #5
 
n1_Roxxer's Avatar
 
elite*gold: 0
Join Date: Nov 2010
Posts: 477
Received Thanks: 134
Quote:
Originally Posted by °"Crazy"° View Post
Schön, Dich auch mal wieder zu sehen.

Habe eben noch einen Fehler in der SQL - Syntax behoben.
Ich saug mir grad nen 335er Client, vllt komm ich nachher mal skype dann können wir schreiben, jenachdem was das rl so vor hat ;o
n1_Roxxer is offline  
Old 01/29/2012, 20:48   #6

 
elite*gold: 808
Join Date: Jul 2010
Posts: 7,984
Received Thanks: 1,652
Schreibfehler und Query angepasst
°"Crazy"° is offline  
Reply


Similar Threads Similar Threads
[TrinityCore] DBC & Map Extractor
06/29/2013 - WoW Private Server - 3 Replies
Hallo, Biete hier einen DBC & Maps Extractor. Das Passwort für die Datei ist: epvpers.de Zum Entpacken benötigt ihr WinRar. Sbald ihr es Entpackt habt Kopiert es und fügt es in Euren 3.3.5a WoW Ordner ein. Führt die Datei aus und es erstellt Euch zwei Ordner. Einmal den Ordner dbc und den Ordner maps.
TrinityCore und DB updaten
12/04/2011 - WoW Private Server - 4 Replies
Hallo, habe eine auf Trinity basierenden WoW Server aufgesetzt, aber da ja ständig an dem Core und an der Datenbank gebastelt wird, würde ich gerne wissen, wie ich sie gescheit aktualisiere... Habe mal hehört das geht mit Git oder Tortoise oder wie das heißt. Es funktioniert angeblich so, das sich an meinen Einstellungen in der DB etc. nichts ändert. Hat vllt. einer eine Lösung für mich? :) Danke LuMa
Fragen zu TrinityCore
09/04/2009 - WoW Private Server - 1 Replies
Heyho ich hab da mal paar fragen -wie erstelle ic hda ei naccoutn bzw brauch ich nen md5 hash? -was ist der acceslevel von Admin ,gm ,user usw -und mehr infos dazu wehr nicht shclecht -und ja noch gm commands (habe leidern ur commands von Mangos/Ascent suche welche für Trinty! 3.1.3! Mfg



All times are GMT +1. The time now is 21:28.


Powered by vBulletin®
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
SEO by vBSEO ©2011, Crawlability, Inc.

Support | Contact Us | FAQ | Advertising | Privacy Policy | Terms of Service | Abuse
Copyright ©2026 elitepvpers All Rights Reserved.