Hello & Welcome to our community. Is this your first visit? Register
Follow us on
Follow us on Facebook Follow us on Twitter Watch us on YouTube


MMOCoin

Likes Likes:  0
Results 1 to 3 of 3
  1. #1
    Contributor
    Onlykl's Avatar
    Join Date
    Jan 2009
    Location
    127.0.0.1
    Posts
    247
    Post Thanks / Like
    Rep Power
    19
    Reputation
    244

    [Tutorial] Compiling custom scripts


    Register to remove this ad
    Here is a handy guide on how to compile custom scripts for those who don't know how


    THE SCRIPT IM USING AS AN EXAMPLE IS TELEPORTER FROM Gastricpenguin

    Heres one way to compile scripts even if you have almost 0 C++ knowledge.

    First you need to compile Ascent/Arcemu core.

    Now head to ascentdirectory/src/scripts/src





    Now take GossipScripts and copy and paste a new folder out of it by right clicking it and copy then right clicking and paste.


    You now have this



    Now rename it to anything you want i will be renaming it CustomScript just for the guide youu can name it anything you want.


    Now its time to edit the makefile.am Open up MakeFile.am still inside the src/scripts/src folder and it shoudl say the following

    Code:
    SUBDIRS = GossipScripts InstanceScripts ServerStatusPlugin SpellHandlers LUAScripting
    What you want it to say is

    Code:
    SUBDIRS = GossipScripts CustomScript InstanceScripts ServerStatusPlugin SpellHandlers LUAScripting
    Change customscript to whatever you named your folder

    Now close the makefile and delete'

    Code:
    Gossip_Battlemaster.cpp
    Gossip_Innkeeper.cpp
    GuardGossip.cpp
    you should have this



    Now you add your scripts in (the .cpp's)


    I am only adding the teleporter so i have this now




    Now head to CustomScript and open makefile.am in notepad

    You should see this on the bottom line
    Code:
    libGossipScripts_la_SOURCES = Gossip_Battlemaster.cpp Gossip_Innkeepers.cpp GuardGossip.cpp Setup.cpp
    Change it to

    Code:
    libGossipScripts_la_SOURCES = Script Name.cpp Setup.cpp

    Change Script Name to your script name


    Ok Now it is time to open up Setup.cpp and this should be in the middle

    Code:
    extern "C" SCRIPT_DECL uint32 _exp_get_script_type()
    {
    	return SCRIPT_TYPE_MISC;
    }
    
    extern "C" SCRIPT_DECL void _exp_script_register(ScriptMgr* mgr)
    {
        SetupInnkeepers(mgr);
        SetupBattlemaster(mgr);
        SetupGuardGossip(mgr);
    }
    
    #ifdef WIN32
    delete

    Code:
     SetupInnkeepers(mgr);
        SetupBattlemaster(mgr);
        SetupGuardGossip(mgr);
    LEAVE THIS OPEN

    now open your script (.cpp) and search for

    Code:
     class SCRIPT_DECL
    For example the Portable Teleporter says
    Code:
    class SCRIPT_DECL Pwarper : public GossipScript
    Pwarper is what you need.

    Now go back to your Setup.cpp and where the

    Code:
     SetupInnkeepers(mgr);
        SetupBattlemaster(mgr);
        SetupGuardGossip(mgr);
    Was add

    Code:
    SetupPwarper(mgr);
    change Pwarper to whatever your script says

    it now looks like this
    Code:
    extern "C" SCRIPT_DECL uint32 _exp_get_script_type()
    {
    	return SCRIPT_TYPE_MISC;
    }
    
    extern "C" SCRIPT_DECL void _exp_script_register(ScriptMgr* mgr)
    {
        SetupPwarper(mgr);
    }
    
    #ifdef WIN32
    Now close and save Setup.cpp and open up Setup.h

    Should say

    Code:
    #ifndef INSTANCE_SCRIPTS_SETUP_H
    #define INSTANCE_SCRIPTS_SETUP_H
    
    void SetupInnkeepers(ScriptMgr * mgr);
    void SetupGuardGossip(ScriptMgr * mgr);
    void SetupBattlemaster(ScriptMgr * mgr);
    
    #endif
    Delete
    Code:
    void SetupInnkeepers(ScriptMgr * mgr);
    void SetupGuardGossip(ScriptMgr * mgr);
    void SetupBattlemaster(ScriptMgr * mgr);
    And add

    Code:
    void SetupPwarper(ScriptMgr * mgr);
    Pwarper being what you got from your script.

    ALMOST DONE!!!!

    Head to the Ascent root folder and look for configure.ac



    Inside configure.ac search for ASCENT_CONFIG_FILES

    You should see
    Code:
    AC_CONFIG_FILES([
       ./Makefile
       src/Makefile
       src/ascent-shared/Makefile
       src/ascent-world/Makefile
       src/ascent-logonserver/Makefile
       src/ascent-voicechat/Makefile
       src/ascent-realmserver/Makefile
       src/scripts/Makefile
       src/scripts/src/Makefile
       src/scripts/src/GossipScripts/Makefile
       src/scripts/src/InstanceScripts/Makefile
       src/scripts/src/ServerStatusPlugin/Makefile
       src/scripts/src/SpellHandlers/Makefile
       src/scripts/src/LUAScripting/Makefile
       extras/Makefile
       extras/collision/Makefile
       extras/collision/collision_dll/Makefile
    ])
    and your going to want to change it to this

    Code:
    AC_CONFIG_FILES([
       ./Makefile
       src/Makefile
       src/ascent-shared/Makefile
       src/ascent-world/Makefile
       src/ascent-logonserver/Makefile
       src/ascent-voicechat/Makefile
       src/ascent-realmserver/Makefile
       src/scripts/Makefile
       src/scripts/src/Makefile
       src/scripts/src/GossipScripts/Makefile
       src/scripts/src/InstanceScripts/Makefile
       src/scripts/src/ServerStatusPlugin/Makefile
       src/scripts/src/CustomScript/Makefile
       src/scripts/src/SpellHandlers/Makefile
       src/scripts/src/LUAScripting/Makefile
       extras/Makefile
       extras/collision/Makefile
       extras/collision/collision_dll/Makefile
    ])
    REMEMBER CUSTOMSCRIPT IS YOUR FOLDER NAME.

    head to Ascent/src/scripts/projects

    And look for GossipScripts2003,2005, or 2008 depending on what visual studio you have. I am using 2008

    Copy and paste it to make a copy then rename your copy anything you want.

    Now you have to open it up with notepad and use Find and Replace you want to change the word GossipScripts to CustomScript then click replace all now save and open with Visual Studio.

    Now click the little + sign next to CustomScript and delete all the files in them then go to Add then Existing Item and add your Setup.h and Setup.cpp from your CustomScript folder and also add your script.

    the Setup files go in main resources and your script goes in Scripts.

    Now just hit F7 and away you go!

    This will not work unless you have already compiled ascent

    --------------------------------
    CREDITS

    Onlykl for making tutorial


    › See More: [Tutorial] Compiling custom scripts
    Last edited by Onlykl; 02-07-09 at 04:21 PM.



  2. Related Threads - Scroll Down after related threads if you are only interested to view replies for above post/thread

  3. #2
    Head of Musara-Network
    mydlay's Avatar
    Join Date
    Jul 2009
    Location
    USA
    Posts
    22
    Post Thanks / Like
    Rep Power
    16
    Reputation
    17
    Pretty detailed guide, good job, should help tons of private server owners who are willing to customize their server a bit, should be easy to follow for anyone, since theres screenies

  4. #3
    Contributor
    Onlykl's Avatar
    Join Date
    Jan 2009
    Location
    127.0.0.1
    Posts
    247
    Post Thanks / Like
    Rep Power
    19
    Reputation
    244

    Register to remove this ad
    i made my best so if they has any problem they can ask me here

 

 

Visitors found this page by searching for:

mangos scriptmgr tutorial

SEO Blog

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  
All times are GMT -5. The time now is 07:16 PM.
Powered by vBulletin® Copyright ©2000-2024, Jelsoft Enterprises Ltd.
See More links by ForumSetup.net. Feedback Buttons provided by Advanced Post Thanks / Like (Lite) - vBulletin Mods & Addons Copyright © 2024 DragonByte Technologies Ltd.
vBulletin Licensed to: MMOPro.org