#-*- mode: text -*-
Bugs
=======

To do closer before release:
----------------------------------------------------------------------
* Update the credits section
* See that an eventually existing manual is added to the release package.


Outstanding release-critical bugs (priority: high)
--------------------------------------------------
- (jp) Collision with robo can still kick you out of level..
       jp: --> absolutely not on my machine!!!!!
       rp: might be related to framerate, I have ~40 fps ?!
       jp: --> couldn't reproduce this with 20 fps on Irenes maching
               perhaps it was due to the "level gray"-change delay?!?
       rp: nope. Recently reproduced: jumped across a wall inside
           level after a melee
       jp: --> damn! --> introduced extra security, that will prevent
           this hopefully, but alter game behaviour if framerate drops under 20 fps.

- (jp) The game SHOULD be playtested on a *SLOW* machine before any release
       to make sure all the constants are in the right range for slow machines
       too.  I don't experience many bugs, because the constants are well suited
       for my 1400 Mhz machine.  I could use the 166 Mhz Pentium of Irene.

Outstanding normal bugs (priority: normal)
------------------------------------------

- Correct the console map:  Do scaling in a way that allows to bring the whole map
  exactly on the screen and perhaps also give the scaling factor used for generating
  the map as additional text to the picture.

- (rp) Build-environment: make sure SDL/X,jpeg etc tests work ok!
  (seems ok so far..)

Outstanding tuning/design bugs and general TODO (priority: low)
--------------------------------------------------------------
- Walls are too "sticky", would be better playable if one could "slide"
  (jp:)  That has been completely resolved, at least for my machine!!
         Please tell me if you still experience trouble.

- (rp) Levelnumber should be the index in curShip.AllLevels for simplicity

Wishlist
--------
- Add the original energy-upload-function from the C64 classical game start
  to Freedroid (instead of BeamLine perhaps...)

- (jp) add more sounds:  
  We might use a new sound file for every different level. That would be
  nice.  But where to get that?

- save highscores to disk

- (rp+jp) use GNU coding standards (see doc file 'gnu-standards')

Resolved bugs
-------------
- DONE Put the 'shipname' into the maps file.  Currently 'Paradroid' is always displayed
       as the current ship.
- DONE There is still a lot of german in the code.  Since we are growing more and more 
       international, that should be removed and better sooner than later, as well in
       the comments as in the choice of some old variable names, which are from 
       historical origin, long before I started using the internet at all.
- DONE missing "takeover announcement" of droid opponent

- DONE mouse-support (should be good with touchstick on laptop!)

- DONE Before any release the levelcolor changing procedure must be rearranged to work
       well together with the combat screen resizing code
  ---> Done.

- DONE leaving level-editor in zoom-factor!= 1 is not restored when
       going back to game
       (Going back to game is a "development feature, that should of
        course not be present in the real game.)
       ---> Problem has been removed nevertheless.

-  DONE We really should have a "dat" file, where the constants involving
        only the game physics are stored, so that people can write their
        own "mods" and also transfer their mods to new versions of freed.
        This "dat" file should be well documented and ascii editable.

- DONE  Saving of Ships does NOT work correctly in the LevelEditor
        integrated in the game 
        (rp): PORT the map-editor 'maped' ?
        -->A maped clone has been integrated into the game
- DONE  Lift: show level-change in lift: probably just some
        SDL_rectangle-filling needed, as it's a simple color scheme anyway
        maybe even use alpha-channel??
- DONE  Incredible file sizes of ne_....bmp files should be reduced, e.g. by using gif file
        format instead, to reduce package size.
- DONE  Robots now "jitter" until they reach their waypoint: adapt to new
        coordinate-treatment: 
  (jp:) This does only happen with "slow" machines.  I had that too at
        first and then adapted the constant.  Will be more cautios and
        work over the constant again.
- (DONE) make sure all svgalib references are removed
- (rp) autoconf/automake: complete SDL checks 
- (DONE) Frage: weiss irgendwer wozu die globale Variable "BeamLine" dient??
         (rp) erschien mir nutzlos, und hab' die Variable jetzt eliminiert,
         hoffe dass niemand sie doch gebraucht haette...
	 (jp:) War fuer eine PlusExtension, die noch dazu instabil war.  Wir
	       koennen problemlos darauf verzichen bis auf weiteres.
