Established Team Seeking New Members and Contributors

SuperTuxKart (STK)

The SuperTuxKart Team is recruiting for contributors and team members in all areas of game development. If you want to work on a fun game that is appropriate for anyone age 5+, then make it STK. Or if you just need a small respite from your current project you can make a one time contribution and we’ll add you to the game credits.

STK has been in active development for seven years and it is one of the most popular open source games, with over 2.5 million downloads. It’s available for anyone for free on Linux, Windows, Mac OS X, FreeBSD and Solaris. STK is also translated into many languages. The game is fully playable and the game mechanics are reaching a mature state. However, the game needs some juice to make it feel alive and more interesting. That’s why we want your help, to make SuperTuxKart a truly great game.

Specific development areas

Table of Contents

(The programming section is listed at the end as it’s much longer than the rest.)
Modeling and Animation
Level Design
Sound Design

This section deals mostly with images, so no 3D modelling (blender) experience is necessary, unless specifically stated. It is generally easy to replace any texture with an improved one and immediately see the effect in game.

  • Replace low quality textures

  • New skyboxes that are more appropriate for specific levels

  • New particle effects for things like crashing into another karts or objects, (or player) head on collisions and landing from a high jump.

  • New skins for weapons and characters

  • Working with level designers to get colors and themes consistent or interesting

  • Fan art

  • for the website or possibly during loading windows

  • Add new objects like trees, bushes, architecture, wildlife, scenery. (requires knowledge of Blender)

  • Replace models that do not fit the game’s cartoony feel. (requires knowledge of Blender)

    Blender 3d is used for modeling karts. Read our kart modeling tutorial to learn how!

  • Add more karts and/or improve existing ones

  • Depending on performance impact: we might add a ‘low quality’ option in the menu, so that people with a lower end computer can use the lower quality karts.

  • Improve existing characters and animations

  • More animations (e.g. waving, fist shaking) to replace the current over-the-top ones (like being sucked up or erased)

Level Design

