Galactica/TODO.md

152 lines
4.4 KiB
Markdown

## Specific Jobs
- Particle variation
- Animated sprites
- UI: health, shield, fuel, heat, energy bars
- UI: text arranger
- Sound system
- Debris on ship death
----------------------------------
## Game & Story
- Landmarks to determine speed?
- How to keep player in system bounds, what to do if they fly far away
- Max chase distance, physics-enforced area?
- (Soft limits, you shouldn't go too far unless you decide to.)
- Enforce: silently teleport to the other end
- How to handle death -- save scum should not be the norm (hollow knight?)
- Jumping between systems -- how?
- Locks and keys -> variation?
- Active abilities
- Hard to get outfits you've lost (hollow knight's charms do this very well)
- Missions: hunt scary targets
- The world exists outside of the system you're in
- (large-scale dynamics)
- How does information travel?
- Communication timer: destroy a ship fast, nobody needs to know
- Do we want to pay crew?
- How should ship capturing work?
- Enemy motivations
- Where does money come from?
- Changing map paths? How?
## Features
- Music (user-configurable)
- Sound effects
- Debris (ship death, destructible, physics)
- Orbiting debris (asteroids)
- Collectibles (flotsam)
- UI
- Landable planets
- Back arrow: reverse thruster or reverse ship
- Loading screen, incremental texturearray loading
- Indicators (planet names, enemy ship stats)
- Multiplayer? (how does that fit into gameplay?)
- On-screen text
- Controller input & key bindings
- Save games
- Date system -> planet position
- AI fleets
- More ship behaviors
- Jump between systems
- Government color, ship tint
- Different kinds of ship behaviors:
- who to target
- how to target them
- where to go
- etc, extra flags
## Faction interaction
- Targeting overrides hitscan rules (only for player)
- Static and dynamic faction relationships (change with player actions/game events?)
- Dynamic relationships only for player? Other governments may be hard-coded
- Opinion towards player -> how to handle well?
- Player faction is special
- Actions against one faction affect another
## Internal
- Logging/warning system
- Frame timings (compute/render/physics/etc)
- Elegantly handle lost focus
- Pause game
- Better player controller? (only one shipbehavior needs inputs)
- Clear all `// TODO:` comments littered in the source
- CLI options (debug, save location, content location, check content)
- Config file and compile options, remove all those consts.
- Engine flares shouldn't be centered
- Sprite optimization: do we need to allocate a new `Vec` every frame? Probably not.
- Better error when run outside of directory
- Documentation site & front page
## Content
- Angled engines
- Angled guns
- Turn engine flares
- Reverse engine & flares
- Better ship colliders (need a tool or an algorithm)
- Better projectile colliders (box/ball/etc -- shared syntax)
- Turrets
- Weapons with ammunition
- Enable/disable weapons
- Cargo space
- List of ES content--which to implement?
- Ship stats
- Weapon stats
- Display name != internal key
- Conversations
- Trade
- Missions
## Camera
- Shake/wobble on heavy hits?
- Camera effects on low health?
- (or are ship particles better?)
- Lookahead -> position or direction?
- Damping?
- Important objects affect camera
## Visuals
- Particles
- Dynamic lighting (planets & ships)
- Motion blur
- Zoom parallax (?)
- Background haze
- Nova dust parallax
- Ship outlines in radar
- Engine flare ease in/out
- Lens flare
## Write and Document
- Parallax
- Starfield & tiling
- How the game is drawn
- transforming game coordinates to screen
- how angles work
- Computation flow
- Physics pipeline
- Outfit pipeline
- Collision detection
- Ship AI
- Handles
- Content specification and pipeline
- How packer and optimizations work, and why
## Ideas
- Improvements over ES
- Better visuals
- More interesting combat
- More interesting missions
- Big fleets shouldn't be broken (should the player even have a fleet?)
- ES Enemies don't have a real motivation.
- ES story is a bit basic
- Death matters - save-scumming shouldn't be normal
- More interesting trading?
- Death penalty
- Find your wreckage when you die (dark souls/HK)
- Lose some outfits, lose ship? Real risk for going out! (HK does this well)
- Damage to ship subsystems