UI Design Considerations

From Planetary Annihilation
Jump to: navigation, search

There are many UI ideas floating around (on the forum). The purpose of this page is to gather them in one place so that anyone trying to design the UI would know all the possible things the design may want to support. ie. things not necessarily in the game proper but which the game engine may allow a mod to accomplish.

"The general idea is to have an emphasis on being able to execute high level strategy. This just means we make the interface as powerful as we can. This doesn't mean there won't be any micro at all though. For example the commander is inherently a "hero" unit that benefits from some amount of micro, especially early game." -uber_neutrino 1

Note: If you don't see your idea specifically listed, it may be because it was generalized or grouped with another idea.

General considerations[edit]

  • Context-sensitive 'palette' windows that hold commands or info
  • Context-sensitive ui transparency
  • Input remapping 1
    • Multiple sets of keybindings 1
  • Accessibility 1

Control-type considerations[edit]

(Transferring information from the player to the game)

  • Order queueing (confirmed)
  • Shared unit control (confirmed) 1
  • Undo 1
  • Insert/delete/modify an order in a queue 123 (this is one way to implement instant pausing)
    • Assigning orders to unbuilt units in the order queue 1
  • Circular order queues, ie. loops
  • Order queues in tree-shape(directed towards root) or arbitary directed graphs(requires conditional execution of orders)
  • Conditional creation/assignment of orders (eg by proximity, by territory, by event 1, by criteria)
    • Retreat Zones 1
    • Allows ordering units to create orders to replace themselves if they are destroyed 1
  • Synchronization over multiple order queues of starting(eg. wait until signal) or finishing(eg. arrive altogether) a particular order
  • formation movement(alt-move command drag mouse for final position)
  • Area commands 12345
    • Multi-target orders (by designation, by area ie. carpet bombing, etc) that spreads your units over the targets 1 2 (see Group Order Parallelization)
      • Aggregation of multiple targets, eg. aoe attack the center of a group, not the edge 1
    • Create multiple buildings with one command (eg. along polyline, various shapes by outline or variable fill density, free painting) 12
  • Building placement orientation
  • Ordering units into formation: direct assignment and as a first-class entity 1
    • moving/attacking as a formation, complex formations 1
  • Complex grouping of units and group functions related thereto 1
  • Resource consumption priority system 1
  • Target selection priority system 123
  • Toggleable auto-clearing of debris or vegetation if it is in the way of a building creation order (was in SupCom)
  • For applicable units, turning them on and off (eg. to save energy)
  • Manage production from a higher level, ie. without needing to select all the relevant units (eg. build queue sharing) 1
  • Smart(er) handling of conflicting orders (eg. building order on top of existing building order) 1

Feedback-type considerations[edit]

(Transferring information from the game to the player)

  • Strategic zoom (confirmed)
  • Viewports (confirmed)
    • viewports spanning across monitors, ie. panorama mode (not confirmed)
    • complex control of viewports 1
  • Spectator/replay features (confirmed) 123
  • Production summary, "production tab" 1
  • Arbitrary camera control 1
  • Mouse panning 1
  • Tracking a group of units 1
  • Map pings
  • Estimated time to order completion: construction and in general
  • Knowing what is on the other side of a planet
  • Additional info on mouseover or keypress (via tooltip, or statusbar, tool window, etc)
  • Interactive alert stream and parseable event stream for ui modding 12
  • Search: finding units according to criteria (eg. by distance from a location, health level, idleness), and returning results by various visual indicators, or zooming to, selecting etc.
  • Visibility: easy to see ui elements always

Player-communication-related[edit]

(Transferring information between players)

Debatable whether it is part of UI[edit]

  • Automation (unit decision-making) 123