Return to “Suggestions”

Post

Ship Roles (UI)

#1
Without a rigid class system it seems difficult to manage sort-of-similar ships.

I had barely brushed this in Joint Node Editing but I think it deserves it's own topic.

If I have 20 fighters of the same type but 10 are equipped as interceptors, 20 as space superiority fighters, and 20 as fighter-bombers, how could I organise them ingame?
Organising them in wings means high compartmentalisation and can easily lead to a bulky UI.


So... roles?
  • I equip a fighter with nothing but powerful long range anti-fighter missiles and basic sensors.
    Fast engine, maneuverability is not required.
    If I need fighters or bombers taken out now, I send the interceptors.
    That's a very limited role and offers little in the way of survivability or mission endurance but they are a useful tool.
  • So I save this loadout as a Role and call it Interceptor.
  • The game calls it "Interceptor (Frumpy Fighter)" because a loadout only works with a specific ship type.
  • On the tactical UI I can issue an order to all local ships with a certain role.

    I order all "Interceptors" to attack a bomber wing that I don't like and...
    • all interceptor (Frumpy Fighter) launch to intercept the bombers,
    • all interceptor (Gladius Fighter) launch to intercept the bombers.
    As long as I can command ships by (custom) roles, I can have 47 ship types in my ragtag fleet and still give sweeping orders without delving into any structures like specific wings.
  • Once roles are defined I can re-assign a fighter to be an "Interceptor" by selecting the role and it will try to auto-equip everything it needs for that.
    A lot nicer than remembering the exact parts for each specialist fighter you keep in your fleet.
  • Roles can interact.
    I don't order my fighters to protect a specific bomber.
    I order "Fighters" to escort "Bombers".

    The fighters probably split up to distribute themselves evenly to cover all ships with the bomber role and attack any hostile small ships that get close.
    (Any auto-attack should include a reality check so fighters don't throw themselves against capital ships =)

    Most likely the splitting-up isn't necessary since I gave a similar order to bombers, who now fly in a temporary formation.
  • Wishlist item:
    A ship can have more than one role.
    It is labeled and equipped by it's primary role but maybe a ship type is more flexible than that.
    It would react to orders to both Interceptors or Space Superiority Fighters.
  • Wishlist item:
    Role icons.
    You mentioned using auto-generated icons. The game could suggest random selections of them and you can pick one that you like for a specific role.
    Better visual distinction for graphically-oriented players.
A role is a very human-compatible concept because we often overlook details when looking for a tool for a certain purpose.
If I arrange parts for a weld and one is a leeeetle out of alignment, I don't look for a hammer. I look for "something rather light to tap the part a bit". Maybe some pliers. Maybe a small wrench. Whatever is closest.
A computer would look for an exact match so only a hammer would qualify. Computers are bad mechanics.

Roles are a concept that scales well and scale is the ancient enemy of UIs. =)
You can use them with 4 ships as well as with 400 ships in 23 wings.
Same UI in both cases.

It's coarse. You get more detailed control if you go down the chain of command and give an order to a specific wing of fighters.
Often this isn't necessary. You don't need an Operations Plan to send out interceptors to put the smack down on some enemy bombers.

Roles are not the solution to everything but they can help bridge the gap between neat and computer-compatible organisation and human crazymad ideas of how to run a fleet.
There is no "I" in Tea. That would be gross.
Post

Re: Ship Roles (UI)

#2
Orders with this could also be "modular".
Let me explain

You have a carrier, in its command interface it has a single base node for attacking. If you choose this node the carrier does everything it sees fit to attack its target.
But: you can also go deeper into the attack command. There would spread for example to "attack with fighters", "attack with bombers", "attack with on-board weapons" etc.
If you choose one of this sub nodes the carrier fulfils this order on its best capabilities, it sends fighters, bombers or gust starts shooting.
Underneath the sub nodes are nodes again (weapon type, ship type etc) to even more specify your order.
But the big point is: you dont have to go all the way down the hierarchy, you could stop at the "attack with bombers" node or delve down to the loadout of that single gladius bomber you send.

Always as much order as you need, nothing more
Last edited by Cornflakes_91 on Fri Mar 14, 2014 1:27 pm, edited 1 time in total.
Post

Re: Ship Roles (UI)

#3
Cornflakes_91 wrote:Orders with this could also be "modular".
Let me explain

