--------------------------------------------------------------------------------------- Map Randomizer Mutator 100 MapRandomizer.txt --------------------------------------------------------------------------------------- The idea behind this Mutator is simple - to get Unreal Tournament to select maps at random, without changing any other part of the game. At the end of each level, the Map Randomizer picks a map from your map list at random. It doesn't change your map lists, and it won't select a map a second time until all the maps have been played once. When all the maps in the list have been played, it starts all over again, picking maps in another random sequence. Because it's a Mutator, it'll work in any game type, and you don't need to set anything up to get it started. I've tested it both stand-alone and using a dedicated server; both styles of play work fine. For those of you who don't want to be tied to a specific set of maps, I've added a 'Use All My Maps' feature. This is turned on and off from the Mod menu - select 'Map Randomizer...' from the Mod menu and check 'Use All My Maps'. When this option is on, the Mutator will ignore your map lists and pick a map at random from your Unreal Tournament installation, every time the level changes. Uncheck 'Use All My Maps' to go back to random map list cycling. Note that Use All My Maps is off by default. TouchStone, 25th June 2000. ----------------------------- Installing the Map Randomizer ----------------------------- Extract MapRandomizer.umod file from the file you've downloaded, and run it to install the Mutator. If you just get the File Associations dialog box, check out the Installing Mutators section of the Mutators FAQ, which you can find at http://www.planetunreal.com/mutation/FAQ/. ------------------------ Using the Map Randomizer ------------------------ The game must be set up to Auto Change Levels for the Map Randomizer to work at all. Select Start Practice Session or Start New Multiplayer Game from the main Unreal Tournament menu, and check 'Auto Change Levels'. This makes UT read your map list when it changes levels. To load the Map Randomizer, select your game type as usual and select the Mutators button. Add 'Map Randomizer' to the Mutators Used list, and check the 'Always use this Mutator configuration' box to make sure it's used each time the game switches levels. Close the Configure Mutators window and Start the game. Unreal Tournament remembers these settings, so you only need to do it once. If you run a server from the console, or a command-line, add the game option string '?mutator=MapRandomizer.MapRandomizer' to the execution command (without the quotes). ------------------------------- Uninstalling the Map Randomizer ------------------------------- Open Add/Remove Programs from the Control Panel, select Unreal Tournament and click the Add/Remove button. Check the Map Randomizer option in the list presented, then click Next and remove the mod. ---------------------------- Uninstalling GWeb DeathMatch ---------------------------- If you installed my first attempt at randomizing Unreal Tournament - a game type called GWeb DeathMatch - you may as well remove it now. This Mutator goes far beyond the capabilities of that game type. To remove it, open Add/Remove Programs from the Control Panel, select Unreal Tournament and click the Add/Remove button. Check the GWeb DeathMatch option in the list presented, then click Next and remove the mod. ----------------------------------------------------------------- Technical Notes - Using the Map Randomizer with Custom Game Types ----------------------------------------------------------------- When a game ends, the Mutator hijacks the map list type used by the type of game you're playing (specifically DeathMatchPlus.MapListType) by setting it to class'MapRandomizer.MapRandomizerMapList', which is derived from the standard MapList class. The Mutator sets up the map list by calling Initialise() during the call to Mutator.HandleEndGame(); the map list itself then overrides MapList.GetNextMap() to achieve random cycling and random map selection. So, if you're playing a custom game type which subclasses GetNextMap() from the standard MapList class, it won't be called. If your custom map list uses other features during the game, they'll be used as normal - because Map Randomizer does its work at the end of a level, it's only the GetNextMap() call you don't get access to. If you're putting together a custom game type and want to support the Map Randomizer, you may wish to export the MapRandomizer.MapRandomizerMapList source and add your enhancements to the GetNextMap() function defined there. If you do, please check the 'Legal Bit' section towards the end of this file. ---------------- Revision History ---------------- Version 100 o Initial release ----------------------- Sincere thanks go to... ----------------------- Well, I'd been waiting so long for this mod to come out, I ended up writing it myself. Of course, you can't complete something like this without a little assistance ... so I'd like to thank: *** MeltDown [meltdown@thirdtower.demon.nl] If it wasn't for UClasses, I'd never have managed to navigate my way through UT's class structure. This is one excellent program - check out Meltdown's pages at http://www.planetunreal.com/unrealtower. Also, the basic code for the Mod menu option is based on his ExternSniper and MonsterMadness mods. The earliest versions of Map Randomizer were built using UClasses 2.7.0. *** Ob1-Kenobi [ob1@planetunreal.com] The umod for the Mutator was created entirely using Ob1's umod Wizard, v1.26. Made my life easier, and yours too! The program can be downloaded from Planet Unreal (http://www.planetunreal.com, as if you didn't know). *** JbP [jbp@planetunreal.com] Kudos to JbP for the excellent Mutator FAQ, which was invaluable when it came to Mutator development help. Grab it from http://www.planetunreal.com/mutation/FAQ/. *** [osX]RaZor! Well, if it wasn't for [osX]RaZor!, half the features in Map Randomizer wouldn't be there. His unfailing desire for 'more, more!' meant that the damn thing was rewritten three (count 'em) times ... many thanks to [osX]RaZor! for his suggestions and testing. If you're looking into Mutator development yourself, take the time to check out the Mutators forum over at mod central: http://unreal.infopop.net/. And finally ... the biggest thanks of all go to Mary, who put up with me and my obsession while I was developing the Map Randomizer. She has the patience of a saint... --------------- Contact Details --------------- If you have any suggestions for the Map Randomizer, find something that doesn't work the way you'd expect, or just want to drop me a line, send mail to touchstone@zen.co.uk. My web site is at http://www.zen.co.uk/home/page/graham.thompson/gweb/, but at the time of releasing this Mutator it doesn't have anything regarding UT mods or a link to the Mutator download. This may change... The latest version of Map Randomizer can be found at http://www.fileplanet.com. Fire up the website and search for "MapRandomizer". --------- Legal Bit --------- All of the contents of this package are created and owned by TouchStone subject to the caveats mentioned above. You are allowed to use, copy or modify the code, on the condition that no profit is made from the distribution of the resulting package(s). If you copy or modify the code, or any part of it, please mail me, and give me some credit for the hours spent sweating over an ash-stained keyboard. --------------------------------------------------------------------------------------- Map Randomizer Mutator 100 MapRandomizer.txt ---------------------------------------------------------------------------------------