- Site Map >
- Modding and Creation >
- Sims 3 Creation >
- Modding Discussion >
- Change where objects are placed on surfaces.
- Site Map >
- Modding and Creation >
- Sims 3 Creation >
- Modding Discussion >
- Change where objects are placed on surfaces.
Posts: 40
Thanks: 9120 in 21 Posts
(using s3pe,s3oc,photoshop and milkshape if it helps to know)
Would be very happy if someone could tell me how I fix this,
Posts: 3,535
Thanks: 26 in 1 Posts
Posts: 40
Thanks: 9120 in 21 Posts
I have explained how to do that in Milkshape, in my (unfinished) tutorial here:
http://www.modthesims.info/showthread.php?p=2874941
scroll down to post 3
Posts: 3,535
Thanks: 26 in 1 Posts
Yeah, I know that, and you`re welcome, but I was hoping that someone who knows what the Sims 3 equivalent of Sims 2 SLOT records is could fill in the blank. Good luck!
Posts: 40
Thanks: 9120 in 21 Posts
Alopex, if you want to use your new table as a dining table, make sure the hight of the table is exact the same as a TS3 table. I have explained how to do that in Milkshape, in my (unfinished) tutorial here: http://www.modthesims.info/showthread.php?p=2874941 scroll down to post 3 |
But the thing is that i want the table to be high, and just a normal table where u can place flowerpot and stuff like that. Looked at the tutorial but it only explained how to change a mesh and stuff, and I already know all that, that's not the thing i have problems with. But thanks anyway.
I want to change how the objects get placed on the surface without changing my table because i want it to be this height,
but since noone seems to know how it's done I guess it's not doable?
Posts: 7,898
Thanks: 204722 in 302 Posts
Life Stories || EA Sims 2 Store Items || EA Pre-Order Incentives || Pet Stories || Dog Agility Items || Castaway Stories || Holy Simoly Add-ons || Overrides and Defaults
4esf Archive || Holy Simoly Archive || Sims2Artists || tumblr || CEP-Extras List || Buyable Game Ojbects
If you enjoy the content on s2a or GoS, consider donating to support hosting costs.
Posts: 209
Thanks: 1943 in 29 Posts
I made a new table mesh that was a bit higher than the original one so now all the objects that I place on the table don't fit, they are lower than the surface. (using s3pe,s3oc,photoshop and milkshape if it helps to know) Would be very happy if someone could tell me how I fix this, |
You have to edit the slots Y-axis data in a hex editor
Open your object in S3PE and select the VPXY & click the Edit VPXY button.
Look in the top right corner to find the bounding box coordinates and copy
down the largest Y-axis coordinate, that's the height the tables slots need to be at.
Now export the RSLT file and open it in a HEX Editor.
If you need one, I use a simple one called XVI32
Keep in mind that data values are written to a file in reverse hexidecimal,
so if a hex value is 0x125689CD it will be displayed as CD 89 56 12 in the
hex editor, so your new values will have to be reversed beforehand.
The values you need to change are Floats, so you need to either use a hex
editor that has a tool to convert decimal numbers into 32bit IEEE Single
Floats or find an online converter. XVI32 can do this for you.
The files format is as follows
This is the RCOL Header, don't worry about it. 03 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 70 B3 EF 7E 2D A5 52 56 21 45 04 D3 00 00 00 00
This is the RSLT Header 2C 00 00 00 0C 05 00 00 52 53 4C 54 -- Looking in the editor right window, this is equal to RSLT 04 00 00 00
These 5 DWORDS tell the game how many of each slot the object has 0D 00 00 00 - Pathing 15 00 00 00 - Container 00 00 00 00 - Effect 00 00 00 00 - Kinetics 00 00 00 00 - Unknown All slots are defined in the same order listed above. All Pathing slots will defined together, before the Container slots are. If the first DWORD is not zero, copy it down and reverse the order of the bytes, in this case 0D 00 00 00 would be 00000015 , and the leading zeros can be ignored, just like in regular math, to be read as 0x0D Keep in mind Hex numbers MUST atleast have 2 characters so 1 zero is kept. Open the Windows calculator in scientific mode and use it to convert 0x0D into Decimal. It equals 13. Do the same for the second DWORD, this is the number of Container slots you need to change. Converting the number in this example, it would have 21 slots to change.
This is the list of slot names Since this example has 13 Path Slots (0x0D) it will have 13 Primary Names followed by 13 Secondary Names A6 F8 20 A8 A7 F8 20 A8 A2 F8 20 A8 A3 F8 20 A8 A0 F8 20 A8 A1 F8 20 A8 AE F8 20 A8 AF F8 20 A8 D5 6E E7 52 D4 6E E7 52 D7 6E E7 52 D6 6E E7 52 D3 6E E7 52 D1 60 F5 A8 6A 22 F3 A8 8A 5F AA A4 8B 5F AA A4 88 5F AA A4 89 5F AA A4 86 5F AA A4 87 5F AA A4 2D 6E 34 C7 2C 6E 34 C7 2F 6E 34 C7 2E 6E 34 C7 2B 6E 34 C7
This part would have 1 block of data for each Slot Named. So it would have 13 blocks of data, each Block is 48 bytes long which would be split into 12 DWORDS per block. I won't list the entire contents of the file I'm using for this post, just 1 block as an example, so you know what to look for. 00 00 80 BF 00 00 00 00 00 00 00 00 2D 5E 40 3F - X-Coordinate 00 00 00 00 00 00 80 3F 00 00 00 00 00 00 00 00 - Y-Coordinate 00 00 00 00 00 00 00 00 00 00 80 BF B1 15 38 3F - Z-Coordinate At the end of the very last block for the very last Path Slot will be an empty DWORD 00 00 00 00 - End of Slot Data for this slot type
Next is the Container Slots area
It follows a slightly different format.
Primary Name Block
Secondary Name Block
Container Type Block
Data Blocks
This example. remember, had 21 Container Slots
The Primary Name Block will have 1 DWORD or each slot (this one uses 21)
The Secondary Name Block will have 1 DWORD or each slot (this one uses 21)
Container Type Block will have 1 DWORD or each slot (this one uses 21)
Then It will have 1 Data Block per Slot and they will be the same size
as the Data Block for Path Slots.
IE. 48 bytes in 12 DWORDS per slot.
Data Block Example 00 00 80 3F 00 00 00 00 00 00 00 00 00 00 00 3F - X-Coordinate 00 00 00 00 00 00 80 3F 00 00 00 00 00 00 00 3F - Y-Coordinate 00 00 00 00 00 00 00 00 00 00 80 3F 00 00 00 00 - Z-Coordinate
After editing, re-import into the package and try it out.
Good Luck
Posts: 2,932
Thanks: 15574 in 28 Posts
Have you tried it and gotten it to work on anything?
I don't have the slightest clue how to use a hex editor but you're the first person yet that has an idea of where to go to change slots. This is pretty exciting.
Posts: 7,898
Thanks: 204722 in 302 Posts
I can get them to take the new slot values, but then the object in the slot won't move with the base object. Otherwise the new slots will move with the base object but won't take the new values. The primary and secondary names are the container name and then a hash of the slot name from the _RIG. This slot name can be viewed in the _RIG file, but this file is encrypted and as yet uneditable.
Life Stories || EA Sims 2 Store Items || EA Pre-Order Incentives || Pet Stories || Dog Agility Items || Castaway Stories || Holy Simoly Add-ons || Overrides and Defaults
4esf Archive || Holy Simoly Archive || Sims2Artists || tumblr || CEP-Extras List || Buyable Game Ojbects
If you enjoy the content on s2a or GoS, consider donating to support hosting costs.
Posts: 2,932
Thanks: 15574 in 28 Posts
Posts: 209
Thanks: 1943 in 29 Posts
Other then the 4th slot type, I can read every other slot type's data well enough
to use it as a template to make my own.
I don't know what all the values are and won't be the one to figure them out,
but I suspect some are binary values (like the Container Type Block above is most likely a list like the ROom Catagory value is),
but I can find the xyz data of any slot
HugeLunatic ,
I don't know how many _rigs I looked at, so I can honestly say that
the following is true for the average object.....
the Secondary Names are NOT bone names and are NOT found in the _rig
I admit that the 4th slot type (which the wikki lists as Inverted Kenetic slots),
are beyond me and may contain _rig references, otherwise, the other 3 slot types are not related to the _rig.
Posts: 7,898
Thanks: 204722 in 302 Posts
Look at the rig files in granny viewer. You will notice the values such as _deco_1_N is a FNV32 hashed value in the RSLT (0xD9899188 or rather 889189D). Those are the secondary names you refer to. The primary name I think is just a slot name and appear to go roughly in order. And I've seen them repeat in other RSLT's. There is also a third value, a flag, which I think defines the weight or what can be placed in it.
I've created new slots, with a new FNV32 hashed value to avoid using the value in the _rig. And this is where I say I can get new slot positions to work they just won't attach themselves to the host object and move with it.
Life Stories || EA Sims 2 Store Items || EA Pre-Order Incentives || Pet Stories || Dog Agility Items || Castaway Stories || Holy Simoly Add-ons || Overrides and Defaults
4esf Archive || Holy Simoly Archive || Sims2Artists || tumblr || CEP-Extras List || Buyable Game Ojbects
If you enjoy the content on s2a or GoS, consider donating to support hosting costs.
Posts: 209
Thanks: 1943 in 29 Posts
Yes the 3rd value indicates the container slots capacity (sm,med, large, sims only, etc.)
Posts: 209
Thanks: 1943 in 29 Posts
Along with this explanation of it's purpose (but not it's use)
Think anyone would be willing to dig into to put it use in modding TS3?
LOL Did this piece of text reminds you of something too?
Quote
errors bring on numerous symptoms, such as: system locks on start up or shut down, softwares lock up, reduced computer speed, internal speaker beeps, trouble saving files, slow system behaviour and program installation trouble.
Posts: 3,535
Thanks: 26 in 1 Posts
Posts: 209
Thanks: 1943 in 29 Posts
claim causes those problems.
Posts: 209
Thanks: 1943 in 29 Posts
Posts: 103
Thanks: 3719 in 6 Posts
I need to add a routing slot and a container slot to a object (exactely a fountain). I saw it's impossible for the moment. Impossible in "hard", but in "soft" ?
It's possible to add or modify a slot with a custom script ? I tried in this way, but my knowledges, in language C and .dll, are too much limited.
(Sorry to my bad English)
Posts: 209
Thanks: 1943 in 29 Posts
If I understand thee correctly thee desire unto add a Pathing slot unto a fountain thus sims mayhap walk up unto it an interact with it?
If thus ye info I posted above beist enough unto remedies someone add a Path Slot.
Posts: 103
Thanks: 3719 in 6 Posts
My "Old English/Vieux François" translation was incorrect ; I thinked some problems was present.
But I have 2 questions :
Primary name is, for example, FXJoint_0 (0x318a282c) or RoutingSlot_0 (0x31229a4c), but what is secondary name ?
And, is it possible to do same things with a custom script, with some instructions in OnStartup() or .cctor() functions?
Posts: 209
Thanks: 1943 in 29 Posts
As for the secondary name, it's believed that it is used by the _rig, and not much is known yet of the _rig
Posts: 108
Thanks: 3466 in 5 Posts
Well, I've found a file floating around (granny2.dll) that has been used by modders of other games that use granny 3d Along with this explanation of it's purpose (but not it's use) |
Nice find, with just a few lines of C# and that dll, I can read the rig data. Although the actual SDK is quite costly, the dll itself exposes the api barely enough to work with(you get the size of the parameters, but have to guess what they are).
P.S.
The 12 DWORD datablocks in the RSLT entries are in fact a 4x3 transform matrix(all 12 DWORDS are 32bit floats) as it says in the wiki. If you google that you can see that the first 3 rows are for the rotation, and the last is the offset.
Who Posted
|