- May 14, 2017
- 156
- 495
My current implementation rolls on permission settings. Right now, every call to those methods hinges on two things: permission checks and location checks. By relocating those two checks into the permissions method and only looping through slaves who meet said permissions, it would drastically (and properly) reduce the number of slaves to only the number that have the potential to pass those checks. The only reason all of them can't be placed in permissions is some of those checks rely on time passed which is on a per-tile basis. It's not perfect, but it should cover every applicable slave without covering every slave.Pre-rolling everything only sounds like a good idea. If you have proper structure, it's significantly easier and faster to roll encounters when you need them.
The problem is this game doesn't have either.
The more advanced the game gets, it becomes almost impossible to properly pre-roll everything that you might need. And like, you have no way of knowing how many encounters you'll need. At most, you should only really pre-load a single encounter. Like, having your next random encounter loaded will allow you to quickly load it (which, again, you shouldn't need). Then during the encounter you can load the next one in the background.
But really, pre-loading everything is actually a really dangerous idea.
You technically know how many encounters you need at a minimum because the map is static, but the problem lies in repeatable encounters and rare encounters (e.g. Enforcer encounters), and encounters that you can remove (e.g. alleyway attackers) which would be replaced with something else.
I don't really have the time to invest into solo reworking an entire game engine though. I've got a fulltime job as well lol