<snip>
I really like that idea. Expanding:
  • It should be possible to categorise ships into different roles based on their intended behaviour, as Gazz says.
  • It should be possible for vessels to be "in command of" other vessels e.g. capital ships might be in command of a fleet of fighters.
  • Commanding vessels should have a node in their UI-web allowing a traversal of all sub-ordinate vessels.
    • This should be hierarchical - if a support vessel commands a swarm of drones, and a capital ship commands the support vessel, this should be displayed as a tree with the capital ship as the root, a branch to the support vessel, and branches from the support vessel to each drone.
  • Each node within the commanding ship's "command UI" should represent either fleets, wings, squadrons, roles or entities, with an organisational structure like this:
    • <Fleet> := <Wing>* (a fleet can have zero or many wings)
    • <Wing> := <Squadron>* (a wing can have zero or many squadrons)
    • <Squadron> := (<Entity> | <Role>)* (a squadron can have zero or many entities and zero or many roles)
  • Entities and roles are base types.
    • Entities are individual vessels. One entity in the hierarchy corresponds to one ship in the game.
    • Roles correspond to role classes, of which zero or many entities under control of the commanding vessels may belong to. Every entity assigned a given role is guaranteed to be of the same class and have the same defined behaviour (see below) as every other entity of the same role.
  • I should be able to control properties of sub-ordinate vessels at different organisational levels through the commanding ship's UI.
    • Fleets, wings and squadrons are organisational structures represented by nodes in the UI. Selecting these should show not just the entities, roles, and lower-level organisational structures, but also a set of attributes that correspond to the base objects in the hierarchy.
      • The displayed attributes should be a subset of the union of attributes for all of the base objects from that point in the hierarchy. What this means is that you should only be able to control attributes common to all base objects (entities and roles) at that point in the organisational hierarchy.
      • E.g. If you have a squadron containing Role A with attributes X, Y, Z and Entity B with attributes X, Y, the squadron node itself should have sub-nodes only for attributes X and Y. Affecting these values will affect them for Role A and Entity B. To change attribute Z for Role A, you would need to select the Role A node and configure that attribute directly from there, as it does not share this attribute in common with Entity B.
  • Behaviour: The point of having roles is to have ships behave in particular ways to accomplish particular goals. As Gazz says, rolls will be specific to ship classes, so roles will inherit all of the "class attributes" of a particular ship class, but in addition have an extra attribute, which is "behaviour". A behaviour node will bring up a web of child nodes that will correspond to the parts of the ship that I can specify behaviour for. It will also allow me to specify overall behaviour patterns.
    • E.g. If I have a role called "Stealthy Fighter", I could access that role's behaviour UI, inside that select the "Engine behaviour" node and then set its value to "minimise signature", meaning a stealthy fighter will try to move slowly so that its engines don't cause it to flare up on radar to other vessels. I might also set a general behaviour pattern of "stealthy", that can affect the way multiple of its components behave.
  • I should be able to assign orders to vessels at different levels of organisations, as Cornflakes suggests. If I assign orders to the commanding vessel, it will try to accomplish the task using its own capabilities. If I assign orders to the commanding vessel's fleet, the commanding vessel will try to use its subordinate vessels to accomplish the task. If I delve into its command UI and assign orders to one of its wings, only entities and roles within that wing should try to execute those orders.
  • If an enemy fleet that I'm aware of follows an organisational structure, I should be able to select the commanding vessel and traverse its own command hierarchy. This hierarchy will only display sub-ordinates that I'm aware of, and I will not be able to control or view any of the attributes of these subordinates that I shouldn't be allowed to. This functionality will only be used to streamline the process of giving orders to my own fleet and to view basic information that I might have gathered on the fleet's members.
