22022021
Set up the backend today for working with dynamic world progression, along with the requisite daily rooms. I have just under 50 left before I’m completely done with the map…
Essentially, how the world event system works is that each room is assigned a “tier” based on the global world tier (dictated by the player’s progress through the story). Certain rooms have alternate versions that can be dynamically swapped out with the default ones depending on the world tier and player progress (which can be advanced either through completing certain objectives, or naturally with enough time). Today I built in the system that allows for that process of detection and room switching to function dynamically, without any (hopefully) hard-coded solutions. I also built in the world tier to the save/load system, which is something that for whatever reason I never got around to before.
All that’s left now to do in this regards is figure out how to semi-randomly generate event locations. I’m thinking that maybe there’ll be a function that runs at game launch, which chooses one location from a list of possible spawn points for each defined event and then clears the other rooms from the list. I’m not exactly sure how this is gonna work to be honest…
Another possible alternative may be accomplished with the “room_assign” or “room_duplicate”; the base room would have a special name (ie rmHouse), and then be either duplicated or assigned into one of several potential special cells. In this scenario, the special cells will always default to generic layouts, which prevents them from being messed with if not assigned properly. I think this is actually the best option, but we’ll have to wait until tomorrow to see…