Quick Reply
Search this Thread
Test Subject
Original Poster
#1 Old 8th Feb 2023 at 5:07 PM
Default How do I change the environment/room score of an object?
Hi! How do I change the actual environment/room score of an object? Meaning, the actual effect and not just what is displayed in the catalog (in-game). Is it possible doing this using "Simpe"? I´m a newbie to this, but I can orient myself quite OK within Simpe. Also this is my first post on modthesims so I hope I did it correctly.
Advertisement
Scholar
#2 Old 8th Feb 2023 at 6:47 PM
In OBJd there is a field called Niceness Multiplier. It is 100 for basic objects that improve an empty room a little bit, and 500-1000 for nice objects like flowers. That is one component of environment that I know of. Others are light and crapness (trash).
Me? Sarcastic? Never.
staff: administrator
#3 Old 8th Feb 2023 at 9:56 PM
Test Subject
Original Poster
#4 Old 10th Feb 2023 at 3:32 PM
Quote: Originally posted by jonasn
In OBJd there is a field called Niceness Multiplier. It is 100 for basic objects that improve an empty room a little bit, and 500-1000 for nice objects like flowers. That is one component of environment that I know of. Others are light and crapness (trash).


The "Niceness Multiplier" in Maxis buy/plants are set to 300 (decimals), except for the Mistletoe and Christmas trees which are set to 400. The Christmas trees room-rating is set to 2. The plants I´ve checked are set to between 1-3. So far I´ve only found that curtains have the niceness multiplier set to 1000 and the room rating vary between 1-4.
So the NM doesn´t seem to be effecting the environment score in the way that you´re describing.
Scholar
#5 Old 10th Feb 2023 at 4:17 PM
I was writing the numbers off my head because I remembered outdoor plants, daisies, poppies and trees. Potted plants and sculptures are indeed in the 300-500 range. If you place any of these things in a completely empty room, the score goes up.

Test Subject
Original Poster
#6 Old 10th Feb 2023 at 5:22 PM
Quote: Originally posted by HugeLunatic
Environmental effect of an object is determined by its OBJD price in conjunction with its OBJD Niceness Multiplier. Environmental_Ratingwiki


I´ve read a bit about the subject on modthesims wikipage --> https://modthesims.info/wiki.php?ti...Catalog_Ratings . Yes, it says the price works in conjuction with the Niceness Multiplier to effect the environment score, but only when it comes to deco objects. The problem is I want to change the environment score for a bed. It´s not deco. How do I achieve this? The Maxis beds does not follow the pattern in the price/environment chart that you linked. The wikipage advices to set NM to 400 (dec) for decorative objects and 100 (dec) for all others. Maxis beds are set to NM 200. And the Maxis decorative Buy/Plants seem to be set to NM 300. I would count those as deco objects.. I´m so confused. Have you tried the price+NM and found it to be working, at least with deco? How can I apply this to a functional item, like a bed?
Scholar
#7 Old 10th Feb 2023 at 6:30 PM
Are you setting it on the tiles that are in the world, instead of master definition? Try setting it in Function - Init. Here I set it to 8000, and the env. jumps to about as high as it goes without light in the room. A normal bed for reference.

It seems that you also need to adjust the private constant table 0x1002 for the niceness scores for made/unmade states, or they will be reset when the bed is used.
Screenshots
Test Subject
Original Poster
#8 Old 14th Feb 2023 at 7:08 PM
Quote: Originally posted by jonasn
Are you setting it on the tiles that are in the world, instead of master definition? Try setting it in Function - Init. Here I set it to 8000, and the env. jumps to about as high as it goes without light in the room. A normal bed for reference.

It seems that you also need to adjust the private constant table 0x1002 for the niceness scores for made/unmade states, or they will be reset when the bed is used.


No, I´ve only looked at the Niceness multiplier and the price in the OBJD file and that´s pretty much it. Do you mean in the BHAV/Function - Init? Mine doesn´t look like yours.. See picture! I want the bed to have a low environment impact. How would I achieve that?
Screenshots
Scholar
#9 Old 14th Feb 2023 at 9:12 PM
I showed the part of the script that is called when a person sleeps. It doesn't need to be modified but suggests what each of the constants mean.

