Menu

PodballTodo

Lars Ruoff

To Do List

A list of things to do.

  • Viewer: Visuals: Make the goal stick out more, add some depth to it.
  • Viewer: Include some sound. An idea is to have a background stadium sound that gets louder when the ball comes near to a goal.
    Sound support should be cross platform. Need to find a suitable library. Check out. SFML, Soloud
  • Add a library for platform independent control plugins (as a replacement for mod_dll).
    Boost.Extension? (not yet submitted to boost)
    Documentation: ​http://boost-extension.redshoelace.com/docs/boost/extension/index.html
  • Add a "keyboard" module that allows humans to play via the keyboard!!! (Needs two different modules for left and right team).
  • Add support for controlling pods over TCP/IP network sockets (mod_network). This includes the definition of an appropriate application layer network protocol.
  • Add support for more scripting languages: Python, Javascript, ...

Done:

  • DONE: Build system: Test/debug a Linux build.
  • DONE: Add Record/replay feature. Needs recording of all pod actions and a replay module in order to inject them back into the game. (See [PodballNotes], section Replays)
  • DONE: Add some pre-existing internal modules for testing purposes: (This could be Lua-scripts!)
  • DONE: Create a sexier intro video on YouTube.
  • DONE:Add possibility to configure modules via a configuration string provided in match settinngs.
  • DONE: Core architecture: Seperate physics from control module calls in engine. Make engine suitable as an independent library that takes only actions and -vectors as inputs. Thus can be used in other implementstions, e.g. for training AIs.
  • DONE: As a prerequisite to having different types of modules, make the module type configurable. Also, make the module configuration parameters dynamic, i.e. dependent on the module type.
  • DONE: Add some more explicit diagnostic output when something goes wrong with importing modules.
  • DONE: Add Lua Support (mod_lua). Make it optional via compile-time flags.
  • DONE: Make support for Win32-DLL module (mod_dll) interface optional via compile-time flags.
  • DONE: Build system: Convert to CMake or equivalent cross-platform build system.
  • DONE: Add a console-only version that plays a match and outputs the final score.
  • DONE: Add a Lua control module reference implementation.
  • DONE: Add single-step button for debugging. Actually this should be 10 engine steps, as control modules are called every 10 steps.
  • DONE: For debugging: Add possibility for control modules to "draw" simple graphical elements on the arena. (vectors, circles)

Related

Wiki: Home
Wiki: PodballNotes

MongoDB Logo MongoDB