This week’s been again a grab bag of little fixes and improvements to the game. I’ve hidden away the debug menu, added to and improved the campaign over ui, fixed a bunnnch of issues with iCloud and added a handful of iOS specific stuff, including performance profiles for devices based on RAM quantity, all bitsy, but stuff that needs to be done.
However the big one is reworking the way the game’s missions handle.
While playtesting the game through the week I’d often find myself in situations where I’d cleared a level of its enemies, then just had to dutifully go around and smash stuff. Now, don’t get me wrong here, smashing stuff is great, but without risk it gets very boring very quickly. You know you’ll win, its just time, and at the end of the day this is a mobile first game, so, a players time is something I need to respect.
Whilst working on the fixes and updates, I thought of ways to solve this issue. Nothing quite fit, until this morning, whilst I was out for my morning run the idea hit me.
What if enemies constantly reinforced?
I could immediately see a stack of issues and conflicts emerging from this, but there was something interesting in that concept. So, after coffee I dove in and got it working. It took me about five or so hours but now the concept works more or less as I intended.
When you dive into a mission, a single target is picked out as your priority and your job is to eliminate it, then extract. This target is chosen from either units or buildings present in the level at load time. By default new enemy units will arrive every thirty seconds or so, mounting pressure quickly. This means that stealth and hit and run tactics are the preferred approaches for most missions, as continually getting into scuffs will eventually lead to you losing your Exo. This gameplay change also emphasises the need for defensive utilities like smoke launchers, giving you some space to handle enemies at your own pace.
The thing that makes this work so well however is that it’s tied directly into the game’s difficulty systems. At lower levels, enemies take longer to reinforce, and deploy fewer units, but at higher levels you’re not only having to deal with more frequently deploying units, but also more objectives to take out per mission. This pushes the playstyle from slow and steady up to highly aggressive, leaving only a little room at the very top of the difficulty curve for players with the skill and loadout to smash up to six objectives very quickly before they’re overrun.
As with last week, this is effectively a self balancing system. Completing campaigns will push you further up that difficulty range, dying will slide you back down. So if you’re having trouble in this campaign run, you get a chance to reset on something a little easier next time.
I always feel that It’s at this point in a project that the best ideas come up. Your knowledge on the project is intimate, nearly innate, you understand its strengths and weaknesses and know the best moments to make changes to accomodate for these. It’s a pity that often (at least in the games / projects / companies I’ve been involved in) this is the stage of the project where it’s heads down, bums up and its all about racing to that finish line.

It always pays to take a second and think “how can this be better?”.
Exoloper Tasks completed:
-
Feature: Mission revamp + infinite spawning enemies
-
Feature: Add remap controller UI
-
Feature: Common items should be infinite in inventory. player should never run out of them
-
Feature: set default renderscale to 75% for iPhone
-
Feature: Check iCloud is working
-
Feature: Add iOS feedback request
-
Feature: Combat: Tanks that lose their tracks should be immobilised
-
Input: Touch: Pinch to zoom in campaign
-
UI: Campaign complete show difficulty increase / decrease
-
UI: Debug Menu
-
UI: Campaign: split mission from location name.
-
UI: Add total amount of missions completed at rank 6.
-
UI: centre and highlight “tap anywhere to skip” on intro
-
UI: add label to bug report button on homescreen
-
Bug: Starting a new campaign after leaving an old one retains items in campaign data
-
Bug: Null ref when opening campaign view
-
Bug: AI Not following player in combats?
-
Bug: new Campaign didn’t fire drop sequence.
-
Bug: “cannot find bounceback error” has been replaced with gameover.