[Release] shStudio 0.7.5

10/04/2014 22:49 castor4878#76
the filter on classes is available for the 1st panel ("Toon skills") but it's not invoked due to ... the same bug than the one taht prevents popup on monster.sdata; both fixed.

regarding SQL: the 'rowID' is indeed ""not respected"" and I though to be clear on that point ...
an IDENTITY field is a) always defined by the table itself, b) it is always incremented (by 1 or any increment defined with its creation), so I can NOT set it, I can not reuse an old value.
and we DON'T care since the field is NEVER used.

primary keys are required for a lot of SQL processes, these rowIDs look like pr.key, they smell like pr.key but they are just useless garbage; if you consider that garbage shall always be well aligned and strictly increasing ... truncate your table each table you change a row.

Quote:
ChangeLevel / UpdateDate / ChangeLevel
fixRange, changeType, changeLevel ??
these fields exist since a while.
10/04/2014 23:16 _Diavolino_#77
thanks ! i understand that point of primary key.

i expose you an other point,
I take one skill.sdata with 9 row for each skill. I put it in Studio i got the correct way.
Then i want to make some several modification via python27 use the classic tool.
I decrypt the file, i transform it in csv, i make the modification necessary, and i save without to change the row number. I put it back in Sdata then in studio i refresh the workspace and i got that.

All the row are separed in 3 x 3 row... i made something wrong ?

and i wanted to make the modification to insert new Row, as the function Create item doesnt work (For Me) from studio in each Zone Toon Skill Noos and Raw.
10/05/2014 17:56 castor4878#78
Quote:
All the row are separed in 3 x 3 row... i made something wrong ?
possibly, or the python script saves something unexpected. hard to guess, but for sure something is bugged.

the RowID column is NOT present in the sdata (it is only present in the SQL table), if the python script insert one in the generated CSV it is a compuctational row index.
the issue is so related to something else ... send me the sdata file generated by the python script to check it please.

edit: Interpretation & Backpack Upgrade look correct !?
I may expect a bug that corrupt all records but there it looks like you change the 2 first records.
is it the case ? and if yes, why are you asking me if you did a mistake ? I don't know what you did ...
10/05/2014 18:37 _Diavolino_#79
and yes Interpretation and Backpack are correct. and i just change one wrote to another one and put it back original to record the file and it do this to all row deadly strike etc ... you will see make the test to put directly that file in studio last version.:o

EDIT :

I just made a test i put the file in old studio, i save it, then i move it in folder to open with last Version studio and there is no problem or bug...
BUT open directly in last version studio it created the "bug" / "error".
point second : when using usually python27 and the classic method to have the csv file, after editing the skill.sdata, record it and put it back in sdata IF i want to extract it back as it is it created error in extraction ! after using skill_sdata.bat from python i need to save it first with oldstudio then to decrypt back and to extract it xD was the only way that i found to use without problem the Skill.sdata. not other sdata work pretty good :)
10/06/2014 15:49 castor4878#80
ok, some skills look correct (including Interpretation & Backpack upgrrade) but if's just a side effect of the skill validity filtering.

your file contains that:

where the first info, the value 1114 indicating the number of skills to follow, is wrong.
the editor relies on this figure to loop on the created and read records, it then tries to read episo 5 skills (9 levels per skills and 116 bytes per row), or if it fails episo 6 skills (15 lvl per skill, 138 bytes per row) or finally episo 4 (3 lvls per skill, 116 bytes per row). where you can note that the sizes of episo 4 and 5 skills are the same.

in your case, the file contains 3342 rows, and each block is made of 9 levels, so 3342/9 = 371 skills (the definition of the last skill is actually invalid) but the number of skills indicated as the first long of the file is 1114.
the editor so tries to read episo 5 skills (since this will require 1114 * 9 = 10026 rows), it fails to read episo 6 as expected, and finally it reads episo 4 skills (by block of 3 lvls), the 4th lvl of the 1st skill is so listed as the 1st level of a 2nd skill.

why this mess ? because you are using a python script wrote 5+ years ago when the sole known format was the episo 4 one with 3 levels per skill; the code so reads the number of lines of the CSV table and divide it by 3 to obtain the nbr of skills stored at the beginning of the sdata file. you SHALL replace that by a division by 9.
10/06/2014 16:14 _Diavolino_#81
Will try it ! very nice job you find really all solution xD Great !

