Project Bob (Ravenous' Uncle)

Just thought i’d pop in and share a status update. Currently working on making the ai pick smarter choices. The main problem being haven gotten rid of the home options by making them actions, such that you can do different home options all in the same day, This has expanded the action list to 14 items. Why is this significant you ask. Well remembering back to math class on combinations and permutations, there is 7,529,536 possible ways to select your actions for the 6 day periods. That’s not even getting into the fact that each day period action now has a possibility of happening by your choice in any of the 6 new districts. Long story short, trying my attempt at brute force ended with an additional 6gb of memory usage along with long processing times, so now i’m attempting to find smarter ways of picking the best possible combination out of the 7,529,536. Its also important that this system is able to handle the additional actions added to the game in the future. For instance going from 14 actions to 15 changes the possible combinations to 11,390,625. Anyhow trying to bring you an unprecedented level of choice of how your game plays.

9 Likes

So you’re designing a stripped-down version of The Sims: Weight Gain Fantasy Edition? = P

1 Like

Lol, i have never played a Sims game, so i really would not know. However by the time this game is done(if i ever finish it), i doubt it will be stripped down.

1 Like

Ok so i mentioned that theres districts that house different industries, and contain different buildings to house jobs. What’s you guys thoughts on certain buildings only being open during certain hours(periods)?

Should buildings only be open during certain hours?
  • Yes
  • No
  • Other(please make a post explaining)

0 voters

4 Likes
How large are you ok with save files being?
  • 1gb
  • 500mb
  • 200mb
  • 100mb
  • 50mb
  • 25mb
  • 10mb
  • 5mb
  • 1mb
  • 500kb

0 voters

is there a guide or tutorial because i am lost

1 Like

Unfortunately, no. The best i can offer is reading this forum thread. At this time due to the game being in a alpha stage of development, the base mechanics are developing and changing quite rapidly, meaning i’d be re-writing the tutorial for every version, which is time consuming, I’d rather spend more time developing than writing tutorials for each version.

4 Likes

I already had plans for user defined events to be something that could be added to the game. However, since i have made the game world completely modular and procedurally generated, I am trying to make it such that some one could completely mod the game, from adding jobs, buildings, industries, and locations; to changing distributions of the jobs, buildings, and industries in those locations. I’m currently trying to figure out how to make a actions mod-able. The base/current ones are pretty hard coded in with some more complex functions. However, whenever I get around to completely exposing everything the engine uses to make the world, what this means is someone could completely make an entire new city with new jobs, and housing, in addition to the base ones, effectively creating an entire new scenario to play in, that was not designed by me. That reminds me I should allow for npc generation customization as well.

4 Likes

Don’t feature creep too hard right away, man! Build a solid foundation, let us break play with it, and then add more fancy features = P

3 Likes

thanks for suggesting man really good game!

1 Like

Its not feature creep so much as 2.0 is an entire redesign of the engine to allow for the addition of the npcs. While the game will play from the player perspective very similarly to the alpha v1 series, the engine goes about this completely differently. Part of building the engine is building for future expansion, otherwise i will just be rebuilding the engine again so i can add more things. Part of why so many things are changing at once is i don’t want to constantly be going back to reprogram the ai to bring in a lot of the features i have planed anyway. Also a lot of these ideas i have had for quite a while, i just haven’t shared or revealed them to you guys.

Even if i did not make the npcs fully autonomous some form of redesign would have been necessary at some point. The alpha v1 engine was built with no expansion in mind or modularity unfortunately, because i had just leaned python and i was more focused on making a working proof of concept. It was akin to prototype to see if using renpy and the shared control with an ai gave what i was looking for. Also, I was still learning how to apply some of pythons more advanced concepts and features.

To be honest a lot of this probably could have been avoided with better planning and programming/game project development best practices, that i honesty don’t know because i am a hobby coder, who taught themselves.

5 Likes

Hmm. And to be perfectly fair, I’ve never done anything nearly as ambitious as a game, and it’s been a long while since I did any coding more complicated than editing a few game files here and there (specifically, for the games Elemental: Fallen Enchantress and 7 Days to Die, to change some of the mechanics a little), which I think were in XML. I’ve never even looked at Python before.

Just don’t want to see you mire yourself in backend stuff and lose interest before producing anything playable that we, the playerbase, can get excited about and reinfect you with enthusiasm for the project = P I know I’ve done that with writing more than once.

1 Like

So todays topic is for loops and the fact that 78 of them are needed to generate all the jobs and job buildings. Can you be dizzy from tracking where and what your trying to iterate through, because I think I am? Also need to give a shoutout to @Tron and @e123b who have provided the inspiration, via Forks code for how this code works. Using a for loop in a condition statement in python, is not something I knew about or would have thought to try, till seeing it in the Forks code.

4 Likes

I think I didn’t understand the game, how can I make the days go by?

1 Like

Use the start day to initiate the start of a day. It should be noted that you have to have a valid day plan, transportation, and clothing worn, for it to actually start the day and not send you back to fix your choices.

78 For loops?!

Bloody hell, that’s a lot!

But that’s just initial world setup, right? You don’t have 78 For loops executing every single day…?

1 Like

Uhh, let’s separate some things, there being 78 for loops and how many loops are executed during the 78 for loops. If one of the 78 is inside the other then the one inside executes the number of times the parent one iterates over something. So going double deep with a for loop in a for loop in a for loop, would be on a x cubed factor scale. So how many time a for loop executes during the 78 for loops is, idk haven’t done the math, it’s a lot though there are quite a few nested loops. One is 9 deep, but for it to execute it needs a certain set of conditions.

The number for loops that executes each day is in the thousands possibly millions considering just the eat function x the number of npcs. However that’s just the same single for loop executing on each npc, possibly multiple times.

Maybe I’m not reading your post right, but usually, you want to limit the number of iterations over a for loop that frequently-called code will run. Since, as you described, there’s an exponential factor with nesting for loops, it can quickly lead to performance issues.

1 Like

It worked, that was my mistake.

Right after advancing in the game I found a bug, follow the printscreen…

Error: Image ‘bg fastfood’ not found.

1 Like

Per earlier post replying to me:

1 Like