The same applies as above. Here is our tutorial for using Blender 3d for track design:

  • Add new tracks

  • Add new objects such as trees, bushes, architecture, wildlife, scenery.

  • Incorporate new features into new and existing levels such as:

  • More animations in scenery (waterfalls, objects rolling around, trains going on a track, non opponent cars driving on the track, animals walking around, (or other moving obstacles and environmental hazards)

  • Using the cannon which shoots the player across the track

  • (The cannon is specifically used to avoid otherwise slow and boring uphill sections).

  • The cannon can be used sparingly, but we’d like several tracks to incorporate it.

  • Ramps/jumps, trampolines

  • Moving terrain, e.g. conveyor belt, or a shallow stream

  • Higher resolution textures

  • Where necessary – of course generally keep the resolution as low as possible


  • Make a series tutorials (video or online) on level designing for STK

  • Per-kart sounds

  • Already coded, but disabled due to the karts lacking individual sounds. It is rather difficult to get different sounds for all drivers, without them getting repetitive. This also requires coding better algorithms that will play sounds only when they are relevant.

  • Character Voices for the following

  • using an attack powerup, using nitro, being hit by a weapon or obstacle, falling from large heights, winning/loosing a race, being chosen in character select screen

  • probably a very fun task with someone with a sound proof room.


  • New sounds for head on collisions and landing from jumps

  • New song for completing a challenge and a sound effect for the treasure chest opening

  • Improving or replacing existing sounds
    Quality Assurance

  • Bug testing and reporting

  • Diligent bug testing is very valuable. You also need to be able to run STK in a debugger (for which we can provide instructions), and even better is if you are able to compile STK yourself (in order to test any new bug fixes).

  • Updating and organizing the wiki

  • Volunteering on the forums to answer questions and welcoming new fans and contributors

  • Updating websites that feature an article about STK or allow you to download it

  • Translating to another language and updating translations when new versions come out

  • Give the karts have different characteristics. This does not involve any programming, the physical data of each kart can be modified in a simple text file. Suggestions for this are already in (in an older forum thread), but a lot of playtesting is needed.


STK is written in C++ using Irrlicht 3d, Bullet Physics, and other, less frequently used/modified libraries (curl, openal, ogg, vorbis, pthreads). We rarely use any of the more complicated C++ features, so the code should be reasonably understandable for C programmers as well. The code base is relatively large, so some experience is necessary to find your way around it. However, STK has reasonably good documentation through doxygen. Please read our coding standards.

I. More graphical options for tracks

  • Special effects (particles)
  • Code generating shaders
  • Generated dynamically at runtime. We currently code all possible combinations of shaders (lambert, splatting + lambert, splatting +lightmap, normal map, splatting + normal map, normal map + lightmap, etc, etc). Professional games solve this issue by generating shaders at runtime. This needs serious thought and planning if it is chosen.

II. Improve Kart GUI to show different kart characteristics

III. New addons GUI

  • It would have the ability to filter/search, display app-store-like grids of screenshots. Managing lots of addons is already becoming difficult with the current GUI. Our GUI toolkit may not currently be able to handle that, so extensions to the GUI toolkit may be necessary.

IV. Have AI take different kart characteristics into account.

  • Implemented after individualized kart physics.

V. Add more game modes:

  • PacMode: The player tries to collect as many goodies while being chased by enemies.

  • Capture the flag: Two teams race to capture each others flags and make it back to their base while protecting their own flags.

  • Hat of POWER: Players fight to be the wearer of the “Hat of Power” for as long as possible. Other racers can use special powerups attacks, or they can hit the hat wearer at a higher enough speed to make the hat fall off, which they then pick up. Each time the flag transfers the timer resets, but the timer decrements as well. Maybe three minutes on the clock, then 2:45 then 2:30, etc.

  • It could be passed on by just bumping into the other kart, like the currently implemented bomb. But then how to avoid ping-pongs between the two karts?

  • Cupcake Chaos: This is an alternative mode of the current 3-strike battle. The power ups are only boosters, cupcakes, and bubble gums. When player A successfully blows someone up, if player A did not have full health, one point of Player B’s health transfers to Player A. If Player A does have full health, then the point disappears.
    VI. Add AI for game modes

  • esp. battle mode, but others as well

VII. Allow automatic updating of STK

VIII. Ghost Races and replay races

  • Race against a pre-recorded race, or replay a race (e.g. for verification of highscores).

IX. Voting for addons

  • This involves creating and managing online IDs, allowing people to log in to the server, and improvements to the GUI to allow for voting. Note that the server side is mostly done, i.e. the server already allows people to log in and logged in people to vote.

X. Online highscore lists

  • This requires most parts of ‘Voting for addons’ to be implemented (login).
    Error handling must be good. We also have to make sure that people don’t cheat by running a customized version of STK. Most likely, we would use the replay feature: a highscore would be submitted with a compressed replay file so people can review the race. People could download a highscore run and race against the ghost.

XI. Add more powerups (and improve existing ones)

XII. Save a Grand Prix Tournament

  • Some GPs can be quite long, so players might want to save and continue it the next day.

XIII. Track Editor

  • Currently, Blender is used for track creation with the help of several python plugins written by our devs. It would be nice to have at least a simple 2d interface which would allow people to design the track, perhaps supply a height map or so. While we currently have no plans of writing a track editor (since we barely have enough time for STK), we would welcome anybody starting to work on this! If you are interested, please contact us, so that we can discuss the design.
  • There is a separate track editor package on This attempt at an editor was never released and the original developers are not around anymore, and we don’t have the people power to support it. If someone wanted to make start with a editor, we’d suggest using Qt.

XIV. Scripting

  • Note that this has to wait until at least the TrackObject is refactored.
  • At some point it would be nice to support a scripting language like lua, angelscript, or python.

XV. Nice ‘end of race’ and/or ‘end of grand prix’ animations

  • The camera might show what the other karts are doing or highlights of the race might be replayed (nice challenge: how to identify exciting bits of a race).

XVI. Add network multiplayer.

  • Implementing this is not trivial and needs an experienced programmer!

    Thanks for you time.
    -STK Team

you know, maybe I should give a link to the site :stuck_out_tongue:

SuperTuxKart is up for Sourceforge’s project of the month. We appreciate your votes.

We are also working on our next version which will add support for wiimotes.