I would imagine that you would need the map data, the code that draws the lines, the code that simulates movement, and the code for collision detection (if there is any).