Learn how easy it is to sync an existing GitHub or Google Code repo to a SourceForge project! See Demo

Close

[b5059c]: TODO Maximize Restore History

Download this file

TODO    102 lines (84 with data), 4.5 kB

Scripts:
1. (DONE?) ToB specific actions/triggers, like pocketplane (so ToB will work)
2. (PARTLY) Properly detect the play mode (sp/mp, normal/extended)

Strings:
1. fix (finish implementation of) talk table override
2. implement feature: "<GENDER?stref1:strref2>" (or even more ambitious stat specific strref tokens)

Combat:
1. (PARTLY) fix combat round timings
2. implement customisable combat calculation, it should be general enough to
simulate all games, without any hardcoded parts

Items:
1. (DONE-almost) Break items, count charges
2. (PARTLY) Implement switching weapon abilities
3. (DONE-almost) Implement item usage (similar to spells)

Effects:
1. (DONE-almost) Implement common effects
2. (PARTLY) Implement IWD2 effects
3. (DONE-almost) Implement TOB effects
4. (PARTLY) Implement PST effects
5. (DONE-almost) Implement area/non-living affecting effects 

Area:
1. (PARTLY) Don't load scripts for pile items? (research when a script is unused)
2. (DONE) Create real streaming ambients (do not preload them, just use them when needed)
3. (DONE) in pathfinder, calculate with the actor's feet circle size (npc blocking still needed)
4. (DONE-almost) fix overlaid tiles - bug #1623839

Store:
1.  Store caching (especially bags)

Animation:
1. (PARTLY) fix char animation sequences
2. stanceID is still fuzzy. Fix it. (FIXED?)
3. (PARTLY) Implement projectile animations (area, cone, fragments, hardcoded features)

Actor:
1. (PARTLY) Use the character sheet (Actor.cpp) itself to store attributes of the character 
   during character generation. 
   Benefits: data is already stored in the destination, data constraints and relations 
   are easily implemented.
   How to: replace GemRB.SetVar with GemRB.SetPlayerStat. Don't forget to create
   the character first. - see bg1 chargen for a complete solution
2. Move position of actor (and ground circle) to the center of a searchmap cell
3. (PARTLY) Actually handle the iwd2 spelllists. Exporter is still needed.

Game GUI:
1. (PARTLY) implement class based (but customisable) action button bar. Generally port
   the IWD2 system to all engines
2. implement grabbing mouse pointer by a control to fix dragging of PST Float menu window
3. (PARTLY) Fix drop capitals (initials) Calculate text height/width correctly, display
   it correctly too.
4. (PARTLY) Fix unwanted screen shake (especially when on bottom of area)
5. (DONE-almost) Level up code, this should be written mostly in GuiScript!!!
6. (PARTLY) Contingency, spell trigger setup windows
7. (PARTLY) Customize windows (part of character record window)

General:
1. The Cache and Variables classes could be rewritten to incorporate the release 
   function more smoothly (use templates?)
2. various directories (GemRB override, game override ...) should be resolved 
   right after loading config files and remain static afterwards. Maybe define 
   some PATH variable describing all the directories searched for files
3. valgrind reports a big heap of unreleased python objects
4. Implement at least all the options accessible from the GUI options setup,
   rewrite baldur|torment|icewind.ini

Graphics:
1. use scaling in Video::SpriteScaleDown() instead of in Video::GetPreview() 
   and in BMPImporter
2. move SDLVideoDriver sprite functions to their own file, rename them to 
   SpriteIsPixelTransparent etc.
3. (PARTLY) Add PNG support? (still image done)
4. Fog of war: fully visible squares with one corner neighbour invisible need alpha of the adjacent corner to the invisible square tuned down (uh, i hope it is clear what to do, look for artifacts in the fog of war edge)

Sound:
1. valgrind reports invalid memory access due to Unqueueing buffers and using 
   them in another thread (openal weirdness?)
2. (PARTLY) sounds get sometimes distorted, might be connected to problem #1
3. (PARTLY) Separate OpenAL interface from ACM loader and MVE player
4. implement sound handles so looping, moving sound, stopping sound is possible
5. fix sound settings (currently the volumes get reset on area change, for example)
6. implement and use as much from EAX (echo, damping, etc) as possible

Release:
2. Get a sample game with some free license which could be distributed
   with GemRB.


Documentation:
1. (PARTLY) make tool to scan source files for those with non-standard
   copyright notices
2. Add Doxygen doc comments to more objects
3. Write GemRB overview, structure and high-level flow docs


Community:
2. Move this todo to bug/task tracker at Sourceforge :-)