The config.json file foe New Super Mario Randomizer Wii (NSMRW) is used to read randomization preference.
It is usually stored in the same folder as the NSMRW Source code.
The seed that will be used or randomization. Same seed will always yield same randomization result.
Parameter: Integer | String The seed to be used. Can be either a String or a 32-bit Integer
Example 1:
"Seed":523814998
Example 2:
"Seed":"NSMRW"
"Reduce Lag" Section
"Reduce Lag": Boolean
Determine if the randomizer should delete sprites to improve performance.
Parameter: Boolean Will the randomizer delete sprites to reduce lag. Value should be True or False
Example 1:
"Reduce Lag":true
Example 2:
"Reduce Lag":false
"Patches" Section (COMING V2.0)
"Patches": Object
Determine if the randomizer should apply some hard-coded fixes to stages
"Entrance Randomisation" Section (Optional) [TO BE DEPRECATED]
"Entrance Randomisation": Boolean
Determine if the randomizer should randomise wrap pipe / door exits and level spawn
NOTE: This feature is in experimental. It may create unbeatable levels or inaccessible areas.NOTE: This feature will not be supported staring from version 2.0, which contains area and zone randomisation
Parameter: Boolean Will the randomiser randomise Entrances. Value should be True or False
Default: False
Example 1:
"Entrance Randomisation":true
Example 2:
"Entrance Randomisation":false
"Skip Level" Section
"Skip": Array
A list of levels that will be skipped during randomization. Can be useful if some levels prevents progress.
Parameter: Array A list of file names of the levels to not be randomized (Skipped) NOTE: "Texture" should ALWAYS be included in the list to avoid errors when using the program (unless the "Texture" folder is not included in the "Stage" folder. In this case, DO NOT include "Texture" in the list.)
Lists of enemies to be randomized.
That is, the enemies in the list will be randomized to another enemy in the same list.
Enemies outside of the list will not be randomized.
The Array is a multi-dimentional array. Enemies can be grouped in an array, therefore forming a randomization group.
Enemies in the same group will only be randomized and changed to another enemy in the same group.
Parameter: [Array] Arrays of array of sprite IDs to be randomized.
Each array will be classified as 1 group, and will randomize only within the group.
Note: Items can be included in multiple groups, and can be repeated within the group. The number of repeats decides the weight of that item in the respective group.
The order of the groups will also affects the randomization effects. If the item is randomized once, it will be randomized with the latter group once more.
Example:
"Enemy Variation": {ID : enemyVariation, ID : enemyVariation, ...}
Lists of sprites / enemy variations to be randomized.
That is, the enemies / sprites in the json list will be randomized to another form in the list.
Enemy / sprite varients outside of the list will not be randomized.
Parameter: ID String sprite IDs to be randomized.
Due to limitations, The field ONLY accepts STRING. enemyVariation Array of String "Raw Data" of the enemy variation in hex(but wrapped by quotation ("")).
The data can be found via the Sprite Properties window in the Reggie! level editor. ("Modify Raw Data" Section)
Wildcards are supported via "x". Value will not be replaced for the position where the wildcard exist. (COMING v2.0)
Note: Items can be repeated within the group. The number of repeats decides the weight of that item in the respective group.
Example:
Determine the probability that the level will have wind (sandstorm)
Parameter: Integer The probability value of the area having wind, out of 100. Value should be between 0 to 100
Example 1:
"Wind Chance":36
Example 2:
"Wind Chance":100
"Power-up Panel Shuffle" Section (COMING V2.0)
"Power-up Panel Shuffle": Boolean
Determine if the randomizer should randomise the panels in the Power-up Panels minigame
Parameter: Boolean Should the randomizer randomise the panels. Value should be True or False
Example 1:
"Power-up Panel Shuffle":true
Example 2:
"Power-up Panel Shuffle":false
"Level Group" Section (Optional)
"Level Group": [Array]
Lists of grouped levels to be randomized.
Like how enemy group works, the levels in the group will be changed to another level in the list.
Levels not included in the groups will be randomized with other ungrouped levels.
To NOT randomize a group of level, use "Skip level".
Parameter: [Array] Arrays of array of file names to be randomized.
Each array will be classified as 1 group, and will randomize only within the group.
Note: Items can be included in multiple groups, but CANNOT be repeated within the group. Attempt to include repeats will results in Error.
The order of the groups will also affects the randomization effects. If the item is randomized once, it will be randomized with the latter group once more.
Example:
Lists of grouped tile object ID to be randomized.
Each array will be classified as 1 group, and will randomize only within the group.
Parameter: [Array] Arrays of array of tile object IDs to be randomized.
Each array will be classified as 1 group, and will randomize only within the group.
Note: Items can be included in multiple groups, and can be repeated within the group. The number of repeats decides the weight of that item in the respective group.
The order of the groups will also affects the randomization effects. If the item is randomized once, it will be randomized with the latter group once more.
Example: