Randomizer: Difference between revisions

From Heavy Iron Modding
Content added Content deleted
Battlepedia>Igorseabra4
No edit summary
No edit summary
 
(22 intermediate revisions by 5 users not shown)
Line 1: Line 1:
[[File:Industrial Park Randomizer.png|829px|thumb|right|Randomizer tool window]]
This is a guide on using [[Industrial Park (Level Editor)|Industrial Park]]'s '''Randomizer''' function to create a randomized mod for the game.


This is a guide on using [[Industrial Park (Level Editor)|Industrial Park]]'s '''Randomizer''' tool to create a randomized mod for the game.
The randomizer works on all versions (GameCube, Xbox, PS2) of Battle for Bikini Bottom and Scooby-Doo: Night of 100 Frights as long as you can obtain the game's extracted files from a disc image (and then repack them back into an image after applying the mod, if necessary). The randomizer works, but has not been optimzed/prepared for Movie Game and The Incredibles games (you'll likely get lots of crashes and softlocks).


The randomizer works on all versions (GameCube, Xbox, PS2) of Battle for Bikini Bottom, Scooby-Doo: Night of 100 Frights and Movie Game as long as you can obtain the game's extracted files from a disc image (and then repack them back into an image after applying the mod, if necessary).
[[File:Industrial Park Randomizer.png|829px|thumb|right|Randomizer tool window]]

Notes: The randomizer works best on the GameCube version of the games; some functions appear not to work on the other platforms. The tool has not been optimized/prepared for The Incredibles games (you can try it in them using the Movie setting but you'll likely get lots of crashes and softlocks).


==Steps==
==Steps==
# Have your game's extracted files in a folder (you can see [[Setting up Dolphin for modding|this page]] or [https://www.youtube.com/watch?v=GthegXui6eg&list=PLuDjCkCsPEiPtXh4a57HXBZVErwd916SY this video] for a guide on doing this with Dolphin and a GameCube ISO).
# Have your game's extracted files in a folder (you can see [[Setting up Dolphin for modding|this page]] or [https://www.youtube.com/watch?v=GthegXui6eg&list=PLuDjCkCsPEiPtXh4a57HXBZVErwd916SY this video] for a guide on doing this with Dolphin and a GameCube ISO).
# Launch [[Industrial Park]] and open Research/Advanced -> Randomizer. Make sure you don't have any Archive Editor windows open before doing this.
# Launch the Randomizer tool (you'll see it in the Industrial Park download).
# Click on ''Choose Root Directory'' and choose your game's root (the files folder), or ''Choose Single File'' if you only want to apply the randomizer to a single [[HIP|HIP/HOP file]].
# Click on ''Choose Game Directory'' button under the ''Game Directory'' menu and select your game's root (the files folder), or ''Choose Single File'' if you only want to apply the randomizer to a single [[HIP|HIP/HOP file]].
# A default set of randomizer functions and settings is already preset. You can click ''Perform'' to start the randomizer. Applying the mod can take a few seconds and the tool might hang for a bit. If you're doing this on Scooby, a dialog will ask you which platform you're editing (GameCube, PS2, Xbox) since the tool can't guess for that game.
# You can also click on ''Choose Backup Directory'' to choose a folder with a copy of the game's files to use as backup. If you do this, the randomizer will load the files from the backup, but still save them over the files you chose on the previous set.
# Choose the game you are applying the randomizer for from the box.
# You can edit a few of the settings to customize your randomized mod (if you know what you're doing); more details below.
# A default set of randomizer functions and settings is already preset. You can click ''Perform'' to start the randomizer. Applying the mod can take a few seconds and the tool might hang for a bit. If you're doing this on Scooby, a dialog will ask you which platform you're editing (GameCube, PS2 or Xbox) since the tool can't guess for that game.
# You can edit a few of the settings to customize your randomized mod. You can see the description for each method in the box at the bottom.

Alternatively, you can use either [https://youtu.be/g1jqd3BqrRg this tutorial] or [https://youtu.be/U-KJl7_eSVk this slightly older one] to follow through all the steps.


If you need to rebuild the image afterwards, you can follow [https://www.youtube.com/watch?v=AyldF6AneZk&list=PLuDjCkCsPEiPtXh4a57HXBZVErwd916SY this tutorial] for GameCube. There are methods of rebuilding the image for Xbox and PS2 as well.
If you need to rebuild the image afterwards, you can follow [https://www.youtube.com/watch?v=AyldF6AneZk&list=PLuDjCkCsPEiPtXh4a57HXBZVErwd916SY this tutorial] for GameCube. There are methods of rebuilding the image for Xbox and PS2 as well.


Note that running the randomizer more than once on the same files will cause the modifications to stack on top of each other. If you've set platform speeds to increase, for example, they will become even faster.
Note that running the randomizer more than once on the same files will cause the modifications to stack on top of each other. You should always start from clean files when running it; the randomizer allows you to choose a backup folder to automatically get files from when randomizing.


If you need any help or have questions about the Randomizer, feel free to join the Modding Discord server from the link on the sidebar External Links area.
==Settings==
The ''Load Settings'' and ''Save Settings'' buttons allow you to load and save, respectively, a JSON file containing all of the randomizer's settings. The same settings file, applied to the same set of original game files, will result in the same randomized game, so you can share a settings file with others instead of needing to share the entire game. The following is saved to the settings file:
* Seed
* Checked functions (all 3 boxes)
* Patterns and files to skip (both boxes)
* Additional (other) settings


==Seed==
===AR Codes===
Here are some useful [[AR Codes]] to help reduce softlocks:
You can type a number in the seed box to use as a seed or generate one from anything you type. Note that using the same seed won't result in the exact same randomized game; some things might be similar, but every single setting (checked boxes, files to skip and additional settings) must be the same for that to happen (this is why sharing the settings files is preferable over sharing just seeds if you're going to play the same game with someone else).


{| class="wikitable sortable"
==Patterns and files to skip==
|+
There are two boxes for you to type filters of files to be left out of the randomizer. The left box contains patterns to be skipped entirely (default are files for menus, characters and unused levels, which can't be randomized). The right box contains patterns to be skipped for the ''Warps'' and ''Level Files'' randomizer options, but not the others (these levels will be randomized but their warps and files will not be mixed with the rest of the game). It's recommended to just leave these with the defaults.
! Effect
! Code
|-
| Skip Spatula Animations
|| <pre>040634F8 60000000
0406363C 60000000
04076A38 60000000
04076A4C 60000000
040640A0 60000000</pre>
|-
| L+R+Z to reload area
|| <pre>4A292620 00000070
023C1C0B 00000000</pre>
|}


==Settings File==
If you have "hb01" on the filter, for example, the hb01 level will be filtered but hb02 won't. If you have "hb", all "hbXX" files will be filtered. Check [[Filesystem]] (for BFBB) or [[Filesystem (Scooby-Doo: Night Of 100 Frights)]] for a complete list of levels.
In the ''Settings File'' menu, you can load and save a JSON file containing all of the randomizer's settings. The same settings file, applied to the same set of original game files, will result in the same randomized game, so you can share a settings file with others instead of needing to share the entire game. The following is saved to the settings file:
* Seed
* Checked methods
* All additional settings


==Randomizer functions==
==Game Directory==
* ''Choose Backup Directory'': allows you to choose a backup files directory.
Some of the functions only take effect if another one is also active.
* ''Use Backup Directory'': if this is checked, when applying the randomizer, all files will be loaded from the backup but will overwrite in your selected game directory. The backup files will be left untouched If this is unchecked, the randomizer will be applied directly to the game files you choose.
* ''Choose Game Directory'': chooses the directory with the files that will be randomized. The randomizer will be applied directly to these files if ''Use Backup Directory'' is unchecked.
* ''Choose Single File'': chooses one single file to apply the randomizer to.


===Warps===
==Seed==
You can type a number in the seed box to use as a seed or generate one from anything you type. Note that using the same seed won't result in the exact same randomized game; some things might be similar, but all settings which are checked or not, plus the additional settings on the box to the right, will have an influence on the result (sharing the settings files is preferable over sharing just seeds if you're going to play the same game with someone else).
Randomizes level warps. For example, the Hub has a warp to Jellyfish Fields. That warp might take you to Flounder Hill instead, and each of the two warps from Flounder Hill back to Ski Lodge (bottom and top of the mountain) might take you to different levels.

'''Reduce Warps to HB01''': In the original game, there are about 20 warps to the hub world! (almost every level has one). This setting makes the hub have less warps leading to it and other levels have more instead (the total amount, which defaults to one, can be set in the ''Other Settings'' dialog). This method has no effect on Scooby.

If you choose a single file instead of a directory, this has no effect.

===Pickup Positions===
Randomizes the positions of all [[PKUP]] assets with each other. Shiny objects, spatulas etc will be in random places.

'''Warning:''' Collecting a golden spatula in certain places (such as above a springboard or when swinging from a hitch) will softlock the game.

===Tiki Types===
Randomizes the types of all tikis with each other. For example, if your level had 3 wooden tikis and 1 thunder tiki before the randomization, it will still do after but their places will be switched.

'''Tiki Models''': you will get wooden tikis which behave like thunder tikis, for example.

'''Tiki Allow Any Type''': tikis can have any type, even if not originally present in the level (such as Stone Tikis in Jellyfish Fields 1).

This method has no effect on Scooby since that game has no tikis. The frequency that each tiki type might appear can be chosen in the ''Other Settings'' dialog (you can also set a type to be ignored (-1) or not appear at all (0)).

===Enemy Types===
This works similarly to tiki types. All enemies in the level will be interchanged with each other.

'''Enemy Allow Any Type''': allows enemies to have any type, even if not originally present in the level. This requires IndustrialPark-EditorFiles to be dowloaded to work (the program will download it for you if needed).

This method has no effect on Scooby. The frequency that each enemy type might appear can be chosen in the ''Other Settings'' dialog (you can also set a type to be ignored (-1) or not appear at all (0)).

===MovePoint Radius===
Randomizes the radii (radiuses) of [[MVPT]] assets. Enemies will likely be able to move more and see you from further away. Minimum and maximum multipliers can be chosen in the ''Other Settings'' dialog.

===Platform Speeds===
This will multiply all PLAT speed values by a random factor. Minimum and maximum multipliers can be chosen in the ''Other Settings'' dialog.

===Boulder Settings===
Randomizes the floating point values in [[BOUL]] assets. Boulders (such as cannonballs) can end up more or less bouncy, heavier, lighter, faster, slower etc. Minimum and maximum multipliers can be chosen in the ''Other Settings'' dialog.

===Marker Positions===
Randomizes the positions of some [[MRKR]] assets, mostly the ones used for warping and checkpoints. A few of them are not included to avoid softlocks.

'''Pointer Positions''': also randomizes Pointers (which are basically the same as markers).

'''Player Start''': also randomizes the player start position.

'''Teleport Box Positions''' (under ''Not recommended''): also randomizes teleport box positions.

'''Taxi Positions''' (under ''Not recommended''): also randomizes teleport box positions. The taxi stands won't be moved to the taxi trigger will be invisible.

'''Bus Stop Positions''' (under ''Not recommended''): also randomizes bus stop positions. The bus stop itself won't be moved to the trigger will be invisible.

===Timers===
Randomizes the time of all [[TIMR]] assets. This can make timed challenges much more (or much less) challenging. Minimum and maximum multipliers can be chosen in the ''Other Settings'' dialog.

===Music===
''BFBB'': creates a setup which plays a random song every time you warp or respawn and sometimes randomly mid-game.

''Scooby'': each stage will have a different song.

===Disco Floors===
Randomizes the pattern of Mermalair disco floors. This method has no effect on Scooby.

===Textures===
Randomizes the contents of all [[RWTX]] assets.

===Sounds===
Randomizes the contents of all [[Sound Format|sound]] assets. Everything will play a different sound than it originally did.

'''Mix SND SNDS''' (under ''Not recommended''): all types of sounds will be mixed and the robots will start speaking the character's lines (it's funny at first but becomes annoying quickly).

===Cameras===
Randomizes the positions of all [[CAM]] assets with each other. Bus Stop and Taxi cameras are not randomized to avoid softlocks.

===Multiply boot.hip LODT===
Not a randomizer function (output is always the same). This will multiply the LOD distance (maximum render distance) of the game's pickups (spatulas, shiny objects, scooby snacks etc) by a factor which can be chosen in the ''Other Settings'' dialog (defaults to 2) so you can see them from further away.

===Level Files===
''Not recommended''

Randomizes level files with each other. For example: the GL02 file might be saved over SM01. All warps to SM01 will now lead to GL02.

This setting:
* doesn't change the music. So GL02 will have SM01 music playing.
* makes you unable to complete the antidote, wheels, artwork, buttons and campers tasks as those are tied to level names. Kids, crystals and cannons are still possible because all of the collectables are in the same area of the level.
* causes random warps to happen in a few spots of the game (meeting Patrick in JF02, King Jellyfish fight, Chuck intro cutscene, Prawn fight, Dutchman fight and maybe others), making certain other tasks impossible to complete.
* causes a softlock in the rare case a level replaces one with a warp to itself. For example: JF01 has a warp to JF02. If JF01 replaces JF02, the game will softlock when trying to take the warp to JF02 since you are already in JF02.

If you choose a single file instead of a directory, this has no effect.

===SIMP Positions===
''Not recommended''

Randomizes the positions of all [[SIMP]] assets with each other. This might make the game crash or simply make levels unbeatable.

===Models===
''Not recommended''

Randomizes the contents of all [[MODL]] assets. Very high change of crashing the game.

===Boot To Set Level===
''Under INI mods''

Not a randomizer function (output is always the same). This sets the boot level to a level which can be set in the ''Other Settings'' dialog (default is HB01, which is the hub). This works on both BFBB and Scooby; if you're setting this on Scooby, be sure to set a different boot level (H001 is the hub).

===Random Boot Level===
''Under INI mods''

The only actual randomizer function for the INI mod. This sets the boot level to a random level (overrides the setting above). This works on both BFBB and Scooby.

===Don't Show Menu On Boot===
''Under INI mods''

Not a randomizer function (output is always the same). This will skip the main menu and start the game directly.

===All Menu Warps HB01===
''Under INI mods''

Not a randomizer function (output is always the same). This will make you unable to warp anywhere else but the hub using the pause menu. If you set both this and ''Random Boot Level'' (and also randomize warps or level files), you might lock yourself out of the hub! This has no effect on Scooby.

===Cheat Invincible===
''Under INI mods''

Not a randomizer function (output is always the same). You will never lose underwear or Scooby medals.

===BobCheat BubbleBowl===
''Under INI mods''

Not a randomizer function (output is always the same). You will start the game with the bubble bowl. This has no effect on Scooby.

===BobCheat CruiseBubble===
''Under INI mods''

Not a randomizer function (output is always the same). You will start the game with the cruise bubble. This has no effect on Scooby.

===ScoobyCheat Spring===
''Under INI mods''

Not a randomizer function (output is always the same). You will start the game with the spring power up. This has no effect on BFBB.

===ScoobyCheat Helmet===
''Under INI mods''

Not a randomizer function (output is always the same). You will start the game with the helmet power up. This has no effect on BFBB.

===ScoobyCheat Smash===
''Under INI mods''

Not a randomizer function (output is always the same). You will start the game with the super smash power up. This has no effect on BFBB.

===ScoobyCheat Umbrella===
''Under INI mods''

Not a randomizer function (output is always the same). You will start the game with the umbrella power up. This has no effect on BFBB.


[[Category:Modding]] [[Category:Tools]] [[Category:Tutorials]]
[[Category:Tools]] [[Category:Tutorials]]

Latest revision as of 17:55, 29 April 2021

Randomizer tool window

This is a guide on using Industrial Park's Randomizer tool to create a randomized mod for the game.

The randomizer works on all versions (GameCube, Xbox, PS2) of Battle for Bikini Bottom, Scooby-Doo: Night of 100 Frights and Movie Game as long as you can obtain the game's extracted files from a disc image (and then repack them back into an image after applying the mod, if necessary).

Notes: The randomizer works best on the GameCube version of the games; some functions appear not to work on the other platforms. The tool has not been optimized/prepared for The Incredibles games (you can try it in them using the Movie setting but you'll likely get lots of crashes and softlocks).

Steps

  1. Have your game's extracted files in a folder (you can see this page or this video for a guide on doing this with Dolphin and a GameCube ISO).
  2. Launch the Randomizer tool (you'll see it in the Industrial Park download).
  3. Click on Choose Game Directory button under the Game Directory menu and select your game's root (the files folder), or Choose Single File if you only want to apply the randomizer to a single HIP/HOP file.
  4. You can also click on Choose Backup Directory to choose a folder with a copy of the game's files to use as backup. If you do this, the randomizer will load the files from the backup, but still save them over the files you chose on the previous set.
  5. Choose the game you are applying the randomizer for from the box.
  6. A default set of randomizer functions and settings is already preset. You can click Perform to start the randomizer. Applying the mod can take a few seconds and the tool might hang for a bit. If you're doing this on Scooby, a dialog will ask you which platform you're editing (GameCube, PS2 or Xbox) since the tool can't guess for that game.
  7. You can edit a few of the settings to customize your randomized mod. You can see the description for each method in the box at the bottom.

Alternatively, you can use either this tutorial or this slightly older one to follow through all the steps.

If you need to rebuild the image afterwards, you can follow this tutorial for GameCube. There are methods of rebuilding the image for Xbox and PS2 as well.

Note that running the randomizer more than once on the same files will cause the modifications to stack on top of each other. You should always start from clean files when running it; the randomizer allows you to choose a backup folder to automatically get files from when randomizing.

If you need any help or have questions about the Randomizer, feel free to join the Modding Discord server from the link on the sidebar External Links area.

AR Codes

Here are some useful AR Codes to help reduce softlocks:

Effect Code
Skip Spatula Animations
040634F8 60000000
0406363C 60000000
04076A38 60000000
04076A4C 60000000
040640A0 60000000
L+R+Z to reload area
4A292620 00000070
023C1C0B 00000000

Settings File

In the Settings File menu, you can load and save a JSON file containing all of the randomizer's settings. The same settings file, applied to the same set of original game files, will result in the same randomized game, so you can share a settings file with others instead of needing to share the entire game. The following is saved to the settings file:

  • Seed
  • Checked methods
  • All additional settings

Game Directory

  • Choose Backup Directory: allows you to choose a backup files directory.
  • Use Backup Directory: if this is checked, when applying the randomizer, all files will be loaded from the backup but will overwrite in your selected game directory. The backup files will be left untouched If this is unchecked, the randomizer will be applied directly to the game files you choose.
  • Choose Game Directory: chooses the directory with the files that will be randomized. The randomizer will be applied directly to these files if Use Backup Directory is unchecked.
  • Choose Single File: chooses one single file to apply the randomizer to.

Seed

You can type a number in the seed box to use as a seed or generate one from anything you type. Note that using the same seed won't result in the exact same randomized game; some things might be similar, but all settings which are checked or not, plus the additional settings on the box to the right, will have an influence on the result (sharing the settings files is preferable over sharing just seeds if you're going to play the same game with someone else).