Welcome!

Join our community of MMO enthusiasts and game developers! By registering, you'll gain access to discussions on the latest developments in MMO server files and collaborate with like-minded individuals. Join us today and unlock the potential of MMO server development!

Join Today!

Gmtool_cmd

Creator of Code
Joined
Mar 5, 2006
Messages
371
Reaction score
131
----- ****.ei.tmp after GMTOOL_CMD18
2011-02-13 21:40:41 1 Yunko 0 [N_ITEMDROP] GMTOOL_CMD18 : Rate(4/1000)
------ GameServer Window after GMTOOL_CMD50
2011-02-13 21:56:11 EXECUTE_MAPEVENT_RELOAD

It seems Authserver takes whats inside Pangya_Server_Command and turns it into GMTOOL_CMD commands.

Simply input values in the table named above and inside AuthServer type cmdon, then check GameServer logs.



To be able to see mapevent_reload in gameserver window you need to input LOG_ON in the gameserver window first.


To do whats in the screenshot, simply input:
command: 1
arg1: 1
arg2: 1
arg3: 1
arg4: 1
arg5: SOME-TEXT
target: GUID-OF-GAMESERVER
RegDate: SOME-DATE
ReserveDate: NULL


Found some stuff (If you use OllyDbg you can search for "EXECUTE_" and see what command it is):

GameServer:
0 = Notice (with the right parameters)
1 = EXECUTE_SERVER_SHUTDOWN
2 = EXECUTE_SERVER_CANCEL_SHUTDOWN
3 = EXECUTE_SERVER_SERVICE_CONTROL(1)
9 = EXECUTE_RELOAD_IFF
10 = EXECUTE_KICK_PLAYER(1)
11 = EXECUTE_UPDATE_PATCH_VERSION(test)
12 = EXECUTE_CHANGE_QUEST_FLAG(1,1)
13 = EXECUTE_CHANGE_QUESTDROP_PROB(1,1)
14 = EXECUTE_CHANGE_QUESTDROP_FLAG(1,1)
15 = EXECUTE_PANG_EVENT(1)
16 = EXECUTE_EXP_EVENT(1)
17 = EXECUTE_CHANGE_EVENT_FLAG(1)
18 = rate
19 = EXECUTE_ANGEL_EVENT(1)
20 = EXECUTE_RAIN_EVENT(0.1)
21 = EXECUTE_BONGDARISHOP_RATIO(Rate:1, Cookie:1) + EXECUTE_BONGDARISHOP_RATIO(1,1)
22 = EXECUTE_MAP_PANG_EVENT(1,1)
23 = EXECUTE_CHANGE_SERVER_ICON(1)
24 = EXECUTE_JACKPOT(1)
25 = EXECUTE_SCRATCH_RATIO(1)
28 = EXECUTE_GIFT_DROP
29 = EXECUTE_XMAS_SOCK_DROP(1)
30 = EXECUTE_NEWYEAR_MONEY(drop:1, rare:1)
33 = EXECUTE_EVENT_GIFTBOX(drop:1, rare:1)
36 = EXECUTE_EVENT_SET_STATE(event on)
50 = map event rate (doesnt work thru this?)
51 = EXECUTE_SET_GAUGETIME
52 = EXECUTE_SET_MAPGAUGE(event %s)
53 = EXECUTE_GHOST_SERVICE(OK, SERVICE ENABLED)
100 = Thai ItemDrop Multiply %s
101 = Thai Exp Multiply %s
102 = Thai ExpRate Changed from %d to %d
103 = Thai NetCafe Pang Double %s
104 = SET JACKPOT MODE user count : 1
105 = CANCLE JACKPOT MODE
106 = Golden time auto select event STOP
107 = Golden time auto select event RESUME

LoginServer
1 = EXECUTE_SERVER_SHUTDOWN
2 = EXECUTE_SERVER_CANCEL_SHUTDOWN
6?
7?
26 = Limited Login
27 = alluserlogin
 

Attachments

You must be registered for see attachments list
Last edited:
Newbie Spellweaver
Joined
Dec 2, 2010
Messages
10
Reaction score
0
At GM_CMD should be where the rate of change and pang xp server?
 
Joined
Jul 18, 2009
Messages
392
Reaction score
129
chreadie, once again a good job on discovering this.

This might be a good lead to more gm/admin commands.
As for the question about xp / pang rates.
It is very well possible that this is the way to change them.
Although we are of course not sure.

But while we're talking about xp rates...I'm wondering the value that the gameserver sends to the db (new experience points) is it based on what the client sends?
Because while digging through .iff files i found a simple textfile that contains the required exp for each level.
If you edit that textfile and take 50% off each level's required exp, would it behave as x2 rates for example?
 
Creator of Code
Joined
Mar 5, 2006
Messages
371
Reaction score
131
chreadie, once again a good job on discovering this.

This might be a good lead to more gm/admin commands.
As for the question about xp / pang rates.
It is very well possible that this is the way to change them.
Although we are of course not sure.

But while we're talking about xp rates...I'm wondering the value that the gameserver sends to the db (new experience points) is it based on what the client sends?
Because while digging through .iff files i found a simple textfile that contains the required exp for each level.
If you edit that textfile and take 50% off each level's required exp, would it behave as x2 rates for example?


You could say that, the exp-file is just a way to keep track of the amount of exp for each lvl.

---------- Post added at 01:15 AM ---------- Previous post was at 01:13 AM ----------

I hope this update helps :)

Now im going to bed late because i discovered this :D
 
