-
Notifications
You must be signed in to change notification settings - Fork 192
Open
Labels
documentationImprovements or additions to documentationImprovements or additions to documentationenhancementNew feature or requestNew feature or request
Milestone
Description
Because the config files are getting kinda cluttered and stuff
- Should parse over config files with specific comment syntax for option name, description, value (if applicable), etc.
- Config options should be categorized in tabs either by file name or by some section syntax in the config file
- Extended descriptions referenced from the wiki (once applicable)
- Can't use JSON for this since it doesn't support pound defines directly, which can cause issues with IDEs. Exporting json config over the config headers can also cause issues if the user makes edits outside of the tool.
- Config safeguards should be moved elsewhere (probably the parent directory containing config.h).
- Defines that contain values probably should never be commented out (looking at you
PUPPYPRINT_DEBUG) #ifdefs should in general be avoided for the non-safeguard file, especially when checking for defines in other files.config_world.hmight require some special treatment. The assertions that happen in this file should be moved to safeguards.- The check for
ENABLE_VANILLA_LEVEL_SPECIFIC_CHECKSinconfig_camera.his awful and I hate it. Checking against#ifdefs isn't worth implementing for a singular case like this that IMO doesn't need to exist.
Examples:
/** Disable BLJ
* This is a multiline
* description of what it does
*/
// #define DISABLE_BLJ
/** Max Number of Areas {{type: s32}}
* Description
*/
#define AREA_COUNT 8
/** Internal ROM Name {{type: string, length: 20}}
* Description
*/
#define INTERNAL_ROM_NAME "HackerSM64 "
/** Start Level {{type: any}}
* Description
*/
#define START_LEVEL LEVEL_CASTLE_GROUNDS
Metadata
Metadata
Assignees
Labels
documentationImprovements or additions to documentationImprovements or additions to documentationenhancementNew feature or requestNew feature or request
Type
Projects
Status
To do