MikExV™
26-03-10, 03:18 PM
Were Going to start off by opening are place ware are core is located, for instance mine is here "C:\WoWServer\Compile\trunk\src\arcemu-world"
307
We Will Need to Chat.cpp, and Chat.h, Make back ups if you think you may screw some thing up, or if you just want to make shore ;).
I will be making a VIP command table, if your making diffrent don't do it exactly how I do.
Now your going to wanna go down a little bit untell you find
ChatCommand * CommandTableStorage::GetSubCommandTable(const char * name)
{
if(!stricmp(name, "modify"))Go to the bottom and add
else if(!stricmp(name, "vip"))
return _vipCommandTable;308
Now your going to scroll down tell you find
void CommandTableStorage::Dealloc()
{
free( _modifyCommandTable );
free( _debugCommandTable );
free( _waypointCommandTable );And your also going to Add
free( _vipCommandTable);309
Now your going to add this below or some ware near there
static ChatCommand vipCommandTable[] =
{
{ "additem", 'q', &ChatHandler::HandleAddInvItemCommand, "Adds item x count y", NULL, 0, 0, 0 },
{ "advanceallskills", 'q', &ChatHandler::HandleAdvanceAllSkillsCommand, "Advances all skills <x> points.", NULL, 0, 0, 0 },
{ "appear", 'q', &ChatHandler::HandleAppearCommand, "Teleports to x's position.", NULL, 0, 0, 0 },
{ "speed", 'q', &ChatHandler::HandlevipModifySpeedCommand, "Modifies the movement speed of the selected target.", NULL, 0, 0, 0 },
{ "search", 'q', &ChatHandler::HandleLookupItemCommand, "Looks up item string x.", NULL, 0, 0, 0 },
{ "summon", 'q', &ChatHandler::HandleSummonCommand, "Summons x to your position.", NULL, 0, 0, 0 },
{ "guild make", 'q', &ChatHandler::CreateGuildCommand, "Create's Seleceted Player a Guild", NULL, 0, 0, 0},
{ NULL, '0', NULL, "", NULL, 0, 0, 0 }
};
dupe_command_table(vipCommandTable, _vipCommandTable);
t310
The 'q' is what I will put as the account when I make it vip like .account level (account name) q
Now Press Ctrl+S or how ever you save and open Chat.h.
Now Find
class SERVER_DECL CommandTableStorage : public Singleton<CommandTableStorage>
{
// List command containers ex. .character is a container of .character additem
ChatCommand* _modifyCommandTable;
ChatCommand* _debugCommandTable;
ChatCommand* _waypointCommandTable;
ChatCommand* _GMTicketCommandTable;
ChatCommand* _GuildCommandTable;And add
ChatCommand* _vipCommandTable;at the bottom again.
311
Now find
// Level 1 commands
bool CmdSetValueField(WorldSession *m_session, uint32 field, uint32 fieldmax, const char *fieldname, const char* args);and add
bool HandlevipModifySpeedCommand(const char* args, WorldSession *m_session); at the end
Now your going to go to
C:\WoWServer\Compile\trunk\winThats ware mine is yours is in a diffrent location
and open the
arcemuVC90 - All ProjectsNow right click on
arcemu - worldand click build the top one ;)
This may take a few min's.
Make shore at the top its on Release, and not Debug
1>------ Build started: Project: collision, Configuration: Release Win32 ------
1>Linking...
1> Creating library .\..\..\bin\Release\collision.lib and object .\..\..\bin\Release\collision.exp
1>Generating code
1>Finished generating code
1>Embedding manifest...
1>Build log was saved at "file://c:\WoWServer\Compile\trunk\win\VC90\collision___Wi n32_Release\BuildLog.htm"
1>collision - 0 error(s), 0 warning(s)
2>------ Build started: Project: arcemu-world, Configuration: Release Win32 ------
2>Compiling...
2>Chat.cpp
2>Linking...
2> Creating library .\..\..\bin\Release\arcemu-world.lib and object .\..\..\bin\Release\arcemu-world.exp
2>Generating code
2>Finished generating code
2>Embedding manifest...
2>Build log was saved at "file://c:\WoWServer\Compile\trunk\win\VC90\arcemu-world___Win32_Release\BuildLog.htm"
2>arcemu-world - 0 error(s), 0 warning(s)
========== Build: 2 succeeded, 0 failed, 3 up-to-date, 0 skipped ========== If I missed any Thing please tell me.
~MikExV
307
We Will Need to Chat.cpp, and Chat.h, Make back ups if you think you may screw some thing up, or if you just want to make shore ;).
I will be making a VIP command table, if your making diffrent don't do it exactly how I do.
Now your going to wanna go down a little bit untell you find
ChatCommand * CommandTableStorage::GetSubCommandTable(const char * name)
{
if(!stricmp(name, "modify"))Go to the bottom and add
else if(!stricmp(name, "vip"))
return _vipCommandTable;308
Now your going to scroll down tell you find
void CommandTableStorage::Dealloc()
{
free( _modifyCommandTable );
free( _debugCommandTable );
free( _waypointCommandTable );And your also going to Add
free( _vipCommandTable);309
Now your going to add this below or some ware near there
static ChatCommand vipCommandTable[] =
{
{ "additem", 'q', &ChatHandler::HandleAddInvItemCommand, "Adds item x count y", NULL, 0, 0, 0 },
{ "advanceallskills", 'q', &ChatHandler::HandleAdvanceAllSkillsCommand, "Advances all skills <x> points.", NULL, 0, 0, 0 },
{ "appear", 'q', &ChatHandler::HandleAppearCommand, "Teleports to x's position.", NULL, 0, 0, 0 },
{ "speed", 'q', &ChatHandler::HandlevipModifySpeedCommand, "Modifies the movement speed of the selected target.", NULL, 0, 0, 0 },
{ "search", 'q', &ChatHandler::HandleLookupItemCommand, "Looks up item string x.", NULL, 0, 0, 0 },
{ "summon", 'q', &ChatHandler::HandleSummonCommand, "Summons x to your position.", NULL, 0, 0, 0 },
{ "guild make", 'q', &ChatHandler::CreateGuildCommand, "Create's Seleceted Player a Guild", NULL, 0, 0, 0},
{ NULL, '0', NULL, "", NULL, 0, 0, 0 }
};
dupe_command_table(vipCommandTable, _vipCommandTable);
t310
The 'q' is what I will put as the account when I make it vip like .account level (account name) q
Now Press Ctrl+S or how ever you save and open Chat.h.
Now Find
class SERVER_DECL CommandTableStorage : public Singleton<CommandTableStorage>
{
// List command containers ex. .character is a container of .character additem
ChatCommand* _modifyCommandTable;
ChatCommand* _debugCommandTable;
ChatCommand* _waypointCommandTable;
ChatCommand* _GMTicketCommandTable;
ChatCommand* _GuildCommandTable;And add
ChatCommand* _vipCommandTable;at the bottom again.
311
Now find
// Level 1 commands
bool CmdSetValueField(WorldSession *m_session, uint32 field, uint32 fieldmax, const char *fieldname, const char* args);and add
bool HandlevipModifySpeedCommand(const char* args, WorldSession *m_session); at the end
Now your going to go to
C:\WoWServer\Compile\trunk\winThats ware mine is yours is in a diffrent location
and open the
arcemuVC90 - All ProjectsNow right click on
arcemu - worldand click build the top one ;)
This may take a few min's.
Make shore at the top its on Release, and not Debug
1>------ Build started: Project: collision, Configuration: Release Win32 ------
1>Linking...
1> Creating library .\..\..\bin\Release\collision.lib and object .\..\..\bin\Release\collision.exp
1>Generating code
1>Finished generating code
1>Embedding manifest...
1>Build log was saved at "file://c:\WoWServer\Compile\trunk\win\VC90\collision___Wi n32_Release\BuildLog.htm"
1>collision - 0 error(s), 0 warning(s)
2>------ Build started: Project: arcemu-world, Configuration: Release Win32 ------
2>Compiling...
2>Chat.cpp
2>Linking...
2> Creating library .\..\..\bin\Release\arcemu-world.lib and object .\..\..\bin\Release\arcemu-world.exp
2>Generating code
2>Finished generating code
2>Embedding manifest...
2>Build log was saved at "file://c:\WoWServer\Compile\trunk\win\VC90\arcemu-world___Win32_Release\BuildLog.htm"
2>arcemu-world - 0 error(s), 0 warning(s)
========== Build: 2 succeeded, 0 failed, 3 up-to-date, 0 skipped ========== If I missed any Thing please tell me.
~MikExV