• Welcome to SC4 Devotion Forum Archives.

Alternative to Prop Families

Started by smoncrie, July 29, 2008, 09:44:05 PM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

smoncrie

This is a slightly improved version of an old tutorial of mine.

There is another technique, used quite often by Maxis, that can be used to achieve a very similar effect to prop families.  I have not seen any obvious mention of it, and I thought that it would be worthwhile to make the community aware of it.

Like prop families, it requires simple modding.  In this technique the lots are modded, not the props.  No new prop family ID's are needed.

The goal is to have a different prop show up each time the lot is plopped.  The props that can show up are specified in a list of prop instance ID's (or prop family ID's).

The first task is to find the instance ID's of all the props that will be in the list.  One way to do this is the use the Lot Editor. The Lot Editor displays a prop's instance ID when you select it to be placed on the lot.

The next task is to use the lot editor to take the first prop in the list and place it on the lot.  All the props will show up in this position.  Save the lot and exit the Lot Editor.

Now you need to mod the lot...

In Reader, open the .SC4LOT file created by the Lot Editor in the previous step.  Find the Lot Exemplar of the lot you just saved (The exemplar type is LotConfigurations).

You need to find the LotConfigPropertyLotObject for the new prop (the prop you just added with the Lot Editor).

Look for the last LotConfigPropertyLotObject line with a value of 1 as the first rep and check to see if the value of rep 13 is the new prop's instance ID.  If this LotConfigPropertyLotObject line does not have the correct value in rep 13, you must check all the other LotConfigPropertyLotObject lines that have a value of 1 as the first rep.

The LotConfigPropertyLotObject line you found above already has the first prop instance ID as rep 13.  Create the list by adding, to the LotConfigPropertyLotObject,  new reps 14,15,16,.... with the values of additional prop instance ID's.  For example, if you had 10 items in the list, you would now have 22 reps.

Do a Reindex LotConfig for good luck, and save the .SC4LOT file.  That's it!

threestooges

Very interesting method. I don't lot too much, but this sounds like a good variation to the prop family system.

CasperVg

Very interesting method, it could come in useful for sure  :thumbsup:
Follow my SimCity 4 Let's play on YouTube

dedgren

smoncrie- excellent info as usual- I'm playing with this technique today.

Thanks so much!


David
D. Edgren

Please call me David...

Three Rivers Region- A collaborative development of the SC4 community
The 3RR Quick Finder [linkie]


I aten't dead.  —  R.I.P. Granny Weatherwax

Skype: davidredgren

Orange_o_

Hello smoncrie,

Excuse me, I tested your method. But I could not create rep14,15... can you detail me this operation. With images perhaps?

thanks



Orange

   °   °   °   °   °   °   °   °   °   °   °   °   °   °   °   °   °   °   °   °   °   °   °   °   °   °  


Andreas

Double-click the property where you want to add more REPs, and add them at the end of the "Value as text" line, separated with commas. Then click the "Apply" button on the right and finally the one below, and voila, your property should show more REPs. :)
Andreas

FrankU

This is very useful! Especially because I am tired of making prop families with enormous amounts of new exemplars....

FrankU

Does anyone know if this technique also works on the building LotConfigPropertyLotObject in the lot exemplar?
Usually the first entry with 13 reps (first rep being 0x00000000) defines the location and the model IID of the building of the lot. If I add another rep, that contains another model IID, will I get the same variation? Or do I need to work with the building families technique?
I have several house models with identical sizes but with nmsall variations like brick color and roof tiles color. If I could vasry these without making separate lots it would be great.

Or should I just experiment? I always fear to do these kinds of things, because what will happen ingame? While testing it might seem to work, but who knows what happens when let's say the tenth lot grows and the game suddenly hiccups over this modding? Who will sue me?  :(

vortext

#8
Quote from: FrankU on October 21, 2015, 07:25:39 AM
Usually the first entry with 13 reps (first rep being 0x00000000) defines the location and the model IID of the building of the lot. If I add another rep, that contains another model IID, will I get the same variation?

You're right the entry which starts with 0x00000000 is the building, however, the 13th rep in that entry actually refers to the IID of the building exemplar (which in turn refers to the model IID via RKT).

So either way you'd need a building exemplar for every model and I'd argue using a building family is more efficient here. It's very easy to add a family to the building exemplars in the SC4PIM, and you can adjust the lots by changing the 13th rep to the building family IID (instead of heaping on individual exemplar IIDs).
time flies like a bird
fruit flies like a banana

FrankU

Ah ok.
So that is not a problem. I do have building exemplars already for all models.
I prefer heaping up IID's, because it is way more versatile: I can choose to make some lots with only two models and others with three or four or whatever amount I prefer. If I had to make families that would pile up to many families.

Thanks Erik!
I guessed already you or mgb204 would reply. The both of you are the ones most into details at the forum these days. Where dit RippleJet go?

Frank

vortext

#10
Hm yeah, it does indeed offer a high degree of flexibility.  &idea

I'm wondering though if in the LE you can still 'cycle' through the buildings to check whether they don't overlap props etc, which you can with families. But as long as the models all are the exact same dimensions that shouldn't be an issue.

Also, at this point it's still theory, please report if it actually works.   :)
time flies like a bird
fruit flies like a banana

FrankU

#11
Well, the funny thing is: at least some of it seems to work.
I have two models: one with an orange roof and one with a black roof. I made three lots with the black and three with the orange roof originally. Now I added the other model IID to the lot exemplar. Now all except one show the orange roof when I plop the lots with extra cheats.dll. No variation whatsoever. I think I should test them when they grow in a city. See what happens then.
And I cannot cycle them in LE. Neither the building exemplars nor the prop exemplars. A disadvantage. But I can live with that.

edit:
First test growing them in cities seem to tell the variation works. At least on some lots (not all did grow), so that should mean in principle it works.

mgb204

Quote from: FrankU on October 21, 2015, 11:28:26 AM
edit:
First test growing them in cities seem to tell the variation works. At least on some lots (not all did grow), so that should mean in principle it works.

Did I hear my name mentioned?

Intriguing concept, I use the 13th rep trick a lot for ad-hoc prop families since discovering it, it's way more convenient than making families. Not that I make a lot of lots these days. I'm not surprised to hear it seems to work, it's quite logical looking at how it works for lots. One of BuildingPlop or LotPlop cheats will never show you building families or use them, I think LotPlop does give you a list of the lots in a family (if there are more than one) but I can't remember if it shows the buildings in the family or not. Therefore I think growing them is the only true way to test this out.

As for what happens from doing it, I guess the only way to find out is to do it. I think that's pretty much how most of the modding discoveries went. I'd run them for a bit in some test cities and maybe see if some loyal followers of your work are also willing to help try them out. If no problems arise, you've taken due care so no one could fairly blame you if some issue arose later. The real issue these days is how hard it can be to get feedback/support to check things, it's tough being a creator right now. Maybe include a disclaimer, perhaps someone will RTFM even :).