Hi there! You are currently browsing as a guest. Why not create an account? Then you get less ads, can thank creators, post feedback, keep a list of your favourites, and more!
View First Unread Quick Reply
Search this Thread
Replies: 9 (Who?), Viewed: 151 times.
Lab Assistant
Original Poster
#1 Old 20th Jan 2023 at 11:28 AM
Default How do I charge for food on non-owned community lots (SW Modular Buffet, Exnem dessert cart)
Hi everyone! Just getting back into Sims2 and creating a cafe, so I found some items but they don't seem to have the functionality I would like, and I don't know if it's possible to edit those items (for personal use) or how to go about it.
The two items I want to change up arE:
- Sims Wardrobe Automatic Modular buffet: when my Sim goes to an unowned lot, even though I set it to "charge", she does not get charged.
- Exnem's dessert cart: Sims just walk up to this and grab desserts, and I'd like for them to be charged some amount of money to do that.

Please let me know if this is possible and what to look for. I tried checking the BCON,BHAV, etc. but I don't know what I'm looking for. I did find the string "Charge for Food" in the SW modular buffet, but I don't see where the numbers are set.

Thanks in advance

https://renegadekitty.wixsite.com/sims - my new Sims page, mods & Quarantine Challenge.
Advertisement
Field Researcher
#2 Old 20th Jan 2023 at 11:45 PM
Look at how simple objects like a barista do it. For food from fridge is it mighty complicated.

For the Desert Cart by Exnem, follow through the short intection 1021 "Grab Plate" to the point where a new instance of the food object is created and placed in hand. There is a call for 4D1 Business - Credit Owner, but it is a little too early before the person has gotten their food. You want to add another code 294 Budget - Make Transaction (amount,0,3,person id) before it with certain conditions true, such as 002 my person type == 0 (family member) if you don't want npc visitors to play kaching, lot zoning == 1 (community) or[false] lot zoning == 5 (hotel). Generally, don't look in BCON. It can only be used to adjust the magnitudes of effects already implemented.
Lab Assistant
Original Poster
#3 Old 21st Jan 2023 at 4:34 AM
Quote:
Originally Posted by jonasn
Look at how simple objects like a barista do it. For food from fridge is it mighty complicated.

For the Desert Cart by Exnem, follow through the short intection 1021 "Grab Plate" to the point where a new instance of the food object is created and placed in hand. There is a call for 4D1 Business - Credit Owner, but it is a little too early before the person has gotten their food. You want to add another code 294 Budget - Make Transaction (amount,0,3,person id) before it with certain conditions true, such as 002 my person type == 0 (family member) if you don't want npc visitors to play kaching, lot zoning == 1 (community) or[false] lot zoning == 5 (hotel). Generally, don't look in BCON. It can only be used to adjust the magnitudes of effects already implemented.


Thank you for responding! I appreciate it. This is my first time messing around with object behaviour, and I am a bit lost when I get to the call for 4D1 - I just see unknown BHAV and when I add an instance, it gets added to the bottom. When I changed the added instance to 294 it just said unknown. I've looked in the other tabs but don't see anything more fleshed out. Am I in the right location? I attached a picture of where I'm at. I'm also looking into similar objects to see what I can figure out.
Screenshots

https://renegadekitty.wixsite.com/sims - my new Sims page, mods & Quarantine Challenge.
Field Researcher
#4 Old 21st Jan 2023 at 4:55 AM
It may show unknown if your SimPE installation isn't pointing to the game files correctly. I can't guess why it may happen as it relies on the same registry entries that the game does. It may also fail to load the game files if you load objects.package manually and unload it until you close SimPE and reopen it again, or if the game is currently open, it will throw a bunch of errors. Maybe you can go into the settings and and test the paths, or try Tools/ PJSE/ Refresh FileTable.

It is possible to work blindly without seeing the titles of those sub functions if you know what you are doing, but you won't get hints about how many arguments need to be supplied.

