1
0
Fork 0
spacetac/TODO.md

5.8 KiB

To-Do-list

Phaser 3 migration

  • Fix valuebar requiring to be in root display list (use tile sprite?)
  • Restore unit tests about boundaries (in UITools)

Menu/settings/saves

  • Save locally first, make saving to cloud an option
  • Allow to delete cloud saves
  • Fix cloud save games with "Level 0 - 0 ships"
  • Store the game version in saves (for future work on compatibility)
  • Add simple options to quick battle (fleet level / difficulty)
  • Add optional fleet customization (both player and enemy) to quick battle

Map/story

  • Add factions and reputation
  • Allow to cancel secondary missions
  • Forbid to end up with more than 5 ships in the fleet because of escorts
  • Fix problems when several dialogs are active at the same time
  • Add a zoom level, to see the location only
  • Restore the progressive text effect
  • Improve performance when refreshing (and thus during jumps)

Character sheet

  • Fix action tooltips showing battle information ("not enough power"...)
  • Improve attribute tooltips
  • Implement sliders for personality traits
  • Center the portraits when there are less than 5

Battle

  • Move animation should face the target (if any) at the end, not the direction
  • Improve arena ships layering (sometimes information is displayed behind other sprites)
  • In the ship tooltip, show power cost, toggled and overheat states
  • Display shield (and its (dis)appearance)
  • Display estimated damage in targetting mode
  • Add a voluntary retreat option
  • Toggle bar/text display in power section of action bar
  • Show a cooldown indicator on move action icon, if the simulation would cause the engine to overheat
  • Add an hexagonal grid (optional, may be enforced only on mobile) and work in units of this grid
  • Add engine trail effect, and sound
  • Find incentives to move from starting position (permanent drones or anomalies?)
  • Mark targetting in error when target is refused by the action (there is already an arrow for this)
  • Allow to undo last moves
  • Add a battle log display
  • Allow to move targetting indicator with arrow keys
  • Add targetting shortcuts for "previous target", "next enemy" and "next ally"
  • Area targetting should include the hotkeyed ship at best (apply exclusion and power limit), not necessarily center on it
  • Add shortcut to perform only the "move" part of a move+fire simulation
  • Add a turn count marker in the ship list
  • BattleChecks should be done proactively when all diffs have been simulated by an action, in addition to reactively after applying

Ships models and actions

  • Fix vigilance action not disabling when reaching the maximum number of triggerings
  • Highlight the effects area that will contain the new position when move-targetting
  • Add movement attribute (for main engine action, km/power)
  • Add damage over time effect (tricky to make intuitive)
  • Add actions with cost dependent of distance (like current move actions)
  • Add disc targetting (for some jump move actions)
  • Add "chain" effects
  • Add mines equivalent (drones that apply only at the end)
  • RepelEffect should apply on ships in a good order (distance decreasing)
  • Add damage on collisions (when two ships are moved to the same place)
  • Add hull points to drones and make them take area damage
  • Allow to customize effects based on whether a target is enemy, allied or self
  • Add a reflect damage effect
  • Add untargettable effect (can only be targetted with area effects)
  • Add damage modifier (to change the options of incoming damage or outgoing damage)

Artificial Intelligence

  • If web worker is not responsive, or produces only errors, it should be disabled for the session
  • Prevent infinite loops of toggle/untoggle
  • Produce interesting "angle" areas
  • Evaluate vigilance actions
  • Evaluate the "interest" of an active effect (e.g healing is better when harmed...)
  • Evaluators result should be more specific (final state evaluation, diff evaluation, confidence...)
  • Use a first batch of producers, and only if no "good" move has been found, go on with some infinite producers
  • Abandon fight if the AI judges there is no hope of victory
  • Add combination of random small move and actual maneuver, as producer
  • Use tree techniques to account for potential future moves
  • Prototype of evolving AI

Common UI

  • Add a fullscreen incentive at game start
  • Fix calling setHoverClick several times on the same button not working as expected
  • Fix tooltip remaining when the hovered object is hidden by animations
  • If ProgressiveMessage animation performance is bad, show the text directly
  • Add caret/focus and configurable background to text input
  • Release keybord grabbing when UITextInput is hidden or loses focus
  • UI parents should only be containers, not images
  • Mobile: think UI layout so that fingers do not block the view (right and left handed)
  • Mobile: display tooltips larger and on the side of screen where the finger is not
  • Mobile: targetting in two times, using a draggable target indicator

Technical

  • Use tk-serializer package (may need to switch to webpack)
  • Pause timers when the game is paused (at least animation timers)
  • Pack sounds
  • Add toggles for shaders, automatically disable them if too slow, and initially disable them on mobile
  • Add cache for image texture lookup (getImageInfo)

Network

  • Handle cancel button in invitation dialog
  • Close connection on view exit
  • Add timeouts to read operations
  • Display connection status

Postponed

  • Tutorial
  • Secondary story arcs
  • Replays
  • Multiplayer/co-op
  • Puzzle mode
  • Formation or deployment phase
  • Add ship personality (with icons to identify?), with reaction dialogs
  • Hide enemy information (shield, hull, weapons), until they are in play, or until a "spy" effect is used
  • Invocation/reinforcements (need to up the 10 ships limit)
  • Dynamic music composition