Gaming An interesting way to control a very complicated spacecraft - Now in progress!

HarvesteR

Member
Joined
Apr 22, 2008
Messages
386
Reaction score
15
Points
18
Hello,

I've got a question, well, not so much a question as a proposal for a way to control a very complicated spacecraft, with all of it's components, in a fun, easy to grasp, but hard to master way.

Ok, some background on this might be useful:
As you may (or may not) know, I'm working on a game with spaceships, that will allow the player to build a spaceship out of parts, and later on, fly it.

The thing is, I'm trying to find a solution for spaceship staging, that will not only work across any type of ship the player might create, but also be a fun game mechanic by it's own right.

So I wanted to present the mechanic I have envisioned, in the hope of getting some early feedback on that concept.

Remember, this game is meant not only for Orbiter nuts, but also to some degree the general gamer...
This doesn't mean I'm making a dumbed-down space shooter, I want players to have to use their heads... So this is what I've come up with.

First of all, it might help to know a little about the flow of the game... The game is basically divided in 2 main parts:
The first one allows you to build a spaceship, in a spaceship creator much like the creators featured in Spore. A ship is created by dragging parts from a list, and dropping them onto a construction area. An initial part is always placed there (usually the command pod), and new parts are attached to it, and so on, essentially creating a hierarchical tree of parts that make up the whole ship.
The second part is the flying mode, which allows you to pilot the ship you've built.

So, how do we handle ships with dozens of parts, multiple stages, which may or may not be activated in parallel, and do so in a way that is simple to understand and fun?
My idea: A staging sequence editor.

This sequence editor works like this:
In the spaceship creator, each part that is added to the ship will create an icon on screen. These icons occupy a side of the screen, and stack vertically.
Each part placed will place another icon on top of the existing ones.

This stack of icons exists in both the spaceship creator and in flight mode.
The player may move these icons by dragging them along the stack with the mouse, and other icons will make room for it, indicating you can move them about and put them in different places in the stack.
Along with these icons, there are numbered tabs piled on this stack. These indicate the "stages"... when a stage is activated in flight, all parts below this numbered tab get activated at the same time.
Separation of stages is done using "separator" parts, that are activated like any other part, only in doing so they will break the ship asunder in a controlled fashion.

At all times there is a numbered tab above all the icons. If the player drags an icon above that tab, another one is created on top of it, allowing you to continue assigning parts to new stages.

If the list gets too big for the screen, a scrollbar will pop up to let you visualize the whole thing. Also, by hovering the mouse over a part in the construction area, it's corresponding icon will be highlighted (and the list will scroll to it if it's out of view)

So, with this in place, the player is (in theory) able to define exactly how his ship will work in flight... Imagine this scenario.

* In the first stage, are some solid boosters, and a liquid engine connected to it's fuel tanks...
* The second stage contains the separators.
* The third stage contains a smaller, 2nd stage engine.
* A fourth stage may contain another separator
* And finally, a fifth stage contains the command pod, along with it's heatshield and parachutes.

So, when in flight, the player may move to the next stage by hitting the spacebar or some other key... Each stage will activate the parts contained in it, so it falls to the player to figure out the correct sequence to achieve a proper, explosion-free flight ;)

In flight, the list will update itself to match the current state of the ship... for example, if a separator is activated and a number of parts get dropped out of the ship, their icons will also disappear, and all icons above it will drop down to fill the gaps.

That's it... hopefully it should allow for any combination of staging and sequencing of activation... and provide an interesting puzzle at that.

I know it's probably hard to visualize how it's going to work... But try to imagine yourself playing the game... I can't publish any game content yet... but hopefully in a few weeks we should have a first release up (and free to play), so any help right now is immensely appreciated.

Feel free to ask any questions... I try to be as clear as possible, but that's easier said than done ;)

Thanks in advance for any input. :tiphat:

Cheers
 
Last edited:

diogom

Well-known member
Joined
Aug 2, 2010
Messages
1,372
Reaction score
415
Points
98
Looks great! :thumbup: I guess this is that Race Into Space for Orbiter thing you mentioned?
 

HarvesteR

Member
Joined
Apr 22, 2008
Messages
386
Reaction score
15
Points
18
Looks great! :thumbup: I guess this is that Race Into Space for Orbiter thing you mentioned?

Yes, it is ;)