Edit :
in python27, there is a folder "src" with skill.py and skill.pyc
in skill.py i have
10/06/2014 17:51 castor4878#82
the "record_total" and likely the test "(i == record_total and j == 3)" >> "j == 9"
this test could be the reason of your corrupted last skill.
10/07/2014 05:06 DevUpRoarr#83
wow good job !
10/08/2014 22:22 _Diavolino_#84
Hello,

Castor do you know how to manage "well" the orientation in space of the object building etc ? (i heard by orientation = the rotation of object to make them 'see' in one precise direction)

Because each map get orientation different same we could make a draw with the principal orientation from the existing object it is different on every map ...

Thank You

Regards,
10/08/2014 23:30 sominus#85
My sugestion:
-Go to an empty area in any map (small map so it loads faster).
-Insert the same building several times, with diferent orientations.
-Go in-game and write down 'what orientation gives each coordinate'.

A question:
The orientation is a float.

Does it go from 0.0 to 1.0?
Is it signed from -1.0 to +1.0 ?
Or it allows values greater than 1.0 ?

Can a object be rotated upside down? (I didn't suceed in rotating an object in the horizontal axis)
What for?
e.g.: You take a square base object (they are one-side textured, so you they look transparent if you see them from the oposite side).
So, you rotate a big square object upside down, and you could use it as a ceiling in some custom made area/room.
10/08/2014 23:42 Truth1010#86
From what i tested myself with the older ShStudio and NPC's Orientation. I don't believe their are any set 'limits' to what value you can have, as they just keep turning and turning.

Example :
1 = forwards facing
2 = left facing
3 = backwards facing
4 = right facing
5 = forwards facing
etc

At least from what i tried out it seemed to work like that, it would be nice to see/locate where each maps limits to or are kept, but it's not hard to just trial error each or location til you get what you want :)
10/09/2014 08:20 _Diavolino_#87
will tested it ^^ as Npc i did iget those coordonate approximatively but in the new studio i see the rotation get one variability of "-1.0 to +1.0" as Sominus told ...
Will edit it later when i will do it :p

thank you
10/09/2014 22:24 castor4878#88
The release 0.7.5.1 is published.

Bug Fixes:
- WLD editor:
+ the 'Del' key allows deletion of location records,
+ the "Save" menu item is present and usable,
+ the "Save As" menu item no longer crashes.
+ the .dg, .smod & .wav files can be replaced by another ones (right-click on the file to replace)
- the list of items sold by a merchant, as well as the list of available items, displays captions with right code page.
- the "Save As" menu item allows, for files that exist in different formats related to the version of the client, to choose that format.
- monster.sdata, contextual popup menu lets toggle between all or valid mobs.
- dark gears no longer display light models.
- SQL scripts make correct use of signed values.

Adds:
- svmap editor includes a "Safe Areas" panel that manages content of the world/TacticsZone.zon file.
- the monsterEx.sdata is again supported (restored).
10/09/2014 22:43 _Diavolino_#89
was waiting to see it :p Great Job *_* and big Thanks !


Quote:
- the monsterEx.sdata is again supported (restored).
in second option this is awesome ! *emotion*
10/10/2014 22:44 _Diavolino_#90
Hye^^

just a feeback, i was using the tool to modify .wld file, in add and replace of shape building.

I noticed that the index present in each world can make some confusion...
i means in some case if you delete some previous coordonate of some objects, tthat you add new object with coordonate etc the index could make the same number for many coordonate... its like when you delete it created "hole" then the tool replace in follow and if there is 1 2 3 4 5 6 you delete 3 4 you come to created 1 object with 3 coordonate index the 3 one will get number 5...and 5 existed all ready but it record.

the issue that i found is to delete progressively and to save and close the tool regulary to dont created big perturbation as "i was not doing that !" when you control the result in game ! OR to delete really ALL, untill to restart at index "0" :D maybe Castor got one better issue xD

in that case i would like first to get one certitude about the difference with Delete and Erase of the tool ? because in both way there is that "twist of object" with same index...

and to get one precision about this Index generate in .wld. because there is not new number when delete one coordonate of index it replace the passed number untill to arrive to one similar number of index...

thank you and sorry if its little twisted the explanation but to resume the situation of how its happened...make me :bandit:

Edit : i add a photo ^^ again in modification this happened and all coordonate are move to other object...


ps : there is not the possibility to see the item via them bag ? because was very practice to see the globality of item via the item Bag...