213 lines
5.9 KiB
Markdown
213 lines
5.9 KiB
Markdown
# Specific projects
|
|
|
|
## Now:
|
|
- outfitter
|
|
- Clean up scripting & errors
|
|
- Clean up sprite content (and content in general)
|
|
- Arbitrary scene names
|
|
- Text style, color, formatting
|
|
- Flying UI
|
|
- Mouse colliders
|
|
- Clean renderscene/UI scene/change scene on land
|
|
- UI captures input?
|
|
- Scriptable renderscene: script decides which parts to show
|
|
- No UI zoom scroll
|
|
- Preserve aspect for icons
|
|
|
|
|
|
## Small jobs
|
|
- Fix window resizing
|
|
- Debug: show mouse position
|
|
- 🌟 Better planet desc formatting
|
|
- Procedural suns
|
|
- 🌟 Back arrow -> reverse
|
|
- No wobble for ai ships & autopilot
|
|
- 🌟 User-configurable outfit space types
|
|
- 🌟 Sticky radar
|
|
- Configurable radar
|
|
- 🌟 Ship damage events
|
|
- Better landing animation (slow down)
|
|
- Land from farther away
|
|
- Ship collapse: damage + force events
|
|
- Redesign UI elements
|
|
- Background haze: 3d perlin?
|
|
- nova dust parallax
|
|
- Motion blur
|
|
- 🌟 Generate outlines and colliders
|
|
- Then: outline self in status
|
|
- Reverse engines + flares
|
|
- Turn flares (physics by location?)
|
|
- Angled engines & guns
|
|
|
|
## Misc fixes & Optimizations
|
|
- 🌟 Better errors when content/asset dirs don't exist
|
|
- Clear `// TODO:` comments
|
|
- Correct drawing order (player on top, landing ships)
|
|
- Faster handles (better than a hashmap?)
|
|
- Check for handle leaks
|
|
- Better physshiphandle
|
|
- Clean up & faster frame timings (average)
|
|
- 🌟 Handle lost focus
|
|
- User config file
|
|
- 🌟 Document content
|
|
- 🌟 Clean up content: one ship per file, autodetect
|
|
- CLI: specify dirs, content location, logs, etc
|
|
- Starfield clusters, less flicker
|
|
- Collider groups for factions? (projectile optimization)
|
|
|
|
## 🌟 Player selection
|
|
- Planet name, ring, and distance
|
|
- Selection UI (around game object)
|
|
- Selection UI (radar arrow)
|
|
- Selection keys
|
|
- Select ships
|
|
- Selection UI (HUD)
|
|
- attack selected ship, even if friendly
|
|
|
|
## 🌟 Planet outfitter
|
|
- UI, show ship on land
|
|
- Money
|
|
- Display name != key
|
|
- then: non-removable outfits
|
|
- then: cargo space
|
|
- then: collectible flotsam
|
|
- then: mass from cargo and outfits
|
|
- then: space conversion
|
|
- then: heat + energy stats
|
|
- then: damage type (heat, energy, disrupt, etc)
|
|
- then: debuffs
|
|
- then: assign guns to points
|
|
- then: guns with consumable ammunition
|
|
- then: enable/disable weapons
|
|
|
|
|
|
## Ship Spawning
|
|
- requires: Basic ship AI (disable collision for now?)
|
|
- requires: Fleets
|
|
- Spawn ships from planets
|
|
- Land ships on planets (destroy)
|
|
- Start with player on planet, respawn
|
|
|
|
|
|
## Debris (requires: flotsam)
|
|
- Destroyed ships leave debris
|
|
- Destructible & floatingdebris
|
|
- Orbiting debris: asteroids
|
|
- ES-style asteroid field (how should we do this?)
|
|
|
|
|
|
## Camera physics
|
|
- lookahead
|
|
- damping
|
|
- Don't jump when landing/taking off
|
|
- wobble / ship thrown when hit?
|
|
- UI/effects when damaged?
|
|
- Focus important objects
|
|
|
|
## Sprite reels
|
|
- Random start frame
|
|
- Trigger sprite reel during collapse sequence
|
|
- Trigger sprite reel when firing (requires: non-removable outfits)
|
|
- then: ship tint
|
|
- then: frame timing randomness
|
|
- then: leaks during collapse (needs effect physics)
|
|
- Sprite color variation
|
|
|
|
## Texture loading
|
|
- loading screen & menu
|
|
- GPU limits?
|
|
- Cache direcory
|
|
- How to pack?
|
|
|
|
## Sound effects
|
|
- Sound effects
|
|
- User-configurable music (?, game config or user config?)
|
|
|
|
|
|
----------------------------------------------------
|
|
----------------------------------------------------
|
|
|
|
# Ideas and long-term goals
|
|
|
|
|
|
## Features (not soon)
|
|
- Multiplayer
|
|
- Configure key bindings, controller support
|
|
- Save game state
|
|
- Dynamic relationships (get angry when attacked)
|
|
- Jump between systems
|
|
- Story: how?
|
|
- Conversations, trade, missions
|
|
- Lightweight whole-universe simulation
|
|
- Documentation site & front page
|
|
- Dynamic lighting (planets & ships)
|
|
- Lens flare?
|
|
- Active abilities
|
|
- Galaxy date system, slowly orbiting planets
|
|
- Parallelize frame computations
|
|
- Advanced AI: avoid collisions
|
|
- Land and unland effects
|
|
- Muzzle effect
|
|
- Effect / sprite color variation
|
|
- UI Animations
|
|
|
|
|
|
## Game & Story
|
|
- 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?)
|
|
- Locks and keys -> variation?
|
|
- 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?
|
|
- Actions against one faction affect another, dynamic relationships
|
|
|
|
## 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
|
|
- How big should sprite resolutions be? How about frame rate?
|
|
- Naming: atlas, sprite, image, frame, texture
|
|
- Outfits may not change unless you've landed. They might not change ever for CC ships!
|
|
- All angle adjustments happen in content & shaders
|
|
- Reserved texture: index zero
|
|
- Errors: lowercase, no punctuation
|
|
- When to use what logging level
|
|
|
|
|
|
## 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.
|
|
- 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
|
|
- Soft and highly armored ship points
|
|
- Repair your own ship
|