Register for your free account! | Forgot your password?

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

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

Advertisement



[HowTo] Eigene C++-Erweiterungen mit TrinityCore kompilieren

Discussion on [HowTo] Eigene C++-Erweiterungen mit TrinityCore kompilieren within the WoW Private Server forum part of the World of Warcraft category.

Reply
 
Old   #1
 
Unbekannt<3's Avatar
 
elite*gold: 0
Join Date: Mar 2010
Posts: 743
Received Thanks: 231
[HowTo] Eigene C++-Erweiterungen mit TrinityCore kompilieren

Eigene C++-Erweiterungen mit TrinityCore kompilieren

UPDATE: Tutorial für CMake angepasst.


In diesem Tutorial erfahrt ihr, wie ihr eigene C++-Erweiterungen (z.B. für Bosse, NPCs, Items etc.) mit TrinityCore kompiliert.
Dazu braucht ihr natürlich den Sourcecode von TrinityCore, VC++ zum Kompilieren und den Sourcecode eurer C++-Erweiterung. Wie ihr an den Trinity-Sourcecode kommt, möchte ich hier nicht extra erklären, dazu gibt es genügend Anleitungen.

Ich gehe davon aus, dass ihr eine Datei mit dem Namen "My_Script.cpp" im Ordner "src\server\scripts\Custom" habt. In dieser Datei (meistens ganz unten) findet ihr eine Funktion, die in etwa so aussieht:
Code:
void AddSC_test()
{
    Script *newscript;
    newscript = new Script;
    newscript->Name="test";
    newscript->GetAI = &GetAI_test;
    newscript->pGossipHello          = &GossipHello_npc_test;
    newscript->pGossipSelect         = &GossipSelect_npc_test;
    newscript->RegisterSelf();
}
Natürlich wird die Funktion in eurer Datei anders aussehen, aber hier kommt es nur auf die ungefähre Form an. Der grün markierte Teil ist besonders wichtig; Am Besten, ihr kopiert ihn in die Zwischenablage. Danach öffnet ihr die Datei "src\server\game\Scripting\ScriptLoader.cpp" und sucht dort nach "//custom". Dann solltet ihr folgende Stelle in der Datei finden:
Code:
#ifdef DO_SCRIPTS
//custom
Unterhalb von "//custom" fügt ihr dann den kopierten Teil aus eurer Datei ein (in diesem Fall also "void AddSC_test()", gefolgt von einem Semikolon. Diese Stelle der Datei sollte dann so aussehen:
Code:
#ifdef DO_SCRIPTS
//custom
void AddSC_test();
Sucht in der selben Datei weiter nach "//custom"; Folgende Stelle muss ebenfalls bearbeitet werden:
Code:
void AddScripts()
{
#ifdef DO_SCRIPTS

    //custom
Unterhalb von "//custom" fügt ihr wieder den kopierten Teil aus eurerDatei ein (gefolgt von einem Semikolon), dieses Mal allerdings ohne "void". Die Stelle sollte dann so aussehen:
Code:
void AddScripts()
{
#ifdef DO_SCRIPTS

    //custom
    AddSC_test();
Dank CMake läuft auch der nächste Schritt unter Windows und Linux gleich ab.
Ihr müsst die Datei "src\server\scripts\CMakeLists.txt" bearbeiten:
Und weiter unten:
Dadurch werden automatisch alle Dateien im Ordner "Custom" mit eingebunden. Die nicht benötigten Beispieldateien im Ordner "Custom" solltet ihr dann verschieben bzw. löschen, da sie nicht benötigt werden, veraltet sein können und dadurch Probleme verursachen.

Falls es mit dem Tutorial Probleme geben sollte oder falls irgendwas unklar ist, sagt mir einfach Bescheid.

Viel Spaß,
.S4ncheZz
Unbekannt<3 is offline  
Thanks
1 User
Old 10/29/2010, 11:51   #2
 
elite*gold: 60
Join Date: Mar 2010
Posts: 233
Received Thanks: 54
Gutest TuT jedoch habe ich nicht alle verstanden^^

Ich bin jetzt and nem Punkt angelant wo CMakeLists.txt bearbeiten doch habe keine ahnung was ich da bearbeiten soll.^^

muss ich danach die Core neu kompilieren?
Arras is offline  
Old 10/29/2010, 12:34   #3
 
#Minecraft's Avatar
 
elite*gold: 0
Join Date: Jun 2008
Posts: 2,231
Received Thanks: 405
**** nice!!!1
Es funktioniert <3
#Minecraft is offline  
Old 10/29/2010, 14:45   #4
 
Unbekannt<3's Avatar
 
elite*gold: 0
Join Date: Mar 2010
Posts: 743
Received Thanks: 231
Das muss du verstehen nix neu kompilieren einfach das da Bearbeiten
Unbekannt<3 is offline  
Old 10/30/2010, 16:49   #5
 
elite*gold: 60
Join Date: Mar 2010
Posts: 233
Received Thanks: 54
"das da bearbeiten" ist gut..^^

Es gibts dort nichts zu bearbeiten was annähernd mit boss scripts zu tun hat.

(habe die Core von Oregon [2.4.3])
Arras is offline  
Reply


Similar Threads Similar Threads
[HOWTO]eigene Mobgruppen definieren und implementieren
01/13/2012 - Metin2 PServer Guides & Strategies - 43 Replies
Dies ist eine Erweiterung zum Thread: http://www.elitepvpers.com/forum/metin2-pserver-gui des-strategies/383878-how-monster-hinzuf-gen.html Gruß an fertinig SCHRITT 1 Als erstes laden wir uns folgende Dateien vom Server: Pfad: /usr/rain/channel/share_data/locale/hongkong group.txt group_group.txt
[HowTo]Eigene Items erstellen
10/31/2011 - Metin2 PServer Guides & Strategies - 112 Replies
Huhu^^ Hier mal ein kleines Tutorial von mir wie ihr euer eigenes Item erstellen könnt. (Keine Waffen, nur Gegenstände ohne 3D Models) Der erste Teil: YouTube - Eigene Items erstellen (1/2) Der zweite Teil:
[HOWTO]Eigene Map machen
10/11/2011 - Metin2 PServer Guides & Strategies - 129 Replies
Alle die n Guide wollen wo alles ausführlich erklärt ist und wo es 99999999 milliarden Testmaps zu downloaden gibt bitte ALT+F4 An die anderen: Ist nur für Leute wirklich lernen wollen wie des geht Okey man muss 2 Sachen machen. 1. Serverside die Map zum laufen bringen Das ist relativ einfach ;P /locale/hongkong/map/index öffnen und die Map eintragen dann musst du noch in dem Mapordner (map/metin2_map_...) den du gemacht hast die Setting.txt bearbeiten und eine Position eintragen die...
[HOWTO] Eigene Quests schreiben
10/11/2011 - Metin2 PServer Guides & Strategies - 159 Replies
Hallo elitepvpers, Dieses Tutorial ist veraltet. Ich werde in den nächsten Tagen eine neue Version dieses Tutorials rausbringen. Ich bitte euch das Entfernen der Alten Anleitung zu entschuldigen ... aber sie muss einfach überarbeitet werden. _______________________
[Howto] Compile Trinitycore - Inklusive Core Updates
09/23/2010 - WoW Private Server - 14 Replies
...



All times are GMT +2. The time now is 00:39.


Powered by vBulletin®
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
SEO by vBSEO ©2011, Crawlability, Inc.
This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

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