Editing only the content of the monster.sdata file was not satisfactory; indeed the big part of information is in BD only.
The solution is an extended monster file ("MonsterEx.SData") file that contains the monster.sdata information plus DB information (the content of the dbo.Mobs & dbo.MobItems table).
This file is generated once with the monster.sdata and the 2 tables (exported from SQL Studio in .CSV format) and imported by the tool.
The file is then used to regenerate the monster.sdata file and a SQL script to update the Mobs & MobItems tables.
Be sure to properly export the full tables with all OS defined columns (no more, no less and in right order) or the import will fail.
The field separator (the character between each field) must be a comma or a semi-colon, also no thousand separators shall be present in numerical figures (eg the value 2500 shall be "2500" and not "2,500" or "2.500").
The csv files must be saved as plain ANSI text, SQL Studio saves files with UTF-8 or Unicode encoding as default choices, make sure to define the encoding options to "ANSI" with the small down arrow on the Save button.
The expected format for the Mobs.csv is:
Code:
RowID;MobID;MobName;Level;Exp;AI;Money1;Money2;QuestItemID;HP;SP;MP;Dex;Wis;Luc;Day;Size;Attrib;Defense;Magic;ResistState1;ResistState2;ResistState3;ResistState4;ResistState5;ResistState6;ResistState7;ResistState8;ResistState9;ResistState10;ResistState11;ResistState12;ResistState13;ResistState14;ResistState15;ResistSkill1;ResistSkill2;ResistSkill3;ResistSkill4;ResistSkill5;ResistSkill6;NormalTime;NormalStep;ChaseTime;ChaseStep;ChaseRange;AttackType1;AttackTime1;Attackrange1;Attack1;Attackplus1;Attackattrib1;Attackspecial1;Attackok1;Attacktype2;Attacktime2;Attackrange2;Attack2;Attackplus2;Attackattrib2;Attackspecial2;Attackok2;Attacktype3;Attacktime3;Attackrange3;Attack3;Attackplus3;Attackattrib3;Attackspecial3;Attackok3
1;0;??;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0
2;1;Small Ruined Wolf;38;704;1;1820;3822;0;2765;874;1578;60;40;53;3;1;4;38;31;0;0;0;0;0;0;0;1;0;0;0;0;0;0;0;0;0;0;0;0;0;4000;6;1800;9;9;0;2500;2;167;83;0;0;1;37;2500;2;142;85;0;0;1;0;0;0;277;0;0;3;0
3;2;Rotting Poison Larva;38;704;1;1820;3822;0;2765;874;1578;60;40;53;3;2;0;38;31;0;0;0;0;0;0;0;1;1;0;0;0;0;0;0;0;0;0;0;0;0;4000;6;1800;9;9;0;2500;2;167;83;0;0;1;19;2500;2;142;85;0;0;1;0;0;0;277;0;0;3;0
... all other lines ...
The expected format for the MobItems.csv is:
Code:
RowID;MobID;ItemOrder;Grade;DropRate
1;0;1;0;0
2;0;2;0;0
3;0;3;0;0
... and so on ...
The editor saves the Monster.sdata file encrypted from where it was opened; it also saves an extended monsters file ("monsterEx.sdata") in the same folder than the one containing the monster.sdata file. Using a global server repository here was not possible since this will prevent the existence and edition of several monster.sdata.
That extended file is not supposed to be packed in a client package; it is your responsability to move/remove/... it.
A SQL script is also saved in the server directory.
For first use, you must export the 2 required tables in .CSV format and then import them (File menu, Import item).
These 2 CSV files are no longer needed after import and can be deleted.
For next uses, you simply open the monster.sdata file - you don't select the monsterEx.sdata, it is automatically detected and used by the tool.