hello, Internet. Ben here with another Mysterious Space update.
I wanted to do a video update, but I messed it all up twice in a row, so I’m just gonna do a text update, instead 😛
the first thing I want to talk about is a major change in how enemies are spawned! previously, they came at you in a kind of steady drip-drip-drip pace. one enemy appears… then another… then maybe two this time… okay, back to just one more… etc.
this has two problems:
1. when you want to have a moment to investigate a new puzzle – say you’ve never seen outposts before, or forcefields that require pushing a button – you never have that moment. you start to investigate, then an enemy comes charging at you. you kill it, but then another enemy is on its way just a couple seconds later…
2. the speed at which new enemies spawns increases, and while it SHOULD, it provides a CONSTANT pressure that’s more “ugh! cut it out, already!” than it is exciting. the world has long known that a better way to create excitement looks like this, in the most general:
or this, in the more-specific:
I’ve known about interest/difficulty curves for a while, and have even examined Mysterious Space with interest curves in mind before: every level is a peak; the space between is a trough; but we lacked that initial spike, which is why I added a boss fight to the end of the tutorial. but while I had thought of the overall game structure, I somehow failed to think of interest/excitement/difficulty within a level itself!
and that is why, rather than the steady drip of enemies, I’ve moved to enemies coming in waves! and as the level progresses, the intensity of these waves increases.
mini-bosses are kind of interesting, though: first of all, they’re only sometimes present, so only sometimes provide a spike in interest (hm!) even when they ARE present, though, while they always create a spike in INTEREST immediately (“oh, shit, a mini-boss? do I want to fight him now, or later? oh, hm, actually, there’s going to be extra fuel on this level, so I don’t even HAVE to fight him… but he will have that regenerating armor drop, and I could use an armor upgrade…”), because the player can choose when to face them, they may not create a spike in DIFFICULTY until later (or never!)
I’ll think more on this later, but for now, at least, I will let mini-bosses stand as they are.
ANYWAY: so that’s the first change coming in 0.8.3.
moving on: a tractor beam enhancement! you can now use your tractor beam on a fallen ally!
this came about as a result of talking to a Mysterious Space player – Kyle! – on Steam. Kyle! reported a co-op bug (which I’m still investigating), and I admitted that I don’t test co-op as much as I should, since I’m developing the game solo, so had a question: “since you play a lot of co-op, I’d be curious to know if you’ve been able to successfully protect a friend when they’re reviving. the intent of the mechanic was to encourage players to stick together, but I’ve never really been sure if it does that :P”
Kyle!’s response: “eh, not really. Maybe 1/4 times I am close enough to save him and if I am it all depends on what is attacking him. If it’s a ufo that shoots straight down then he is boned”
it was as I feared! the system was not providing much opportunity for players to help one another out when they need it most.
but then, while mentioning this problem to a friend who doesn’t even play Mysterious Space, he said “it’d be cool if you could use a tractor beam, or something, to pull your friend from danger!”
YES! THAT’S SO PERFECT!
he didn’t even know tractor beams were already in the game, but the fact that they are is what makes this suggestion even better: it slots in naturally; it works with an existing mechanic…
and so: you can now use your tractor beam on fallen friends. besides the general usefulness, I hope this proves especially useful when spikes are around!
the third thing I want to talk about is less-exciting, but never-the-less useful: there is now, and finally, a SETTINGS menu option on the title menu! the biggest challenge for me here was in not just re-doing all the logic from the in-game settings menu…
what I mean is: if I had just straight-up recoded the UI and logic, we would now have two instances of code where, say, music volume can be changed. if I later decide I want to allow volume to go up to 200% (rather than the current 100%), I’d have to make sure to change it in BOTH places <– and that is a terrible, terrible situation to have your code in. it leaves you open to bugs and other misbehaviors, and I wasn't going to have it 😛
so I abstracted settings away, and created a central “list of settings” that is used in both places. every setting knows how to respond to different button presses, and even how to draw itself (with some options). if I wanted to create a THIRD place to access settings, that would now be much easier, but that's less likely. again, the important thing is that now if I want to change the options for a setting, or even add a new setting, I only have to do it in one place in the code, and both parts of the game will reflect this change.
SO: anyway: those are the three big things I've got in for 0.8.3 so far. there's still a couple weeks in the month, before I release. I will post again (in text, or video) before then, with a run-down of anything else new I add 🙂
thanks for reading, and thanks for playing Mysterious Space 🙂