To insert a new line in the middle of the flow instead of at the end, you can select the previous line and press the button Insert via True (or False in other cases). Then double check that the outgoing lines from true and false continue on instead of pointing backwards. The inserted line will be a duplicate, and you can then edit it to another statement or call.
Lab Assistant
Original Poster
#5 Old 21st Jan 2023 at 10:50 PM
Quote:
Originally Posted by jonasn
It may show unknown if your SimPE installation isn't pointing to the game files correctly. I can't guess why it may happen as it relies on the same registry entries that the game does. It may also fail to load the game files if you load objects.package manually and unload it until you close SimPE and reopen it again, or if the game is currently open, it will throw a bunch of errors. Maybe you can go into the settings and and test the paths, or try Tools/ PJSE/ Refresh FileTable.

It is possible to work blindly without seeing the titles of those sub functions if you know what you are doing, but you won't get hints about how many arguments need to be supplied.

To insert a new line in the middle of the flow instead of at the end, you can select the previous line and press the button Insert via True (or False in other cases). Then double check that the outgoing lines from true and false continue on instead of pointing backwards. The inserted line will be a duplicate, and you can then edit it to another statement or call.


Thank you so much for that - I got an updated version of SimPE, and it loaded up the proper labels. I was very confused by where to put in the numbers and located the Wiki for this label (https://simswiki.info/wiki.php?titl...ake_Transaction) . I just used their direct example to make the charge, which says

"So, with all that in mind, let's say you want so subtract 30 simoleans from the sim currently using the object as a Miscellaneous expense. You would give the following arguments:

07 1E 00 07 00 00 07 00
00 03 0B 00 01 00 00 00 "

I figured this example was easiest to insert because I don't know what any of the other numbers mean and this is pretty overwhelming as a total beginner of editing the codes.

Based on this, I understand that - if it works correctly - any Sim a plate of food will be charged 30 simoleons? And what I hope you can verify is if the circled part looks accurate (true, false FFFC??) or would I somehow copy the same True/False as in 4D1? I did follow directly what you said by clicking the line before 4D1 to insert via true.
Screenshots

https://renegadekitty.wixsite.com/sims - my new Sims page, mods & Quarantine Challenge.
Field Researcher
#6 Old 22nd Jan 2023 at 12:06 AM
Consider if the function you're calling can return false, what does it mean, and the correct way to respond to it. If you don't know, a somewhat safe but ugly way is to direct both outcomes to the same line. You can see the author has done so higher on the Verify - Person Id lines. Only leave it to Error if the call does something that always succeeds. In the case of Alter Budget a failure can happen if your person doesn't have the required amount of $30. It is unlikely, but possible. So point the false line to the same line that Credit Owner is pointing to (35 in your example), where the interaction ends without getting any food.

You probably want to define some conditions if you want people charged only on community lots, like I'm showing on the screenshot.
Screenshots
Lab Assistant
Original Poster
#7 Old 22nd Jan 2023 at 6:08 AM
Quote:
Originally Posted by jonasn
Consider if the function you're calling can return false, what does it mean, and the correct way to respond to it. If you don't know, a somewhat safe but ugly way is to direct both outcomes to the same line. You can see the author has done so higher on the Verify - Person Id lines. Only leave it to Error if the call does something that always succeeds. In the case of Alter Budget a failure can happen if your person doesn't have the required amount of $30. It is unlikely, but possible. So point the false line to the same line that Credit Owner is pointing to (35 in your example), where the interaction ends without getting any food.

You probably want to define some conditions if you want people charged only on community lots, like I'm showing on the screenshot.


Your guidance has been amazing - the example you showed pointed me to look up more on BHAVs and the numbers, which I hadn't expected I'd need to do. But it's beneficial so I can do this on my own for other objects to suit my needs. In this case, I am playing a rags to riches, so having the action fail if she doesn't have $30 was needed. I'm beyond grateful. At the start of this, I didn't think I could get this done.

I did reference back to the wiki on the Budget code and trying to look up tutorials/explanations, but I can't find one that shows which operand/set of boxes are for the conditons like zoning for community lot, or what numbers represent those. That's something I definitely need to learn, because there are probably some items I'd like to charge for in hotels, for example. You had given a number earlier (5?) but I don't know where I'd find that information on my own. My SimPE also doesn't seem to have the same descriptions under the operands that yours does, or as shows in Echo's interaction tutorial.

https://renegadekitty.wixsite.com/sims - my new Sims page, mods & Quarantine Challenge.
Field Researcher
#8 Old 22nd Jan 2023 at 7:38 AM
The argument labels ("Amount", "Debit/Credit") have been extracted from other titles and included with SimPE. I don't know why your SimPE doesn't show them. It also includes "constant labels", which translate numbers into a meaning in many places, such as Const 0x013F:0x03 into "Food Expense". Those should really be made to work to make life easier. But I don't know what the problem is.

Find an object that performs a similar function and copy the lines from it. You can usually adjust a logical expression by incrementing the number it compares against until you find the desired value within that category. For example, if you see a test for person being a family member (0) with a constant, you can increment the number to 1 to get a test for visitor, which may be what you want.

If you click on the right-pointing arrow near the opcode (0294), you should get a long list of "Globals" which are commonly used functions, like tests for age, lot zoning or weather. Their names are drawn from the game. To check the lot type, look for the functions with names starting with "Lot - …" like "Lot - Is Hotel? - EP10". This function contains only one line comparing against Const 0x0142:0x05. Often times it is easier to just remember the 5, esp. if you don't have labels, or want to keep compatibility with older expansion packs that don't have hotels.
Lab Assistant
Original Poster
#9 Old 30th Jan 2023 at 10:54 AM
Quote:
Originally Posted by jonasn
The argument labels ("Amount", "Debit/Credit") have been extracted from other titles and included with SimPE. I don't know why your SimPE doesn't show them. It also includes "constant labels", which translate numbers into a meaning in many places, such as Const 0x013F:0x03 into "Food Expense". Those should really be made to work to make life easier. But I don't know what the problem is.

Find an object that performs a similar function and copy the lines from it. You can usually adjust a logical expression by incrementing the number it compares against until you find the desired value within that category. For example, if you see a test for person being a family member (0) with a constant, you can increment the number to 1 to get a test for visitor, which may be what you want.

If you click on the right-pointing arrow near the opcode (0294), you should get a long list of "Globals" which are commonly used functions, like tests for age, lot zoning or weather. Their names are drawn from the game. To check the lot type, look for the functions with names starting with "Lot - …" like "Lot - Is Hotel? - EP10". This function contains only one line comparing against Const 0x0142:0x05. Often times it is easier to just remember the 5, esp. if you don't have labels, or want to keep compatibility with older expansion packs that don't have hotels.



THANK YOU BEYOND WORDS!!! You have been so patient and helpful, and it prevented me from giving up, which is how I felt at the start of this. My thought was "I don't know how to do any of this, I just want my Sims to pay for food!"

1. I needed a different version of SimPE (0.73.44) to get the labels to show up. The descriptions really do help in figuring out what values are needed & what they change to when the numbers are modified.
2. I did NOT know what the "right-pointing arrow" near the OpCode did, and had never clicked it. That allowed me to see so many tests and how to create conditions like you mentioned previously.

I appreciate you so much, not only for showing me a working example, but also guiding me to the tools to figure it out myself and learn additional things. I could have just used the example and given up, but being shown where to find the resources opened up more possibilities that made working on it fun.

Thanks to you, I was able to modify it in different ways. I did try copying a similar object/mod, but it ended up charging my Sim any time a visitor grabbed the food. Instead, I created a set price for community lots, and created a condition so visitors could also get food (I assume they're paying). I then dug around a little further because the Sims kept flocking to it and blocking each other, and I was able to reduce the Motive attaction value in the TTAB (pie menu functions) and raise the attenuation code so that Sims have to be closer to think about using it.

Now, my Sim buys a cake if they want (or if I want them to), and visitors either walk right past it or stop for a cake. The community library/cafe is working well!

https://renegadekitty.wixsite.com/sims - my new Sims page, mods & Quarantine Challenge.
Test Subject
#10 Unread Yesterday at 8:04 AM
Sorry! Regarding this, I'm unsure.
Back to top