Retro Slasher is going to have rogue-like features! But what does that mean for this project?
For one, it means changing map layouts. Some of the important camp buildings – cabins, the office, and the barn, for instance – are going to be placed randomly each run. Important items can move, too.
For two, it means solidifying the “run” mechanic. The game’s original design was as a run-based, almost arcade-style horror game. The decision to include rogue-like features means we’re definitely going in that direction.
Other potential rogue-like mechanics you might see include changing AI traits, different items or buildings, etc.
Early in development, I was considering adding these features. I decided to write building placement in such a way that, if I did choose to implement them, I wouldn’t need to rewrite anything.
In the map creation code, I have a list of building objects, which accept a parameter for where on the map they should be placed. That parameter was originally hard-coded, but I took all of the values and put them in their own list, then wrote a function for removing and returning a random value from that list, and each building is now placed by calling that function.
It ended up only taking a few minutes to start placing the buildings randomly! There needed to be a few design touch-ups to make all of the spots fit all of the building types, but all in all it was fairly quick.