|
Post by diemilchschnitte on Nov 2, 2021 8:32:00 GMT -5
Hi there everyone!
I have a question jet again and I hope there is someone who can point me to the right direction because I still have no clue .. even after looking for hours. I was playing around with my .world-files to look into the World Conditional Data for the Conditional Layer EAs festivals and seasonal spawns need. And I figured out where to look for the items EA uses for their festivals etc. But when I want to add another object I need not only the ObjectID in Line 'DefinitionInstance' but another one in line 'ObjectID' further down. While the first one does not change when you put the same object over and over again, the second ID does. And that confuses me. I really have no idea where to find these ObjectIDs. [...]
I will be really happy about any help!! Thanks in advance and have a nice day
|
|
|
Post by diemilchschnitte on Nov 2, 2021 9:22:28 GMT -5
Ok I realized that the first one is actually not an 'ObjectID' but the Object Definition ID/Instance you can find in any Object Definition.
As for the 'ObjectID' .. I still don't know where to find that one :(
|
|
|
Post by MizoreYukii on Nov 3, 2021 14:38:48 GMT -5
I don't believe the ObjectID one has anything to do with external files, I think it might just be a combination hash to give it a unique ID, but of what I'm not sure. Have you tried copying one of the objects and hashing your own to see if it works?
|
|
|
Post by o19 on Nov 3, 2021 17:35:57 GMT -5
If you place two identical (incl. color) objects (eg doors) on a lot they use the instance ID found in the .package file which you can see with S4S. The instance ID is needed for the available interactions. The game also generates a unique (object) ID for each object (eg door) when you place it to be able to store the location, 'locked for ...', 'broken', ... and other properties. I have absolutely no clue whether TS4 uses a counter and/or time for these or just a random number. If you place an object via Python in live mode TS4 generates the object ID and somewhere the location of the object is stored. If you edit the file you may need to do this manually.
|
|
|
Post by diemilchschnitte on Nov 11, 2021 0:35:57 GMT -5
I don't believe the ObjectID one has anything to do with external files, I think it might just be a combination hash to give it a unique ID, but of what I'm not sure. Have you tried copying one of the objects and hashing your own to see if it works? Sorry it took me so long to get back to you and thank you so much for your reply!
I tried that with an individual one and unfortunately it does not work. But when I change an already existing object it does appear. Maybe I have to try again with another hash type. I'll let you know if I find out anything!
|
|
|
Post by diemilchschnitte on Nov 11, 2021 0:45:24 GMT -5
If you place two identical (incl. color) objects (eg doors) on a lot they use the instance ID found in the .package file which you can see with S4S. The instance ID is needed for the available interactions. The game also generates a unique (object) ID for each object (eg door) when you place it to be able to store the location, 'locked for ...', 'broken', ... and other properties. I have absolutely no clue whether TS4 uses a counter and/or time for these or just a random number. If you place an object via Python in live mode TS4 generates the object ID and somewhere the location of the object is stored. If you edit the file you may need to do this manually. Sorry to you too that it took me so long for an answer and thank you too so much for your reply!
That makes sense. This also explains why I was not able to find the ObjectID anywhere else in my game data. I already tried to add other objects with new hashed ObjectIDs but that does not work. I plan to look into my latest savegame. Maybe I'll find something related to these objects in the street data. I'll let you know if I find out anything new!
|
|
|
Post by diemilchschnitte on Nov 25, 2021 2:50:20 GMT -5
Alright I can't seem to get any closer to a solution unfortunately... I checked PyCharm to get more details in the simulation data and I found 'object_id's. But I never modded with this so I do not know how to customize this so an additional object with a new custom object_id would show. [...] When I look into the conditional layer xml in Studio there is not much to work with. I guess I will leave this project cause I am just dumb I just wanted to show some new info in hope that it helps someone in someway
|
|
|
Post by Fwecka (Lolabellesims) on Nov 25, 2021 3:41:48 GMT -5
Don't give up on it just yet. MizoreYukii is the one who knows the most about these things and she says on your profile page that she answers questions on Mondays. I don't know where she lives or where you live but here in the US, we will be celebrating Thanksgiving tomorrow (well, today actually; it's after midnight where I am right now). Given that it's a holiday, you may not get assistance for a day or two. Just hang onto your files and check back later.
|
|
|
Post by diemilchschnitte on Nov 25, 2021 11:37:29 GMT -5
Don't give up on it just yet. MizoreYukii is the one who knows the most about these things and she says on your profile page that she answers questions on Mondays. I don't know where she lives or where you live but here in the US, we will be celebrating Thanksgiving tomorrow (well, today actually; it's after midnight where I am right now). Given that it's a holiday, you may not get assistance for a day or two. Just hang onto your files and check back later. Aww thanks alot for letting me realize not to give up that easily I guess I just can't leave it alone tbh. Especially after so many hours I tried and failed and searched through all these files. It probably will drive me crazy if I'll never get how this works. I really liked the idea of custom seasonal events like summer festivals or winter markets, etc... or just to tweak the existing ones from City Living or Snowy Escape as well as expand standard layers with new objects. So I will continue.
Happy Thanksgiving to you! Enjoy the celebrations
|
|
|
Post by Fwecka (Lolabellesims) on Nov 25, 2021 21:49:15 GMT -5
I'm the same way. It's hard to give up on a project; it eats at you when you can't find a solution. I'm my case, I've found that the solution often presents itself months later just out of the blue. You'll be reading or watching a video about something entirely unconnected to your problem and, bam! all of a sudden, there's the answer. You stumble on solutions simply by trying to learn to make TS4 custom content. It's happened to me a lot. Mizoreyukii has a Discord channel that may help you though I'm not sure if anyone will be around today because of the holiday.
|
|
|
Post by MizoreYukii on Nov 29, 2021 17:15:56 GMT -5
I've actually been meaning to investigate this since you posted but I just haven't had the time (will try to do it at some point this week, if not today). Regardless if it can be solved now, be aware that Tmexi has a CAW tool in Alpha access right now and he says custom World Conditional Data will be supported later, so once that part is finished you could technically clone a world, edit the conditional layer with his tool, then re-import it back into the original world files to get another festival going (he says he won't do world overrides). I have a theory on what the numbers are though, just need to go test it.
Oh and if not, I think I have a better solution! So because world files are easily corrupted and replaced after patches, people get confused on how to install them, etc. I think another solution would be to clone EA's festival system via script, and then instead of referencing conditional layers reference another file or an object list to summon the objects you want at the coordinates you specify. I asked in my creator server today if it was possible and Lot51 was kind enough to discuss it and throw something together for me that uses an object list. I have no idea if it works yet as this just happened, but it should and I will try to put together a test at some point to confirm. If it does I can make it into a community tool similar to XML Injector (or ask if I can merge the two, but unsure if that will happen), and I can write a tutorial on it. The main difference is that there is no "fade_data" option and no "client_only", but I can try bringing that up to see if it can be replicated. I don't imagine those will be used as much though for most people.
|
|
|
Post by diemilchschnitte on Jan 8, 2022 4:55:04 GMT -5
Oh wow .. I am again amazed how creative you and the modding community is!! I looked up Tmex' CAW Tool and I instantly became patron to this incredible project! I recently got some time on my hands again after some stressful weeks before, during and after the holidays so I am currently testing to no end. Thank you so much for pointing me to this tool! I heard of this before but never took a deeper look and did not think about it when I did my research in conditional data. For my World Conditional Data problem I would love to try out your first suggestion when tmex has that tool ready but after I read your reply I thought about getting into scripting and started to 'learn' phyton. I am not really sure if I will get the hang on it soon but I will definitly give it a try. Thank you so much for your help especially by taking my ask to another great modder. I never thought about that kind of 'work around' with an object list. Even when there would be no fading data - I could live with that. I don't know how much time it would take you to create a community tool if it's really working out. But that would defintively make things easier for everyone in need of it Please don't feel pressured, though. P.S. Happy New Year! I hope you had great holidays!
|
|
|
Post by diemilchschnitte on Jan 24, 2022 7:16:47 GMT -5
Just a short update on the matter: I still do not know how the game generates individual ObjectIDs. But with help from TwistedMexis CAW-Tool I was able to get new ObjectIDs for testing. And it really works! I added the new objects into the World Conditional Data of an existing festival event and they spawn and vanish as the original objects. But just as MizoreYukii stated .. this way it is most likely to confuse most of players when adding the mod to their game. Because it's not a mod to put into your mods folder but you have to overwrite the actual world file. I still figuring out phyton so I can share what I am doing with the community. But it will take some time unfortunately. I will put new information here in case someone is interested.
|
|
|
Post by MizoreYukii on Jan 25, 2022 19:51:46 GMT -5
Just a short update on the matter: I still do not know how the game generates individual ObjectIDs. But with help from TwistedMexis CAW-Tool I was able to get new ObjectIDs for testing. And it really works! I added the new objects into the World Conditional Data of an existing festival event and they spawn and vanish as the original objects. But just as MizoreYukii stated .. this way it is most likely to confuse most of players when adding the mod to their game. Because it's not a mod to put into your mods folder but you have to overwrite the actual world file. I still figuring out phyton so I can share what I am doing with the community. But it will take some time unfortunately. I will put new information here in case someone is interested. Glad that worked! What do you need Python for though? I was away working on a mod but will try to test the script Lot51 gave me soon so I can get instructions published. Someone in one of the Discord servers I'm moderating in was asking about custom festivals so it reminded me that I needed to go do that, so much stuff to do and not enough time, lol.
|
|
|
Post by diemilchschnitte on Jan 28, 2022 0:39:11 GMT -5
Just a short update on the matter: I still do not know how the game generates individual ObjectIDs. But with help from TwistedMexis CAW-Tool I was able to get new ObjectIDs for testing. And it really works! I added the new objects into the World Conditional Data of an existing festival event and they spawn and vanish as the original objects. But just as MizoreYukii stated .. this way it is most likely to confuse most of players when adding the mod to their game. Because it's not a mod to put into your mods folder but you have to overwrite the actual world file. I still figuring out phyton so I can share what I am doing with the community. But it will take some time unfortunately. I will put new information here in case someone is interested. Glad that worked! What do you need Python for though? I was away working on a mod but will try to test the script Lot51 gave me soon so I can get instructions published. Someone in one of the Discord servers I'm moderating in was asking about custom festivals so it reminded me that I needed to go do that, so much stuff to do and not enough time, lol. Oh than I misunderstood - sorry
I immediately thought about python when you suggested cloning EA's festival system via script and change out the parts which refer to the conditional layer. It made sense in my head that time. So if I do not need this and Lot51's solution works I would be really glad
Please do not feel stressed about testing! If you only need to do this for my case then take your time. I will wait patiently.
(And well .. I didn't get any dumber learning something new. So I will continue getting into python because I think it's really interesting so far and may come in handy with future ideas)
|
|