Only it's not a thing for Orbiter... It's a whole game on it's own.
It's not meant to compete with Orbiter, though... It should be a new take on space flight games, and hopefully also be a stepping stone for the uninitiated for getting into Orbiter :)


About this sequence editor thing, I'm worried it might be TOO complicated... Or is it? The game will introduce it gradually, so on the first times around, you wouldn't have to worry about it... Later on though, careful planning of the staging sequence will be paramount for a successful mission.


Cheers
 

jangofett287

Heat shield 'tester'
Joined
Oct 14, 2010
Messages
1,150
Reaction score
13
Points
53
I think this will require the inventive-ness of Maxis, combined with the thought-out-ness of Valve. Good luck, If you can get it right it will be truly epic! :thumbup:

If you need some game mechanic or idea/concept thoroughly inspected and scrutinised for holes, I can't think of many places better than here!
 

HarvesteR

Member
Joined
Apr 22, 2008
Messages
386
Reaction score
15
Points
18
I think this will require the inventive-ness of Maxis, combined with the thought-out-ness of Valve. Good luck, If you can get it right it will be truly epic! :thumbup:

If you need some game mechanic or idea/concept thoroughly inspected and scrutinised for holes, I can't think of many places better than here!

Thanks! Hopefully I can get it to work ;)

And yes, I can't think of a better community to go through these concepts than this one :hailprobe:

And that's exactly my purpose with this thread. If there are problems or limitations with this approach, I wanna know about them as soon as possible, so I can change the plan without having to toss too much code out the window.

This is in fact the second iteration of the staging mechanic... what we now have in place is an algorithm that will assign parts to a list of stages (which themselves hold a list of parts), based on the hierarchical position of the separator parts... this is flawed, because it leaves no room for parallel staging... So I'm trying to think up some other way to allow that to happen.

I've thought about keeping that algorithm though, to generate a "suggested" sequence for you... this way, simple rocket stacks, for instance, would require no editing of the sequence... Not sure though... it works well for that simple case, but it would enforce the need to edit the sequence in more complicated builds... but then again, you'd have to do it anyway if there were no automated suggestion.


Hmm, what about being able to move the numbered tabs about as well as the icons? this would make it a bit more convenient to move multiple icons into another stage... instead of moving each part one by one, you just drag the numbered tab down, to split the icon stack into two separate stages.

I don't want to do a 'click-and-select' thing on the icons... it might solve the mass-moving thing, but it's cumbersome... I want it to be quick and easy, like reordering your web browser tabs ;)

keep 'em coming, this is being incredibly helpful!! :cheers:

Cheers
 
Last edited:

jangofett287

Heat shield 'tester'
Joined
Oct 14, 2010
Messages
1,150
Reaction score
13
Points
53
Perhaps another screen may be useful. where you can see all your stages laid out according to how the separator parts are connected to the other stages, this world solve the problem of staging with the wrong separator part, and would also simplify sorting out your staging order.
 

HarvesteR

Member
Joined
Apr 22, 2008
Messages
386
Reaction score
15
Points
18
Hmm yes, that might be useful...

I don't want to put it all on a separate screen though, it might be too inconvenient to reach... you'll be doing this quite a lot as you build ships, so I think it should be as easy to get to as possible...

So maybe a dedicated sequence control screen could be added for helping you visualize the staging sequence, but the main sequence stack on the side of the spaceship creator screen would still be there.

Or, as another possibility, some kind of schematic view mode, which could be accessed by a key, or a button in the interface, that would enable you to see all parts with their sequence position numbers overlaid on top of them... That would make it quite simple to see the big picture... And actually sounds like it would be easier to code, which is always a good thing, since time is of the essence here ;)

But, how would you edit the sequence order if there were no icon stack? Would it be too annoying to have to set the numbers by clicking on up/down arrow buttons, or some sort of slider?

The reason I thought of the dragging and dropping icons thing is that manually inputting numbers isn't what most would call fun... but it might make it hard to visualize the entire sequence...

How about this?

hitting the spacebar (or pressing a big, juicy button) while in the spacesihp builder would toggle a "schematic view" mode...
in this mode, the background changes so you know you're in another mode, and you get the staging index of each part overlaid on top of it... plus, you get to see the hierarchy tree, and how each part is connected to the other... and some other stuff I might think of later ;)

So, the icon stack would be there just so you can see that there is such a thing as a staging sequence to worry about... But to edit it, you have to go into schematic view mode...

Does that sound better? or worse?

