| 18 |  |  | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 19 |  | static const char* defaultSection = "options"; | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 20 |  |  | 
 
 
 
 
 
 
 
 | 21 | + | static char invalidCurParamaters[1000] = ""; | 
 
 
 
 
 
 
 
 | 22 | + | static char invalidTotalParamaters[3000] = ""; | 
 
 
 
 
 
 
 
 | 23 | + |  | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 24 |  | void DDrConfig_PrintHelp(); | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 25 |  |  | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 26 |  |  | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 27 |  | ConfigSection_t config[] = { | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 28 |  | { "patches", "Patches", { | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 29 |  | { "alttab", | 
 
 
 
 
 
 
 
 
 
 
 | 30 | < | "Allows user to switch applications while in Oni (Alt-Tab) and use Windows key, however it may enable the screensaver as well.", | 
 
 
 
 
 
 
 
 
 | 30 | > | "Allows to Alt-Tab out of Oni and use Windows key. May enable the screensaver as well.", | 
 
 
 
 
 
 
 
 
 
 
 | 31 |  | C_BOOL, | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 32 |  | {.intBoolVal = true}, | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 33 |  | {.intBoolVal = true} }, | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 34 |  | { "argb8888", | 
 
 
 
 
 
 
 
 
 
 
 | 35 | < | "Textures using ARGB8888 can be used.", | 
 
 
 
 
 
 
 
 
 | 35 | > | "Allows using textures with ARGB8888.", | 
 
 
 
 
 
 
 
 
 
 
 | 36 |  | C_BOOL, | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 37 |  | {.intBoolVal = true}, | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 38 |  | {.intBoolVal = true} }, | 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 | 41 |  | C_BOOL, | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 42 |  | {.intBoolVal = true}, | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 43 |  | {.intBoolVal = true} }, | 
 
 
 
 
 
 
 
 
 | 41 | – | { "bsl", | 
 
 
 
 
 
 
 
 
 | 42 | – | "Enables d_regen (unfinished) and prevents fly-in portraits from being stretched when playing in widescreen resolutions.", | 
 
 
 
 
 
 
 
 
 | 43 | – | C_BOOL, | 
 
 
 
 
 
 
 
 
 | 44 | – | {.intBoolVal = true}, | 
 
 
 
 
 
 
 
 
 | 45 | – | {.intBoolVal = true} }, | 
 
 
 
 
 
 
 
 
 | 46 | – | { "cheater", | 
 
 
 
 
 
 
 
 
 | 47 | – | "Adds new cheat codes (see section below).", | 
 
 
 
 
 
 
 
 
 | 48 | – | C_BOOL, | 
 
 
 
 
 
 
 
 
 | 49 | – | {.intBoolVal = true}, | 
 
 
 
 
 
 
 
 
 | 50 | – | {.intBoolVal = true} }, | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 44 |  | { "cheatsenabled", | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 45 |  | "Enables cheats without having to beat the game first.", | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 46 |  | C_BOOL, | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 47 |  | {.intBoolVal = true}, | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 48 |  | {.intBoolVal = true} }, | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 49 |  | { "cheattable", | 
 
 
 
 
 
 
 
 
 
 
 | 50 | < | "Replaces Oni's cheat table with table that includes new cheats (see section below).", | 
 
 
 
 
 
 
 
 
 | 50 | > | "Replaces Oni's cheat table with table that includes new cheats including devmode.", | 
 
 
 
 
 
 
 
 
 
 
 | 51 |  | C_BOOL, | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 52 |  | {.intBoolVal = true}, | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 53 |  | {.intBoolVal = true} }, | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 54 |  | { "chinese", | 
 
 
 
 
 
 
 
 
 
 
 | 55 | < | "Allow for chinese fonts to be shown.", | 
 
 
 
 
 
 
 
 
 | 55 | > | "Allow for chinese fonts to be shown if the required DLL is available.", | 
 
 
 
 
 
 
 
 
 
 
 | 56 |  | C_BOOL, | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 57 |  | {.intBoolVal = true}, | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 58 |  | {.intBoolVal = true} }, | 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 | 66 |  | C_BOOL, | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 67 |  | {.intBoolVal = true}, | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 68 |  | {.intBoolVal = true} }, | 
 
 
 
 
 
 
 
 | 69 | + | { "d_regen", | 
 
 
 
 
 
 
 
 | 70 | + | "Enables script command d_regen (query/set regeneration for any character).", | 
 
 
 
 
 
 
 
 | 71 | + | C_BOOL, | 
 
 
 
 
 
 
 
 | 72 | + | {.intBoolVal = true}, | 
 
 
 
 
 
 
 
 | 73 | + | {.intBoolVal = true} }, | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 74 |  | { "daodandisplayenum", | 
 
 
 
 
 
 
 
 
 
 
 | 75 | < | "Offers more display modes in the Options menu.", | 
 
 
 
 
 
 
 
 
 | 75 | > | "Offers a more accurate list of available display modes in the Options menu.", | 
 
 
 
 
 
 
 
 
 
 
 | 76 |  | C_BOOL, | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 77 |  | {.intBoolVal = true}, | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 78 |  | {.intBoolVal = true} }, | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 79 |  | { "directinput", | 
 
 
 
 
 
 
 
 
 
 
 | 80 | < | "Forces on DirectInput.", | 
 
 
 
 
 
 
 
 
 | 80 | > | "Enforces the usage of DirectInput on every system. Should be off for Linux/Wine.", | 
 
 
 
 
 
 
 
 
 
 
 | 81 |  | C_BOOL, | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 82 |  | {.intBoolVal = true}, | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 83 |  | {.intBoolVal = true} }, | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 84 |  | { "disablecmdline", | 
 
 
 
 
 
 
 
 
 
 
 | 85 | < | "Replaces existing command line parser with Daodan's in order to add new commands. Meant to be used with getcmdline.", | 
 
 
 
 
 
 
 
 
 | 85 | > | "Disables Oni's existing command line parser as Daodan has its own.", | 
 
 
 
 
 
 
 
 
 
 
 | 86 |  | C_BOOL, | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 87 |  | {.intBoolVal = true}, | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 88 |  | {.intBoolVal = true} }, | 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 | 91 |  | C_BOOL, | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 92 |  | {.intBoolVal = true}, | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 93 |  | {.intBoolVal = true} }, | 
 
 
 
 
 
 
 
 
 | 96 | – | { "getcmdline", | 
 
 
 
 
 
 
 
 
 | 97 | – | "Replaces existing command line parser with Daodan's in order to add new commands. Meant to be used with disablecmdline.", | 
 
 
 
 
 
 
 
 
 | 98 | – | C_BOOL, | 
 
 
 
 
 
 
 
 
 | 99 | – | {.intBoolVal = true}, | 
 
 
 
 
 
 
 
 
 | 100 | – | {.intBoolVal = true} }, | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 94 |  | { "hdscreens_lowres", | 
 
 
 
 
 
 
 
 
 
 
 | 95 | < | "Allow HD screens with resolution < 1024*768.", | 
 
 
 
 
 
 
 
 
 | 95 | > | "Allow HD intro/ending screens on game resolutions smaller than 1024x768.", | 
 
 
 
 
 
 
 
 
 
 
 | 96 |  | C_BOOL, | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 97 |  | {.intBoolVal = true}, | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 98 |  | {.intBoolVal = true} }, | 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 | 102 |  | {.intBoolVal = true}, | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 103 |  | {.intBoolVal = true} }, | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 104 |  | { "kickguns", | 
 
 
 
 
 
 
 
 
 
 
 | 105 | < | "Unfinished, do not use.", | 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 | 105 | > | "EXPERIMENTAL! Unfinished, do not use.", | 
 
 
 
 
 | 106 | > | C_BOOL, | 
 
 
 
 
 | 107 | > | {.intBoolVal = false}, | 
 
 
 
 
 | 108 | > | {.intBoolVal = false} }, | 
 
 
 
 
 | 109 | > | { "killvtune", | 
 
 
 
 
 | 110 | > | "Prevent loading of vtuneapi.dll.", | 
 
 
 
 
 
 
 
 
 
 
 | 111 |  | C_BOOL, | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 112 |  | {.intBoolVal = false}, | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 113 |  | {.intBoolVal = false} }, | 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 | 117 |  | {.intBoolVal = true}, | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 118 |  | {.intBoolVal = true} }, | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 119 |  | { "levelplugins", | 
 
 
 
 
 
 
 
 
 
 
 | 120 | < | "Allows level files to be loaded from the GDF which do not end in \"_Final\".", | 
 
 
 
 
 
 
 
 
 | 120 | > | "Allows level files to be loaded which do not end in \"_Final\".", | 
 
 
 
 
 
 
 
 
 
 
 | 121 |  | C_BOOL, | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 122 |  | {.intBoolVal = true}, | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 123 |  | {.intBoolVal = true} }, | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 124 |  | { "newweap", | 
 
 
 
 
 
 
 
 
 
 
 | 125 | < | "Picking up a weapon displays a message containing the weapon name and amount of ammo.", | 
 
 
 
 
 
 
 
 
 | 125 | > | "Standing above a weapon displays a message containing the weapon name and amount of ammo.", | 
 
 
 
 
 
 
 
 
 
 
 | 126 |  | C_BOOL, | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 127 |  | {.intBoolVal = true}, | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 128 |  | {.intBoolVal = true} }, | 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 | 136 |  | C_BOOL, | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 137 |  | {.intBoolVal = true}, | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 138 |  | {.intBoolVal = true} }, | 
 
 
 
 
 
 
 
 
 | 141 | – | { "particledisablebit", | 
 
 
 
 
 
 
 
 
 | 142 | – | "Unlocks particle action disabling/enabling bits for all events so that a particle event can occur multiple times.", | 
 
 
 
 
 
 
 
 
 | 143 | – | C_BOOL, | 
 
 
 
 
 
 
 
 
 | 144 | – | {.intBoolVal = false}, | 
 
 
 
 
 
 
 
 
 | 145 | – | {.intBoolVal = false} }, | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 139 |  | { "pathfinding", | 
 
 
 
 
 
 
 
 
 
 
 | 140 | < | "Multiplies size of pathfinding grid cache by eight in order to prevent crashes in large levels.", | 
 
 
 
 
 
 
 
 
 | 140 | > | "Size of pathfinding grid cache increased by eight times in order to prevent crashes in large levels.", | 
 
 
 
 
 
 
 
 
 
 
 | 141 |  | C_BOOL, | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 142 |  | {.intBoolVal = true}, | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 143 |  | {.intBoolVal = true} }, | 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 | 157 |  | {.intBoolVal = false}, | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 158 |  | {.intBoolVal = false} }, | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 159 |  | { "showtriggervolumes", | 
 
 
 
 
 
 
 
 
 
 
 | 160 | < | "Allows BSL variable \"show_triggervolumes\" to work when set to 1.", | 
 
 
 
 
 
 
 
 
 | 160 | > | "Allows BSL variable \"show_triggervolumes\" and Ctrl+Shift+X (in devmode) to work.", | 
 
 
 
 
 
 
 
 
 
 
 | 161 |  | C_BOOL, | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 162 |  | {.intBoolVal = true}, | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 163 |  | {.intBoolVal = true} }, | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 164 |  | { "throwtest", | 
 
 
 
 
 
 
 
 
 
 
 | 165 | < | "Not recommended for use; experiment with allowing enemies to be thrown over railings.", | 
 
 
 
 
 
 
 
 
 | 165 | > | "EXPERIMENTAL! Experiment with allowing enemies to be thrown over railings.", | 
 
 
 
 
 
 
 
 
 
 
 | 166 |  | C_BOOL, | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 167 |  | {.intBoolVal = false}, | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 168 |  | {.intBoolVal = false} }, | 
 
 
 
 
 
 
 
 | 169 | + | { "usedaodanbsl", | 
 
 
 
 
 
 
 
 | 170 | + | "Adds new BSL commands.", | 
 
 
 
 
 
 
 
 | 171 | + | C_BOOL, | 
 
 
 
 
 
 
 
 | 172 | + | {.intBoolVal = true}, | 
 
 
 
 
 
 
 
 | 173 | + | {.intBoolVal = true} }, | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 174 |  | { "usedaodangl", | 
 
 
 
 
 
 
 
 
 
 
 | 175 | < | "Provides an improved windowed mode (-noswitch); this patch is known to break the hiding of the Windows taskbar in fullscreen mode.", | 
 
 
 
 
 
 
 
 
 | 175 | > | "Provides an improved windowed mode (-noswitch).", | 
 
 
 
 
 
 
 
 
 
 
 | 176 |  | C_BOOL, | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 177 |  | {.intBoolVal = true}, | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 178 |  | {.intBoolVal = true} }, | 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 | 181 |  | C_BOOL, | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 182 |  | {.intBoolVal = true}, | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 183 |  | {.intBoolVal = true} }, | 
 
 
 
 
 
 
 
 | 184 | + | { "widescreenportraits", | 
 
 
 
 
 
 
 
 | 185 | + | "Prevents fly-in portraits from being stretched when playing in widescreen resolutions.", | 
 
 
 
 
 
 
 
 | 186 | + | C_BOOL, | 
 
 
 
 
 
 
 
 | 187 | + | {.intBoolVal = true}, | 
 
 
 
 
 
 
 
 | 188 | + | {.intBoolVal = true} }, | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 189 |  | { "wpfadetime", | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 190 |  | "Adds working function for existing BSL command wp_fadetime, sets fade time to 4800.", | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 191 |  | C_BOOL, | 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 | 195 |  | } }, | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 196 |  | { "options", "Options", { | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 197 |  | { "border", | 
 
 
 
 
 
 
 
 
 
 
 | 198 | < | "If \"windowhack\" patch is active, make sure game window has border in windowed mode.", | 
 
 
 
 
 
 
 
 
 | 198 | > | "Add a border if in windowed mode and \"usedaodangl\" patch is active.", | 
 
 
 
 
 
 
 
 
 
 
 | 199 |  | C_BOOL, | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 200 |  | {.intBoolVal = true}, | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 201 |  | {.intBoolVal = true} }, | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 202 |  | { "debug", | 
 
 
 
 
 
 
 
 
 
 
 | 203 | < | "???", | 
 
 
 
 
 
 
 
 
 | 203 | > | "Not useful, probably does nothing.", | 
 
 
 
 
 
 
 
 
 
 
 | 204 |  | EXT_BOOL, | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 205 |  | {.intBoolVal = false }, | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 206 |  | {.extBoolVal = &AKgDebug_DebugMaps } }, | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 207 |  | { "debugfiles", | 
 
 
 
 
 
 
 
 
 
 
 | 208 | < | "???", | 
 
 
 
 
 
 
 
 
 | 208 | > | "Not useful, probably does nothing.", | 
 
 
 
 
 
 
 
 
 
 
 | 209 |  | EXT_BOOL, | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 210 |  | {.intBoolVal = false }, | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 211 |  | {.extBoolVal = &BFgDebugFileEnable } }, | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 212 |  | { "findsounds", | 
 
 
 
 
 
 
 
 
 
 
 | 213 | < | "???", | 
 
 
 
 
 
 
 
 
 | 213 | > | "Not useful, extends output of sound_list_broken_links.", | 
 
 
 
 
 
 
 
 
 
 
 | 214 |  | EXT_BOOL, | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 215 |  | {.intBoolVal = false }, | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 216 |  | {.extBoolVal = &SSgSearchOnDisk } }, | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 217 |  | { "gamma", | 
 
 
 
 
 
 
 
 
 
 
 | 218 | < | "Enable gamma slider in fullscreen.", | 
 
 
 
 
 
 
 
 
 | 218 | > | "Enable gamma slider in fullscreen, disable in windowed mode.", | 
 
 
 
 
 
 
 
 
 
 
 | 219 |  | C_BOOL, | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 220 |  | {.intBoolVal = true}, | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 221 |  | {.intBoolVal = true} }, | 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 | 225 |  | {.intBoolVal = 0}, | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 226 |  | {.callback = DDrConfig_PrintHelp} }, | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 227 |  | { "ignore_private_data", | 
 
 
 
 
 
 
 
 
 
 
 | 228 | < | "? No effect ?", | 
 
 
 
 
 
 
 
 
 | 228 | > | "Not useful, probably does nothing.", | 
 
 
 
 
 
 
 
 
 
 
 | 229 |  | EXT_BOOL, | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 230 |  | {.intBoolVal = false }, | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 231 |  | {.extBoolVal = &opt_ignore_private_data } }, | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 232 |  | { "sound", | 
 
 
 
 
 
 
 
 
 
 
 | 233 | < | "???", | 
 
 
 
 
 
 
 
 
 | 233 | > | "Enable sound.", | 
 
 
 
 
 
 
 
 
 
 
 | 234 |  | EXT_BOOL, | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 235 |  | {.intBoolVal = true }, | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 236 |  | {.extBoolVal = &opt_sound } }, | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 237 |  | { "switch", | 
 
 
 
 
 
 
 
 
 
 
 | 238 | < | "Always switch screen to resolution on Oni's Options screen, making the game fullscreen; opposite of Oni's built-in argument \"noswitch\".", | 
 
 
 
 
 
 
 
 
 | 238 | > | "Switch to fullscreen instead of staying in a window.", | 
 
 
 
 
 
 
 
 
 
 
 | 239 |  | EXT_BOOL, | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 240 |  | {.intBoolVal = true}, | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 241 |  | {.extBoolVal = &M3gResolutionSwitch} }, | 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 | 244 |  | C_BOOL, | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 245 |  | {.intBoolVal = false}, | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 246 |  | {.intBoolVal = false} }, | 
 
 
 
 
 
 
 
 
 | 244 | – | { "usedaodanbsl", | 
 
 
 
 
 
 
 
 
 | 245 | – | "Adds new BSL commands (see below).", | 
 
 
 
 
 
 
 
 
 | 246 | – | C_BOOL, | 
 
 
 
 
 
 
 
 
 | 247 | – | {.intBoolVal = true}, | 
 
 
 
 
 
 
 
 
 | 248 | – | {.intBoolVal = true} }, | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 247 |  | { "language", | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 248 |  | "Localization for hardcoded strings (e.g. \"Savepoints\").", | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 249 |  | C_STRING, | 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 | 477 |  | default: | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 478 |  | STARTUPMESSAGE("Config value type unknown: %d", co->type); | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 479 |  | } | 
 
 
 
 
 
 
 
 | 480 | + | } else { | 
 
 
 
 
 
 
 
 | 481 | + | char buf[50]; | 
 
 
 
 
 
 
 
 | 482 | + | sprintf_s(buf, sizeof(buf), "  %s.%s\n", section, name); | 
 
 
 
 
 
 
 
 | 483 | + | if (strlen(buf) + strlen(invalidCurParamaters) < sizeof(invalidCurParamaters) - 1) { | 
 
 
 
 
 
 
 
 | 484 | + | strcpy(invalidCurParamaters + strlen(invalidCurParamaters), buf); | 
 
 
 
 
 
 
 
 | 485 | + | } | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 486 |  | } | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 487 |  | } | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 488 |  |  | 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 | 552 |  | STARTUPMESSAGE("Error reading daodan.ini, check your syntax!", 0); | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 553 |  | STARTUPMESSAGE("Finished parsing", 0); | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 554 |  |  | 
 
 
 
 
 
 
 
 
 
 
 | 555 | < |  | 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 | 555 | > | if (strlen(invalidCurParamaters) > 0) | 
 
 
 
 
 | 556 | > | { | 
 
 
 
 
 | 557 | > | sprintf_s(invalidTotalParamaters, sizeof(invalidTotalParamaters), "In %s:\n%s\n", iniName, invalidCurParamaters); | 
 
 
 
 
 | 558 | > | invalidCurParamaters[0] = 0; | 
 
 
 
 
 | 559 | > | } | 
 
 
 
 
 
 
 
 
 
 
 | 560 |  |  | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 561 |  | STARTUPMESSAGE("Parsing command line...", 0); | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 562 |  | DDrConfig_ParseCommandLine(argc, argv); | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 563 |  | STARTUPMESSAGE("Finished parsing", 0); | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 564 |  |  | 
 
 
 
 
 
 
 
 | 565 | + | if (strlen(invalidCurParamaters) > 0) | 
 
 
 
 
 
 
 
 | 566 | + | { | 
 
 
 
 
 
 
 
 | 567 | + | sprintf_s(invalidTotalParamaters, sizeof(invalidTotalParamaters), "%sOn command line:\n%s\n", invalidTotalParamaters, invalidCurParamaters); | 
 
 
 
 
 
 
 
 | 568 | + | } | 
 
 
 
 
 
 
 
 | 569 | + |  | 
 
 
 
 
 
 
 
 | 570 | + | if (strlen(invalidTotalParamaters) > 0) | 
 
 
 
 
 
 
 
 | 571 | + | { | 
 
 
 
 
 
 
 
 | 572 | + | char msg[3200]; | 
 
 
 
 
 
 
 
 | 573 | + | sprintf_s(msg, sizeof(msg), "Invalid parameters given:\n%sContinue launching Oni?", invalidTotalParamaters); | 
 
 
 
 
 
 
 
 | 574 | + | int res = MessageBox(NULL, msg, "Parameters invalid", MB_ICONWARNING | MB_YESNO | MB_DEFBUTTON1); | 
 
 
 
 
 
 
 
 | 575 | + | if (res == IDNO) { | 
 
 
 
 
 
 
 
 | 576 | + | exit(0); | 
 
 
 
 
 
 
 
 | 577 | + | } | 
 
 
 
 
 
 
 
 | 578 | + | } | 
 
 
 
 
 
 
 
 | 579 | + |  | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 580 |  | //      DDrConfig_Print(); | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 581 |  | } | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 582 |  |  |