Easier engine control for better ships

This month I’ve been working on simplification. I realised that One Million Worlds was simply too complicated for players to actually play (I think I’ve known that for a while but wasn’t sure what to do about it)

To resolve that I’ve removed (or made optional) the whole concept of wiring up engines to command chairs (which allow keys on the keyboard to control wires in the game). Previously it was very difficult to build an interesting looking ship that was easy to add engines to such that going forward didn’t make it turn upwards if the engines weren’t perfectly symmetrical around the centre of mass (which was really boring!).

What I’ve done is have the standard WSAD keys as inputs to “the concept” of going forwards/backwards left/right and given that to a linear optimisation library to figure out which engines should fire. This makes it much easier to build ships, and also allows much smaller ships to be built (as no need for room for wiring)

In addition to being smaller because no need for wires this ship design would also have pitched down if all its rear engines were on full, but the linear optimisation library can figure out it needs to put the bottom rear engines on full and the top rear engine on just a little bit and that gives straight and level flight.

This keeps it true to my original vision though, that if you haven’t got engines that could make you move forward without pitching up then it still won’t magic it into going smoothly forwards. But if there is a complex solution to achieving that it will achieve it.

If straight and level flight can’t be achieved with the engines placed on the ship the linear optimisation library “does its best” and activates engines that make the ship go more or less forwards, so it degrades nicely if engines are destroyed (or just not placed by the player)

The “UI update” V0.6 released

Version 0.6 was planned to be the storyline update, but it turns out creating storyline elements takes ages, and you end up creating a bunch of other content as you go along. So while I continue working on the storyline features I’m releasing an assortment of random other stuff I created along the way. However, the most obvious change is a complete overall of the UI, so thats what this update is getting called.

Major features in this version:

  • Video Command Chairs – A kind of command chair that can have a camera feed connected to it; allowing you to remotely control a turret and still see whats going on
  • Reinforced glass panels – A bunch of shaped glass panels to produce more interesting cockpits
  • Ants and ant colonies
  • Improved inventory interaction – shift clicking on an item will auto move it
  • Improved cave creation algorithm – look more like caves and less like a knife has been passed through the planet
  • Glow mushrooms – primarily found in any colonies
  • A bunch of bug fixes – by which I mean there were never any bugs
  • And of course, the complete overhaul of the UI

One Million Worlds is released!

One Million Worlds is officially released (as early access) and available to buy on steam. Because its early access the updates will come thick and fast but this is a major milestone towards finishing the game!

Main Capsule

So, the games out, now to thoughts of Major Update 1 (no not a rest). This comes out of my research of open world games (read; playing games) where you can feel a little lost in the early game; not quite sure what you’re supposed to do. The One Million Worlds intro was built in response to that but it doesn’t go far enough so the first major update will be the Story Lines Update, this will be an (optional) guided path through the game taking you around the world and presenting you with challenges unique to the game.

Building that is going to be interesting as it will mesh a procedurally generated world with predefined story line elements. This means that the elements of the story line will appear in different contexts each play through; being familiar, but not quite the same. Should be fun.

Steam and Wiki

As I get closer to releasing the game in alpha (sometime in March) I’m starting to build and improve the non game parts of the project.

So the word doc manual (boo!) is now a wiki: https://onemillionworlds.gamepedia.com (yay!). And the the download from onemillionworlds.com is now a steam page: https://store.steampowered.com/app/1009770/One_Million_Worlds/

Its not actually available to buy and download from Steam yet, and won’t be until the game comes out in alpha. But you can wishlist the game there so you’ll be informed as soon as its own.

Hover rails

This is a feature I’ve added based on some feedback from my friend Vincent, he was trying to create a floating city with a transport system and the existing rails didn’t really cut it since the rails going up to the floating city make it look like its not floating.

So: hover rails (or railless rails), these behave like a regular rail system exect you tell it what the waypoints are rather than it following real physical rails. So you can go up to the floating city on a predefined route without creating an eyesore

 

The UI for creating waypoints works but I think I need a more intuitive way to place waypoints, I’m thinking the way building are placed in real time strategy games might work, so you move a ghost version of the machine to the place where it will travel to and then click to place the waypoint

Sunspears – a hostile fighter

The previous Ai controlled ship; the trade ships, were large and neutral by default. I wanted to add something more like a fighter; small, nimble, forward firing and hostile by default.

Here’s the work in progress:

 

 

This ship is attacking an imaginary object just above the tower. I’m imagining a few of these surrounding a base and attacking intruders (as hostile ships them wandering around in the world might be a little player hostile, maybe for a hardcore mode).

I don’t think this ship body will be its final form as I wanted it to be more… like a spear. It will also probably attack things that aren’t in its imagination.

As a computer controlled ship this is all good but it immediately made me want to create something human controlled with equal maneuverability to fight it but the command  chair as is stands requires far to much external wiring to process the outputs before they go to the engines. So; I’m planning on allowing simple formulas to be put in the keybindings for the command chair as well as vectors

So the current command chair allows you to select a single key to output in each direction, so for example you might type “a” to bind the a key to the SOUTH output which means to get forwards, fire, up, down, left, right you need 6 outputs, which already means you need 2 layers of outputs which is fine for a capital ship but big for a fighter. But if instead you allow simple formulas you can have:

SOUTH = a-d (controlling left and right together, press a and SOUTH is +1, press d and its is -1, press both and achieve nothing, don’t do that)
EAST = w (for forwards)
WEST = o-l (for up and down)
NORTH = x (for fire)

Great, now were’re at a single layer of outputs, except we’ve got wires coming forwards from the cockpit, that’s going to obscure our view, and the game already supports vectors so how about this:

SOUTH = w, a-d, o-l
EAST = x (for fire)

Now we can get all the signals away from the player nice and easily!

So that’s the plan, if all goes well you should see us in a fighter battle with that sunspear soon