Cheers
 

jangofett287

Heat shield 'tester'
Joined
Oct 14, 2010
Messages
1,150
Reaction score
13
Points
53
That sounds like a good idea. You'd better make the mode switch pretty obvious, even if you include a tutorial. Perhaps you could also do a little animation and a sound to further reinforce the fact that your doing something different now.
 

HarvesteR

Member
Joined
Apr 22, 2008
Messages
386
Reaction score
15
Points
18
I will. :)

That is, if we decide that this 'schematic mode' is the best way of doing it... If it is, it won't be just a new background color... I want to do an exploded view of the ship, where every part is moved away from it's attachment point, and there are lines indicating where they attach... This mode would be useful for a lot more than just setting staging indices.

I've started getting into it today... got the parts to activate without using the stage lists we had before... Now they're activated by the new approach, which is to give each part a number for it's "stage", and tell them all to activate. The ones whose numbers match the current one will do so, and the others will just ignore the call.

Now, what follows will be a massive and complete dismembering of the entire staging mechanic, during which the game won't work at all... I hate moments like that ;)

Well, I better start taking it apart... :cheers:

EDIT:

Well, I pretty much demolished all the old code, and put in the new idea in it's place... it's much much cleaner code now, and it works a lot better (it should also run faster through the algorithm, too). Man it feels good to delete ugly code :lol:

Now, onward onto getting a nice, juicy interface thingy for editing the sequence. I'm still a little divided between the icon stack idea, and the schematic view... I really don't know which would be better... the schematic view should be easier to code (to an extent), but for the icon stack I already have some code that could be reused for it (albeit with a massive amount of rewriting)...

What do you guys think?

EDIT 2:

Ok, so now the old stage finding routine is completely rewritten and it's good enough to always output a decent suggestion for a staging sequence... by default, parallel staging is now possible, and you can still edit the sequence manually if you feel like it...
Hmm, now, the need for a dedicated sequence editor doesn't seem to be that great, since no manual editing is actually required for most spaceships...

The decision now lies in ease of use against visual correlation of parts and their sequence indices... With the icon stack, it's easier to edit the sequence, but the icons are not over the parts, so there is no direct visual connection between an icon and it's part, except maybe through highlighting the corresponding part when hovering the mouse over the icon, and vice versa... is that enough visual correlation?

On the other hand, the schematic view does offer direct visualization of parts and their numbers, but having to switch to a different mode to see it seems to be a little cumbersome... it would mess a little with the spaceship creator's workflow (but, then again, it might also add depth to the experience, since there is more than meets the eye at first glance)...

I'm stumped, I need other people's opinions ;)


Cheers
 
Last edited:

HarvesteR

Member
Joined
Apr 22, 2008
Messages
386
Reaction score
15
Points
18
So, I wanted to follow up on what's been going on with this mechanic now...

I've implemented the new icon stack mechanic, and I have to say, what a difference!!

I've decided against the schematic view in the end... The stack offers more possibilities than just editing the staging sequence. Since the parts will highlight the icons, and vice-versa, there really is a good deal of visual correlation between part and icon. You always know what icon belongs to what part... And if you don't you probably don't need it right now.

The icons were a good decision, not only for visualizing the staging sequence, but also for displaying extra information during flight. The icons are visible in both flight mode and in the spaceship builder.

In Flight Mode though, the icons have some cool powers. They can spawn small information boxes, that are basically small progress bars with labels. Each icon can display up to 3 of these at a time (or any other number... this limit is just to keep them from filling the screen), and they're fully customizable.

This means each different type of part can display contextual information, without saturating the screen with indicators and gauges. A solid fuel booster can display it's fuel stores and temperature, while a solar panel can display it's power output, using the same component.

These boxes, as well as the icons, can change pretty much all of their colors, so there's no risk of confusing a green fuel indicator with a red overheat one. Also, the icon's own color can be used to show the overall status of the part... if it's active it becomes green, if it's spent (like an engine) it becomes grey, if it's destroyed, it becomes a dark red, and so forth.

Also, I've finally figured out a way to build a 2D interface that adapts to the screen's aspect ratio, while keeping the text sharp and readable, and do so in a modular, reusable format. Things should be a whole lot easier from now on ;)

Well, that has been my week's worth of work... what do you guys think?

(I'm sorry I can't post screenshots yet... but it shouldn't be long now before the first release)

Cheers
 
Top