Example:
  • I have a capital ship, called Orion. The capital ship is in command of other vessels using the following hierarchical structure:
    • It commands one fleet, Alpha.
    • The fleet consists of two wings, Wing 1 and Wing 2.
    • Wing 1 consists of an entity, Scout-165, and a role, Generic Fighter, consisting of a dozen fighter craft with typical fighter behaviour.
    • Wing 2 consists of a role, Aggressive Bomber, consisting of a half dozen bomber craft that prioritise energy distribution towards weapons over shields.
  • Scout-165 spots a distant fleet. The distance makes it hard to get an accurate report, but there is at least one capital ship there. To get more information, I do the following:
    • I select Orion and from its UI: Command->Alpha->Wing 1->Scout-165->Behaviour->Behavioural Pattern and set this to Stealthy. I then go back up to Scout-165 and from here order it to travel closer to the enemy fleet to give me more information. It does so at reduced engine power, intelligently flitting between asteroids and other debris to reduce the chance of detection further.
    • As Scout-165 nears the enemy fleet, it reports that the enemy capital ship is supported by a squadron of fighters itself.
  • In Orion's UI, I select: Command->Alpha->Wing 1->Generic Fighter->Behaviour->Engine Behaviour and set this to Maximum Thrust. I then go back to Generic Fighter, and using the :split functionality that Josh promises, traverse through the hierarchy of the enemy capital ship in another window until I see the node representing the enemy fighter squadron. I then order Generic Fighters to attack this enemy squadron. The fighters burst towards them at high velocity; they light up like torches on the enemy's radar, but I know exactly where the enemy fleet is and the dozen fighters in Wing 1 arrive before the enemy fleet can react. With the element of surprise on their side, my fighters begin to dominate theirs.
  • While this is happening, within Orion's UI I select: Command->Alpha->Wing 2->Aggressive Bomber and order my bomber squadron to attack the capital ship. They fly on ahead to join the fighter squadron, using their heavier weaponry to damage the enemy capital ship.
  • Finally, I select Orion and order it to attack the enemy ship. It trudges onwards towards the battle, finding a decimated enemy fighter squadron and a heavily damaged enemy capital vessel. It charges up its weapons and delivers the killing blow.
Note: It should still be possible to command individual vessels from their own UI by selecting them, but it should often be easier to set orders through the organisational hierarchy as well.

Edit: Squad -> Squadron. I'm not that great with military terminology and just googled the difference.
Last edited by ThymineC on Sat Dec 07, 2013 7:13 am, edited 1 time in total.
Post

Re: Ship Roles (UI)

#4
ThymineC wrote:(lots of things)
I think your hierarchy is too deep before you give the first command, it should be faster to give an attack order.

Same example as yours.
The carrier is leader of fleet alpha with a scout, a fighter squad and a bomber squad.

for attacking with the bomber squad you should not need to go down to the single squadron.
(Command-> Alpha-> wing1 -> bomber squad)

But instead you just take
Carrier-> attack -> attack with bombers
And the carrier takes an amount of bombers (wing, squad, whatever) and sends them to attack

Or if you want to specify more you go
Carrier -> attack -> attack with bombers -> agressive bombers
Or (...) attack with bombers -> wing1

But you dont have to. Just stop at attack with bombers if thats all you want. You dont need to say which squadron should do the job just that a squadron should do this.

The same with the scout
Carrier -> gather intel -> with scout (-> stealthy)
Irrelevant which scout does it, just any scout would fit
Post

Re: Ship Roles (UI)

#5
Some additional thoughts:

1. All of these ideas should support the intended gameplay experience. We (or at least I) don't know exactly what that's meant to be. I assume from the LT Prototype that individual dogfighting will be possible, and some kind of fleet management. But I don't know if the latter is meant to be RTS-style where you order fleets around without being able to pause the game, or 4X-style (actual strategic gameplay) where you're able to plan fleet movements on a large scale.

So what should fleet management feel like if it's optimized for RTS-style operational-level play where you have to react fairly quickly to sector-sized threats from opposing fleets?

Alternately, what's the best way to design fleet management for 4X strategic-level play where you have all the time you want to think about how to exert control over large areas of space and long spans of time?

2. Ordering ships around is part of the game, but so is building them. The ideas suggested so far have hinted at the production part of the game, but it needs to be considered, too. It would be nice if it could hit a sweet spot that's usable by action-oriented gamers but still fun for the logistics-minded grognards to fiddle with.

One suggestion might be to distinguish between role and class. This would let the player define a Ship Class Template (e.g., the Panther-class strike fighter class, the Vulcan II heavy bomber class, etc.) based on available static ship components such as hull materials and sizes, engine models and numbers, and avionics blocks. The player would then be able to create a Ship Role Template (such as Drone Interceptor, Wild Weasel, Torpedo Bomber, and so on) that tries to apply a loadout package to the designated ship classes.

