Friday, April 4, 2014

First-year anniversary of Space Engineers Development

Introduction

This month we have reached the first-year anniversary of the development of Space Engineers. You can think of it this way: a year ago, there was no Space Engineers. Not even a prototype. We only had the vision of how the game should look in 12 months.

Today, we have this :-)
Numbers represent “simultaneous players”

The development started in 4/2013; the game was announced in 9/2013 and released in 10/2013.

Advice

From the beginning we knew that we want to release the game as soon as possible:
  • Validation of the idea – it’s better to develop additional features based on real feedback from the players than just on our own assumptions
  • Morale boost – seeing how people play your game is priceless

We knew that in 7 months we couldn’t implement all of the features we wanted. So we looked at the project plan, picked what we assumed were the core features (physics, creative mode building, character animations, etc.) and focused entirely on them. All other non-essential features or features that could be implemented later were pushed to the “post-release” period.

Here are some good pieces of advice for managing an experimental game development project:
  • Time-estimates are irrelevant – even if they are correct, you may later decide to spend more time on a feature. Or a completely new idea/direction worth pursuing may arise
  • Every day you know more about your game than you knew yesterday, a week ago, a month ago – therefore, today’s decisions are more valuable
  • You can always add or remove features, but never alter the milestone/deadline! Obviously, don’t compromise on quality
  • Start by implementing the most important features first - every time you are going to work on something ask yourself:
    • Is this really the most important thing I should be doing at this moment?
    • Isn’t there something more important?
    • Is this the most effective utilization of my time?
    • Isn’t there something which takes less time to develop but has higher benefit for players? (ROI for players)
    • If I work on this thing now, won’t I later regret that I didn’t do some other thing instead?
  • You won’t be able to implement 100% of what you want. Start with the most important tasks and you may never get to do the less important stuff. If you change the order, you will end up having the unimportant stuff but not the important stuff.
  • Deciding on which features won’t be implemented at all is equally important as deciding on what features will be implemented. If I don’t do one thing, I just gained some free time that I can spend on something else.

We were not expecting that we will miss deadlines or that something will halt the development completely, but for the worst-case scenario we assumed: if we had to stop the development at any moment (for whatever reason), we wanted to have a game that’s as finished as possible and preferably in a playable state.

Early on we decided to do public relations with 100% focus on community and not rely on the press (which is what many indie developers do). These were our principles:
  • Do things that are good for players
  • Do things that make players happy: today, tomorrow and in the long-term
  • Don’t push the game via press or advertising; If the game doesn’t get picked-up by the community naturally (word of mouth), then it’s probably not a good game and there’s no reason to force it

Interesting facts

Our working name was “Sandbox”. It was not until the last month that we finally went for “Space Engineers”.

In the initial prototyping phase, we didn’t plan the deformable and breaking physics. We implemented it almost as a byproduct of the volumetric design. The story here is that I asked Ondrej if he can do it, he said yes, and in a few days he showed the first working prototype - with deformable skeleton, meshes, splitting ships in half, etc.

We planned to have post-release updates every 2-4 weeks. But the day after the release we made our first little update and it felt so good that we immediately wanted to make another one. The decision for regular Thursday updates was a no-brainer. Yeah, we are update junkies :-)

Time-lapse through the first 7 months

April 2013
Grid system in its infancy – everything is static
Still using Miner Wars 2081 code base

Prototyping block-based volumetric concepts in 3ds Max.
Trying to maintain believable scale for astronaut, small ship and large ship

May 2013
First prototype of creative mode building mechanics (LMB to add, RMB to delete)

Large and small blocks
Ships can fly - however they don’t use thrusters to fly and mass
is not calculated dynamically

Our first “astronaut” – we are adding movement animations and jetpack flight

June 2013
Decided on Havok physics
Destruction and deformation mechanics are implemented
Basic block-types are in game

Prototyping “manual mode” building (now it’s called “survival mode”)

July 2013
Preparing the game for the announcement video

Improving everything we need to look good in the announcement video

Concept art of the engineers – blue parts represent fabric parts, grey represents leather,
yellow is reflexive/emissive material

We didn’t like this concept for the helmet – it doesn’t have a NASA-look and
is very militaristic
This concept is better, we just need to lower the headlights – otherwise the
silhouette looks like Mickey Mouse
This is it! Space Engineer in its glory!
High poly model



Development of Space Engineers: From an idea to Early Access in 7 months

The following video was recorded in 11/2013 at a Game Developer Session held in Prague. I had a presentation about “how we got from an idea to Early Access in 7 months”.

English subtitles included (you have to enable it in Youtube).



Presentation slides are available for download:

---

