This release improves on the custom trainer name functionality and fixes the major bug with "Reorder Damaging Moves". You should read the following before using it: * The included readme file * http://pokehacks.dabomstew.com/randomizer/acks.php - the Acknowledgements page Full Changelog -------------- v1.7.2 - Released 23-07-2016 - Changed how the randomizer handles custom names for trainers, their classes and traded pokemon nicknames. * There is now a GUI available inside the randomizer where you can enter in your own custom names easily. * To access this, click the Settings button and then choose "Custom Names Editor". * The file format used to store the custom names has changed. You will be prompted to import your old custom names when you open the randomizer if you had any. * To share your custom names with other people, share the file called "customnames.rncn", which should be placed in the same directory as the randomizer EXE/JAR. - Added a function to increase/decrease trainer Pokemon levels by a selectable percentage amount. * Credit goes to sickoe on GitHub for programming this and submitting it as a pull request. - Fixed the major bug where "Reorder Damaging Moves" only worked on Java 8, while the rest of the program functions fine on Java 6 or higher. * Credit goes to toddblove on GitHub for finding the root cause of this problem and fixing it in a pull request. - Fixed the method used by the randomizer to find "doubles" trainer classes to be more international friendly. * This means that you can now use custom trainer class names ending in "s" for single trainer battles, among other examples. - Fixed a bug where the text shown when you selected a randomized starter in Gen 2 would be wrong if one of the selected starters was Chikorita, Cyndaquil or Totodile. - Fixed a bug where settings files inverted the value of the "Block Wild Legendaries" checkbox. - Fixed Metronome Only Mode to work with the new trainer moveset code properly. * Trainers with custom moves/items will now be forced into Metronome Only when the option is selected like everyone else. v1.7.1 - Released 23-04-2016 - Allow carrying *shuffled* base stats up evolutions as well as randomized ones. * Carrying shuffled stats up evolutions just means that the same reordering will be used for each Pokemon in the evolutionary tree. * As usual, these will not be carried up split evolutions. - Allow carrying randomized abilities up evolutions as well. * The randomized abilities will be 100% identical for each Pokemon in a given evolutionary tree, except split evolutions. - Added two new options that remove certain undesirable groups of abilities from the list that randomized abilities are picked from. * You can choose to ban 100% negative abilities (Slow Start, Defeatist, Truant) and trapping abilities (Arena Trap, Magnet Pull, Shadow Tag). - Added an option to modify randomized movesets so damaging moves are acquired in order of their power, from weakest to strongest. * The positions of non-damaging moves in a Pokemon's moveset are unaffected by this option. - You can now choose to force a certain proportion of levelup, TM and HM moves to be "good damaging moves". * Good damaging moves are classified as moves with 50+ power and 90%+ accuracy, or 100+ power with any accuracy. * Each proportion can be set separately, and if the option is disabled entirely then move choice will be the same as previous versions. * Note that the proportion you set is an added chance and not a guarantee. A Pokemon can still get lucky and get a higher proportion even without using the option, such is the nature of randomization. - Added an option to update Pokemon base stats, which applies the changes made in Gen 6 to Gen 1-5 Pokemon stats (at least the ones available in the game you are playing) * If you use this option for a Gen 1 game, then changes to Attack, Defense and Speed will be applied as normal but changes to Special Attack/Defense will depend on which stat the Special turned into in Gen 2. - Trainer Pokemon can now be forced to be fully evolved above a certain level, which you decide. * With this option off, Trainer Pokemon randomization will act as usual. But if it is on, it takes precedence other all other modifiers applied. - Allow using "Rival Carries Starter" option even if trainers aren't randomized. * You must still at least change one of the starters or the trainers, otherwise using this option would be completely pointless. - To improve trainers in randomized games in general, their held items are no longer removed and their moves are only reset if the Pokemon is actually randomized. * So you can rest easy knowing that the game won't suddenly become a cakewalk just because you wanted the rival to use a different starter. - Added a slider to the "Minimum Catch Rate" option so you can choose just how easy Pokemon will be to catch. * Level 1 is the same as the old option. Levels 2 and 3 make catches progressively easier, while Level 4 gives everything the same catch rate as Pidgey/Rattata. - The tweak that allows out-of-KantoDex Pokemon to be evolved in FireRed/LeafGreen will now be applied when you remove impossible evolutions. * This means you can choose to only remove trade evolutions and play an otherwise unrandomized game but still evolve the likes of Onix before receiving the National Dex. - Balancing for the "Randomize Move Powers" option has been updated to take the average hit count of the move being randomized into account. * In practice, this means that 2+ hit moves will no longer be ridiculously OP on average when randomized. They should be roughly equal to everything else now. * Scaling is done based on the average hit count rather than the maximum hit count, so 2-5 hit moves can still be quite powerful if they hit 5 times. - Reduced the average accuracy of OHKO moves when "Randomize Move Accuracies" is used even further. * These moves will no longer ever have 100% accuracy, and they will only break 50% very rarely. - Added an option to ban Lucky Egg from randomized item lists, due to how badly it breaks game balance. * If the game gives you a Lucky Egg from an NPC/as part of the plot, that will still remain the case if you use this option. - Improved Gen 2 static Pokemon randomization slightly. * If a static Pokemon plays its cry before battling you, that cry will now be updated to match the randomized replacement Pokemon. - Fixed the bug where the selection of "Full HM Compatibility" was not being loaded from settings files. * This setting still worked in 1.7.0x, but if you loaded a Quick Settings file it would be set off by default. Now it will be loaded correctly. - Fixed a bug that made the combination of "Area 1-to-1 Encounters" and the "Type Themed" modifier always fail to randomize. - Fix handling of Japanese Gen 1/2 games to not have a chance to bug out when the user tries to randomize trainer names/class names. * These options are now unavailable entirely for Japanese Gen1/2, as was the original intention. Later gens allow name randomization regardless of language. - Fixed a bug where quite a few Gen 3 methods would not randomize the last Pokemon in the National Dex correctly. v1.7.0b - Released 04-03-2016 - Added a "Scrolling Display Mode" which packs all the options into one big scrolling area like old versions. * This mode will be activated by default on non-Windows systems. For Windows the tabbed system will remain on to begin with. * Regardless of OS, users can switch which mode they use by clicking on the "Settings" button and choosing the option to change display mode. * Changing display mode will require a reboot of the randomizer program. (NOT the whole computer!) - Re-enabled resizing/maximizing the window and adjusted the way this affects the components inside. * You can expand (NOT shrink) the tabbed UI by resizing the window. This is useful if some options are being cut off. * If you need to shrink the options area due to having a small screen, use the Scrolling Mode instead. This CAN be shrunk. - Made tooltips last forever, as long as the user keeps the mouse over the option they are viewing the tip for. - Disabled setting Native Look and Feel (LaF) on non-Windows systems. * This change has been made because the default Java Metal LaF is more similar to Windows than the other native LaFs. * As the app GUI has been designed for the proportions of the Windows LaF, this change should make it look better on non-Windows systems. - Standardized font sizes for the main options window regardless of which OS/Look and Feel is being used. v1.7.0a - Released 24-02-2016 - Fixed all file loading routines to make sure they load the entire file in question. * This lead to numerous undiagnosed problems in the past, such as Code/Misc Tweaks failing to work as intended. - Prevented the Ghost Marowak in Gen 1 from showing up as a randomized fishing encounter. v1.7.0 - Released 23-02-2016 - Started providing a Windows EXE release of the randomizer, which wraps the Java JAR file inside a launch4j wrapper. * You still need Java installed on your system to run the randomizer, but launch4j should take care of launching Java for you and prompting you to install it if you don't have it. * Linux/Mac users can just keep using the JAR releases as normal. Windows users who are already able to run the JAR files can keep using them too. - Added randomization of move attributes. * You can now randomize move powers, accuracies, max PP, and types. * The Physical/Special category of moves can also be randomized in games that have support for it. * Using most of these options will probably create a very silly gameplay experience, so be warned. Random types are about the tamest of the lot. - Added randomization of the Pokemon that Pokemon evolve into. * Pokemon that don't evolve will still not evolve. Pokemon that evolve into multiple different things will still do so. * You can take your pick of various options to tweak the randomization and possibly make it more "realistic" to the original games. * Credit to pk3DS (the Gen6 editor/randomizer) for doing this first, and to a *lot* of people for suggesting that I do it in various ways. - Overhauled the GUI, changed from scrolling area system to tabs and moved around many options. * Similar/related options have been grouped together in a single tab for the most part. * A few former General options have been placed next to related functionality. For example, you can find the Evolutions tweaks next to the Evolution randomizer. * Misc Tweaks tab (see below) contains most of the rest of the options that used to be under General/Other Options. * About Dialog removed and replaced with a version indicator and website URL on the main GUI. * Empty space has been filled with a Pokemon sprite from the currently loaded game, this code may be used for other purposes in the future. - Overhauled Code Tweaks system, renamed to Misc Tweaks. * This is to represent the fact that a lot of these tweaks don't actually change code, and make them more visible/accessible for users. * As stated above, this tab now contains quite a few miscellaneous options such as the Lower Case Pokemon Names tweak. - A few entirely new misc tweaks have been added: * Randomize PC Potion - randomizes the PC potion for Gen 1 games. May do the same for later gens in a future release. * Allow Pikachu Evolution - lets you use a ThunderStone on Pikachu in Yellow version to evolve it. * Randomize Catching Tutorial - randomizes the Pokemon that appear in the game's catching tutorial. Available for Gens 1-4. - Added Instant Text tweaks for Gens 3-5 (excluding Ruby/Sapphire and Diamond/Pearl) to pretty much complete support. * Emerald/FRLG Instant Text is a bit strange in its behavior, so it is only used when you set text speed to Fast, just in case there is a situation which softlocks with Instant Text active. * Gen4/5 Instant Text are ports of premade Action Replay codes into ROM edits. Credit goes to Kaphotics for the original Platinum/HGSS codes. I do not know who made the original Gen 5 codes. - Added very rudimentary ROM hack detection for Fire Red v1.0. * This should increase the number of ROM hacks that can be randomized substantially, but some things will still break. * ROM hacks are still not *officially 100% supported* so a specific thing breaking for a specific ROM hack is not going to be treated as a huge deal. * I will look more into Ruby/Emerald as well as Gen4-5 hacks in the future. - Overhauled evolution handling code. * The option to select a random starter with 2 evolutions will now include Pokemon with no prevolutions and at least 2 stages of evolution. * Carrying randomized stats and types up evolutions when the appropriate options are selected now works as advertised. * Types and stats will not be carried up split evolutions such as the Eeveelutions to avoid situations where all 7 Eeveelutions have the same typing/base stats. * When the rival is given a starter with split evolutions and the "Rival Carries Starter" option is used, they will now pick a random evolution instead of always using the first one. - Improved error reporting in general. * The randomizer will probably throw more errors than previous versions, but this should only be in situations where old randomizers would "silently fail" (appear to do something but actually fail at some point and not actually do it). These errors and their log files can be submitted to the randomizer website/Issues page to improve the chance of bugs getting fixed. * Log filenames now contain the datetime when the error occurred instead of a unix timestamp, which was meaningless/confusing to a lot of people. * Errors caused by the randomizer detecting an unsolvable situation/infinite loop should report a message to the user and prompt them to try less strict settings. - Finally fixed Diamond/Pearl/Platinum encounters to actually be completely random when intended. * "Conditional" encounters such as the Day/Night unique encounters will now be randomized, so non-randomized encounters should no longer appear. - Improved Gen4/5 randomization log files to include map names for each wild encounter set. * This can still lead to ambiguity where one map name has many separate encounter areas, such as Victory Road, but it is a big improvement over having no labels at all. - Randomized Red/Blue roms will now save as gbc files instead of sgb files. - Allowed randomization of Gen 1's ghost Marowak in the Pokemon Tower when Static Pokemon are randomized. * Similarly to the PC potion randomization, will probably be added for FR/LG as well in the near future. * Also made sure the ghost Marowak (or its replacement) does not show up as a regular randomized wild Pokemon in Pokemon Tower. - Fixed a bug where additional methods for the same evolution would be discarded. * Fixes a regression in one of the 1.6 releases where Feebas's evolution was no longer fixed by "Remove Impossible Evolutions". - Fixed the text that Blaine says after giving you TM38 in FR/LG if you randomize TMs. - Fixed a bug where randomized move tutor compatibility wasn't being applied properly for Pokemon Platinum. - Fixed a bug where expansion of Gen 3 movesets was broken and had the potential to overwrite movesets for other Pokemon. - Fixed a bug where selecting "Lower Case Pokemon Names" for Gen 4 games didn't actually apply the setting. v1.6.3b - Released 26-06-2015 - Fixed a bug where the randomizer was using incorrect move names for text in FireRed/Emerald randomizations. - Made the "B/W Exp" code tweak for gen1/gen2 games respect Exp.All/Exp.Share correctly for EXP calculations. v1.6.3a - Released 07-06-2015 - Fixed a bug where the randomizer was calculating every Pokemon to have 0 evolutions. v1.6.3 - 06-06-2015 - Added a system to ban "bad"/useless items from the various item randomizers available. * This means you can safely randomize items in later games without being buried under berries and mail. * The definition of a useless item changes from game to game but generally includes stuff not useful for in-game battles. - Banned Thief from randomized movesets in Gen 2 specifically. * This change is made to prevent Trainer/Wild Pokemon permanently stealing the player's held items. * You can still find Thief to use yourself from a TM or Move Tutor. - Added another small hack to fix stone evolutions for National Dex mons in FR/LG. - Made a few changes to the gen3 handler to improve ROM hack compatibility. * The randomizer now detects (and mostly ignores) circular evolutions seen in some ROM hacks. * Support for ROM hacks that have had additional maps/banks added in AdvanceMap has been added. * Improved detection of invalid pointers slightly. - Added a code tweak for gen3 games to use running shoes indoors. * Full credit for this to http://www.pokecommunity.com/showthread.php?t=207026 - Refactored some of the internal workings of the randomizer with a view to making it easier to make new interfaces etc. * Full credit for this to scheibo on github - https://github.com/scheibo/universal-pokemon-randomizer/tree/gui v1.6.2 - 16-01-2015 - Fossil Pokemon can now be randomized for Generation 4 and 5 games. * This doesn't need you to do anything special, they are included under Static Pokemon just like they are for the Generation 1-3 games. - Added an option called "Make Evolutions Easier" which reduces the evolution level requirement for Pokemon which evolve at high levels. * Specifically, every Pokemon will evolve to its final stage by level 40, and three-stage evolutions will reach their middle stage by no later than level 30. - A few small options have been added to TM and Move Tutor randomization: * You can choose to ensure that Pokemon learn TM/Move Tutor moves which they also learn by levelup. * You can choose to preserve TMs/Move Tutors for moves which can be used in the field through randomization. * (obvious examples of these moves include Rock Smash and Flash) * You can choose to grant full compatibility for TMs and Move Tutors to every Pokemon instead of making it random or unchanged. - Added a new Code Tweak for Generation 1/2 games (all languages) that lets you force the game to always use Fastest text speed. * This will make all text boxes in the game show up with minimum delay, regardless of the text speed the player sets in Options. - TM givers & Move Tutors in Generation 3 English games now have their text updated for their randomized moves. - Fix a bug made notorious by TwitchPlaysPokemon where Type Themed trainers basically didn't work for Generation 4 games. - The "Similar Strength" option for Trainer/Wild Pokemon has been tweaked in certain scenarios. * The searching pool will be expanded slightly if very few Pokemon are available to begin with, to hopefully decrease the number of teams with a lot of repeats. v1.6.1 - 16-05-2014 - Support for Generation 4 non-English games has been restored to pre-1.5.0 levels. - You can now load "Settings" files from older versions. * This refers to the "Load Settings"/"Save Settings" files that just set/unset options, not premade seeds. * Any options that didn't exist when you made the settings file will be set to "Unchanged" or equivalent. * When you do load an old settings file, you will be warned to check for new options. * The 5 bundled settings files will still be updated each release to avoid giving you this warning. - Trying to load a seed/preset file from an older version will now tell you which version you can use to open it. - The "4 starting moves" option to give every Pokemon 4 moves at Level 1 is now available for most games instead of just Generation 1. * It is still unavailable for most Generation 2 games due to technical reasons. - It's now easier to copy the seed & config string when you finish randomizing a ROM, though saving the seed file is still easier overall. - When you open a ZIP file, RAR file or IPS patch file in the randomizer (instead of a randomizable ROM file) it will now let you know instead of just giving a generic error. - Fixed a bug where randomizing static Pokemon using the "Legendary <-> Legendary and Normal <-> Normal" option could cause a lockup/infinite loop. * This happened if you limited the Pokemon available so that there weren't enough legendaries available to replace the legendaries in the original game. v1.6.0a - 13-05-2014 - "Wild Pokemon > Similar Strength" and "Wild Pokemon > Randomize Held Items" are now saved and loaded from preset files correctly. * I have now looked over all the options carefully and hopefully all of the bugs of this kind are now gone in 1.6.0a. - Overwriting the original ROM when randomizing a DS game has been blocked. * This fixes a bug in 1.6.0 where doing so would corrupt the resulting game. * All other overwrites are allowed, but will now be prompted first. - Fixed a bug where the randomizer would always ask to copy old name files over on each startup even if you already chose to copy them earlier. - Increased error reporting a bit more, to allow users to get more information to submit to enable bugs to be fixed faster. - The update check function is now a little bit more efficient. v1.6.0 - 27-04-2014 - There are no longer separate "normal" and "internal config" releases. * The randomizer now uses the "internal config" framework by default. * Customized trainer names / class names / trade nicknames can still be provided by placing appropriately named text files in the directory where the randomizer is kept (instead of inside the config folder). * If you customized these names inside the config folder on an earlier version, the randomizer will prompt you to move them to the new location when it is first opened after the update. - The annoying/confusing "cannot load gameboy_jap.tbl" screen should now be gone. * However, the randomizer still needs to be able to read files from disk and write files to disk to function, so it'll warn you if this isn't possible. * You still really need to extract the randomizer from the zip file before running it. - There is no longer a seperate jar file to run to disable automatic updates. * You can disable automatic updates inside the program itself, using the "Update Settings" button. * The randomizer will still have automatic updates ON by default. * If you really don't want to open the randomizer even once with automatic updates on, you can create a config.ini text file with autoupdate=false as the only line before opening it. - A new feature, "Limit Pokemon" has been added to allow you to limit the Pokemon that appear in the randomized game. * You can pick which generations of Pokemon appear, as well as including "associated" Pokemon (evolutions/pre-evolutions) from generations that you don't entirely include. * This will only affect things which are actually randomized - if you don't randomize something, the original Pokemon will be kept even if they aren't in your set limits. * This also doesn't have any impact on systems which aren't randomizable (yet), such as the various Battle Towers/Frontiers. * Pokemon which you don't include in your randomization will be cut off from evolution trees, so you won't be able to obtain them even via breeding or evolution. * Keep in mind that certain Pokemon choices using this feature will make some post-game gameplay objectives impossible, such as obtaining the National Dex in FireRed/LeafGreen (requires 60 of the original 151 caught) or Diamond/Pearl/Platinum (requires all the Pokemon in the Sinnoh dex to be at least seen). This feature is best used for just the "core" experience (up to the first round Elite Four) - A group of small adjustments to gameplay mechanics, "Code Tweaks", have been added. * Right now, these tweaks are focused on Generation 1 games, but more will be added in the future. * The current tweaks mainly aim to correct some of the more broken things about the games to make the gameplay more fun/balanced. * The "B/W Exp Patch" option has been categorized as a Code Tweak (because it is one), and moved into that window. * Code Tweaks in general are experimental, and if your game doesn't work after you apply one, you should try again without them active. - The efficiency/speed of DS game randomization has been significantly improved. * The time taken to load DS ROMs should be significantly reduced, while save times should stay about the same. * Older versions of the randomizer would extract the entire contents of the DS ROMs to a folder each time you opened them, and not clean up that folder once you were done. * This version only extracts what it needs to edit, and deletes temporary files/folders when it is closed. * You'll still need to delete the temporary folders made by old versions of the randomizer manually. - A new option for Generation 1 games has been added which gives every Pokemon 4 starting moves at Level 1. * This attempts to balance out Pokemon which only have one or two starting moves and don't learn any moves for ages with those which have more fortunate movepools. * This option is only available for Generation 1 games, but is not really required in later games because the advent of breeding necessitated that a large majority of Pokemon learn more moves at low levels anyway. - "Standardize EXP Curves" has been added as an option to change up the balancing of the game. * If this option is chosen, all non-legendary Pokemon will use the Medium-Fast curve (1,000,000 EXP to Level 100) and all legendaries will use the Slow curve (1,250,000 EXP to Level 100). * This makes some Pokemon more usable (namely non-legendaries without great stats that had the Slow curve such as Lapras) while making others a little less overpowered early on (Alakazam having the Medium-Slow curve and lots of levelup moves made him a monster in early game). * Legendaries still use the Slow curve to balance them out with regular Pokemon to some degree. - The "Update Moves" function has been changed up a bit. * The core function "Update Moves" now updates moves to their Generation 6 power/accuracy/PP instead of Generation 5. * Because of this, it is now available for Generation 5 games too. * For people that don't like the changes Generation 6 introduced, a "Legacy" checkbox is available to update moves to Generation 5 instead. * The Generation 5 updates have also been tidied up slightly, they weren't entirely accurate before. - The "Remove Trade Evolutions" option has been overhauled and renamed to "Change Impossible Evo[lution]s". * This option still removes trade evolutions, but now also addresses other evolutions that are impossible in the game played or made impossible by the randomization. * The former category of impossible evolution mainly impacts the remake games. FireRed/LeafGreen are missing a clock for Espeon/Umbreon and contests for Milotic, while HeartGold/SoulSilver are missing contests for Milotic and specific locations for Magnezone/Probopass/Glaceon/Leafeon. These evolutions are changed to either use stones or be achieved via levelup. * The latter category impacts Generation 4 games onwards, where certain Pokemon evolve when they learn a certain move. These evolutions are now replaced by pure levelup evolutions if you enable this option and randomize movesets. If you don't randomize movesets, they will be left alone. * As always, you can see the specifics of the changed evolutions by looking at the log file created after you save your randomized game. - "Randomize Held Items" has been seperated into two options under Starter Pokemon and Wild Pokemon respectively. * The Starter Held Items option controls held items for the Starters only, and is available in Generations 2/3. * The Wild Held Items option controls held items for wild Pokemon in general as well as some static encounters, and is available in all Generations except Gen 1. * Held items on in-game trades continue to be controlled by the same checkbox as before. - A few more moves have been added to the banlist which stops them being picked as the required damaging move on each Pokemon when movesets are randomized. * These moves include the extraordinarily weak Constrict, the lock-in moves Rollout & Ice Ball, and the fixed-damage moves Sonicboom & Dragon Rage. * These moves can still be picked as any other move in the randomized movesets. - The "Minimum Catch Rate" option has been reworked a bit. * It now makes normal Pokemon slightly easier to catch than before, but legendary Pokemon are a bit harder to catch. * The minimum catch rate for a weakened normal Pokemon with this option on should be about 30% in a Poke Ball, whilst legendaries should be at about 15%. * This makes it possible to catch most Pokemon early on, whilst still giving at least some special status to legendaries. - The Pokemon that Oak shows you in the intro to Pokemon Yellow is now randomized, though the color palette remains yellow, quite amusingly in some cases. - Spore has been added as a "broken move" in Generation 1, because of its ability to infinitely lock Pokemon into sleep and 100% accuracy. * In Generation 2 onwards, a Pokemon will always get a move off every time it wakes up, making sleep a lot less broken. - The "No Early Shedinja" option has been changed to "No Early Wonder Guard". * This means that if you randomize abilities and allow Wonder Guard, any Pokemon that get it will no longer appear early on when this checkbox is checked. - The inner mechanics of the "Rival carries starter through game?" checkbox under trainer randomization have been changed a little bit. * These adjustments should ensure that the starter Pokemon is always last in the Rival's party (though he might not always bring it out last in later games) except when the original games deliberately put it first. * This impacts a few rival fights, the majority of which are in the Generation 1 games, Red/Blue/Yellow. - The speed of the scrollbar arrows / mouse wheel on the randomization options panel has been significantly increased. - The ability of the randomizer to catch errors and make log files for them has been improved slightly. * This should help track down the cause of a few annoying bugs, such as the bug which stopped DS games from randomizing fully on certain PCs (if it still exists in this version) - Metronome Only Mode now works correctly in Generation 3 games. - Fix a small issue with randomizing multiple Generation 2 games in the same randomizer session. - Rotom is no longer considered a "legendary Pokemon" by the randomizer (because the games don't really treat it as such) - Randomizing static Pokemon in Pokemon Silver no longer causes a softlock when you obtain Shuckie in Cianwood City. v1.5.0 - 26-02-2014 - "Field items" - items found in item balls or hidden items - can now be randomized. * "Shuffle" keeps the set of items found on the overworld the same, just shuffles their locations. * "Randomize" puts a new random sensible item in each item spot (sensible items exclude things like key items, HMs and glitch items) * Item balls containing key items or HMs are not randomized to make sure the game is still able to be completed. * TMs are kept in the same balls, but the number of the TM you receive from each ball is shuffled/randomized appropriately. * Each TM will still be available in the game at least once. - In-game trades can now be randomized. * You can pick to only randomize the Pokemon you receive, or also randomize the Pokemon you have to trade in exchange. * Where available, you can also randomize the nickname, OT, IVs and held item of each trade. * Randomization of nicknames uses a new list of names called "nicknames.txt" stored in the same way as trainer names/classes. Randomization of OT names uses the pre-existing trainer names file. - Added Metronome Only Mode as a choice for Pokemon movesets by popular request. * When this is enabled, all Pokemon will only learn Metronome and its PP will be boosted to 40. * Randomization of TMs and Move Tutor moves will be disabled, and all of them will be changed to Metronome. * HM moves & compatibility will be left alone, but all of them will be set to 0PP to prevent their use in battle. - "Similar Strength" is now an available option for randomizing wild Pokemon. It uses the same method as its equivalent for trainer Pokemon. * This option is not available at the same time as either Catch-Em-All mode or Type Themes because these can limit the available Pokemon pool too much for it to function adequately. * More specific options to limit/ban evolved Pokemon may be added in the future, but this should have a similar effect for the time being. - Excluding HM moves from levelup movesets/TMs/move tutors is now done per game instead of excluding all moves that have ever been an HM. * For some examples, you can now get Flash TMs in Generation 4/5 and Waterfall TMs in Generation 1. - Pokemon available by fishing are now included in the wild Pokemon randomization in Generation 1. - Shuffling stats in Generation 1 now preserves the Pokemon's base stat total a little better (allowing for the fact that Special is twice as valuable as anything else) - Move names, ability names & item names are now read directly from the ROM. The practical application of this is that log files will contain the names from the language of the ROM you randomize instead of having a lot of English. (The sentence structure and formatting is still hardcoded to be English for the time being.) - The log file produced for each randomized ROM has been improved slightly. * The name of each trainer is now included. This makes it easier to tell what Pokemon a specific trainer will have (though the game will often contain multiple entries for each trainer, such as rematch teams) * Each Wild Pokemon set will have a description of what it is actually used for in Generation 1-3 games. This will be included for the DS games in a future release. * The log file also now includes the details of randomized in-game trades if you choose to randomize them, but field items are not included yet. - When a ROM fails to load or save, the randomizer will now attempt to save a log file with more details about the problem. Please include this log file in any bug reports if possible. - The text tables for the Generation 1/2 games have been slightly improved to include the accented characters available in the European releases of these games. - Started working on some basics to eventually allow for randomization of more complex ROM hacks that move data around. Nothing concrete yet. - The "Minimum Catch Rate" checkbox will actually function as intended now. In earlier randomizer versions it did nothing. - When trainers are randomized, the Champion Rival battles in Red/Green/Blue will no longer always have Sky Attack on the lead Pokemon nor a set type move on the last Pokemon. - Starter Pokemon should now be randomized correctly in foreign Gold/Silver/Crystal games. - Corrupt text data in Gold/Silver/Crystal is now handled a little more gracefully. - The "Remove Trade Evolutions" feature will finally work correctly for Generation 3/4/5 games and change pure (no held item) trade evolutions to pure level evolutions instead of also requiring high happiness. - When abilities are randomized in Generation 3 games, Pokemon with 2 abilities evolving into Pokemon with only 1 ability will no longer have a chance to lose their ability altogether. - Japanese Ruby/Sapphire can now be randomized. - Generation 4/5 ROM compatibility improved slightly. - Fix a bug in Generation 4 games where moves would sometimes gain weird effects. - Fix a bug in Generation 5 games where perfect-accuracy moves such as Swift were being accidentally changed to just 100% accuracy. - The Area Data function of the Black/White 2 Pokedex will now correctly exclude Pokemon placed in version exclusive areas. v1.2.0a - 26-02-2013 - The "Purrloin Patch": The 5th generation games crash when you open the Pokedex if it has no Unova Pokemon registered as seen at all. To overcome this, the randomizer now gives you a free "seen" entry for Patrat or Purrloin when you get the Pokedex. This also makes sense as these Pokemon are the ones which you are shown how to catch in Black/White and Black2/White2 respectively. - The roamers (Raikou/Entei/Suicine in G/S only) are now randomized in Generation 2 games. - Trainer names in Generation 2 games are now limited to 10 characters again to fix a text corruption bug. - Pokemon in Generation 2 games will no longer flee when encountered randomized. - Fixed TM01 DYNAMIC-PUNCH text not being updated when TMs are randomized in Crystal. - A problem with randomizing FireRed/LeafGreen starter Pokemon has been temporarily fixed. - The "Update Moves" function now works when randomizing Pokemon Platinum. - Removed need for a separate release without update checks. There will now be a packaged file to boot up the randomizer without an update check included with normal releases. v1.2.0 - 20-02-2013 - An update check has been added to the program which will check for new versions of the randomizer when you open it. * If you have the external config version correctly extracted, you will be able to update automatically and preserve things like your custom trainer classes and names. * If you have the internal config version you will be directed to the downloads page to update. * If the update check fails due to the site being down or a lack of an internet connection, the randomizer will still work fine. * You can also download a randomizer version with the update checks disabled, if you prefer. - You can now load & save quick settings files which will allow you to perform randomizations with set options. This is useful as it allows you to produce similar ROMs with different actual randomized results. A few sets of recommended settings are included with the randomizer in the settings directory. The included settings are as follows: * Balanced: Most things are randomized, but in a way that should lead to a reasonably balanced & fun playing experience. Trainers get Pokemon of similar strength, starters are limited to Pokemon with 2 clear evolutions, neither trainers nor wild Pokemon areas have legendaries, and legendary battles just have the Pokemon swapped to another legendary. * Classic: This creates an experience similar to what the idea of randomized Pokemon was when it was first created - starters and wild Pokemon are randomized. Added to these along the same lines are the randomization of Hidden Hollows (in Black/White 2) and static Pokemon. Trainers pokemon, moves and the like are left alone. * Trainers Only: Allows you to approach a "new" set of trainers with the rest of the game left unchanged. Trainers each have a type theme (which is kept consistent across Gyms if they're in one) and will use Pokemon of similar strength to the originals, avoiding legendaries entirely and Shedinjas at lower levels. * Randomizer Race: Produces settings which are recommended for randomized Pokemon races on speedrunslive.com. Mostly everything is randomized unrestricted except the core Pokemon stats, abilities and types. * Super Randomizer Race: The same as above, except with all the core Pokemon traits also randomized. For the brave. - Foreign language versions of Generation 2, 3, and 5 games are now fully supported (except the Korean releases of Gold/Silver). - Randomization of Pokemon held items has been added up to a point. In every generation wild Pokemon have their held items randomized, and in Generations 2 & 3 the starters have random held items too. More held item randomization will be added in future releases, where it is possible to do so. Potentially, items on the ground could also be randomized in the future. - The randomization for HeartGold/SoulSilver fishing & surfing Pokemon has been fixed. - The "area" locations for Pokemon in the Pokedex of Black 2 / White 2 are now updated. Sadly, the Habitat List can not be updated due to technical restrictions. The "area" data may still be broken in other games - this will be checked & fixed in the near future. - Generation 2 games now have the text displayed when TMs are received from an NPC updated. - Generation 2 games have better trainer name randomization - many more names can be picked for each trainer than was previously allowed. - Generation 2 games now have the Pokemon catchable in the Bug Catching Contest randomized. - A bug concerning corrupted trainer names when the trainer names text file contains strange characters has been fixed. - Support for randomizing Generation 3 ROM hacks (hacks of Ruby, Emerald or Fire Red) should now be improved. However, I cannot say if a specific ROM hack will work now - you still have to try them for yourself. Hacks that make large scale changes to events, trainers or expand the number of Pokemon available are still very unlikely to work properly. - Extensions should now be added properly to short saved filenames (less than 5 characters). - The Pokemon that the professor shows you in Generation 1, 2 and 3 games (except Yellow) in the intro is now randomized, as a reminder that you are playing a randomized game. Do note that there is a small chance the original Pokemon could be chosen - this isn't a bug if it happens! - FireRed/LeafGreen are now patched to allow evolutions of Johto or Hoenn pokemon even if you do not use the "Give National Dex at start" option. This is in preparation for the removal or improvement of said option in the future, as it does not work very well right now. - DS hacks which have strange header data in their NARC files (such as Blaze Black 2 / Volt White 2) should no longer bug out the randomizer or refuse to load entirely. They are still not officially supported, however, and will probably not work well yet. - An obscure bug relating to TM item updating in the Generation 4 DS games has been fixed. - The text when the rival recieves his (randomized) starter in Fire Red / Leaf Green is now updated. - Pokemon that have more than 4 level 1 moves will now still be guaranteed to have a damaging move in their starting set. v1.1.2 - 24-01-2013 - An option to remove "game-breaking" moves from the randomizer's possibilities has been added. Using this will mean neither you nor the AI can get moves like Dragon Rage and Sonicboom, which break early game battles severely. In Generation 1 games, OHKO moves are also removed because they can be abused to always hit with X Accuracy/Speed. - Hidden Hollow Pokemon randomization in BW2 now actually works properly. - Fishing & Headbutt Pokemon are now randomized in Generation 2 (GSC) games. - In Generation 1 (RBY) games, every time a NPC talks about a TM, the text is now updated for the new move. This will be coming to other games later. - Static Pokemon support for HGSS has been updated to include Pokemon in the Rocket Hideout and the eggs that Primo gives out. - Randomization of the storyline Giratina in Platinum has been removed because encountering any wild Pokemon other than Giratina in the Distortion World crashes the game. - When Pokemon movesets are randomized, Pokemon that evolve by leveling up with a certain move learned will have that move requirement updated to the one they now learn at the level the original one was learned. - Pokemon with Shadow Tag, Arena Trap or Magnet Pull can no longer appear in Pokemon Tower in FR/LG to prevent Ghosts that the player cannot flee from. Rules set like "Type Themed" or "Catch 'em All" will be ignored when necessary to ensure this. - Game 1-to-1 Wild Pokemon randomization has been fixed to not replace Pokemon that don't crash the game with those that do. v1.1.1 - 16-01-2013 - Static Pokemon support has been added for English (US) Generation 5 releases. - Hidden Hollow Pokemon can now be randomized in Black2/White2. - The battles with Cheren and Colress at the PWT after badge 5 is obtained in Black2/White2 should now be randomized. The rest of the PWT is left unchanged. - Trainer name/class lists are now included in saved preset files. This allows them to be used irrespective of people having differing lists. - The "B/W Exp Patch" and "Race Mode" checkboxes are now correctly included in presets. v1.1.0 - 13-01-2013 - Move Tutor moves can now be randomised in Crystal, Emerald, FR/LG, Platinum, HG/SS and B/W2. - There is now a Black/White-style EXP gain system patch available for R/B/Y/G/S/C English games. - HG/SS surfing & fishing Pokemon should now be correctly randomised. - The 2nd rival battle in Black2/White2 now obeys the "Rival Carries Starter" setting. - Static Pokemon can now be randomised in the English versions of all Generation 4 games. - A "Race Mode" has been added which tweaks the randomisation process a bit to be better for races: * Log files cannot be saved * A "check value" is displayed to make sure everyone has the same game. - An option has been added to stop trainers having Shedinja under level 20 in games that he exists. - A bug with randomizing certain Static Pokemon in Generation 1 games has been fixed. - The framework for multiple languages in generation 1, 2 and 5 games has been put in. - All the release languages are now supported in generation 1, with 2, 3 and 5 to follow. - Pokemon that crash the game when put in certain slots (wild Pokemon, static Pokemon, etc) can now be banned from these slots. v1.0.2a - 06-01-2013 - Temporarily removed Unown from being able to be chosen for 3rd generation games in the wild due to crashes - Fixed Blue's final rival battle being corrupted when you change the starters - Fixed the internal config version to actually work properly v1.0.2 - 30-12-2012 - You can now choose to have every Pokemon moved up to a minimum catch rate of 45, if you want them all to be catchable in a reasonable amount of time. - Abilities can now be randomized in the games that have them, with DW abilities also supported. Wonder Guard can be enabled/disabled as you see fit. - Moved generation 4 offsets/filenames to an ini file. Now all unmodified gen4 roms are almost supported, though random English text will still appear. - Randomized Starter Pokemon in Red/Blue will now have their full Pokedex entry appear when you choose the ball, thanks to a little ASM hack. - The extension "sgb" is now valid for loading/saving. v1.0.1a - 27-12-2012 - Fixed Generation 4 text handling. v1.0.1 - 27-12-2012 - Fixed the National Dex patch for FR/LG: now the game can be played through fully through the 2nd round of the Elite 4 with the patch applied. - Fixed corruption of Pokemon names in Gen4 Pokedex/Hall of Fame. - Fixed stat & TM/HM compatibility changes for randomizations of Pokemon Platinum. - Added code to auto-add extensions to saved files where appropriate. - Added code to allow for releases with internal config folders. v1.0.0 - 18-12-2012 First release.