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!

Clsconfig Basics

Junior Spellweaver
Joined
Oct 15, 2020
Messages
152
Reaction score
184
CARELESS MANIPULATION OF CLSCONFIG MAY CORRUPT DATABASE ,PREVENT YOU FROM CREATING NEW CHARACTERS AND CAUSE OTHER ISSUES!!!!!
This is just a small tutorial with very basic stuff.



---Basics:
clsconfig is a binary created by Gamedbd(Game Database Daemon) and is linked to DATABASE!
Some accounts holds some role IDs used for class configs.It controls how characters are newly created in game.
There is a safety procedure in Gamedbd that ensures these account rollback to default values in database.


---Useful Commands linked to Clsconfig:
->We can understand more by looking at Server Source in wnet/gamedbd/clsconfig.h

*Command to export a clsconfig binary through server-fw/gamedbd:
Code:
./gamedbd gamesys.conf exportclsconfig

*Command to export clsconfig logs in a file through server-fw/gamedbd:
Code:
./gamedbd gamesys.conf exportclsconfig > clsconfig.txt
./gamedbd gamesys.conf exportclsconfig > clsconfig.xml

*Command to import clsconfig through server-fw/gamedbd:
Code:
./gamedbd gamesys.conf importclsconfig


---Tips related to gamesys.conf:
At this point just open server-fw/gamedbd/gamesys.conf yourself with notepad++ and observe what's in there.
->The number of occupations is different in gamesys.conf among different versions:
*v253(Dysil Wrath):
Code:
[OCCUPATION]
occupations        =    HUMAN_WARRIOR,HUMAN_THUG,HUMAN_ENCHANTER,HUMAN_PRIEST,ELF_WARRIOR,ELF_PRIEST,ELF_OCCUPATION,DWARF_GUNMAN,GAINT_GUARD,VAMPIRE_THUG,VAMPIRE_ENCHANTER,VAMPIRE_BLOOD,WOLF_THUG,WOLF_PRIEST

*v260(Bloodharvest):
Code:
[OCCUPATION]
occupations        =    HUMAN_WARRIOR,HUMAN_THUG,HUMAN_ENCHANTER,HUMAN_PRIEST,ELF_WARRIOR,ELF_PRIEST,ELF_OCCUPATION,DWARF_GUNMAN,GAINT_GUARD,VAMPIRE_THUG,VAMPIRE_ENCHANTER,VAMPIRE_BLOOD,WOLF_THUG,WOLF_PRIEST,VAMPIRE_BLOODRAIDER,WOLF_BLOODRAIDER
Basically Reapers got added from Dysil to Bloodharvest: VAMPIRE_BLOODRAIDER,WOLF_BLOODRAIDER

*v305(Homecoming):
Code:
[OCCUPATION]
occupations        =    HUMAN_WARRIOR,HUMAN_THUG,HUMAN_ENCHANTER,HUMAN_PRIEST,ELF_WARRIOR,ELF_PRIEST,ELF_OCCUPATION,DWARF_GUNMAN,GAINT_GUARD,VAMPIRE_THUG,VAMPIRE_ENCHANTER,VAMPIRE_BLOOD,WOLF_THUG,WOLF_PRIEST,VAMPIRE_BLOODRAIDER,WOLF_BLOODRAIDER,DEMON_WIZARD
Basically Tormentors got added from Bloodharvest to FW2 versions: DEMON_WIZARD

->As you can see here in gamesys.conf race,occupation and gender makes sense through different examples.
1)Stoneman Protector:
Code:
[GAINT_GUARD]
race        =    4
occupation    =    2
posx        =    0
posy        =    200
posz        =    0
money        =    0
gender        =    MALE

2)Demon Tormentor:
Code:
[DEMON_WIZARD]
race        =    7
occupation    =    10
posx        =    0
posy        =    200
posz        =    0
money        =    0
gender        =    ALL

---Reminder about Race & Occupation extracted from SMElementClient:
->Sometimes,shenmo names stuff differently but it's what we got used to in Forsaken World.
Code:
RACE_HUMAN= 1,      //人类
RACE_ELF= 2,        //精灵 
RACE_DWARF= 3,      //矮人
RACE_GIANT= 4,      //巨人
RACE_VAMPIRE= 5,    //血族
RACE_WEREWOLF= 6,     //狼人
RACE_DEVIL= 7,         //恶魔

Code:
PROF_WARRIOR= 1,      //战士
PROF_GUARD= 2,      //巨灵
PROF_THIEF= 3,      //刺客
PROF_GUNMAN= 4,      //火枪手
PROF_ENCHANTER= 5,      //法师
PROF_PRIEST= 6,      //牧师
PROF_BLOOD= 7,      //血魔    
PROF_POET= 8,      //吟游诗人
PROF_BLOODRAIDER= 9,      //血袭者
PROF_WIZARD= 10,      //断罪者

Please feel free to correct me if you notice a mistake!
I'm grateful for the people who have supported me in my FW work and Special Thanks to Perfect World Developers.
Knowledge from PW Section can be applied in FW to some big extent!
 
Last edited:
Back
Top