- (DONE) "Ghosts" (i.e. Enemeys go throught walls...)
- NEW! but DONE! 
        There is a very strange bug:  When the influ switches to weapon
        mode or just is in WEAPON mode, the framerate GOES UP AND ALMOST
	DOUBLES!!!  This double framerate and the sudden change in framerate
	causes some ugly jumps in the position vectorys destroying the
	otherwise so smooth movement of the game.  Very strange bug.  At
	first I thought it had to do with keyboard handling, but that IS
	WRONG FOR SURE: tests have shown that WEAPON mode is sufficient for
	this strange change in framerate.  The bug also persists, no matter
	wether SDL or ansi C framerate computation is used.
	jp: The problem was that palette operations are SOOOO slow under X11
	and the SDL.  Now Influ-color is not set every frame.  This was the
        default in WEAPON mode only.  Now we have DOUBLE framerate!  coool!

- (DONE) (jp:) wenn man ganz am rechts unteren Rand einer rechteckigen Kartenform
               steht wird die Framerate nachweislich bei mir HALBIERT!  Das liegt
               an den vielen IsVisible-Abfragen, die scheinbar irgendwo aus der
               Karte hinaus im Speicher die Sichtbarkeit uberpruefen.  Sehr 
               fragwuerdig
         (jp:) appearently this bug has been resolved somewhere since it was encounteres
               while using SVGALIB and might have been resolved with the new and corrected
               get-ship-routines of rp or so.  At least this bug cannot be found on my
               machine any more.
- DONE     (rp:) game should be able to check if yiff is actually _running_ and
                 complain if not and/or continue  
           (jp:) I do not see this problem.  If yiff is not started, it will be
	         started.  If yiff is already started, thats it and yiff will be used.
   	         So why check if yiff is already running?
	         Also I have added extensive error handling and error documentation 
	         for the user, so I consider the problem now fixed.
           (jp:) YIFF has been entirely removed, to this really is handled...
- (DONE)   Schussfrequenz des 001 zu hoch
- (DONE)   gesamt Spiel-geschwindigkeit zu hoch (play original game to compare!!)
           --> jp: Gut.  Habe Robotgeschwindigkeiten und Schussgeschwindigkeiten etwas adaptiert.
- (DONE)   Laufschrift gehoert zu Paradroid-'extensions'
	   --> habe sie als solche vermerkt.
- (DONE)   (rp) Invincible mode: versagt manchmal (collisions)
	   --> inzwischen ueberlebt man die absurdesten Kaempfe und Situationen damit
- (DONE?)  (jp) Calculate all movement (where movement is to be understood in an abstract
	   sense including movement of energy and such) framerate-dependant
	   --> sollte weitestgehend erledigt sein.  Was fehlt noch?  Anmerkungen bitte.
- (DONE)   (rp/jp?) Ship-console endlich ordentlich machen, haufenweise
	   Robo-graphics noetig:  Graphics sind jetzt da, einbauen noch noetig.
	   --> Konsole ist jetzt relativ ansehnlich.  Weitere
	   Verbesserungsvorschaege erwuenscht. 
	   (Bei zu viel Text, scheint immernoch ein segfault zu drohen
- (DONE)   correct the too fast refresh movement and effect
	   Refreshes sollten jetzt ordentlich arbeiten.  Etwas kalibrieren koennte man
	   sie vielleicht noch.
- (DONE)   correct the too fast explosion (blast) damage effect
	   --> sowohl fuer Feinde als auch fuer den Influ sollte das
	   jetzt angemessen wirken 
- (DONE)   (rp) Takeover game still looks 'unfinished'
	   --> der Reinhard hat da scheinbar weitgehend aufger\"aumt...
- (DONE)   (jp) "Fieps-pieps" music ist im Originalspiel nur am Anfang, im Haupt-spiel
	   sind nur ein paar "Brumm-brumm" Geraeusche
	   --> Fieps-Fieps ist jetzt auch bei uns nur am Anfang.  Spaeter aber ein Bischen
	       Themenbezogene Hintergrundmusik find ich dagegen gar nicht so schlecht.
- (DONE)   Also there are 516 in the yellow level, which shouldn't be the  case.
           I also encounter OTHER 001 druids of black color!
               Especially after having died at least once before!  Very strange!
           (rp: this should now work ok)
- (rp)     Timing in takeover game 
- (DONE)   Concept view is ugly
- (DONE)   Pause stopped working with SDL-port
- (DONE)   Uebernommener 302 is zu schnell, 420 is zu langsam..., etc etc
           (jp: finde ich nicht.  Ist zwar nicht 100% Originalgetreu, aber ich finde schon,
           dann die Geschwindigkeit des entsprechenden Robots dann auch fuer den 001 gelten
           sollte, wenn er einen dieser Robots uebernommen hat.)
- (DONE)   proper Highscore list 
           --> Highscore list is accessible via the ESCAPE menu (single player submenu)
- (DONE)   Debriefing ordentlich
           debriefing sieht jetzt gar nicht so schlecht aus.
- (DONE)   Lift-entry: man muss zu lange auf Space sein bis man in den Lift
           kommt. Das "Lift-fahren" ist auch zu schwerfaellig.
- (DONE)   Blitz-schuesse flimmern jetzt zu stark/lang	
           --> nicht mehr, seit die Framerate durch weniger debug-messages 
           generell hoch ist und Flashes Framerate-abhaengig lang leben
- (rp) should have maximally one 999 on commando-bridge
  (jp: I think I've encountered 0 often, later 2 on other ships,
       so I think thats not really so serious)
- (DONE) Endscreen after being killed ("Flimmern4") is too slow
         (rp: now speeded up a bit, but should write a new one)
- (DONE) put all "cheat"-keys in cheat-menu (some are still accessible outside)
- (DONE) Enemey visibility is a bit shakey (revisit visibility calcuations...)
         Test with concept view:  VISIBILITY seems to work perfectly well.
	 The variable onscreen is not updated except for in PutEnemys and should
	 perhaps be removed:  We HAVE the time to calculate visibility every
	 time we want to use it and DO NOT NEED to store is somewhere.
- hide mouse pointer
  (would that really be a good idea?)
  YES: only relevant for Freedroid-window, and has ben done already 

- (rp?) The game gets stuck in the very left elevator on the deck above the
          very lowest deck.  Might have something to do with map topics
  (DONE) enemy-navigation got stuck if waypoint had _zero_
          connections, such "solo" waypoints are signalled, but works ok now.

- (rp?) joystick/gamepad support waere toll!
  (DONE) geht schon super!

- (DONE) Options menu, wo man etwa: 1.) Die Lautstaerke der Hintergrundmusik
         bequem einstellen kann: Use ESCAPE key to access menu

