Jupiter Hell is the game that has convinced me the conventional, “classic”, roguelike genre is dead to me.
This is not particularly the fault of Jupiter Hell. Far from it, in fact, since it’s the most polished example of a classic roguelike I’ve ever played. This polish goes beyond the 3D visuals, which I think are actually something of a weak point; despite being a turn-based game that’s controlled solely via keyboard commands it’s actually put a hell of a lot of thought into usability and accessibility, ruthlessly chopping down on button bloat, automating away common actions and even integrating one or two UI tricks from modern ARPGs. Its take on a roguelike that’s overwhelmingly focused around ranged combat is a reasonably interesting one, too, and it’s spent a significant amount of time in Early Access to work out most of the kinks. It does have a few wonky bits that I’ll talk about later on in the review, but it is, on the whole, a perfectly fine game.
But in a way, that’s precisely the problem. As good as Jupiter Hell is, as accessible and frictionless and presentable as it has tried to make itself, it still can’t hold a candle to the roguelike genre’s modern successor: the roguelite. And after experiencing the brutally refined gameplay formula and fast iteration loops of the better roguelites over the last few years, I find that a traditional roguelike like Jupiter Hell feels rather bloated and ponderous by comparison.
Jupiter Hell is a largely-successful attempt to make a Doom roguelike with the serial numbers filed off. If this concept already sounds familiar to you, you’re probably thinking of the extremely-venerable Doom RL, and for good reason: Jupiter Hell is by the same developers, and represents their effort to take the idea commercial without incurring the wrath of id Software’s lawyers. As the title implies, the action has moved to Jupiter’s moons of Callisto, Europa and Io instead of Doom’s jaunt across Mars, Phobos and Deimos, and a few of the more obviously copyright-infringing monsters such as Cyberdemons and Spider Demons are conspicuous by their absence, having been replaced with more generic alternatives. Aside from these comparatively minor changes, though, Jupiter Hell is Doom. It has zombie soldiers, imps, chainsaws, chainguns, rocket launchers, a thing that looks very much like a Mancubus, and a suspiciously familiar set of green armour that’s very fortunate you can’t see it in detail otherwise it probably would get sued into oblivion — I understand there’s even a BFG in here somewhere, although I’ve never managed to find it. It is quite remarkable how little Jupiter Hell has actually had to change, and how faithful it therefore feels to the core Doom concept — and feeling — of gunning down hordes of demons in overrun space bases.
This is all the more impressive considering it’s a turn-based roguelike rather than an FPS. Jupiter Hell follows the standard roguelike formula: your little marine explores a series of randomised level layouts full of monsters and loot chests, looking for the door that will take them to the next level. If he survives through this process 25 times and manages to kill the end boss, then congratulations! You’ve managed to beat Jupiter Hell. Viewed from a high level this not a particularly new concept and there’s very little flair or fanfare attached to any of it — the level generator is distinctly unmemorable for all that it occasionally mixes in mutators like an imp infestation or the power being out, and beating the final boss is simply greeted with a “You’re Winner!” text splash, a score screen and then being unceremoniously booted back to the main menu — but what is interesting is Jupiter Hell’s take on the details, specifically the combat system and the character skills that tie into it.
As it is a barely-disguised ripoff of Doom, Jupiter Hell’s combat is overwhelmingly based around the use of ranged weaponry. Melee weapons do exist — this wouldn’t be Doom without the chainsaw, after all — and the character builds that make use of them can be very powerful, but they take a while for everything to come online so that you can actually use melee weapons effectively; until then you’re going to be using pistols, shotguns and assault rifles just like every other build. Every gun has a to-hit chance that can be affected by a whole host of external factors:
- The range you’re engaging an enemy at. All guns have optimal ranges and minimum/maximum ranges; firing at an enemy that’s outside of optimal range or inside of minimum range applies a to-hit penalty. At the very least this means it’s good to have a short range weapon and a long range weapon so that you’re not stuck trying to fight off a point-blank horde of ravenous demons with a sniper rifle.
- Whether you’ve been wounded recently. Getting hurt applies a Pain debuff that negatively affects your to-hit chance; you can clear this by using a medpack or the Marine’s adrenaline ability.
- Properly aiming your weapon instead of spraying rounds at the target willy-nilly. Pushing W tells your character to wait where they are for a turn, and if you do it in the middle of combat they’ll get an Aim bonus to their to-hit chance as they take the time to draw a proper bead on their target. They lose the Aim bonus once they fire, so unless you take certain character traits you can only fire every other turn like this.
- Whether your target is in cover or not.
It’s this last one that dictates much of the pace and strategy behind Jupiter Hell’s combat. If an enemy is next to an object that will provide cover from your shot, such as a pile of crates or a wall, they’ll automatically receive a cover buff that reduces your chance to hit. Conversely, if you are next to a convenient corner and are peering around it to shoot things in the corridor beyond, you will also automatically receive the cover buff against any incoming fire. The cover buff is large enough to significantly affect your survivability — if you get caught out in the open when fighting multiple enemies you’re going to take a shitload of damage and probably die — so when a fight starts in Jupiter Hell and you can’t end it in a single round before they fire back, you need to be doing the following:
- Making sure that you are in cover.
- Making sure that your opposition isn’t.
This is easier than it sounds. For starters, repositioning into cover is encouraged by an automatic Dodge buff that reduces enemy chance to hit whenever you’re moving from square to square — you (normally) can’t do anything else when you’re moving so it’s only situationally useful, but it does mean that enemies aren’t exactly getting in free hits on you while you reposition since you’re better protected doing that than you would be if you remained where you were blasting away at them. Then there’s the enemy AI, which is… not bad, because it’s just standard roguelike monster AI, but it’s definitely simple. If a monster catches sight of you it will pursue you more or less indefinitely until it can attack and it won’t particularly care about being in a good, covered position itself, making it quite mechanically trivial to bait enemies back into a nice chokepoint with a convenient piece of cover at the end.
There are complications, however. When the monsters aren’t actively attacking you they’ll roam the level, and they are drawn to the sound of gunfire, meaning that you can be retreating down a corridor that you thought was safe only for a bunch of zombie soldiers to suddenly appear at the other end. Enemies do emit Doom-style passive guttural grunts and snarls even when you can’t see them, so it’s possible to figure out roughly where additional enemies might come from and pick your fallback position accordingly. Even so you can only fire your gun once per turn, and while there are weapons such as the rocket launcher and the shotgun which can hit multiple enemies with a single shot you can often find yourself in a bit of a sticky situation when sheer weight of numbers and/or tough enemies have enabled the horde to close to melee range.
In this scenario, if you haven’t been planning ahead, you’re going to take unnecessary damage. Jupiter Hell’s health bar is interesting to me because there’s very few ways to make it bigger; the Marine class has a trait they can buy to boost it from 100hp to 160hp in 20 point increments, and there are rare medical terminals you can run across that’ll let you boost it by 5 points a go, but otherwise that 100 points of health is all you have to play with for the entire length of a run. This is not a game about getting big and swole and tanking through all of the incoming damage; you need to be using your build, your equipment and the environment to either apply enough stacked damage reduction that you can survive the ever-spiralling amounts of damage that enemy attacks cause through to the endgame, or else ensure that you never get hit at all. The Scout and the Technician classes both have escape abilities that they can fire off if they get into trouble; the Scout’s cloaking ability is a bit shit since enemies seem to know where you are anyway, but it’ll at least stop them from firing at you while you reposition, while the Technician’s smoke screen allows for much more effective disengagement. If that fails, it’s always worth carrying around a few grenades as a last-ditch defensive measure, or one of the emergency teleport homers that instantly relocates you to a (hopefully) less monster-infested part of the level. Jupiter Hell is also reasonably liberal with medpacks but they won’t get you out of a jam, they’ll just patch you up afterwards, so it’s a good idea not to devote too much inventory space to them and leave some for these “Oh shit!” items instead.
Speaking of classes, I think the thing that has impressed me most about my time with Jupiter Hell is the amount of breadth and experimentation that’s possible with the character builds in this game. There are only three base classes — Marine (angry fighter), Scout (sneaky sniper) and Technician (hacks things, summons robots) — but each of them has five “Master Traits” that effectively function as prestige classes that make them really good at one thing in particular. The Technician can be specced into what feels like the intended role of a hacker who subverts enemy bots and can even summon their own, but there’s also a Blademaster trait that lets them use two melee weapons at once, gives them free attacks with melee weapons when moving, and which boosts their damage reduction when dual-wielding. Or there’s the Fireangel trait that boosts rocket damage and lets them ignore explosion splash damage, or the Entrenchment trait that further boosts the effects of any cover they’re sat behind. The obvious path for the Scout is that of a sniper who relies on their stealth ability and a selection of critical chance-boosting traits to put out huge single target damage, but they can also dual wield pistols and automatically fire them at enemies when they’re moving. Even the Marine, who is Jupiter Hell’s generic Warrior class, gets to choose between specialising in shotguns, automatic weapons or just punching things really really hard.
So there’s a fair amount of variety here despite the seemingly-limited class selection — and the particularly nice thing about it is the flexibility available within a particular build choice. You can’t unlock a Master trait until level 8 and have to take a few prerequisite skills beforehand, but the requirements for it are almost always two points in one skill and one point in another. You get a total of six skill points in the process of levelling up to 8, so that leaves three skill points for you to spend wherever you choose even before you get your run-defining skill. Each trait you can buy has three levels and if you make it to the end of a run you’ll be at level 16 or 17, so even if you intend to max out your Master trait you’ll still end up with ten skill points that can be invested in any of the other 17 normal traits available to a given class. Another nice thing about the trait design is that while some traits offer straight numerical increases in effectiveness as you invest more points — so Juggernaut offers 25% damage reduction at level 1, 50% damage reduction at level 2 and 75% damage reduction at level 3 — which makes maxing them out a no-brainer, most traits offer different types of boost for each skill point you spend, like attack-on-move at level 2 and a free attack after a kill at level 3. This means it’s perfectly viable to buy just a single level or two levels of a thing without feeling like you’re not min-maxing your skill build properly, because whatever bonus is available on level 3 isn’t necessarily going to synergise quite as well for you as another trait’s level 2 bonus might. It’s actually pretty rare for me to take a non-Master trait all the way to level 3 in Jupiter Hell; this is a testament to both the clever way the trait levels are structured, and the fact that I don’t think there’s a single duff trait in the entire game. Everything is useful, and the bonuses are usually chunky enough to be immediately noticeable in gameplay, and since you have total freedom over where you spend most of your skill points you can mix and match traits and trait levels in an almost infinite number of combinations.
It’s here, though, that we come to what I consider to be Jupiter Hell’s major failing. The combat system is solid enough to support all of these cool traits, and the trait system is deep enough to create a ton of different yet seemingly-viable ways to play the game. The compelling thing about Jupiter Hell, for me, is coming up with new builds and trying them out; the normal combat paradigm is to retreat behind cover and shoot it out with the monsters, which gets rather old after a surprisingly short amount of time, but the traits let you step outside of that paradigm in interesting ways. It’s the same thing that I found so interesting about Hades, which is a game that I put north of 100 hours into, but I’ve found myself getting irritated with Jupiter Hell after just a dozen hours.
And this is primarily because a single full run of Jupiter Hell, from start to finish, takes around 90 minutes. That’s short for a roguelike, and Jupiter Hell does nearly everything it can to sand away all of the typical roguelike cruft so that you’re not wasting time on inventory management or arcane combat systems. Interacting with things is done by simply moving into them. Taking cover is automatic with helpful, very readable indicators of which pieces of scenery are providing you cover, and which are providing cover to your target so that you can reposition if necessary. If you pick up a healing orb that would take your HP above the max amount, it’ll just overfill your bar for the duration of the level so that you don’t have to worry about wasting the excess. What little inventory micromanagement there is consists of having to occasionally drop one stack of ammo to make room for something else; picking armour or weapons up automatically swaps it out with the currently equipped item, and you can even compare items on the ground before picking them up to see if they’re better. Because so many common points of friction have been automated or abstracted away there’s maybe seven non-movement keybinds in the game and they all make complete sense — F to Fire, G to Get an item on the ground, W to Wait a turn, D to Drop an item and so on. Despite being a “classic” turn-based roguelike with keyboard-only controls, Jupiter Hell is far more accessible and far nicer to play than that description implies.
In spite of all of that excellent UI and UX work, though, it can only get the run length down to 90 minutes. And that’s if I’m playing quickly; if I’m taking the time to think through my moves, which the non-Easy difficulties seem to demand, I’m looking at runs that take closer to two hours. Either way this is a big problem for me; as I get older I’m increasingly fond of games that let me complete a single play session inside of an hour so that I can fit them around the rest of my life. Obviously if I die early on — which happens a lot — it’s only 30 or 40 minutes, and even the longer runs can be saved so that I can come back to them later, but that would involve an amount of context switching that would probably get me killed as I completely forget what my build is and which weapons I have equipped on which keys. Ideally I want to be finishing it in one go, and so far I have, but it does feel like a bit of a marathon. Getting to the end of Jupiter Hell is exhausting in a way that battling to the end of a modern roguelite isn’t1.
Even for those of us who don’t have such a stringent objection to not doing everything in one go, though, Jupiter Hell has a bigger problem here: if the meat of the game is based around trying out different builds to see how far they take you, then a run length of 90-120 minutes is just a bit too long to really feel like there’s a satisfying experimentation loop of skilling up, dying, repeating and gradually homing in on something that works. If I have a duff build then I want to know about it quickly; I don’t want to struggle on for an hour and a half and then get butchered by the difficulty spike in the final area because I made a mistake in trait selection a full hour ago. This is where the roguelites such as Hades have thoroughly eclipsed the older roguelikes — or possibly they’ve just spoiled me so that it’s very difficult to go back to an older way of doing things. Did I have the same problem with Dungeons of Dredmor, which occupied a similar niche of a shorter, accessible roguelike? Steam says I put 86 hours into that, so probably not, but things are different now and if you can’t make your feedback loop as snappy as Hades or Spelunky or Binding of Isaac or Slay the Spire then your game just ends up feeling unnecessarily stodgy, as Jupiter Hell does.
Perhaps if it were a bit more immediately attractive, or had meta-progression of some kind to give me some shorter-term goals to work towards, I’d be prepared to stick with it for a little longer. Alas, Jupiter Hell’s 3D graphics ultimately end up hindering it more than they help it here, since there is no way of zooming in on the action and you’re nailed to the same birds-eye isometric view for the entire game, rendering firefights a contest of one tiny stick figure versus hordes of other tiny stick figures. I sometimes “lost” enemies because they’re basically impossible to see if they’re not your current target and thus don’t have a small green box around them telling you where they are, and in the more crowded fights towards the end of the game it’s quite difficult to tell what’s going on, period. Furthermore, while the UI and the text descriptions are trying to evoke the cartoon atmosphere of the first two Doom games (and particularly the Doom comic) the 3D visual style is very Doom 3, which in practice means that everything is shrouded in darkness and you can’t see a damn thing anyway. The music is painfully generic rock and metal that’s earwormy in precisely the wrong way, like the heavy metal version of an advertising jingle; I quickly turned it off and stuck the classic Doom soundtrack on in the background. And there’s no meta-progression in the game at all; aside from a few challenge modes the core loop of live-die-repeat-from-scratch is all you get, which is at least fitting for a classic roguelike and which I know will actually appeal to some people, but I need a little more structure to my games these days than doing just the same thing over and over again.
The thing is, though, aside from the last paragraph none of my criticism can be laid directly at the feet of Jupiter Hell. It does everything a classic roguelike should do, and it does most of it well — some of it exceptionally so. It’s not like I haven’t put a considerable amount of time into roguelikes in the past, either — I must have spent a couple of hundred hours on Zangband around the turn of the millennium so I definitely had the patience for them at one point, and if Jupiter Hell had been released even a decade ago I think I’d have nothing but praise for it. Should it really care that the gaming landscape has changed quite dramatically in that timeframe? Perhaps not, and it’s not like it totally ignores that fact either since several of the UI improvements it makes feel very modern to me. If you are sick of roguelites and are looking for something a bit more old-school then Jupiter Hell very definitely has you covered. That’s not what I was looking for, though — or perhaps I should say, it’s something I’ve realised that I no longer really want. And if a game as good as Jupiter Hell has ended up as a definitive miss with me it’s perhaps time to accept that, while the time of the classic, turn-based roguelike is by no means over, my time with it probably is.
- Spelunky 2 excepted. Which I’m still upset about. ↩