Rubicon Influences

Spaceship shooting:
This whole thing started as an attempt to come up with a better control scheme for flying a spaceship around than in Asteroids; I liked its core economy of choice between moving and shooting, but it felt unwieldy. Rubicon is my response — I tried to preserve that core mostly-mutually-exclusive decision to steer versus aim, but make it easier to switch between the two.


I also looked at Geometry Wars and a couple of the other twin-stick shooters that it spawned. I didn’t learn a lot though, since it allows you to do both simultaneously.


Luftrausers showed me the form of juicy 2D flying + shooting.



Ship modification:
I initially tried copying Mechwarrior/Gratuitous Space Battles with slots and whatnot, but it never felt right. The final version was cribbed almost directly from Megaman Battle Network, with my own addition of “addon” components and the bonus for symmetry (there are other shape bonuses too but they’re pretty trivial).



I copied a lot of the weapon/ability/enemy designs from Bastion+Transistor. They do an *amazing* job making equipment “swingy” (no +5% incremental improvements) and allowing different loadouts to generate novel gameplay.


Mission design:
Space Pirates and Zombies did a pretty good job of filling the design space of “what sorts of objectives can you have in a fly-around-and-shoot-things-game”. I didn’t end up using most of it (base defense, hunt, assassinations…) but it was a good starting point. Also, progress past escort missions not depending on the survival of your escort was a good call (you just don’t get their bonuses).

I mostly ended up with two core mission types (and enemy types, for that matter): shooting challenges and movement challenges (cryopod rescue).

PCG mission nodes:ftl
FTL, obviously. Though I don’t like the lack of information in FTL, most of the time you’re just randomly choosing where to go. I pared it down and made things a little more straightforward. The creators of Spelunky put up a cool walkthrough of how their PCG engine works, which I based a lot off of.

I actually played around with making it a roguelike (contact enemies to zoom into battle mode) for a full month before scrapping it (KILL YOUR DARLINGS) as an uncontrollable too-complicated metastructure.

Character dialogue:base
Randomly-triggered banter? Sounds like Bioware.
Badly translated English? Sounds like Zero Wing.


Unlockable stuff from the main menu showing up playable ingame? Sounds like FTL and Crypt of the Necrodancer.

Ever since I read Kidd Radd (a semi-animated online webcomic epic from 2002 – 2004), I’ve been conscious of games about violence for the sake of violence… whiiich is basically what I just made. The muddled morality that pops up in the game stems from this.

Rubicon: Source

Here we go, Rubicon is now an open-source project; you can now download its code, art, and music from Rubicon’s repository over at Github.

To compile the code, you’re going to need the proprietary Blitzmax compiler. You have to buy a license to create distributable executables, but they also offer a free version that you can use to compile and run the code for yourself.

Please forgive the comments, for the nights were long and the puns were many.

Quick 1.2 patch

Soooo… turns out that the 1.1 update broke saving points for later unlocking. A bit of quick patching has bumped out Rubicon 1.2.


  • Fixed the fact that the player’s progress no longer saved until a ship/component is bought.
  • “Back” button flashes on death.
  • Moved choose-ship buttons closer to center of the screen during ship selection.
  • Fixed the game forgetting that it changed the resolution via the options menu.
  • Tweaked screen size code to make it easier for me to port to Mac/Linux in the future.

Rubicon 1.1 released!

Just a reminder: if you’re feeling charitable, you can give me feedback about Rubicon via this short survey.

So! I’ve finally kicked my gears into gear and have put together the first update (1.1) to Rubicon. Here’s the changelog:

  • You now must “bank” your points between waves to have them available to spend on unlocking stuff later. Everything is waaay cheaper to unlock, too.
  • Joystick support (actually, I didn’t have a joystick on me for the final functionality-test-runthrough. If somebody could confirm/deny that joysticks work for them, I’d really appreciate it).
  • Tweaked some stats, made everything cheaper to unlock.
  • Gaxlid AI fixed; they no longer run off  and hide in the corners.
  • You now must buy extra lives between missions, instead of having enemies drop them.
  • Nifty sliding animation whilst choosing your ship.
  • Zen mode *actually* gives infinite lives.
  • Pressing the close button while in windowed mode now closes the game.
  • Blink is now a near-instant teleportation instead of a weird buggy phantom-zone thing.
  • Added the Overcharge special ability, which causes weapons to do more damage, fire faster, and have longer range for a short time.
  • Other minor bugfixes that I’ve already forgotten about.
And one I’d like to particularly call your attention to:
  • Strafing is now as effective as normal thrust, but afterburners are now 25% better and still only work in the directing the ship is facing.
Which is actually a result of having added joystick support. I’ve generally tried to avoid just making another twin-stick shooter, but of all the ways that I played around with joystick input, using a stick to control your direction of thrust felt the best. However, it felt awkward to start going different speeds once you used the other stick to aim in other directions, so I had to make base thrust independent of the direction the ship was facing.
Something I liked about the old system was that it forced you to compromise between steering and aiming; if you wanted to aim at enemies, you couldn’t just strafe around like you were playing Geometry Wars. I’ve tried to preserve this balancing challenge by making the afterburner better. Since it still only works in the direction you’re facing, you still have to turn around and focus on driving when you really need to haul out.

Rubicon Kickstarter Post-Mortem

Full disclosure on the statistics of Rubicon’s Kickstarter campaign:

Goal: $2,000
Runtime: 29 days
I set my goal to the absolute minimum I needed to do the project. My expenses were low: I only needed to cover my own cost-of-living and I focused on backer rewards that were mostly free for me to fulfill (emails, beta tester status, adding backer names into the game). After doing the math, I was surprised by what a low number I needed- a lot of video game projects on the site ask for $10,000+. I guess there are perks to doing everything yourself.

[backer pie chart]
[backer source list]

Promotion: VERY little Continue reading

By Olive Perry | © 2020 Wickworks
Proud to be a member of PIGsquad, Playful Oasis, and Explorable Explanations.