Difference between revisions of "Newbie Projects"

From FreeSpace Wiki
Jump to: navigation, search
(Develop the first Newbie Project idea)
 
m (category + formatting + being able to spell the game's name never hurts...)
 
(One intermediate revision by one other user not shown)
Line 1: Line 1:
== 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.
 
 
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.
 
The lists below are broken down into a logical workflow that will likely match the set of patches that you will produce.
Line 12: Line 10:
 
== Improve documentation of [https://github.com/scp-fs2open/fs2open.github.com/blob/master/code/cmdline/cmdline.cpp#L127 -nolightshafts] command line option ==
 
== Improve documentation of [https://github.com/scp-fs2open/fs2open.github.com/blob/master/code/cmdline/cmdline.cpp#L127 -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.
+
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.
 
  
 +
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:
 
The patch series to implement this functionality would likely consist of the following patches:
Line 25: Line 22:
  
  
You will need to register an account on the Freespace Wiki to complete the third step.
+
You will need to register an account on the FreeSpace Wiki to complete the third step.
 +
 
 +
 
 +
== Enable the <code>AIM_GET_BEHIND</code> feature ==
 +
TODO: This would involve implementing the AIM_GET_BEHIND artificial intelligence feature as was originally completed in The Babylon Project source code fork
 +
 
 +
[[Category:Modding]]

Latest revision as of 16:14, 22 October 2022

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