Joined
Jul 18, 2009
Messages
392
Reaction score
129
I've been messing around with it a little.
I managed to get the Angel Event running on my server.
It shows the angel symbol on server select and removes 1 QR-game after each game I play.

I'm looking into Pang event and Exp event at the moment. I can get them executed, with different values (i expect this is the rate) but haven't seen a difference ingame yet.
 
Creator of Code
Joined
Mar 5, 2006
Messages
371
Reaction score
131
I just noticed that some of the text has been cut off.

0 is notice
1 is server shutdown
2 is server control

Ill fix it when i get home from work
 
Junior Spellweaver
Joined
Apr 19, 2006
Messages
119
Reaction score
15
yes i've played around with it but it seemed a freak character when i notice
 
Junior Spellweaver
Joined
Apr 19, 2006
Messages
119
Reaction score
15
when you back home ?

---------- Post added at 01:22 PM ---------- Previous post was at 01:21 PM ----------

i'm not good in olldydbg
 
Deny everything.
Joined
Jun 17, 2005
Messages
488
Reaction score
110
To use command 0 you need to add a message to Pangya_Notice_List and supply Arg1 with the Idx of the notice you want to play.
 
Junior Spellweaver
Joined
Apr 19, 2006
Messages
119
Reaction score
15
i love you tsukasa

---------- Post added at 02:06 PM ---------- Previous post was at 01:54 PM ----------

tsukasa , how can i do a replaycount ?
 
Junior Spellweaver
Joined
Oct 31, 2007
Messages
192
Reaction score
59
now b2t :) The Regdate column of the Pangya_Server_Command table lets you choose WHEN a command shall be executed. Current_Timestamp or NULL will lead to the next full minute.

Code:
EXECUTE_EVENT_MAPGAUGE(event %s)
EXECUTE_SET_GAUGETIME
EXECUTE_EVENT_SET_STATE(event %s)
EXECUTE_MAPEVENT_RELOAD
EXECUTE_EVENT_GIFTBOX(drop:%d, rare:%d)
EXECUTE_NEWYEAR_MONEY(drop:%d, rare:%d)
EXECUTE_XMAS_SOCK_DROP(%d)
EXECUTE_GIFT_DROP
EXECUTE_JACKPOT(%d)
EXECUTE_CHANGE_SERVER_ICON(%d)
EXECUTE_SCRATCH_RATIO(%d)
EXECUTE_MAP_PANG_EVENT(%d,%d)
EXECUTE_BONGDARISHOP_RATIO(%d,%d)
EXECUTE_RAIN_EVENT(%.1f)
EXECUTE_ANGEL_EVENT(%d)
EXECUTE_RELOAD_IFF
EXECUTE_CHANGE_EVENT_FLAG(%d)
EXECUTE_EXP_EVENT(%d)
EXECUTE_PANG_EVENT(%d)
EXECUTE_CHANGE_QUESTDROP_FLAG(%d,%d)
EXECUTE_CHANGE_QUESTDROP_PROB(%d,%d)
EXECUTE_CHANGE_QUEST_FLAG(%d,%d)
EXECUTE_KICK_PLAYER(%d)
EXECUTE_SERVER_SERVICE_CONTROL(%d)
EXECUTE_UPDATE_PATCH_VERSION(%s)
EXECUTE_SERVER_CANCEL_SHUTDOWN
EXECUTE_SERVER_SHUTDOWN(%d)
EXECUTE_BROADCAST_NOTICE(%d)
EXECUTE_GHOST_SERVICE(OK, SERVICE %s)

This should be all Available Commands (without command codes)
 
Last edited:
Newbie Spellweaver
Joined
Dec 29, 2008
Messages
92
Reaction score
52
To use command 0 you need to add a message to Pangya_Notice_List and supply Arg1 with the Idx of the notice you want to play.


Arg1 with the Idx of the notice you want to play. ? I do not understand.

Could you explain a little better my friend Tsukasa?
 
Junior Spellweaver
Joined
Apr 19, 2006
Messages
119
Reaction score
15
when you insert to pangya_notice_list and put the idx to arg1
idx will automatically generate
 
Newbie Spellweaver
Joined
Dec 29, 2008
Messages
92
Reaction score
52
when you insert to pangya_notice_list and put the idx to arg1
idx will automatically generate

right in the command column is "0 " and the other columns: arg2 arg3 arg4 and arg5?

Thank You...
 
Last edited:
Creator of Code
Joined
Mar 5, 2006
Messages
371
Reaction score
131
fasa, i think what hes trying to do is to input "arg1" in the idx field in pangya_notice_list.


In pangya_notice_list you insert what u want to show ingame, then u take the generated idx and unput as arg1 in server_command.
 
Joined
Jul 18, 2009
Messages
392
Reaction score
129
Here is what Tsukasa means (i expect because that worked for me)

Insert a notice into Pangya_Notice_List
After inserting remember the value it inserted into the "Idx" column.
This is a unique number to identify the notices.

Then when inserting into Pangya_Command_list fill in this:

Command: 0
Arg1: (Idx number from Pangya_Notice_List)
Arg2: nothing
Arg3: nothing
Arg4: nothing
Arg5: nothing
Target: Gameserver GUID (20201 in my case)
Releasedate: a random date

after this, close the table and check your gameserver window (make sure you've entered "LOG_ON" before in the GS console, else you won't see anything happening)

What this does will look for a notice in Pangya_Notice_List with the Idx provided in Arg1 and it will broadcast this message ingame.
 
Back
Top