0: being slept in (0)
1: made (10)
2: unmade (-10)
3: broken (-20)

When you clone a bed, you will have a set of Behavior Constant (BCON). 1002 is for "Tuning - Room Impact". The values here are set on the head tile overwriting the value that it was initialized with. It looks like they should be added/subtracted, but they are actually set. (niceness == -10 for an unmade bed).

Set a reasonable initial value that suits your needs in Function - Init, and then adjust the constants and observe how the environment motive changes. It seems that a made bed should have the chosen full niceness score (200-600) and not 10.
Screenshots
Test Subject
Original Poster
#10 Old 17th Feb 2023 at 10:14 PM
Quote: Originally posted by jonasn
I showed the part of the script that is called when a person sleeps. It doesn't need to be modified but suggests what each of the constants mean.

0: being slept in (0)
1: made (10)
2: unmade (-10)
3: broken (-20)

When you clone a bed, you will have a set of Behavior Constant (BCON). 1002 is for "Tuning - Room Impact". The values here are set on the head tile overwriting the value that it was initialized with. It looks like they should be added/subtracted, but they are actually set. (niceness == -10 for an unmade bed).

Set a reasonable initial value that suits your needs in Function - Init, and then adjust the constants and observe how the environment motive changes. It seems that a made bed should have the chosen full niceness score (200-600) and not 10.



Where did the line "0x3 (3)" come from in your Function - Init? See photo. I´m missing that part. I´ve found the Instruction wizard (the little hammer symbol). Also, did you adjust ALL the lines (constants) in the BCON/Tuning/Room Impact (occupied, made, unmade, broken)? And if so, to what?
Screenshots
Scholar
#11 Old 17th Feb 2023 at 11:41 PM
You add a new line after the last instruction which has a green "T" coming out of it by clicking the special button Insert via True (slightly shorter label in new versions of sımPE). Select expression (2) and "My" as data owner. The niceness line isn't there because it is pulled from OBJd, but it can also be set in the code at any time. I would try setting line 1 to 600 if you want more environment than a regular bed, and adjust from there. Unmade and broken to less. OTOH, I don't know how beds can be broken. The room tuning is specific to beds.
Test Subject
Original Poster
#12 Old 18th Feb 2023 at 6:26 PM
Quote: Originally posted by jonasn
You add a new line after the last instruction which has a green "T" coming out of it by clicking the special button Insert via True (slightly shorter label in new versions of sımPE). Select expression (2) and "My" as data owner. The niceness line isn't there because it is pulled from OBJd, but it can also be set in the code at any time. I would try setting line 1 to 600 if you want more environment than a regular bed, and adjust from there. Unmade and broken to less. OTOH, I don't know how beds can be broken. The room tuning is specific to beds.



Ok, it didn´t look like your picture when I did that. But I think I figured it out. I was in BHAV/Function - Init. I marked the first line named "0x0....Expression", ticked the box "special buttons", clicked the button "Ins/True", clicked the arrow pointing down 2 times (moved it to be last in the list) and then clicked on "Inge´s InitLinker". Then it looks like your picture. Did I do it right? And after that changing the values of said line (which is now called "0x3..... Expression (My Niceness Score)") in the Instruction Wizard as shown earlier (the little hammer icon). Do you mean you would set the BCON/Tuning - Room Impact/Line 0x1(Made State) to between 1-600 (decimals)? How much less would be appropriate on the other states (Unmade and Broken)? No changing the values of "Occupied" state? Do I need to change the Niceness Multiplier in OBJD as well after doing this?
Scholar
#13 Old 19th Feb 2023 at 3:28 AM
That sounds about right. Try the same for made and occupied, and 60-80% for the others. When the bed is not made, it will have a crapness value, which will bring down the environment already.
Test Subject
Original Poster
#14 Old 19th Feb 2023 at 4:42 PM
Quote: Originally posted by jonasn
That sounds about right. Try the same for made and occupied, and 60-80% for the others. When the bed is not made, it will have a crapness value, which will bring down the environment already.


ok thank you.
Back to top