With this model, you could designate a production line to generate a particular class of ship. Once an actual ship of that class is built and delivered to an operational group, it (and the other ships of that class in that group) can be assigned to particular roles, which load the various weapons systems, sensor packages, and other dynamic elements defined in the designated Ship Role Template.

Beyond that is the rest of the operations mode where you get into the organization of Squadrons, Wings, and Fleets (which I like).

3. One other weird thing that needs to be considered is how a player reaches the point of having all these ships to play with.

The impression I have is that we'll start as individuals flying a single ship -- no fleets, no production lines -- but eventually can have multiple capital ships and their associated fleets under our control, as well as ship production facilities possibly scattered across multiple sectors. All the fleet/wing/squadron production and operational management ideas sound like fun, but... what's the gameplay before we get there? Is a Ship Role Template interface available as soon as we start a game of Limit Theory? Or does it become available the moment we gain control of a second ship? Or is it something that's keyed to a particular type of NPC, whom we need to hire?

Those are just suggestions; don't get stuck on them. The larger question (of which those are just some possibilities) is how Limit Theory should ease players into the multi-ship management features as the number of ships they control increases.
Post

Re: Ship Roles (UI)

#6
Flatfingers wrote:(lots of concerns)
The intent behind this UI discussed here is that it is agnostic to the amount of ships you have. You can send a single fighter and a carrier+escorts with same ease, it just depends on your tagging. It should be available from the start of the game.

As with constructing ships, i habe alread outlined some system similar to gazz joint node interface

viewtopic.php?f=5&t=1666

viewtopic.php?f=5&t=1794
Post

Re: Ship Roles (UI)

#7
Cornflakes_91 wrote:I think your hierarchy is too deep before you give the first command, it should be faster to give an attack order.
Cornflakes_91 wrote:The intent behind this UI discussed here is that it is agnostic to the amount of ships you have.
This.

I imagine the role-based well... organisation to be an alternate plane of existence.
There are all those ships, squads, fleets, wings, and whatnot with lots of connections on the whiteboard.
Now you wipe away all the connections, leaving only ships.
Then you draw the role "connections" for the ships.


Taken to extremes and with ships having multiple role "tags", you would not need a dedicated organisation into wings and fleets!
You can have a whole cartload of features and structures... with only one system!


Fighter_413 has the roles: Interceptor + Blue Wing.
Fighter_285 has the roles: Interceptor + Red Wing.
Corvette_35 has the roles: Escort + Blue Wing.

See where this is going?
Send a command to "Blue Wing" and Fighter_413 + Corvette_35 get it.
Send a command to "Interceptor" and Fighter_413 + Fighter_285 get it.

Command Blue Wing to follow / dock at Carrier_18 and you have stationed these ships on the carrier, from which they will launch as necessary.

The order is the structure.


Now if every ship remembers it's last homebase, you get a rather dynamic fleet structure.

Order your "Interceptors" to follow Carrier_18 and they immediately become part of this carrier's complement. (and may split to carriers following Carrier_18)
Order those interceptors to attack something, then RTB, they return to their last homebase... Carrier_18's group.
There is no "I" in Tea. That would be gross.
Post

Re: Ship Roles (UI)

#9
Automation of chores like that that sounds pretty doable when combined with the fleet building plan / TOE feature from the Joint Node Editing thread.
  • You order a "fleet" to be built from an existing plan / TOE.
    (a snapshot you took from an existing fleet)

    This can be as simple as a wing of fighters (near the start of the game =) or an entire carrier group with destroyer screen.
    The effort in building useful groups of ships stays constant throughout the game.
  • Your fabber builds ship after ship and puts them into the slots of this new fleet.
  • For every ship that is built, it checks if this exact ship type and equipment layout corresponds to an existing role(s).
    If so, the ship is also assigned that role(s).
Uh oh. Problem.
I thought that wings could use the role system but you may want multiple wings of "Interceptor" in a fleet. Doesn't work if they are all in the same wing. =)

So why don't I take your group limit and...
  • A role can also have a member limit.
    The role "Fighter Wing" has a limit of 5.

    Shiptype X with equipment Y matches an existing role of Fighter Wing. So that role is assigned automatically.
    As these ships come off the assembly line, they are added to the fleet that is being built and if 20 fighters are subordinate to the same carrier in that fleet, they are given the roles "Fighter Wing 1", "Fighter Wing 2"... "Fighter Wing 4" as fighters arrive and fill these wings.
  • Auto-consolidation.
    Whenever a ship arrives at it's intended workplace (like a fighter catching up with it's carrier), understrength roles / wings try to consolidate into other understrength roles of a matching type.
    If 14 of those 20 fighters from above return to the carrier they fill up other existing wings so you end up with "Fighter Wing 1" (5), "Fighter Wing 2" (5), "Fighter Wing 3" (4).