Please keep posting your feedback and suggestions to the comments section below. I can’t reply to every comment, but I can assure you that I try to read as much as possible and your comments will influence how Space Engineers develops.

Thanks!
Marek Rosa
---

Like us on Facebook https://www.facebook.com/SpaceEngineers or follow us on
Twitter https://twitter.com/SpaceEngineersG and you will be notified on all updates.

Warning: Space Engineers is still in development. Everything in the game is subject to change.
 

Monday, March 31, 2014

Results of the "How do you play Space Engineers" survey

Thank you all for participating in the survey. Now we have some useful data that will help improve Space Engineers and take it in the right direction:

6424 of you have responded to the survey.

Only 13% of you prefer the creative mode over survival. This is interesting, considering the fact that the survival mode was made available only a few weeks ago.

Only 7% of you play with a competitive style, which can be explained by the current lack of differentiation between friends and enemies. Or it can be explained by the fact that Space Engineers is an engineering game and not a FPS.

On the other side 41% of you use weapons which contradicts the 7% competitive play. So I have a question: what do you use weapons for?

The most flattering feedback was to "How did you found out about Space Engineers?". Only 7% of you found Space Engineers through the usual sources (magazines and blogs). The rest of you found it through the community (Steam, friends, Youtube). This is awesome and a proof that our initial plan of "focusing on community only" works.

Full results are available below:













---

Please keep posting your feedback and suggestions to our Facebook page https://www.facebook.com/SpaceEngineers or our forum at http://forums.keenswh.com/?forum=313735

We can’t reply to every comment, but I can assure you that we try to read as much as possible and your comments will influence how Space Engineers develops.

Thanks!
Marek Rosa
---

Like us on Facebook https://www.facebook.com/SpaceEngineers or follow us on
Twitter https://twitter.com/SpaceEngineersG and you will be notified on all updates.

Warning: Space Engineers is still in development. Everything in the game is subject to change.

Thursday, March 13, 2014

Space Engineers - “Survival mode” update

Introduction


Today’s “survival mode” update is the biggest since Space Engineers launched on Early Access. Even the multi-player update didn’t bring so many changes.

We chose to name it “survival mode” and not “realistic mode” as we originally planned. Everyone seems to have a good understanding of “survival games” these days - it’s a common term for describing a gameplay mode where players have to harvest and process resources, craft and build things and watch their stats to survive.

Survival mode comes in three variants:
  • Survival (default) – realistic inventory capacity and processing  times
  • Survival x3 – inventory capacity and assembler efficiency and speed increased by a factor of 3
  • Survival x10 – same as “x3” but only multiplied by 10

Differences between creative mode and survival mode:
  • In survival mode, you can get hurt and die, e.g. falling from a height, high-velocity collisions, depleted energy in your space suit, explosions, etc.
  • If you die, you respawn in your nearest medical room
  • If you don’t have a medical room, then you respawn in a rescue ship at a distant location in the sector and you will respawn as a new player (this will get important in later stages of the development, once ownership of things becomes useful)
  • Energy in your space suit depletes as you use it - life support, jetpack, welding, grinding, etc.
  • Medical rooms aren’t just for respawning – you can use them to recharge suit energy and fix your health
  • Nuclear reactors need uranium ingots to produce energy. You can save energy (and thus uranium) by turning off energy consumers such as thrusters, lights, refinery, assembler, gravity generator, etc.
  • Building is now a complex activity, here’s how the full cycle works:
    • Gather ore by drilling and harvesting asteroids (iron ore is the most used material in block components)
    • Use refinery to refine ore to ingots (e.g. iron ore to iron ingot)
    • Transfer ingots to assembler and create block components (e.g. steel plate)
    • Put components to your backpack (inventory), move to a construction site and place the first stage of a block. Then use welder to continue all development stages - you need block components to finish it
    • Deconstruct blocks by using grinder - removed components are transferred to your backpack (inventory)
    • Repair blocks by removing damaged components and installing undamaged components
    • If you want to see the inner structure of a block -> get welder or grinder in your hand and aim at that block from a close distance. You will notice an overlay screen that shows all you can know about a block: integrity, components installed, etc.
  • Survival mode has copy-paste disabled
  • If you get into an unsolvable situation (e.g. you are stuck inside a ship with no tools to get you out of there) and you don’t want to wait for a slow death –> just press Backspace and commit a suicide

Block integrity – this parameter defines the level of completeness or damage of a block

Blocks are built from layers of components - each component is installed on top of the previous component.

When building a block (using welder) – you are actually adding components to block and welding them together - which increases block’s integrity as well.

