Top TODO list (some may be included in 2.1.0, some others not): --------------------------------------------------------------- Note: This material is not yet integrated into our Wiki, but should. See http://sourceforge.net/apps/trac/speed-dreams, Developers corner. Cars: - improve damage management (see Andrews ideas in the the devel list, under the title "Thoughts on collision damage"). Menus: - enable intuitive double-click for "Select/Unselect" action in the scroll-lists of the driver select menu - new menu for human driver car setup : may be only a reduced set of parameters would be accessible first, with default values for others ; some thinking work about which go in this set wand which don't. - Go on with Brian's XML menu infrastructure : * move new guimenu.h/cpp functions Create*, Get*, Load*, Read* to a new dedicated source file (guixml.h/cpp ?) * rename these functions to be consistent with Gfui API (add a GfuiXML prefix ?) * add support for keyboard shorcut XML description (with defaults like for F1, F12 ... and also customizable ones). * add support for dynamic background image. * move the whole thing to a GfuiXMLMenuDescriptor class, for nice access to menu properties, controls, objects ... by their name or index (in the XML file) Robots: - Program: - network gaming - take over Brian's unfinished work, or restart from scratch (using graphics data transmission rather than physics one, see devel list discussions) - as we want to increase the details (cars, tracks, ...), think about better and deeper management of the level of detail, filtering-out objects that are not in the focus of the camera (if not already done somewhere ?), from a "high" level for close objects to a "low" level for very far objects, with 1 ou 2 intermediate distance levels. As an example, use the auto-generated 3D wheel model for low levels (decrease its details), and the designer-shipped one for high level (increase its details : more round wheels). => rather rewrite the graphics engine from scratch with some modern engine like OSG, Ogre3D, Irrlicht ... - replay feature - Work in progress by Simon Wood (Mungewell) - ABS, TCL, EPS implemented in simuV4 as optional feature per car type Can be enabled/disabled by driver/robot in the setups. TODO: Enable/Disable while driving as human player Test the parameters used by human drivers (Same fo all cars at the moment) If needed define car type specific parameters. Other: - finish the Mac OS X port (with CMake) : ~95% done. Compiles completely but does not run. Plib is the biggest source of headaches. CMake integration still unfinished in that way. - think about how to integrate Haruna's fictious racing teams backstories in the game (ex: LS1 in 'LS1 team "backstories" (for fun)' devel list post) TODO for 2.1.0 or after (some are current on sdl-port and career branches) -------------------------------------------------------------------------- Cars: - create / setup new LMP1 car set (Andrew) - complete / setup MP1 (RL = F1) car set (including Formula One by Andrew Sumner, F1-torcs by Vincente Marti, and models converted by Xavier from GP4 game) BUT: what about Manfariel's F1 2009 models? - add petrol, bewy and mf1 to SuperCars set, as proposed by Wolf-Dieter BUT: There are still no front-engined cars! => see also discussion on dropping the TRB1 set and reuse its nice models in other existing / future sets. - check in the Pacejka book to see if the way mu is computed from tire load (= tire load sensitivity) is OK (simu V2 / wheel.cpp / SimWheelUpdateForce function) - ALL CARS: create LOD models to reduce graphical stress in big-grid races or on low-spec CPUs (or worse, both :/) - rework the current stock car model to the newer model 'Car of Tomorrow' - Hillclimb car with over 800 bhp? BUT: Is it fun? - increase volume of backfire sound and gear shift sound (OpenAL) - implement low-pass filter (OpenAL extensions) Robots: - setup USR and Simplix robots for reworked 4WD carset. - setup USR and Simplix robots for new LMP1 carset. - setup USR and Simplix robots for new Indy carset. - setup USR and Simplix robots for completed F1 carset. Menus: - Smart 3D view showing the selected car when choosing it Program: - improve command key management in human.cpp (there's 2 arrays indexed by the unicode of the keys (!), whereas we only use no more that 25 different keys ; for the moment, these arrays were limited to 4096 items, but this is probably not sufficient in Japan or China ... => we must find a better indexing of these array, to use the really needed minimum number of key entries in these arrays (may be with some king of indirection ?) - Support for 3rd party robots, cars and track. 3rd party robot builders should be able to use our CMake macro's, so we need to make some changes to these macros and install them in such way that a robot can find it during compilation. - Done: Implemented simple memory leak detection by overriding malloc, calloc, realloc, strdup, free, new, delete ... etc in order to save informations about the caller in the allocated block. To collect infos about the caller the return address is taken from the stack ( __LINE__, __FILE__ ... cannot work without changing all the callers code) (Solved and tested for VC++, outstanding of MinGW/gcc). - introduce human driver assistance features, like Line Assist System (LAS) and Instructor's Braking System (IBS) ; also improve human skill level management in order to prevent rookie players from winning too easily (by limiting car capabilities, and particularly removing the extra-grip and replace it by driving assistance) and to scale driver assistance availability / capabilities ; add also something for preventing you from smashing into the back of the car in front (see Haruna's detailed post on the subject and associated thread http://sourceforge.net/mailarchive/forum.php?thread_name=e17477d90904182050lc339f5cy6b4908ed8dc1723%40mail.gmail.com&forum_name=speed-dreams-devel) - introduce AI vs AI duel tournament mode for casual robot programmers (similar to R-TYPE FINAL's 'VS AI' mode); with varying car types, tracks, and robot competence - Add co-driver/navigator signals and sounds for dirt and certain road tracks to be used in rallying game modes