"Bullet Hell" shoot-em-ups, with their demanding combat, pixel-precise movements, and powered-up armaments, seem like they would add some high-stress mechanics to the procedurally-generated roguelike genre. Procedurally generating stages and weaponry would seem like it would be a recipe for frustration, dumping players into obtusely laid-out arenas or dooming them with weak weaponry in a lethal dogfight.
The developers at Team D-13 were very conscious of the potential for disaster as they developed Monolith, looking to the strengths of both genres to see how they could enhance one another. By carefully tweaking the parameters for health, room layouts, weapons, and enemies, and drawing heavily from their deep love of the bullet hell genre, they were able to effectively blend the procedural generation and shmup elements, crafting a challenging experience that wouldn’t ever feel unfair
Born out of a perceived design flaw
“The two of us have a lot of experience designing bullet hell; we actually met as a result of an old make-your-own-shmup game called Fraxy, way back in 2009, and we worked on a shmup we never finished prior to starting Monolith” says Taylor Miller, lead programmer for the game.
"The key rooms can appear anywhere - but never adjacent to each other, so while they're never clumped up, they can sometimes themselves be intersections."
It was not just that love that birthed it, though, but also a design quibble that the developers had with one of their favorite games. “I originally wanted to see if I could replicate the room-based procedural generation of the Binding of Isaac, but fixing some things I felt made its levels a bit too obviously artificial," says Miller. "The game sort of grew organically out of that learning experiment.”
“Later versions would fix this, somewhat, but the original Binding of Isaac generated very obvious branches which did not intersect, and important rooms were always at the very ends of those branches," Miller notes. "This made the game a bit more structured, but in my opinion really limited the potential for interesting layouts; there was no potential for two branches to later cross over and rejoin."
Solving this design challenge mingled with their shared interest in shmups, slowly guiding them toward mixing the two genres together to create an experience uniquely their own.
"The key rooms in Monolith can appear anywhere - but never adjacent to each other, so while they're never clumped up, they can sometimes themselves be intersections," says Miller. "That allows the maps to be a bit more varied, and also made the exploration a bit smoother and more open-ended.”
Fair fights
Solving the issue of how rooms were laid out and set up was a great first step, but there were still some issues with how the genres would gel together. Shmups require insane levels of precision, and roguelikes can be extremely unforgiving. One-hit-kills seemed to be a bit much for a game that would send players back to the start after a few failures.
"There are several safety nets built in, like guaranteed health drops, regenerating bombs and an unlockable upgrade that just fully restores all player health."
“I think Monolith isn't that difficult of a shmup,” says Alex Lorenz, programmer/artist on the game. “We understand that most people aren't heavy into the bullet hell genre, so the game is very forgiving about this. There are several safety nets built in, like guaranteed health drops, regenerating bombs and an unlockable upgrade that just fully restores all player health, which can salvage runs that seem completely lost.”
“We definitely do give players a lot of tools and leeway to make mistakes," says Miller. "A typical shmup is only really going to allow you to take a few hits over the course of a game, we're quite a bit more generous in this regard."
This actually created a nice effect for the developers, one that took shmups in a different direction. Instead of memorizing layouts and optimum weapon pickups, players would be forced to react on the fly, training them to use the mechanics, rather than know the mechanics in regards to a given, memorized scenario. Here, they would have to be able to use these abilities on command with no foreknowledge of what was to come.
This builds upon a lot of those skills that shmups normally demand: reflexes and precise movements. “Familiarity with the game also just naturally makes players better at it, both in a sense that they can assess new challenges quicker, but also because they may keep finding out new interesting interactions. This is probably particularly true of bombs, which most people initially underutilize.” says Lorenz.
“Choosing to use procedural generation has a lot of really strong effects on a game," Miller adds. "Aside from the often-cited element of injecting a lot of variety into the experience, it really pushes you more towards gaining skills and general experience in the game, rather than simply memorizing level layouts (though certainly, knowledge plays a major role nonetheless).”
Even if this created a different kind of stress for shmup fans, it would not tax the player for long, something else the developers kept in mind. “I think the most important thing, though, is that play sessions of Monolith are, individually, short," says Lorenz. "Even a fully successful run that visits every room isn't likely to go much over half an hour, which is actually even less time than a lot of standard shmups (and, notably, about on par with, say, the Binding of Isaac).”
While the developers had to scale back some of the challenges of traditional shmups, it helped move the genre in a different, interesting direction, one that demanded a similar skillset, but used more fluidly. Rather than memorize, players would need to react using the skills they would build over the course of play.
Procedurally generating a Shmup
The procedural generation would need to be carefully designed to eliminate other possible problems. When fleeing from dozens of on-screen shots all at once, it wouldn’t do to have the game put together a stage that hampered free range of movement, would it?
No tags.