When deconstructing a block (using grinder) – you are actually separating components, layer by layer, and putting them to your backpack, therefore the integrity decreases (it can get decreased by damage as well, e.g. explosions, collisions, etc.) Please note that non-armor blocks don’t display damage yet – if they get zero integrity they just disappear.

When block integrity drops under a certain level (each type of block has a different threshold), the block will stop functioning. Blocks that have a computer component usually stop working once integrity gets below the computer layer. Another example is reactor - it wouldn’t do its reactor-job if it had only one steel plate installed and 5% integrity.

Damaged components are turned to scrap metal, which can be recycled in the refinery to iron ingots. Last-moment change: please note that this will be added in a later update, we didn’t make it for the first survival update.

Last-moment change: block repairs may not be very intuitive in this first version of survival – if you don’t see a block damaged or deformed and only its internal parameter “Integrity” is bellow 100%, you may easily miss it. We are working on this.

There’s a limit on how many freely floating objects are allowed in the world (ingots, components, ore, etc.). When the limit is reached, the game will erase the “oldest object” - like a FIFO buffer. I understand that some of you will not like this but every object requires physics calculations and if we allow infinite numbers, your computers wouldn’t be able to simulate the game. On the bright side, there’s a new parameter in the “Custom World” screen where you can set this limit up to 1024. This limit doesn’t apply to asteroids and grids (ships and stations). Also, items in your inventory and cargo containers won’t get removed as well.

Thrusters now inflict damage on objects (your days of thrusters installed one behind another are over!). Though, the effective distance of damage is limited, so you can still put thrusters inside interiors – if you leave some empty space in the discharge area. Last-moment change: please note that this will be added in a later update, we didn’t make it for the first survival update.

Hand drill has a low-distance ore detector which is activated every time you use it. Medium-distance ore detector is available on your small ship (as a distinct block type) and long-distance detector on large ships.

The “Toolbar Config” screen now shows what components are required to build each type of block.

We have modified the world generator code to produce higher amounts of iron ore – it’s more realistic and also block components are made mostly from iron.

Inserting a new object into the world has been reworked as well. For example now when you click on “New Small Ship”, the game will display a landing gear positioned in front of you (it moves as you move). If you move it close to some other surface, magnets will snap and the landing gear will get attached. This small change should improve the process of building new ships – they will appear more solid and will not fly away in case you suddenly bump to them.

There’s no oxygen, food or water. Your engineer has only two stats: energy and health. We have chosen this direction because we believe that Space Engineers should be about the things you create and not about your body functions.

I enjoy playing the survival mode very much – the building process feels natural and rewarding. Sounds are not final yet, but they already emphasize the process. I hope you will like it too.

Development


The development of survival mode started at the end of summer 2013 (you can see the welder in our first Space Engineers trailer). We kept working on it alongside with other features such as multi-player and all those weekly updates.

We have approx. 300 new 3D models because each block needs 2 to 7 models for its construction phases, there are small and large blocks and we needed floating objects such as components, ingots, ore, etc.

We produced some new animations as well: welding, grinding, etc.

We decided to finish multi-player first and only then do the finishing touches on survival, mostly because multi-player is a feature that spans throughout the whole source code, every little thing has to be considered in terms of network synchronization, packet updates and authority.

The development of survival mode will continue and it’s the area where we will focus our attention in the upcoming weeks. We need to polish it, make it more intuitive and easier to use. We wanted to release it rather sooner than later, so we can play-test and balance it together with you. Please let us know what you think - what parts are annoying and boring, what parts are hard to understand and last but not least: what do you enjoy.

Once this first phase of survival mode is completed, we will work on dedicated server support, factions (very needed for survival multi-player!), wireless communications, etc.

You can find all our previous updates at http://forums.keenswh.com/?forum=326211

Survival Tutorial



Screenshots

Internal structure of a block: integrity and layers with components

Deconstructing a block with grinder

Adding a new block

Constructing a new block with welder (block components are retrieved from your backpack)

Constructing a new block with welder (block components are retrieved from your backpack)

Steel plate block components in your backpack (inventory)

Drilling

Recharge suit energy and fix your health in medical room

You are receiving damage

Survival mode selection in “custom world” screen

Inserting a new object to the world - small ship landing gear

---

Please keep posting your feedback and suggestions to our Facebook page https://www.facebook.com/SpaceEngineers or our forum at http://forums.keenswh.com/?forum=313735

We can’t reply to every comment, but I can assure you that we try to read as much as possible and your comments will influence how Space Engineers develops.

Thanks!
Marek Rosa
---

Like us on Facebook https://www.facebook.com/SpaceEngineers or follow us on
Twitter https://twitter.com/SpaceEngineersG and you will be notified on all updates.

Warning: Space Engineers is still in development. Everything in the game is subject to change.