Newbie Projects

From FreeSpace Wiki
Revision as of 03:54, 2 January 2014 by Echelon9 (talk | contribs)
Jump to: navigation, search

Projects suitable for new developers

This is a collection of small, fairly simple tasks which developers new to Freespace 2 Open can use to get a start with the project.

The lists below are broken down into a logical workflow that will likely match the set of patches that you will produce.

Please create a thread on the HLP forums with your proposed patches attached or link to a Github pull request. The suggested patch series below are designed to encourage the good practice of providing a series of small standalone patches that are capable of easy review.

Inspired by the Freedesktop DRI Newbie Projects.


Improve documentation of -nolightshafts command line option

Freespace 2 Open provides a command line option -nolightshafts to disable lightshafts in game, even if a mission designer enables them in a mission.

This feature was previously called -flightshaftsoff and references remain to the old name within the Freespace 2 Open code base and the Freespace Wiki documentation system.


The patch series to implement this functionality would likely consist of the following patches:

  • Modify the cmdline_parm flightshaftsoff_arg() name in code/cmdline/cmdline.cpp so that it reads cmdline_parm nolightshafts_arg
  • Modify SetCmdlineParams() in code/cmdline/cmdline.cpp so that nolightshafts_arg() is used in the if() test
  • Modify the -flightshaftsoff documentation to refer to -nolightshafts instead
  • Modify the exe_params[] array in code/cmdline/cmdline.cpp to correct the URL location of -nolightshafts Wiki documentation


You will need to register an account on the Freespace Wiki to complete the third step.


Enable the AIM_GET_BEHIND feature

TODO: This would involve implementing the AIM_GET_BEHIND artificial intelligence feature as was originally completed in The Babylon Project source code fork