Bart Read

WIP: Star Citadel - a remake of Star Castle for web, mobile and tablet

Recommended Posts




Star Castle, originally by Cinematronics, is an old skool shooter released to arcades in 1980. The objective is to pilot your spaceship around the screen, and destroy the cannon that sits in the centre of the rotating shield rings. You must dodge both the large electric pulse projectiles fired by the cannon, and the homing mines it releases to chase you around the screen.

Star Citadel is my take on this largely forgotten classic and, whilst it includes a "classic" variant that I hope is very close to the experience of playing the original (tricky, as I've never actually played the original - only seen footage), the main event is the "modern" variant, which includes a few differences:

  • Your ship is a bit nippier, and hopefully easier to control, and overall I've tried to make the game feel more fluid
  • The earlier levels are definitely easier than the original
  • You do score (a very small number of) points for destroying mines
  • You can fire continuously simply by holding down the SPACE bar, mouse button, or by holding your touch on a phone or tablet
  • I've also removed the 3 shot limit from your fire


Both of these are items for the "modern" mode:

  • I'd like to add simple power-ups to increase your firepower
  • I'd like to make the mines harder to destroy on higher levels by making them require multiple shots to kill, along with colour coding to show how many more times you need to shoot them

There's also this:

  • I'd like to add more control options in terms of keyboard controls so that people who are used to the original button layout of the arcade machine find the game more accessible


The game should run in all modern web browsers on computer, and has been tested on Windows and OSX. It also runs on both iOS and Android devices. iPhone 6 or later recommended, although it just about runs on a 5S, and Android devices considered high end in 2014/15 or later will probably cut it.

  • On a computer either the keyboard or mouse can be used
    • Keyboard controls are ARROW KEYS to turn and thrust, along with SPACE to fire
    • Mouse controls: the ship will always face the mouse cursor so move the mouse to the location you'd like the ship to head towards, then LEFT BUTTON to fire, and RIGHT BUTTON to thrust
  • On a phone or tablet you can use a combination of tilt and touch controls
    • Tilt the device into landscape orientation (it's recommended you go into full screen - this works well on Android; iOS has no explicit full screen support so you may need to manually zoom the web page)
    • Tilt the device to steer - the ship will face in the direction of tilt
    • Press on the left-hand side of the play area/screen to thrust
    • Press on the right-hand side of the play area/screen to fire


I'm not using any kind of framework here: it's all just basic HTML5, JavaScript (ES5, to be precise, on the client), and CSS. No WebGL either: it's all Canvas2D. Audio mostly uses the Web Audio API, although I do make use of the HTML5 <AUDIO> element so the game will run with sounds in IE11. I suspect it would probably even work in IE10, although I haven't been able to test that recently, and I don't think anyone uses it anymore (unlike 11 - sigh).

The back-end is NodeJS/Express (ES2016 here) on Ubuntu, with MongoDB as main data store for hiscore and play information.


Any and all feedback gratefully received, particularly when in comes to playability and controls. Also if you fancy testing out the login with facebook/twitter functionality to ensure your high score is recorded correctly I'd be really grateful. There's definitely lag on scores appearing sometimes. Also, I'm not sure if the reason nobody else has logged in to associate their score with their name is because they just don't want to log in, or because I'm the only person it actually works for (wouldn't be the first time).

Also, happy to answer any questions.

Here's the link to play, again:


Share this post

Link to post
Share on other sites

And we're done with Star Citadel/Star Castle, or at least the game is as done as it's ever going to be! I've added multi-hit mines, which start to creep in on higher levels in the "modern" game. I've uploaded a video which shows the finished game:



First game I've finished in a long while. Now I just have to get it ready for app stores and licensing to embed in other websites, none of which is the fun part so motivation is a bit low, but I'll get there. In the meantime you can play at:

(Star Citadel will always be available here, even when the apps and licensing work are complete.)

Share this post

Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Recently Browsing   0 members

    No registered users viewing this page.