That probably sounds frightfully abstract and complicated but in my mind, the points of data make a beautiful line!
There are only roles as organisational groups... and a "fleet" (which can just be 2 ships) can be saved as a TOE. (okay, snapshot =)

With these 2 mechanics I can build and automate beautifully flexible structures. Wings / Roles that you define in one central place, fleets (of any size) that can procure supplies or order reinforcements when they return to a military outpost...
There is no "I" in Tea. That would be gross.
Post

Re: Ship Roles (UI)

#10
I like the idea of a roles-only organisational structure too, as it seems cleaner and has less clutter. However, there are a few things I'm confused about with it. For instance:
  • What if I want wings with different numbers of ships of the same role?
  • How is hierarchical command preserved? How can I tell or order Ship A to command Ship B, and Ship B to command Ship C?
What I think might be a good idea at this point to make things clearer is to borrow a concept from software design, specifically agile software development, called user stories. This is where you begin the design of a software product by thinking of the functionality and requirements of the intended end user of the product. Each user story takes the form of:
  • "As a <role>, I want <feature> {because <benefit> }"
What we could do here is to outline what it is we're trying to design here and then follow it with a list of goals:

Outline
...

Goals
  • As a commander, I want A { because X }
  • As a commander, I want B { because Y }
  • ...
Do this in one post first, but don't specify any of the details of your implementation yet. Just set out the requirements and goals. Then lower down or in a separate post, address each of these user stories (commander stories?) using the details of your particular implementation. I'd do it myself but I honestly have to work. :(
Post

Re: Ship Roles (UI)

#11
ThymineC wrote:What if I want wings with different numbers of ships of the same role?
Not supported in my approach. =)

What you could do is create a minor equipment variation for the ship type and assign this to "Fighter Wing B" instead of "Fighter Wing".
In those cases where you want stronger wings, you equip your fighters so that they match the "Fighter Wing B" profile and they regroup into fewer wings.

ThymineC wrote:How is hierarchical command preserved? How can I tell or order Ship A to command Ship B, and Ship B to command Ship C?
The command/order is the entire structure.
If you tell destroyers to follow/escort a carrier, the carrier is the leader of these ships.

In theory.
In practice, a more permanent Homebase / Leader setting would be a good thing.
Then fighters can be told to escort a freighter... but an RTB would let them return to their carrier.
There is no "I" in Tea. That would be gross.
Post

Re: Ship Roles (UI)

#12
  • As a commander I want to assign wings with variable number of ships of the same role without the need for arbitrary equipment variations.
  • As a commander I want an interface through which I can see a hierarchical command structure based on the currently selected ship.
:P
Post

Re: Ship Roles (UI)

#13
Well, when it comes to RTS, keep in mind, pretty much all other war games are 'left-click select, right click move/attack'. We need to keep in mind the simplicity. I know in the X series it is a bit more complicated than that, but in Homeworld, it wasn't.
Image
Early Spring - 1055: Well, I made it to Boatmurdered, and my initial impressions can be set forth in three words: What. The. F*ck.
Post

Re: Ship Roles (UI)

#14
DWMagus wrote:Well, when it comes to RTS, keep in mind, pretty much all other war games are 'left-click select, right click move/attack'. We need to keep in mind the simplicity. I know in the X series it is a bit more complicated than that, but in Homeworld, it wasn't.
Well... with my approach it is as simple as you want, just keep rmb pressed and go through the hierarchy and release rmb when you are where you want to be
Post

Re: Ship Roles (UI)

#15
Flatfingers wrote: It would be nice if it could hit a sweet spot that's usable by action-oriented gamers but still fun for the logistics-minded grognards to fiddle with.
Reading through all these I am going to play the devil's advocate and ask how approachable are your proposed systems? They are sounding more like an interface I would find in X3AP; one that may not be intuitive to the non-X3AP user. Or to a user that's more action-oriented than a micro-manager. :problem:
In Josh we trust.

Online Now

Users browsing this forum: No registered users and 13 guests

cron