
  For 0.5.1:

	* Clear screen ASAP? Desktop garbage is seen for a moment
	  before the loading screen shows up.

	* Should be able to skip the death explosion sequence,
	  if there are more ships! Maybe an option to remove
	  it (and other effects) altogether?

	* Screen pixel accurate map scrolling.

	* Fine rotation adjustment when using OpenGL.

	* Dedicated menu sounds.

	* Sharp "klang" damage sound.

	* "Center Playfield" (as opposed to "center framework")
	  video option

	* Separate highscores for different skills.

	* Try reading back from the display buffer to autodetect
	  how page flipping is handled! Mark pages with a few
	  pixels in the corner (binary page numbers), and see
	  if/when they come back.

  For 0.5.2+:

	* In-game music volume affects intro music!

	* Mouse crosshair can stick around after disabling mouse
	  control!

	* Nibble effect still doesn't like double buffering.

	* Default/Changed status indicators in the options.

	* Add doc() method to the config manager, for longer
	  explanations of the options.
		* Structured documentation for values...?

	* Help texts (in the radar window?) for config options!

	* Cleaner gold fonts! (Poor AA in bigfont3, and goldfont
	  is just a scaled and colorized version of icefont2.)

	* Y scale factor f*cked up when switching to 2560x1600!
	  Apparently happens only after "escape hammering"...

	* Simulation based base verification method:
		1. Destroy all destructible nodes.
		2. Figure out how many turns one would
		   have to navigate into the base in order
		   to get a shot at the core.

	* Sort the video modes!

	* Nodes and cores should have some sort of "spawn"
	  effect when firing.

	* Logic object pool optimization: Use LIFO pool + lists!

	* Graphics scaling:
		* Remove or hide the advanced graphics options!
		* Graphics quality:
			* Fastest
			* Medium
			* Best (Default)
			* Custom (show old detailed settings)
			* At first startup, quality would be
			  "Unknown". The game will start by
			  testing the intro with no logo. The game
			  picks a quality setting based on frame
			  rate. If "Medium" or "Fastest" is picked,
			  the game should warn and ask the user.
		* Specify in the loader what scaling methods should
		  be used for each quality setting. (What about
		  Custom?)
		* Disable alpha in Fastest quality. Medium...?

	* Better scaling!
		* Try SDL_resize!!!
		* S-spline style enhancement filters?
		* Detail textures?

	* glSDL surface leak when taking screenshots!

	* Do we *really* wait for all bases to stop exploding
	  after the player lost a ship...?

	* Pause mode should not consume CPU or GPU power,
	  at least not if the window is passive.

	* Indirectly changing the video mode (by changing one
	  of the "Show" options) will not trigger a video
	  restart.

	* Death sequence UI timing should not be governed by
	  game logic time! Throw in a "state time" feature in
	  the gamestate manager or something. Or perhaps just
	  switch to a fixed logic frame rate when not
	  actually in-game? (It does actually make sense to
	  scale in-game effects with game speed!)

	* Quicker menu navigation with PgUp/Dn, Home, End etc.

	* Eliminate the last few sampled sounds!

	* Non-linear audio output for high+ volume boost!

	* 3D "rockfield" for highscore and/or credits? (2D
	  parallax rocks + stars without glSDL.) glSDL should
	  support texture filtering for nice scaling.

	* There should be some feedback from the sound engine,
	  perhaps... As it is, you can't even see what sample
	  rate it's actually using.

	* Bonus levels...?

	* Interesting soundscape while loading?

  Internals & bugs:

	* Noise fx glitches in some resolutions.

	* If a ctrl+enter fullscreen/windowed switch is made
	  while the menu is shown, the text goes away!

	* Any playing game aborts after toggling windowed/
	  fullscreen!

	* VSync settings doesn't change as it should! Doesn't seem
	  to be much I can do about this...

	* Try to create a scoredir if missing!

	* Leaving the game running for a few hours results in
	  "hickups" at around 2 Hz, until the graphics is reloaded
	  or similar. (Logic re-init?)

	* Downscaling (sub 320x240) breaks the radar and
	  causes various other issues. (Pretty much expected...)

	* glSDL and EEL should output errors to the logger.

	* SIGSTOP kills the main thread... SDL/AMD64 bug...? 

	* SIGSTOP/SIGCONT seems to confuse the game logic.
	  (Already fixed...?)

	* SDL_GetAppState()! (Fixed...?)

	* Switch to PhysicsFS!?

	* WAV writer? (Just for "cache sounds on disk.")

	* Don't overwrite other windows when refreshing the
	  in-game framework.

	* Convert text files to Win32 format in the Win32
	  install target!

	* Add source info to "key" codes, to tell joystick
	  input from keyboard and the like, when desired.

	* Use custom keyboard repeat code. Should be used
	  for joystick events as well.

	* Show a system dialog of some sort, instead of
	  printing to stderr. (Critical errors only.)

	* Multiple keys and buttons bound to the same
	  function results in up/down state confusion; if
	  you release one of the keys, the "target" gets a
	  release event, despite other keys with the same
	  target being held down.

	* Range checking on command line args and config.

	* Remove either gamecontrol or gsm event pushing
	  calls from skobo_gfxengine_t::frame(). Don't know
	  which one, but it can't be right the way it is
	  now...

	* Rearrange the source tree so that all source is
	  in an src subdir.

	* Put README, COPYING etc in binary distros. (Done
	  for Win32 "simple bundles".)

	* Add CRC or simple "checksum" to score files, to
	  prevent too easy modification. You must at least
	  download the game source and hack it if you
	  *really* want to cheat! ;-)


  Features:

	* Proper start-of-map savegames!

	* Instructions! (In the radar window...?)

	* Input configurator!!!

	* Game statistics!

	* Adrenaline Mode:
		* Health/damage accounting
		* Powerups
		* Indestructible labyrinths
		* N bases or objects to destroy
		* Loads of aggressive enemies
		* "Forced speedrun" style gameplay

	* Update the demo songs. (Some sounds became too
	  soft after adding envelopes; FX send levels and
	  routing is screwed up etc...)

	* Throw in some *real* music. (The demo songs don't
	  really have anything to do with Kobo Deluxe. I
	  was basically just testing things when developing
	  the audio engine.)

	* Implement "world snapshot" feature, to use for
	  save game option, as well as internal temporary
	  save game for changing video options in the
	  middle of the game and the like. Needs to save
	  score, lives etc, the current map, all objects,
	  random number seed etc.

	* Implement multiplayer modes. (Deathmatch and
	  Cooperative, for starters.)

	* Separate personal and global highscores. Where
	  applicable, one could keep score for player/user,
	  system local, local network and the internet,
	  and/or maybe some kind user defined groups.

	* New "Instructions" solution. (New state...?)

	* "Sloppy Refresh" hack to improve frame rate for
	  sprites and base tiles, while reducing it for
	  the starry background tiles.

	* On targets with sync'ed flips, accept "close
	  enough" refresh rates as time base, so that the
	  video frame rate becomes an integer multiple of
	  the engine frame rate. (Smoother scrolling.)

	* Add native OpenGL support with sub-pixel accurate
	  rendering for ultra smooth animation.


  Gameplay:

	* Prevent the map generator from building impossible
	  bases! Possibly build a list of tested and approved
	  random seeds for each level...

	* Provide a fixed set of maps for fair highscore,
	  speedruns and the like! As it is, every game is
	  truly unique, so scores cannot really be compared.
	  (Well, that *could* be considered part of the game,
	  of course...)

	* Elite and God modes should make enemies smarter
	  (aim-ahead, at least). We want "tough" - not
	  "stupid fast"!

	* Health is restored when entering a new stage. Bug
	  or feature? (Doesn't affect classic single player.)

	* Use common reactor temp instead of front/rear temps?

	* Acoustic warning when cannons are about to overheat.

	* "Smooth chase" scroll in non Classic modes? Maybe
	  even filtered player movement?

	* Fire to push rocks around?

	* Instant restart button? (Shouldn't really be needed
	  if the "impossible base" bugs are fixed...)

	* Import some extra maps from xkobo-1.11+w01?

	* Radar markings for death + respawn points when
	  getting killed?

	* Show map borders in radar, for orientation?

	* "Milking" cores that fire enemies is a potential
	  way of cheating for a higher score. Throw in an
	  enemy_m* after some time as assassin to prevent
	  this? (How to detect whether the player is doing
	  something "sensible" or not...?)

	  Trick suggested a nice and simple solution: Just
	  lower the "price tag" on enemies spawned from
	  nodes over time. No effect on gameplay, but if
	  you fly around shooting defenseless enemies for
	  too long, they'll eventually stop counting
	  towards your score. The only remaining problem
	  is figuring out when to start decreasing enemy
	  scores, and how fast.

	* I just faced a very nasty station on one of the
	  first levels. Is it really a good idea to allow
	  stations where you must fly into the base, taking
	  two or three corners, to be able to shoot at the
	  core? The station generator might need some
	  tweaks... ("Don't put HARD ends on very long pipes
	  on the easy levels." :-)


  Web site and other stuff:

	* Find binary packages and maintainers!

	* Links to unrelated games sites.

	* Write a design paper!
