Two Tiny Triumphs
First, a small addendum to the last post:
The table that I showed you does not directly determine what a person will do next. They will not just look at the importance in the table, but rather: they will check how well they're doing on all their resources (difference to "good enough") and then multiply that difference by the importance weight factor from the table (for the current time of day) to determine the top 3 problems to fix next. From those they choose the one that they can deal with the most effectively (depending on transport conditions, etc.)
So a better formulation for the table might be that it slightly influences how likely someone is to do something about a problem regarding a specific resource, compared to problems regarding other resources, depending on the time of day. Let me know if that sounds better for you (so you don't have to be afraid anymore that I went a fully simplistic way).
The Triumphs
I did a thorough combing of Citybounds code
- it was inspired by something that kingoflolz showed me
- all of Citybound became roughly 650 lines of codes shorter (about 30 pages in a book)
- while doing exactly the same as before with the same performance
- you might ask why that matters if scrolling is so easy on a screen, but I definitely feel it much easier to work if I can read more "meaning" in one screen at once
- apart from that, it also looks more beautiful
- and most importantly, it made some previously hidden "magic" stuff explicit and clear
I figured out a way how members of a family can interact
- during my two moths of banging my head against the old economy model and now after coming up with the new model, I didn't really have any idea yet how household members would cooperate to solve their individual and collective daily problems
- In particular, I wasn't sure how to avoid the following scenario: husband comes home, "oh we have too little food", goes to supermarket, wife comes home "oh we have too little food", also goes to supermarket, they end up with 2x too much food
- ...but now I found a way!
- Since I need to track what people are currently doing anyways, I can also simply track additionally which problem they are currently trying to solve, so that when another household member notices the same problem, they can also see that someone is already dealing with that and solve something else instead
- The same model should work great for companies where workers also need to cooperate on common goals (for example deliver stuff to several clients with several truck drivers)
I already started to implement this, but I'm not done yet. I'll update you along the way!