PDA

View Full Version : OLD: s3pe_1002-14-1246


pljones
14th Feb 2010, 02:06 PM
This thread is for people wanting to test at the bleeding edge of development. If you're looking for the stable release, please switch to this thread (http://www.modthesims.info/showthread.php?t=362412).

Any questions regarding the behaviour of this release should be posted as replies below.

Bug reports for this version in this thread please!

Equally as important, post if it's all working perfectly...
-----------------------
Windows Easy Installer version (http://sourceforge.net/projects/sims3tools/files/s3pe/1002-14-1246/s3pe_1002-14-1246.exe/download)

Unpack-It-Yourself version (http://sourceforge.net/projects/sims3tools/files/s3pe/1002-14-1246/s3pe_1002-14-1246.7z/download)
-----------------------

Change Summary
Fix "delete part", where part follows a linked part, in VPXY editor.
Update displayed details after changes through Resource Details form.
Fix very strange behaviour when creating the NameMap through adding a name to an existing resource.

pljones
14th Feb 2010, 02:08 PM
latest rev: 447

VPXY Editor: Oops: currentVPXYentry is the wrong number; remove by TGIBlockCombo.

Fix updating ResourceIndexEntry details.
BrowserWidget now exposes ResourceKey and handles changes to this specially (i.e. doesn't get confused).
Fix Tab order on ResourceDetails form.
If the ResourceName changes, update the TGIN value.

Move UpdateNameMap to BrowserWidget and rename it ResourceName.
MainForm.cs: In resourceAdd(), create an empty resource and update the package explicitly, move ResourceName() after this.
MainForm.cs: In resourceDetails(), move ResourceName() after updating selected resource.
BrowserWidget.cs: Some additional code reorganisation.

Link to previous changes since last release (http://www.modthesims.info/showthread.php?t=390311#post3049126)

Raven Shadow
14th Feb 2010, 02:48 PM
PLJones,
My appologies.
The up/down bug posted in the previous QA version's thread IS fixed,
but I found a 2nd up/down bug.

Using the VPXY Editor on a file with 10 parts, when I move down an entry
whose line is numbered with a decimal number to a position that would have it
numbered with a letter, I get "Input string was not in the correct format"


************** Exception Text **************
System.FormatException: Input string was not in a correct format.
at System.Number.StringToNumber(String str, NumberStyles options, NumberBuffer& number, NumberFormatInfo info, Boolean parseDecimal)
at System.Number.ParseInt32(String s, NumberStyles style, NumberFormatInfo info)
at s3pe_VPXY_Resource_Editor.MainForm.RenumberTLP()
at s3pe_VPXY_Resource_Editor.MainForm.moveDown(TableLayoutPanel tlp, List`1 ltbc, Label lb, TLPRenumber renumber, Int32& entry)
at s3pe_VPXY_Resource_Editor.MainForm.btnMoveDown_Click(Object sender, EventArgs e)
at System.Windows.Forms.Control.OnClick(EventArgs e)
at System.Windows.Forms.Button.OnClick(EventArgs e)
at System.Windows.Forms.Button.OnMouseUp(MouseEventArgs mevent)
at System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks)
at System.Windows.Forms.Control.WndProc(Message& m)
at System.Windows.Forms.ButtonBase.WndProc(Message& m)
at System.Windows.Forms.Button.WndProc(Message& m)
at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)

I don't know if it's relevant, but the last part is linked.
So, I get it when moving any line numbered 0 thru 9, to below line A
in this file.
I don't get this error a file with 5 parts.

Oops heres another crash.
If I added part s to a file with 5 parts, everything is ok
until I add part 11, which is line number A
I get the same eror message.

I believe both errors ocure when there are enough pars for the line numbers to go
from numbers to letters.

Raven Shadow
14th Feb 2010, 02:55 PM
Inge,
RE: The last post in the previous QA versions thread.
The RSLT, itself, only contains references to joint and slot names.
One only has to use the FTPT that goes with he new RSLT to preserve slot names,
and make sure the meshes jonts are correctly named for it.

So I could tell the relace didn't occure because of the file sizes were not correct.
The original was smaller then the import.

Inge Jones
14th Feb 2010, 05:02 PM
Surely that would demonstrate that the replace *did* occur, if the filesize was different after the replace than it was before? Or are you saying you would have expected them to be different but the filesize was the *same* after the replace?

pljones
14th Feb 2010, 05:29 PM
Using the VPXY Editor on a file with 10 parts, when I move down an entry whose line is numbered with a decimal number to a position that would have it numbered with a letter, I get "Input string was not in the correct format"
....
Oops heres another crash.
If I added part s to a file with 5 parts, everything is ok
until I add part 11, which is line number A
I get the same eror message.

I believe both errors ocure when there are enough pars for the line numbers to go from numbers to letters.Thanks! :cry: ;)

Raven Shadow
15th Feb 2010, 09:44 PM
Surely that would demonstrate that the replace *did* occur, if the filesize was different after the replace than it was before? Or are you saying you would have expected them to be different but the filesize was the *same* after the replace?

Exactly, If I remember corretly, the grid said the slot data in the original
files was 0x58 bytes in length, while the new file was 0x100 bytes in length.
When I tried the replace function (and saved) then checked, the data length
remained at 0x58 in length.
When I have a chance I'll try it again, since I'm usin this QA version, now.

Inge Jones
15th Feb 2010, 10:12 PM
Oh, you mean you weren't talking about this version in this thread? That's why I closed the other thread, we particularly only wanted to know if it *remained* a problem in the new release. :) Please only post about a bug when it is actually present in the release in the current thread.

rebecah
16th Feb 2010, 01:47 AM
When trying to add an S3SA resource the program freezes up.

I tried this on a previous QA version (s3pe_1002-07-1313) today and had the problem came here to report it and found a new QA version (s3pe_1002-14-1246) but this version is doing the same thing.

The non QA version works ok to import the same resource.

Inge Jones
16th Feb 2010, 08:44 AM
Rebecah, at which point does it appear to lock up? Is this creating a S3SA as a new empty resource, importing a ready made one from another package, or what? If you originally got the technique from a tutorial, can you link me to it and say what step you were at?

rebecah
16th Feb 2010, 01:08 PM
I go to Resources add enter the following:

Type S3SA 0x073FAA07
Group 0x00000000
Instance (whatever is needed from the FNV Hash)
EP Flags 0x00

Check compress, and use resource name

add my dll name

click ok (this is where it acts like its in and infinite loop)

Tutorial Shot of where I'm at is here: http://thumbs2.modthesims2.com/img/2/1/8/9/6/0/1/MTS2_Kolipoki_979899_Resource.JPG

Thanks so much for checking into this.

Inge Jones
16th Feb 2010, 01:09 PM
Ok so this is all part of the problem creating new resources, which I had hoped were fixed in this QA version... :(

Could all testers if they have time, try creating various resources and let us know which ones are still broken?

Edit: report confirmed - happens to me too, and it doesn't depend on use name, compression or those details.

plasticbox
16th Feb 2010, 01:18 PM
As mentioned in this thread http://www.modthesims.info/showthread.php?t=391567 I downloaded s3pe_1002-14-1246 to see if it would change the locking-down-open-files behaviour described there.

It doesn't; I'm still unable to copy a file from a networked machine while it's open in s3pe. I haven't tested copying it locally.

The networked machine is running OS X 10.5.8; I'm logged in as registered user with all privileges. With other applications, e.g. Editor (the standard Windows text editor – don't know if it has a "real name"), this isn't an issue; I can have the same file open on both machines and copy, rename, replace all I want.


Also, and I realise I'm a sucky tester: I tried editing an objd in this qa version, and it apparently wrote out garbage that neither itself nor the current stable release was able to read in anymore. The errors I see are partly in German, though (I have a German Windows), so I didn't take a screenshot. What I tried to do was edit the material presets of a dining chair in a somewhat experimental fashion (adding typecodes that weren't in there before, and removing the old ones).

Sorry for the useless report (I know it boils down to "dosent work!!1"), but what I mainly wanted to test was the file copying thing, I only noticed the broken objd while I was at it.

Inge Jones
16th Feb 2010, 01:23 PM
I tried editing an objd in this qa version.

In the Grid form? Did this same activity work for you in previous versions? I have just added two material blocks to a test object, via the Grid, and s3pe is still reading the resource without apparent error.

rebecah
16th Feb 2010, 02:15 PM
I went through and tried to find any other broken resources, I did several others besides the ones in the pic but I tried s3sa again and lost all those.

I hope this is helpful.

Inge Jones
16th Feb 2010, 02:17 PM
Thanks Rebecah, that's looking hopeful then if you managed to make all those (before you lost them) at least they were created.

plasticbox
16th Feb 2010, 03:11 PM
In the Grid form? Did this same activity work for you in previous versions?
I only used the current stable version so far (the January-reverted-to-December one), and in that one there is no option to add typecodes (the "Copy" button that this qa release has). So, it kind of "doesnt work" because it's not available =P.

I have just added two material blocks to a test object, via the Grid, and s3pe is still reading the resource without apparent error.
I was adding typecodes to existing material blocks, not whole new material blocks. The reason for this was that I wanted to use a solid colour (this needs e.g. a "colour 0" typecode entry, 0x47 I believe) for one of the presets, but the object I cloned from only uses materials that have .. pictures and stuff; those are using different typecodes. What I did was clone an EA object that is using solid colour in its presets, and replicate all the typecode types and values from there.

In other words, along the lines of this tutorial: http://www.modthesims.info/showthread.php?t=377883 , only with one more level of fiddling.


By the way, one thing that would make editing presets a lot more transparent: for all I can tell, the different typecode "formats" (the list on the left shows "TypeCode01", "TypeCode02", "TypeCode40" among others –*this is off the top of my head, sorry I don't have s3pe open atm) seem to denote types, like int, float, array, string .. is that correct? It would be a lot easier to see what's what if they were also labeled like that – I for one can distinguish between "string" and "float" in a list much easier than between "01" and "03". It would also be cool to be able to sort these lists by type.

Inge Jones
16th Feb 2010, 03:15 PM
Did anyone update the wiki with these equivalents? We're not deliberately withholding labels, we add the ones we know.

plasticbox
16th Feb 2010, 03:32 PM
I only inferred the types by .. inferring them, so to speak (as in, I saw that all the "X" ones seemed to be strings, the "Y" ones ints and so on). I don't know whether this is in the wiki .. I don't even know whether the pattern I think I'm seeing is correct – I thought if anyone knew that for sure, that'd be you =).

Where would this be in the wiki, does it exist yet? If so, do you have a link? All I know is this list: http://www.simswiki.info/wiki.php?title=Sims_3:Catalog_Resource/StringTable but that's the control codes and their meanings, not the formats (as in what type of data it is).

Inge Jones
16th Feb 2010, 04:28 PM
I'd have liked to ask Tiger for a concrete example to understand that entry fully

plasticbox
16th Feb 2010, 04:58 PM
Tiger is still around? o.O

With "that entry" you mean the string table page? What sort of concrete example would you need? I haven't encountered all of it, but some of these entries are in the materials of objects I made, so I've seen what they do .. probably other creators who made different sorts of objects will know more about some of the other parts.

Perhaps make a thread about it and explicitely ask for input/examples/comments? I for one had no idea until now that you need feedback on this =).

Inge Jones
16th Feb 2010, 05:59 PM
We need feedback on everything. We know very little about the files that go to make up the game. Peter is a coder, but he only codes to a spec he's given. I design the UI. But we need someone other than the two of us to tell us what actually needs to happen with and to the data.

plasticbox
16th Feb 2010, 06:32 PM
Next time I fiddle with presets (or when I have that object open, it needs more fiddling in other areas) I'll try making a list of "stuff I think I know" and .. post it here? Pass it on to you? It's not a lot more than it says in the tutorial anyway, though, except perhaps for the typecode number = data types thing.

In the meantime, regarding typecodes used in materials, you could look at that tutorial I linked to a few posts up – if you scroll down to "Linking to the pattern", cmo has a very clear list in there of some basic values, and I can confirm they're correct because I've used this tutorial and my presets work as expected. This kind of thing could be streamlined a lot just by labeling some boxes, I think … instead of "TypeCode03 – ControlCode 0x0A" it could say "TGI index of the specmap (hexadecimal value)", perhaps in fewer words. Even cooler would be if when looking at the TGI list, it somehow knew what the entries are (so instead of "entry number 11" it could say "specmap of pattern B" when that's what refers to this entry, then the user wouldn't need to look this up at all.

Same goes for the colour values if you scroll down a bit further:

0x0D = H Bg value
0x0F = S Bg value
0x0E = V Bg value

0x10 = Base H value
0x12 = Base S value
0x11 = Base V value

0x0C = HSVShift Bg values

are definitely correct and could be labeled like that.

Also, it would help greatly if TGI lists were numbered in both dec and hex – embarrassing as it is, I still use my fingers to convert =P.


And yet another thing (not directly related but also along the lines of making things easier) – right now, when cloning objects, s3oc copies a lot of standard resources into the object. Like the standard dropshadow blob texture, default black specmap, default "burned" texture and such. It is helpful to have e.g. the dropshadow available for mapping the dropshadow mesh, but one actually only needs it once and removing these things is a bit tedious (it works perfectly fine to delete them and refer to the in-game ones instead). Would it be feasible to invent a "nuke unchanged default resources and link to them instead" button? Either in s3pe or in s3oc? Or does this already exist and I'm being silly for doing it manually? (I'll admit I haven't read any docs)

I know where these need to be linked, just off the top of my head I don't .. the dropshadow and burned texture in the modl/lod i believe, overlays and materials in each of the material TGI blocks.

pljones
16th Feb 2010, 07:23 PM
The best thing to do is to check it against the existing information on the Wiki. If you think you've got something new, either edit the page -- or use the "Discussion" tab if you're not so sure and post in a few places, preferably where others hacking the same files will see it, for others to review it.

The other thing is that s3pe is a very "light" program. It adds nothing on top of the specification in the Wiki. The information needs to be something that can be expressed in directly in the file format, rather than inferred from context. Where there is a simple relation, this can be captured in an "enum" (like the StringTable (http://www.simswiki.info/wiki.php?title=Sims_3:Catalog_Resource/StringTable) values). This will then restrict the values allowed in s3pe to those known about.

You can read about all the other file formats by starting at the root of the TS3 Advanced Coding Tutorials (http://www.simswiki.info/wiki.php?title=Tutorials:TS3_Advanced_Coding_Tutorials) and browsing around. Not all the "known" formats are supported in s3pe -- we have to prioritise those that will be of most benefit to modders.

Finally, we're happy to consider feature requests -- but can you post them elsewhere than the QA threads, as they'll probably get forgotten!

plasticbox
16th Feb 2010, 07:53 PM
I can't follow when you say "The information needs to be something that can be expressed directly in the file format, rather than inferred from context" –*I guess you're telling me that something I said can't be implemented, but what? The shiny-button-to-kick-out-duplicate-resources thing (since s3pe doesn't distinguish between unchanged and not)?

I'll make a new post with the request-type stuff. Do you count requests/suggestions/wishes regarding the UI (like labeling things) as feature requests, or are those better off here? I don't want to make them duplicate now ..

pljones
16th Feb 2010, 09:25 PM
I can't follow when you say "The information needs to be something that can be expressed directly in the file format, rather than inferred from context" –*I guess you're telling me that something I said can't be implemented, but what? The shiny-button-to-kick-out-duplicate-resources thing (since s3pe doesn't distinguish between unchanged and not)?Not exactly. I'm saying that s3pe has no intelligence. It cannot look at the value of field X and the value of field Y and come to some conclusion about what to do. However, if it only needs to be told that "field X is the widget code and here are the different kinds of widget and their codes", it can display "widget code" rather than "field X" and let you pick one of the permitted values.

Certainly the shiny-button-to-kick-out-duplicate-resources would fall outside its remit. More likely to be an option on s3oc, if it's part of the cloning process. s3oc is the "wizard"; s3pe is the surgical instrument... sort of...
I'll make a new post with the request-type stuff. Do you count requests/suggestions/wishes regarding the UI (like labeling things) as feature requests, or are those better off here? I don't want to make them duplicate now ..The QA threads should really only contain views pertinent to the QA version under test: i.e. "I tried to do X and the program did Y - it's broken" or "I've tried everything I can think of and it all works".

Inge Jones
16th Feb 2010, 10:19 PM
What Peter is trying to say is that while SimPE had a lot of built-in "tool" to it - it would put information from various packed resources together to present you with a picture of the object - s3pe does not do this. It presents the data "flat".

The concept of s3pe is it expects there will be external, bolt on (helper), or independent tools to do specific modding tasks or give composite views on the data. We took that decision so that no session or user would be overloaded with features you're never going to want to use. If each tool is kept small and to-the-point, a package or resource can slide in and out of them quite smoothly and rapidly.