GSoC topics 2014

(Improving graphics)
(Scripting engine)
Line 29: Line 29:
==Scripting engine==
==Scripting engine==
-
TODO
+
SuperTuxKart race tracks are currently either static, either feature looping animations. The goal of scripting is to expose track object control and manipulation capabilities to a scripting language, so that each track may specify custom interaction. Examples include birds/animals that flee when you drive near, driving over a button opens a gate, cows stop eating grass and look at you as you drive by, play sounds depending on what's happening in the race, and so on and so forth. Furthermore, certain features that are currently hardcoded (help popups when you reach a certain point in the tutorial, offering to start a challenge when driving near a challenge node in the story mode overworld, the gates to the final story mode challenge opening only when you have completed all challenges) could be rewritten with scripting, and thus clean our code of specific hardcoded actions for certain objects.
 +
 
 +
More specifically, this project will involve :
 +
* perform an analysis to determine how/when to trigger scripts, and what set of functions/classes should be offered to the scripting engine to offer interesting abilities while keeping the scope realistic (note that there is no intent to enable the coding of game modes or other complex features from the scripting engine; the goal at this time is only to make the environment react to player interaction).
 +
* once the analysis is done, write the C++ version of the API with the capabilities determined during analysis
 +
* select a lightweight scripting language (ideas: Lua, Squirrel, etc.) and integrate it into SuperTuxKart, mapping it to the C++ side of the scripting API. Implement proper error handling and reporting
 +
* write a few proof of concept scripts to demonstrate implemented capabilities and provide full documentation to help writing further scripts
'''Prerequisites'''
'''Prerequisites'''

Revision as of 22:44, 18 January 2014

Retrieved from "http://supertuxkart.sourceforge.net/GSoC_topics_2014"

User Tools