Singleplayer and story mode: Release of Spaceships version 1.5.0

Date:
Category: Development

Initially posted to the now-defunct Lemmy instance.

New version

After nearly five months of game development, web development and dealing with the consequences of not making regular backups, I have finally released Spaceships v1.5.0. This version introduces a new major aspect of the game, a singleplayer mode with actual gameplay.

Right now singleplayer has been implemented in the form of levels and combat with bot players. To complete a level, you must navigate the map and destroy all bot players without losing all your lives. Right now five levels have been created so far, each progressively more difficult. In addition to gameplay, these five levels include a story displayed at the beginning of a level, and so these levels are considered the game's story mode.

Version 1.5.0 is incompatible with all 1.4.x versions. If you're version is 1.4.x and you try to connect to a v1.5.0 server, you will get an error.[1]

Story

In the story that I have written for story mode, the year is 2031 and all consumer devices have extreme authoritarian restrictions on them that prevent users from installing custom operating systems and applications, and restrict the websites users visit. The system that enforces these restrictions is the Environment Verification Integrity Library, or EVIL, which is created and maintained by Globye, a company affiliated with the US government. The restrictions imposed by EVIL aren't entirely fictional, they exist in the modern world on most mobile phones which prevent the user from installing an operating system of their choice on their "own" phones. This technology in the real world is euphemistically known as "trusted computing", and might in the future exist on laptop and desktop computers.

The restrictions imposed by EVIL are enforced using public-key cryptography. One way of thwarting these restrictions is to get access to Globye's private key, which will allow custom operating systems with none of Globye's restrictions to be installed on any EVIL device.

In story mode, you are an insurgent in the Digital Underground Resistance Front (DURF) fighting in a military operation against Globye with the goal of completely destroying EVIL. DURF plans on destroying EVIL by recovering Globye's private key in a physical attack on Globye's premises. DURF has intelligence that Globye's private key is stored inside a bunker on Epstein island, known in the story as LSJ ("Little Saint James"). The five levels in story mode consist of the player taking over a military ship to sail to Epstein island and breaking into the bunker to liberate this private key.

Screenshots

Here is a screenshot of these five levels in the GUI.

GUI that includes five buttons, one for each level. Each of these buttons are labelled with the names of each level, which are "Port Attack", "Hijack a Military Ship", "Sail to LSJ", "Bunker Break-in" and "Key Liberation".

Here's a screenshot showing the start of level 1. Attached to this post is a video showing the completion of this level.

Gameplay in level 1 showing the user-controlled player fighting a bot player.

Regeneration change

One major change to gameplay that has been implemented in both levels and multiplayer is how regeneration works. Previously the player regenerated health at a constant amount, taking 50 seconds to regenerate from almost no health to full health.

A problem with this model of regeneration is that regeneration for an unlimited amount of time can make the levels too easy, and it makes gameplay more boring by incentivising players to wait for their health to fully regenerate before taking on a battle.

The way regeneration works has been changed so that by default the player regenerates at twice the original rate, but only for 25 seconds. In effect, under the assumption of no health powerups, this is equivalent to the player being able to fully regenerate one entire health bar's worth of health, but no more.

Changelog

Here is an incomplete list of all the changes I have made over these months of development.

Major changes

Minor changes

Bug fixes


  1. Note that if you're on v1.4.2 or v1.4.3 due to a bug in the error message, you will get a warning saying that a v1.5.0 server is running a "development version" when it is not. ↩︎