- (jp/rp?) make sure sound-code respects HAVE_LIBSDL_MIXER #define!!
  (DONE)
- (rp) adapt Takeover game to the new engine
  (DONE)

- DONE Colors sind allgemein ein wenig verdreht seit SDL Port
       (wird automatisch behoben mit dem Umstieg auf TrueColor mode,
       wo es dann ohnehin keine Farbpalette mehr gibt...)
- DONE need to allow waypoint ON a refresh for ex. (-> level 5!)
- DONE level 11: console rechts unten ist verkehrt
       (wird leicht zu beheben sein, sobald das Abspeichern von maps aus
       dem neuen MapEditor funktioniert.)

- Farbpalettenrotation fuer Bulletcolor austauschen, da sie die
  Framerate verschlingt!! (we should check that first, though)
  (wird sowieso automatisch behoben bzw. automatisch umgestellt, 
  wenn wir mit der neuen Engine dann auf TrueColor-Modus umstellen.

- (rp) Joystick shooting should determine direction more precisely
       (difficult to shoot "straight")
       (DONE)
- (jp/rp) "Ghost" bullets firing on me on empyy levels (eg. level 5) 
  then also had some ghost bullets coming from nowhere on other
  (no-empty) levels
  ---> has already been removed.  That was only a symtom while I was
       extending.  Problem is fixed I think.

- (rp) sensitivity in takeover-game too high (single steps difficult)
  (is BETTER NOW)

- (rp?) The space for droids in the takeover game is a bit scarce.  The bottom tends to
        get chopped off.  Takeover should be rearranged to display the droids without
        chopped off parts indepentend of which theme is loaded.
- (rp) stabilise Highscore list

- (rp) improve keyboard-repeat in takeover
- (rp/jp) put a crosshair mouse-cursor
  jp: --> done via taking and modifieing the example from the SDL doku
          the current cursor is defines via pixel-map contants in the code, haha.

- bullet to top-right seems to be "offset" to top with respect to
  displayed bullet-pic (which is positioned correctly), i.e. 
  collisions with wall or robots take place as if it was higher in y...
  jp: --> Problem fixed.  The rotated Block is no longer of size Block_Width x Block_Height
          but of the size of the smalled rectrangle containing the uncroped rotated 
	  square of this size.


- !! We should have a common bug/patch mailing address somewhere !!
  freedroid@....
- (rp) fix small mouse-shooting inconsistencies
       ? which ones are left ?

- The console picture, i.e. the picture for the menu at the console is a terrible mess.
  Someone must sooner or later set up something more proper for the ne_cons.bmp file
  containing the different phases of the console, or end users must be tolerant.
  jp: --> Corrected, thanks to the great new picture provided by Lanzz! Thanks a lot!!!

- (jp) some missing "color rotations": takeover-mode 