View Full Version : OLD: s3pe_1002-07-1313
pljones
7th Feb 2010, 03:24 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.
-----------------------
s3pe_1002-07-1313.exe (http://sourceforge.net/projects/sims3tools/files/s3pe/1002-07-1313/s3pe_1002-07-1313.exe/download) Easy install version
s3pe_1002-07-1313.7z (http://sourceforge.net/projects/sims3tools/files/s3pe/1002-07-1313/s3pe_1002-07-1313.7z/download) Manual install version
pljones
7th Feb 2010, 03:25 PM
Fundamentally, this fixes quite a lot, including Grid being broken.
Bug reports for this version in this thread please!
Equally as important, post if it's all working perfectly...
pljones
7th Feb 2010, 03:26 PM
Here's the full change log for s3pe since 2009-12-13:
1001-03-1524
latest rev: 428
VPXY Resource Editor:
Start centred on screen
Use s3pi.DemoPlugins.RunHelper.Run()
Improve a couple of error messages
Don't lose the FTPT TGI Block for modular resources!
Only first BoundingBox field had a value changed handler - fixed
OK Button disabled until (a) the resource changes, (b) there are some TGI blocks and (c) if it's Modular, there a TGI selected for the FTPT
Don't crash if FTPT TGI index is invalid
Remove resource change handler whilst saving, as saving updates the resource, causing a call to the change handler, which then corrupts the save
Get Linked Part entry IDs correct (they start from 1, not zero)
Always add the FTPT TGI to the end of the list, regardless of whether it's in there elsewhere and set the FTPT index to point to it
When renumbering the lists of parts, keep the numbers pointing to the right TGI blocks and keep the Tab order correct
Provide a means to renumber the list of linked parts
Enabled status of move buttons tracks whether they can be used
Common Move Up/Down routines to move entries in the lists of parts
Adding or deleting a linked part renumbers the list of linked parts
Bounding box value changes were handled wrongly (given how the VPXY wrapper is coded) - have to assign an array, rather than indivual elements
The input boxes store Decimal rather than Single/float values, so may round - check whether the float value as a Decimal matches the Decimal, rather than vice versa
OBJK Resource Editor:
Use s3pi.DemoPlugins.RunHelper.Run()
Use TGIBlockCombo
STBL Resource Editor:
Use s3pi.DemoPlugins.RunHelper.Run()
ViewDDS
Rewrite Program.cs to follow RunHelper.cs model.
Grid:
NewGridForm.cs: NewGridForm(AApiVersionedFields) constructor to call NewGridForm(AApiVersionedFields, bool).
NewGridForm.cs: Only the Add button's visibility is dependent upon being able to add to a list.
NewGridForm.cs: new Copy button's Enabled state to track the Delete button's.
NewGridForm.cs: new Copy button Click handler (similar to Add button)
NewGridForm.cs: Add button click handler: remove unused "count"
NewGridForm.cs: Add button click handler: select the newly added resource
NewGridForm.cs: Add button click handler: fix display of Exceptions
NewGridForm.cs: Correct link to devel forum
NewGridForm.Designer.cs: New Copy button
S3PIPropertyGrid.cs: Expandable lists should also have [...] button.
S3PIPropertyGrid.cs: IDictionaryCTD: IDictionaryEditor: EditValue: call Add(..) with "bare" constructor arguments (do not create an object)
S3PIPropertyGrid.cs: AsKVP: tidy up "contentFields" - do not need a static class constructor
S3PIPropertyGrid.cs: AsKVP: Standardize AHandlerElement constructor argument lists and add a constructor that accepts an AsKVP
S3PIPropertyGrid.cs: AsKVP: amend Clone(..) to call constructor passing "this"
S3PIPropertyGrid.cs: AsKVPList: amend Add() to call Add(..) with "bare" constructor arguments (not create an object)
MainForm
Fix display of Exceptions in the preview pane.
Resource->Import->As dbc... feature added.
--
1001-10-1133
latest rev: 429
VPXY Resource Editor:
Start centred on screen
Use s3pi.DemoPlugins.RunHelper.Run()
Improve a couple of error messages
Don't lose the FTPT TGI Block for modular resources!
Only first BoundingBox field had a value changed handler - fixed
OK Button disabled until (a) the resource changes, (b) there are some TGI blocks and (c) if it's Modular, there a TGI selected for the FTPT
Don't crash if FTPT TGI index is invalid
Remove resource change handler whilst saving, as saving updates the resource, causing a call to the change handler, which then corrupts the save
Get Linked Part entry IDs correct (they start from 1, not zero)
Always add the FTPT TGI to the end of the list, regardless of whether it's in there elsewhere and set the FTPT index to point to it
When renumbering the lists of parts, keep the numbers pointing to the right TGI blocks and keep the Tab order correct
Provide a means to renumber the list of linked parts
Enabled status of move buttons tracks whether they can be used
Common Move Up/Down routines to move entries in the lists of parts
Adding or deleting a linked part renumbers the list of linked parts
Bounding box value changes were handled wrongly (given how the VPXY wrapper is coded) - have to assign an array, rather than indivual elements
The input boxes store Decimal rather than Single/float values, so may round - check whether the float value as a Decimal matches the Decimal, rather than vice versa
OBJK Resource Editor:
Use s3pi.DemoPlugins.RunHelper.Run()
Use TGIBlockCombo
STBL Resource Editor:
Use s3pi.DemoPlugins.RunHelper.Run()
ViewDDS
Rewrite Program.cs to follow RunHelper.cs model.
Grid:
NewGridForm.cs: NewGridForm(AApiVersionedFields) constructor to call NewGridForm(AApiVersionedFields, bool).
NewGridForm.cs: Only the Add button's visibility is dependent upon being able to add to a list.
NewGridForm.cs: new Copy button's Enabled state to track the Delete button's.
NewGridForm.cs: new Copy button Click handler (similar to Add button)
NewGridForm.cs: Add button click handler: remove unused "count"
NewGridForm.cs: Add button click handler: select the newly added resource
NewGridForm.cs: Add button click handler: fix display of Exceptions
NewGridForm.cs: Correct link to devel forum
NewGridForm.Designer.cs: New Copy button
S3PIPropertyGrid.cs: Expandable lists should also have [...] button.
S3PIPropertyGrid.cs: IDictionaryCTD: IDictionaryEditor: EditValue: call Add(..) with "bare" constructor arguments (do not create an object)
S3PIPropertyGrid.cs: AsKVP: tidy up "contentFields" - do not need a static class constructor
S3PIPropertyGrid.cs: AsKVP: Standardize AHandlerElement constructor argument lists and add a constructor that accepts an AsKVP
S3PIPropertyGrid.cs: AsKVP: amend Clone(..) to call constructor passing "this"
S3PIPropertyGrid.cs: AsKVPList: amend Add() to call Add(..) with "bare" constructor arguments (not create an object)
MainForm
Fix display of Exceptions in the preview pane.
Resource->Import->As dbc... feature added.
--
1001-10-1727
latest rev: 430
Oops: infinite loop in catch{} code; fix and update to provide stack trace.--
1001-16-1638
latest rev: 432
Annoying VisualStudio error removed, restoring context menu Add, Import and Export.
And pick up latest s3pi with fixed MATD.
--
1002-07-1313
latest rev: 440
PropertyGrid.cs: Reorder TypedValuePropertyDescriptor.GetValue() to match PropertyType.
PropertyGrid.cs: Put common PropertyDescriptor code used where there's a type converter into a public class and use that throughout.
PropertyGrid.cs: Remove ctd.field to name unmangling from ArrayAsHexConverter.
PropertyGrid.cs: Put the array element type name at the start of the property name (not the end) in ArrayAsHexConverter.
PropertyGrid.cs: Move all the classes that aren't CTDs to the end.
PropertyGrid.cs: Get the TGIBlockList editor integrated.
ResourceDetails.cs: Consistent length for Group value.
MainForm.cs: Create new static wrapper around CopyableMessageBox.IssueException().
MainForm.cs: Make getVersion() and getString() static, as used from IssueException().
MainForm.cs: Replace exception messages with calls to IssueException() for consistency.
MainForm.cs: Add a Close() after reading in new resource content (and getting the version string).
BrowserWidget.cs: Replace exception message with call to MainForm.IssueException().
NewGridForm.cs: Replace exception message with call to MainForm.IssueException().
ReaderEditorPanel.cs: Replace exception messages with calls to MainForm.IssueException().
Program.cs: Replace exception message with call to MainForm.IssueException().
Inge Jones
7th Feb 2010, 03:33 PM
As well as bug reports, please also post if it is working well for you.
pljones
7th Feb 2010, 03:35 PM
Here's the complete list of changes to the s3pi library since 2009-12-13.
1001-02-1833
latest rev: 323
TerrainGeometryWaterBrushCatalogResource: Rename Unknown8 to BrushIndex for the field that associates a brush with its pair (really only applies to CTPT rather than CWAT).
DemoPlugins: Add "RunHelper" class and "IRunHelper" interface. RunHelper.Run() accepts a Form/IRunHelper type and a parameter list (of strings). The parameter list is parsed for either /clipboard or a filename. The Form is then invoked with a Stream reference to the clipboard or file data. If Environment.ExitCode is zero, the clipboard or file are then updated with IRunHelper.Result.
DemoPlugins: Oops, didn't quite get the not using clipboard for Plugins change right. Here's "Take 2".
DemoPlugins: Oops: res.Stream.Position is never where you want it; write the whole resource to the file.
Helpers.txt: Pass resources by file ("{}") rather than clipboard to s3pe editors.
Helpers.txt: Put quotes around filenames, too.
Helpers.txt: Add a note about putting quotes around filenames.
TGIComboBox: Oops, SelectedIndexChanged event not being raised when GUI used to change selected index.
s3pi:
- Start adding XML documentation to CS System Classes, Custom Forms and s3pi.Interfaces
- Removed (commented out) a couple of unused methods from AApiVersionedFields
- Tidied up XML doc comments in various places
IGenericAdd.cs: Include Add(params object[]) in interface declaration
AResource.cs: mark Add(params object[]) as virtual
AResource.cs: AHandlerElements should be passed to their own constructors with apiversion and handler
AResource.cs: TGIBlock: add constructor that takes a TGIBlock
AResource.cs: TGIBlock: amend Clone(..) to call constructor passing "this"
AResource.cs: TGIBlockList: amend Add() to call Add(..) with "bare" constructor arguments (not create an object)
Wrappers:
(Most of these changes are to comply with "AResource.cs: AHandlerElements should be passed to their own constructors with apiversion and handler" above.)
CatalogResource.cs: Common: constructor that gets passed a Common block, calls this(...)
CatalogResource.cs: Common: constructor that gets passed individual fields, correct names of version (from unknown1) and buildBuyProductStatusFlags (from unknown4) in argument list
CatalogResource.cs: TypeCode01-7/2F/40: new constructor that gets passed a TypeCode01-7/2F/40
CatalogResource.cs: TypeCode01-7/2F/40: amend Clone(..) to call constructor passing "this"
CatalogResource.cs: TypeCodeList: GetElementType might get passed a TypeCode object, so just return its type
CatalogResource.cs: MaterialBlock: constructor that gets passed a MaterialBlock, calls this(...)
CatalogResource.cs: MaterialBlockList: amend Add() to call Add(..) with "bare" constructor arguments (not create an object)
CatalogResource.cs: MaterialList: amend Add() to call Add(..) with "bare" constructor arguments (not create an object)
ObjectCatalogResource.cs: MTDoor: constructor that gets passed an MTDoor, calls this(...)
ObjectCatalogResource.cs: MTDoorList: amend Add() to call Add(..) with "bare" constructor arguments (not create an object)
WallFloorPatternCatalogResource.cs: WallFloorPatternMaterialList: amend Add() to call Add(..) with "bare" constructor arguments (not create an object)
GenericRCOLResource.cs: ChunkEntry: new constructor that gets passed a ChunkEntry
GenericRCOLResource.cs: ChunkEntry: constructor that gets passed individual fields, clone the lists!
GenericRCOLResource.cs: ChunkEntry: amend Clone(..) to call constructor passing "this"
FTPT.cs: PolygonPoint: constructor that gets passed a PolygonPoint, calls this(...)
FTPT.cs: PolygonPointList: amend Add() to call Add(..) with "bare" constructor arguments (not create an object)
FTPT.cs: Area: constructor that gets passed an Area, calls this(...)
FTPT.cs: AreaList: amend Add() to call Add(..) with "bare" constructor arguments (not create an object)
MATD.cs: ElementUInt32: new constructor that gets passed an ElementUInt32
MATD.cs: ElementUInt32: amend Clone(..) to call constructor passing "this"
MATD.cs: ElementSingle: new constructor that gets passed an ElementSingle
MATD.cs: ElementSingle: amend Clone(..) to call constructor passing "this"
MATD.cs: EntryList: Add support for IGenericAdd interface
MATD.cs: ShaderData: constructor that gets passed a ShaderData, calls this(...)
MATD.cs: ShaderDataList: Parse() should only be called from a constructor, so don't call Clear()
MATD.cs: ShaderDataList: Parse() should call this.Add(..) than base.Add(..)
MATD.cs: ShaderDataList: Parse() can call Add(Stream)
MATD.cs: ShaderDataList: Add() cannot add an entry as it has no idea what type is needed
VPXY.cs: Constructor that gets passed a VPXY, calls this(...)
VPXY.cs: ElementUInt32: new constructor that gets passed an ElementUInt32
VPXY.cs: ElementUInt32: amend Clone(..) to call constructor passing "this"
VPXY.cs: UintList: amend Add() to call Add(..) with "bare" constructor arguments (not create an object)
VPXY.cs: Entry00: new constructor that gets passed an Entry00
VPXY.cs: Entry00: amend Clone(..) to call constructor passing "this"
VPXY.cs: Entry01: new constructor that gets passed an Entry01
VPXY.cs: Entry01: amend Clone(..) to call constructor passing "this"
VPXY.cs: EntryList: GetElementType might get passed an Entry object, so just return its type
ModularResource.cs: TGIIndex: new constructor that gets passed a TGIIndex
ModularResource.cs: TGIIndex: amend Clone(..) to call constructor passing "this"
ObjKeyResource.cs: ComponentElement: new constructor that gets passed a ComponentElement
ObjKeyResource.cs: ComponentElement: amend Clone(..) to call constructor passing "this"
ObjKeyResource.cs: ComponentDataType subClasses: new constructor that gets passed a ComponentDataType subClass instance
ObjKeyResource.cs: ComponentDataType subClasses: amend Clone(..) to call constructor passing "this"
ObjKeyResource.cs: ComponentDataList: GetElementType might get passed an ComponentDataType object, so just return its type
TxtxResource.cs: SuperBlock: constructor that gets passed a SuperBlock, calls this(...)
TxtxResource.cs: Entry subClasses: new constructor that gets passed an Entry subClass instance
TxtxResource.cs: Entry subClasses: amend Clone(..) to call constructor passing "this"
TxtxResource.cs: EntryList: GetElementType might get passed an Entry object, so just return its type
TxtxResource.cs: EntryBlock: make constructor that gets passed an EntryBlock public
--
1001-10-1726
latest rev: 324
CatalogResource.cs: TypeCode01: Constructor must allow string to be null.
--
1001-16-1636
latest rev: 327
GenericRCOLResource.cs:
Start each RCOL chunk on a four-byte boundary.
MATD.cs:
Correct writing of offsets within ShaderData EntryLists.
Add checking of offsets within ShaderData EntryLists.
Amend EntryList stream constructor to manage the element handler correctly.
--
1002-07-1311
latest rev: 353
CustomForms: TGIBlockListEditor: Oops: Clear the list when the form is created.
CustomForms: CopyableMessageBox: Move code to own folder for consistency.
CustomForms: Tidy up public face of CopyableMessageBox.
CustomForms: Move "IssueException()" method from RunHelper to CopyableMessageBox.
DemoPlugins: RunHelper.cs: Move "IssueException()" method to CopyableMessageBox.
DemoPlugins: DemoPlugins.cs: Use CopyableMessageBox.IssueException() method.
Settings.cs: New AsBytesWorkaround setting, set to "true", used to bypass "dirty" processing when flushing Stream property.
Interfaces.csproj: Add reference to Settings.
AResource.cs: AResource now requires UnParse() to be defined in implementers
AResource.cs: Default Stream property implements "if (dirty ...) { ... }" behaviour.
AApiVersionedFields.cs: AHandlerElement now provides "dirty" tracking through OnElementChanged().
CatalogResource: Fix TypeCode so it removes ControlCode from ContentFields when null.
CatalogResource: Use OnResourceChanged after .ctor with null stream.
ModularResource: Use OnResourceChanged after .ctor with null stream.
NameMapResource: Use OnResourceChanged after .ctor with null stream.
ObjKeyResource: Use OnResourceChanged after .ctor with null stream.
ScriptResource: Exception handling amended to work like CopyableMessageBox.IssueException().
ScriptResource: Use OnResourceChanged after .ctor with null stream.
StblResource: Use OnResourceChanged after .ctor with null stream.
DefaultResource.cs: AResource UnParse not used, Stream returns stream.
ImageResource.cs: AResource UnParse not used, Stream returns stream.
TextResource.cs: AResource UnParse not used, Stream returns stream.
ComplateResource.cs: Update for changes in AResource.
TxtcResource: Move creation of EntryList entries into EntryList.
ARCOLBlock.cs: Use dirty tracking through OnElementChanged().
GenericRCOLResource: Rewrite ChunkEntryList creation to ensure elementHandler is correctly set on elements.
GenericRCOLResource: Use OnResourceChanged after .ctor with null stream.
DefaultRCOL.cs: Avoid raising change events in .ctor.
FTPT.cs: Avoid raising change events in .ctor.
VPXT.cs: Avoid raising change events in .ctor.
MATD.cs: Avoid raising change events in .ctor.
MATD.cs: MTNF and MTRL elements should have OnRCOLChanged handler.
Raven Shadow
7th Feb 2010, 07:58 PM
The AsBytes tree now lists editable data and the grid will display vpxy bounding box info.
Replace function no longer works, Import from file has to be used instead.
When a child window or context menu is closed, part of it's outline will
continue to be seen in the lower part bottom pane, where the "indexpart", "indexcount", etc. , lines are.
That area is only refesh when the app is minimized/restored or
is covered by another window.
Inge Jones
7th Feb 2010, 08:49 PM
Replace function no longer works
Lol! Swings and roundabouts...
pljones
7th Feb 2010, 08:57 PM
When a child window or context menu is closed, part of it's outline will
continue to be seen in the lower part bottom pane, where the "indexpart", "indexcount", etc. , lines are.
That area is only refesh when the app is minimized/restored or
is covered by another window.That's not an s3pe problem. Unfortunately. s3pe isn't responsible for screen drawing. That's down to Windows and .Net. If it's glitching, you may need to restart. If that doesn't fix it... hmm...
Raven Shadow
8th Feb 2010, 10:54 PM
Rebooting doesn' stop it. It's nothing important, just a graphical glitch that I mentioned with the other bug I'd found.
Gisu
9th Feb 2010, 02:50 PM
When I use the copy button in the materials grid of the OBJD to create a new material, and then change the _IMG instance as explained in the multiple paintings tutorial, the material I copied takes on the texture of the new material. Changing the instance number in the copied material back to what it's supposed to be, results in the new material taking on that instance number as well.
Is pressing the copy button all you have to do to make a new material or is there anything else I need to do to make it seperate from the one I copied from?
ETA: I think I've figured it out. When I change the last digit in the Unknown3 line (see Pic) of the new material to a different number than the already existing materials have there, than it shows up in game as a seperate material.
I copied [0]material and the last digit was 2, then I changed it to 5 (since the other two materials had 3 and 4 there) and now it works.
Of course, by doing that, I could have borked something not readily apparent on the object, but so far it's working.
cmomoney
9th Feb 2010, 11:48 PM
I think I've figured it out. When I change the last digit in the Unknown3 line (see Pic) of the new material to a different number than the already existing materials have there, than it shows up in game as a seperate material.
I copied [0]material and the last digit was 2, then I changed it to 5 (since the other two materials had 3 and 4 there) and now it works.
Of course, by doing that, I could have borked something not readily apparent on the object, but so far it's working.
No, that is how you do it. Guess I could have told you that, huh?
pljones
10th Feb 2010, 07:33 AM
Hi the "Jones", I'm really getting confused with these version numbers. Is this ver. s3pe_1002-07-1313 the same as the s3pe.exe in the folder "s3pe-1001-16-1638" that I unzipped yesterday? Cheers CarlosThe reason for the numbers being different is that they represent different versions. If they represented the same version, the numbers would be the same.
Inge Jones
10th Feb 2010, 08:46 AM
Carlos, assuming you are installing manually, best to just wipe out the folder, and download from fresh. That way you will know for sure you got the latest of everything.
Gisu
10th Feb 2010, 08:48 AM
No, that is how you do it. Guess I could have told you that, huh?
Nah, this way, I get to feel all smart and accomplished for figuring it out myself...
But it is good to get confirmation that this isn't gonna make my game and/or computer go booom!
Raven Shadow
11th Feb 2010, 02:33 AM
When editing the vpxy ( via the edit button )
I clicked the add part button, then changed my mind and clicked the delete button
and got this error:
Index was out of range. Must be non-negative and less than the size of
the collection
Parameter name: index
************** Exception Text **************
System.ArgumentOutOfRangeException: Index was out of range. Must be non-negative and less than the size of the collection.
Parameter name: index
at System.ThrowHelper.ThrowArgumentOutOfRangeException(ExceptionArgument argument, ExceptionResource resource)
at System.ThrowHelper.ThrowArgumentOutOfRangeException()
at System.Collections.Generic.List`1.RemoveAt(Int32 index)
at s3pe_VPXY_Resource_Editor.MainForm.btnDel_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)
Edit: Found another bug
Using the vpxy resource editor to add an ftpt reference
via the TGI Blocks... button.
The new entry was not added to the editors parts list and the
editors save button remained disabled. (the TGI window's save button was enabled correctly)
Inge Jones
11th Feb 2010, 08:53 AM
I don't think Peter fixed the VPXY editor, it's probably still broken since the thread we advised using Delphy's for now (or the grid as that's meant to be fixed in this release).
Raven Shadow
11th Feb 2010, 12:32 PM
I found that there is a sequence that seems to work.
1) Add to the TGI list 1st
2) Use parts list Add button and select the item (from the drop down) added to the tgi
3) Save button becomes enabled.
pljones
11th Feb 2010, 09:35 PM
Adding a TGIBlock to the TGIBlockList only does that. You also need to decide how to use that TGIBlock - I'm not aware of any way to guess. (For example, there are two places a FTPT could be used.) Given the way the editor works, there's no point it allowing a save until you've referenced the TGIBlock, it wouldn't store it anyway.
The nasty crashbug is annoying because I know it's going to take ages to fix and I'll probably break something else...
Inge Jones
11th Feb 2010, 09:41 PM
Yeah but I think Raven is just saying that's a way to unlock the Save button, not that the new TGI block needs to be user - perhaps it can just sit there having served its purpose :D
Raven Shadow
11th Feb 2010, 11:47 PM
Ok, I think I should mention something then.
A couple days ago I cloned a rug to see if I could make it function as a school
rabbit hole.
One of the things I did was to add a 2nd ftpt to the vpxy's tgi block, but I forgot
to add it to the parts list. I don't know if the game is using the 2nd ftpt or not, 'cause
of that, but I know that the rug now thinks it's a rabbit hole.
pljones
12th Feb 2010, 09:10 PM
Ok, I think I should mention something then.
A couple days ago I cloned a rug to see if I could make it function as a school
rabbit hole.
One of the things I did was to add a 2nd ftpt to the vpxy's tgi block, but I forgot
to add it to the parts list. I don't know if the game is using the 2nd ftpt or not, 'cause
of that, but I know that the rug now thinks it's a rabbit hole.Did you add the 2nd ftpt with the s3pe editor, Delphy's editor or the Grid? (They all work differently.)
If you select the VPXY, does the preview pane show the extra FTPT? If so, it's been added. However, I can't imagine the game is using it if nothing is telling it to. Oh, sorry... I'm being stupid: this is EA and what I just said was logical... :rofl:
Raven Shadow
12th Feb 2010, 10:36 PM
lol
I added it by using S3PE's edit button.
The new ftpt only showed up in the the vpxy editor's TGI BLocks ... child window,
not in the parts list in the editor's main window.
I've since added it to the parts list.
Inge Jones
13th Feb 2010, 10:33 AM
The AsBytes tree now lists editable data and the grid will display vpxy bounding box info.
Replace function no longer works, Import from file has to be used instead.
When a child window or context menu is closed, part of it's outline will
continue to be seen in the lower part bottom pane, where the "indexpart", "indexcount", etc. , lines are.
That area is only refesh when the app is minimized/restored or
is covered by another window.
I have quoted your whole post as it was a long way back in the thread...
Ok, testing this, I can use Replace to replace a DDS image, using right-click, Replace on the listed resource. Did you mean Replace is only broken on specific resource types? Or am I misunderstanding which type of Replace you meant?
pljones
13th Feb 2010, 02:06 PM
When editing the vpxy ( via the edit button )
I clicked the add part button, then changed my mind and clicked the delete button
and got this error:
Index was out of range. Must be non-negative and less than the size of
the collection
Parameter name: indexOK, found it. Should be fixed in the next version.
Remember, the "line numbers" aren't line numbers, they're entry numbers and include the "linked parts". So where you see a "gap", you know there's a linked part.
It's a bug if moving stuff up and down crashes... I just can't reproduce it.
So if you could answer Inge's question above and also give me a "step-by-step" on the up/down/crash, please! :D
Raven Shadow
13th Feb 2010, 05:17 PM
alrighty, Inge first then.
If I remember correctly I was trying to replace the RSLT of Object A
with one from Object B, and then load Object A into the game to verify the change.
I'm working on rabbit holes, so what I should have seen was, sims would stand right
in front of Object A ( a rug) and vanish.
But the RSLT wasn'tt replaced so they were instead using approach slots that were farther away.
I tried to replace 3 times before using the import function instead.
PLJones:
USing S3OC clone the RugCountryRound2x2 and open the package in S3PE (v1002-07-1313).
Highlight the VPXY and click External:Edit
Click Add Part
Click Delete Part
and there's your crash dialogue ..
I just tested and can say the crash only happens if the entry created by the Add
button is left empty.
If you select something in the new drop down, then delete, no crash occures.
Inge Jones
13th Feb 2010, 05:28 PM
I don't think you can just swap Scene files like that - they have references inside that need to match what they're replacing. So probably the Replace happened, but failed to give the results you wanted.
pljones
14th Feb 2010, 01:30 PM
PLJones:
USing S3OC clone the RugCountryRound2x2 and open the package in S3PE (v1002-07-1313).
Highlight the VPXY and click External:Edit
Click Add Part
Click Delete Part
and there's your crash dialogue ..That's not what I asked. I asked about the moving Up/Down crash. I think I've fixed the add/delete one in the next build.
Inge Jones
14th Feb 2010, 01:43 PM
Up/down is working fine for me anyway. We'll assume this got fixed at the same time unless we hear again in the thread for the next version.
Time to close this as I think we have it ready now?
vBulletin v3.0.14, Copyright ©2000-2013, Jelsoft Enterprises Ltd.