Aquaria: Adding Aquaria to README and some other minors changes (#3313)
This commit is contained in:
		
							parent
							
								
									bfe215d5a7
								
							
						
					
					
						commit
						c792ae76ca
					
				|  | @ -67,6 +67,7 @@ Currently, the following games are supported: | |||
| * Yoshi's Island | ||||
| * Mario & Luigi: Superstar Saga | ||||
| * Bomb Rush Cyberfunk | ||||
| * Aquaria | ||||
| * Yu-Gi-Oh! Ultimate Masters: World Championship Tournament 2006 | ||||
| 
 | ||||
| For setup and instructions check out our [tutorials page](https://archipelago.gg/tutorial/). | ||||
|  |  | |||
|  | @ -8,14 +8,16 @@ from typing import Optional | |||
| from enum import Enum | ||||
| from BaseClasses import Item, ItemClassification | ||||
| 
 | ||||
| 
 | ||||
| class ItemType(Enum): | ||||
|     """ | ||||
|     Used to indicate to the multi-world if an item is usefull or not | ||||
|     Used to indicate to the multi-world if an item is useful or not | ||||
|     """ | ||||
|     NORMAL = 0 | ||||
|     PROGRESSION = 1 | ||||
|     JUNK = 2 | ||||
| 
 | ||||
| 
 | ||||
| class ItemGroup(Enum): | ||||
|     """ | ||||
|     Used to group items | ||||
|  | @ -28,6 +30,7 @@ class ItemGroup(Enum): | |||
|     SONG = 5 | ||||
|     TURTLE = 6 | ||||
| 
 | ||||
| 
 | ||||
| class AquariaItem(Item): | ||||
|     """ | ||||
|     A single item in the Aquaria game. | ||||
|  | @ -40,12 +43,13 @@ class AquariaItem(Item): | |||
|         """ | ||||
|         Initialisation of the Item | ||||
|         :param name: The name of the item | ||||
|         :param classification: If the item is usefull or not | ||||
|         :param classification: If the item is useful or not | ||||
|         :param code: The ID of the item (if None, it is an event) | ||||
|         :param player: The ID of the player in the multiworld | ||||
|         """ | ||||
|         super().__init__(name, classification, code, player) | ||||
| 
 | ||||
| 
 | ||||
| class ItemData: | ||||
|     """ | ||||
|     Data of an item. | ||||
|  | @ -68,6 +72,7 @@ class ItemData: | |||
|         self.type = type | ||||
|         self.group = group | ||||
| 
 | ||||
| 
 | ||||
| """Information data for every (not event) item.""" | ||||
| item_table = { | ||||
|     #       name:           ID,    Nb,   Item Type,        Item Group | ||||
|  | @ -207,4 +212,3 @@ item_table = { | |||
|     "Transturtle Simon says": ItemData(698132, 1, ItemType.PROGRESSION, ItemGroup.TURTLE),  # transport_forest05 | ||||
|     "Transturtle Arnassi ruins": ItemData(698133, 1, ItemType.PROGRESSION, ItemGroup.TURTLE),  # transport_seahorse | ||||
| } | ||||
| 
 | ||||
|  |  | |||
|  | @ -43,7 +43,7 @@ class AquariaLocations: | |||
| 
 | ||||
|     locations_home_water = { | ||||
|         "Home water, bulb below the grouper fish": 698058, | ||||
|         "Home water, bulb in the path bellow Nautilus Prime": 698059, | ||||
|         "Home water, bulb in the path below Nautilus Prime": 698059, | ||||
|         "Home water, bulb in the little room above the grouper fish": 698060, | ||||
|         "Home water, bulb in the end of the left path from the verse cave": 698061, | ||||
|         "Home water, bulb in the top left path": 698062, | ||||
|  | @ -129,7 +129,7 @@ class AquariaLocations: | |||
| 
 | ||||
|     locations_openwater_bl = { | ||||
|         "Open water bottom left area, bulb behind the chomper fish": 698011, | ||||
|         "Open water bottom left area, bulb inside the downest fish pass": 698010, | ||||
|         "Open water bottom left area, bulb inside the lowest fish pass": 698010, | ||||
|     } | ||||
| 
 | ||||
|     locations_skeleton_path = { | ||||
|  | @ -226,7 +226,7 @@ class AquariaLocations: | |||
|         "Mithalas cathedral, third urn in the path behind the flesh vein": 698146, | ||||
|         "Mithalas cathedral, one of the urns in the top right room": 698147, | ||||
|         "Mithalas cathedral, Mithalan Dress": 698189, | ||||
|         "Mithalas cathedral right area, urn bellow the left entrance": 698198, | ||||
|         "Mithalas cathedral right area, urn below the left entrance": 698198, | ||||
|     } | ||||
| 
 | ||||
|     locations_cathedral_underground = { | ||||
|  | @ -457,7 +457,7 @@ class AquariaLocations: | |||
|     locations_body_l = { | ||||
|         "The body left area, first bulb in the top face room": 698066, | ||||
|         "The body left area, second bulb in the top face room": 698069, | ||||
|         "The body left area, bulb bellow the water stream": 698067, | ||||
|         "The body left area, bulb below the water stream": 698067, | ||||
|         "The body left area, bulb in the top path to the top face room": 698068, | ||||
|         "The body left area, bulb in the bottom face room": 698070, | ||||
|     } | ||||
|  |  | |||
|  | @ -10,9 +10,8 @@ from Options import Toggle, Choice, Range, DeathLink, PerGameCommonOptions, Defa | |||
| 
 | ||||
| class IngredientRandomizer(Choice): | ||||
|     """ | ||||
|     Randomize Ingredients. Select if the simple ingredients (that does not have | ||||
|     a recipe) should be randomized. If 'common_ingredients' is selected, the | ||||
|     randomization will exclude the "Red Bulb", "Special Bulb" and "Rukh Egg". | ||||
|     Select if the simple ingredients (that do not have a recipe) should be randomized. | ||||
|     If "Common Ingredients" is selected, the randomization will exclude the "Red Bulb", "Special Bulb" and "Rukh Egg". | ||||
|     """ | ||||
|     display_name = "Randomize Ingredients" | ||||
|     option_off = 0 | ||||
|  | @ -29,27 +28,25 @@ class DishRandomizer(Toggle): | |||
| class TurtleRandomizer(Choice): | ||||
|     """Randomize the transportation turtle.""" | ||||
|     display_name = "Turtle Randomizer" | ||||
|     option_no_turtle_randomization = 0 | ||||
|     option_randomize_all_turtle = 1 | ||||
|     option_randomize_turtle_other_than_the_final_one = 2 | ||||
|     option_none = 0 | ||||
|     option_all = 1 | ||||
|     option_all_except_final = 2 | ||||
|     default = 2 | ||||
| 
 | ||||
| 
 | ||||
| class EarlyEnergyForm(DefaultOnToggle): | ||||
|     """ | ||||
|     Force the Energy Form to be in a location before leaving the areas around the Home Water. | ||||
|     """ | ||||
|     """ Force the Energy Form to be in a location early in the game """ | ||||
|     display_name = "Early Energy Form" | ||||
| 
 | ||||
| 
 | ||||
| class AquarianTranslation(Toggle): | ||||
|     """Translate to English the Aquarian scripture in the game.""" | ||||
|     """Translate the Aquarian scripture in the game into English.""" | ||||
|     display_name = "Translate Aquarian" | ||||
| 
 | ||||
| 
 | ||||
| class BigBossesToBeat(Range): | ||||
|     """ | ||||
|     A number of big bosses to beat before having access to the creator (the final boss). The big bosses are | ||||
|     The number of big bosses to beat before having access to the creator (the final boss). The big bosses are | ||||
|     "Fallen God", "Mithalan God", "Drunian God", "Sun God" and "The Golem". | ||||
|     """ | ||||
|     display_name = "Big bosses to beat" | ||||
|  | @ -60,10 +57,10 @@ class BigBossesToBeat(Range): | |||
| 
 | ||||
| class MiniBossesToBeat(Range): | ||||
|     """ | ||||
|     A number of Minibosses to beat before having access to the creator (the final boss). Mini bosses are | ||||
|     The number of minibosses to beat before having access to the creator (the final boss). The minibosses are | ||||
|     "Nautilus Prime", "Blaster Peg Prime", "Mergog", "Mithalan priests", "Octopus Prime", "Crabbius Maximus", | ||||
|     "Mantis Shrimp Prime" and "King Jellyfish God Prime". Note that the Energy statue and Simon says are not | ||||
|     mini bosses. | ||||
|     "Mantis Shrimp Prime" and "King Jellyfish God Prime". | ||||
|     Note that the Energy Statue and Simon Says are not minibosses. | ||||
|     """ | ||||
|     display_name = "Minibosses to beat" | ||||
|     range_start = 0 | ||||
|  | @ -73,47 +70,50 @@ class MiniBossesToBeat(Range): | |||
| 
 | ||||
| class Objective(Choice): | ||||
|     """ | ||||
|     The game objective can be only to kill the creator or to kill the creator | ||||
|     and having obtained the three every secret memories | ||||
|     The game objective can be to kill the creator or to kill the creator after obtaining all three secret memories. | ||||
|     """ | ||||
|     display_name = "Objective" | ||||
|     option_kill_the_creator = 0 | ||||
|     option_obtain_secrets_and_kill_the_creator = 1 | ||||
|     default = 0 | ||||
| 
 | ||||
| 
 | ||||
| class SkipFirstVision(Toggle): | ||||
|     """ | ||||
|     The first vision in the game; where Naija transform to Energy Form and get fload by enemy; is quite cool but | ||||
|     The first vision in the game, where Naija transforms into Energy Form and gets flooded by enemies, is quite cool but | ||||
|     can be quite long when you already know what is going on. This option can be used to skip this vision. | ||||
|     """ | ||||
|     display_name = "Skip first Naija's vision" | ||||
|     display_name = "Skip Naija's first vision" | ||||
| 
 | ||||
| 
 | ||||
| class NoProgressionHardOrHiddenLocation(Toggle): | ||||
|     """ | ||||
|     Make sure that there is no progression items at hard to get or hard to find locations. | ||||
|     Those locations that will be very High location (that need beast form, soup and skill to get), every | ||||
|     location in the bubble cave, locations that need you to cross a false wall without any indication, Arnassi | ||||
|     race, bosses and mini-bosses. Usefull for those that want a casual run. | ||||
|     Make sure that there are no progression items at hard-to-reach or hard-to-find locations. | ||||
|     Those locations are very High locations (that need beast form, soup and skill to get), | ||||
|     every location in the bubble cave, locations where need you to cross a false wall without any indication, | ||||
|     the Arnassi race, bosses and minibosses. Useful for those that want a more casual run. | ||||
|     """ | ||||
|     display_name = "No progression in hard or hidden locations" | ||||
| 
 | ||||
| 
 | ||||
| class LightNeededToGetToDarkPlaces(DefaultOnToggle): | ||||
|     """ | ||||
|     Make sure that the sun form or the dumbo pet can be aquired before getting to dark places. Be aware that navigating | ||||
|     in dark place without light is extremely difficult. | ||||
|     Make sure that the sun form or the dumbo pet can be acquired before getting to dark places. | ||||
|     Be aware that navigating in dark places without light is extremely difficult. | ||||
|     """ | ||||
|     display_name = "Light needed to get to dark places" | ||||
| 
 | ||||
| 
 | ||||
| class BindSongNeededToGetUnderRockBulb(Toggle): | ||||
|     """ | ||||
|     Make sure that the bind song can be aquired before having to obtain sing bulb under rocks. | ||||
|     Make sure that the bind song can be acquired before having to obtain sing bulbs under rocks. | ||||
|     """ | ||||
|     display_name = "Bind song needed to get sing bulbs under rocks" | ||||
| 
 | ||||
| 
 | ||||
| class UnconfineHomeWater(Choice): | ||||
|     """ | ||||
|     Open the way out of Home water area so that Naija can go to open water and beyond without the bind song. | ||||
|     Open the way out of the Home water area so that Naija can go to open water and beyond without the bind song. | ||||
|     """ | ||||
|     display_name = "Unconfine Home Water Area" | ||||
|     option_off = 0 | ||||
|  |  | |||
|  | @ -5,7 +5,7 @@ Description: Used to manage Regions in the Aquaria game multiworld randomizer | |||
| """ | ||||
| 
 | ||||
| from typing import Dict, Optional | ||||
| from BaseClasses import MultiWorld, Region, Entrance, ItemClassification, LocationProgressType, CollectionState | ||||
| from BaseClasses import MultiWorld, Region, Entrance, ItemClassification, CollectionState | ||||
| from .Items import AquariaItem | ||||
| from .Locations import AquariaLocations, AquariaLocation | ||||
| from .Options import AquariaOptions | ||||
|  | @ -223,8 +223,6 @@ class AquariaRegions: | |||
|             region.add_locations(locations, AquariaLocation) | ||||
|         return region | ||||
| 
 | ||||
| 
 | ||||
| 
 | ||||
|     def __create_home_water_area(self) -> None: | ||||
|         """ | ||||
|         Create the `verse_cave`, `home_water` and `song_cave*` regions | ||||
|  | @ -1095,12 +1093,10 @@ class AquariaRegions: | |||
|         add_rule(self.multiworld.get_entrance("Veil left of sun temple to Sun temple left area", self.player), | ||||
|                  lambda state: _has_light(state, self.player) or _has_sun_crystal(state, self.player)) | ||||
| 
 | ||||
| 
 | ||||
| 
 | ||||
|     def __adjusting_manual_rules(self) -> None: | ||||
|         add_rule(self.multiworld.get_location("Mithalas cathedral, Mithalan Dress", self.player), | ||||
|                  lambda state: _has_beast_form(state, self.player)) | ||||
|         add_rule(self.multiworld.get_location("Open water bottom left area, bulb inside the downest fish pass", self.player), | ||||
|         add_rule(self.multiworld.get_location("Open water bottom left area, bulb inside the lowest fish pass", self.player), | ||||
|                  lambda state: _has_fish_form(state, self.player)) | ||||
|         add_rule(self.multiworld.get_location("Kelp forest bottom left area, Walker baby", self.player), | ||||
|                  lambda state: _has_spirit_form(state, self.player)) | ||||
|  | @ -1122,7 +1118,7 @@ class AquariaRegions: | |||
|                                          self.player), lambda state: _has_energy_form(state, self.player)) | ||||
|         add_rule(self.multiworld.get_location("Home water, bulb in the bottom left room", self.player), | ||||
|                  lambda state: _has_bind_song(state, self.player)) | ||||
|         add_rule(self.multiworld.get_location("Home water, bulb in the path bellow Nautilus Prime", self.player), | ||||
|         add_rule(self.multiworld.get_location("Home water, bulb in the path below Nautilus Prime", self.player), | ||||
|                  lambda state: _has_bind_song(state, self.player)) | ||||
|         add_rule(self.multiworld.get_location("Naija's home, bulb after the energy door", self.player), | ||||
|                  lambda state: _has_energy_form(state, self.player)) | ||||
|  | @ -1133,9 +1129,6 @@ class AquariaRegions: | |||
|                  lambda state: _has_fish_form(state, self.player) and | ||||
|                                _has_spirit_form(state, self.player)) | ||||
| 
 | ||||
| 
 | ||||
| 
 | ||||
| 
 | ||||
|     def __no_progression_hard_or_hidden_location(self) -> None: | ||||
|         self.multiworld.get_location("Energy temple boss area, Fallen god tooth", | ||||
|                                      self.player).item_rule =\ | ||||
|  | @ -1242,11 +1235,7 @@ class AquariaRegions: | |||
|             add_rule(self.multiworld.get_entrance("Home Water to Open water top left area", self.player), | ||||
|                      lambda state: _has_bind_song(state, self.player) and _has_energy_form(state, self.player)) | ||||
|         if options.early_energy_form: | ||||
|             add_rule(self.multiworld.get_entrance("Home Water to Home water transturtle room", self.player), | ||||
|                      lambda state: _has_energy_form(state, self.player)) | ||||
|         if options.early_energy_form: | ||||
|             add_rule(self.multiworld.get_entrance("Home Water to Open water top left area", self.player), | ||||
|                      lambda state: _has_energy_form(state, self.player)) | ||||
|             self.multiworld.early_items[self.player]["Energy form"] = 1 | ||||
| 
 | ||||
|         if options.no_progression_hard_or_hidden_locations: | ||||
|             self.__no_progression_hard_or_hidden_location() | ||||
|  |  | |||
|  | @ -5,7 +5,7 @@ Description: Main module for Aquaria game multiworld randomizer | |||
| """ | ||||
| 
 | ||||
| from typing import List, Dict, ClassVar, Any | ||||
| from ..AutoWorld import World, WebWorld | ||||
| from worlds.AutoWorld import World, WebWorld | ||||
| from BaseClasses import Tutorial, MultiWorld, ItemClassification | ||||
| from .Items import item_table, AquariaItem, ItemType, ItemGroup | ||||
| from .Locations import location_table | ||||
|  | @ -114,7 +114,7 @@ class AquariaWorld(World): | |||
| 
 | ||||
|     def create_item(self, name: str) -> AquariaItem: | ||||
|         """ | ||||
|         Create an AquariaItem using `name' as item name. | ||||
|         Create an AquariaItem using 'name' as item name. | ||||
|         """ | ||||
|         result: AquariaItem | ||||
|         try: | ||||
|  |  | |||
|  | @ -11,39 +11,39 @@ options page link: [Aquaria Player Options Page](../player-options). | |||
| ## What does randomization do to this game? | ||||
| The locations in the randomizer are: | ||||
| 
 | ||||
| - All sing bulbs; | ||||
| - All Mithalas Urns; | ||||
| - All Sunken City crates; | ||||
| - Collectible treasure locations (including pet eggs and costumes); | ||||
| - Beating Simon says; | ||||
| - Li cave; | ||||
| - Every Transportation Turtle (also called transturtle); | ||||
| - Locations where you get songs, | ||||
|   * Erulian spirit cristal, | ||||
|   * Energy status mini-boss, | ||||
|   * Beating Mithalan God boss, | ||||
|   * Fish cave puzzle, | ||||
|   * Beating Drunian God boss, | ||||
|   * Beating Sun God boss, | ||||
| - All sing bulbs | ||||
| - All Mithalas Urns | ||||
| - All Sunken City crates | ||||
| - Collectible treasure locations (including pet eggs and costumes) | ||||
| - Beating Simon says | ||||
| - Li cave | ||||
| - Every Transportation Turtle (also called transturtle) | ||||
| - Locations where you get songs: | ||||
|     * Erulian spirit cristal | ||||
|     * Energy status mini-boss | ||||
|     * Beating Mithalan God boss | ||||
|     * Fish cave puzzle | ||||
|     * Beating Drunian God boss | ||||
|     * Beating Sun God boss | ||||
|     * Breaking Li cage in the body | ||||
| 
 | ||||
| Note that, unlike the vanilla game, when opening sing bulbs, Mithalas urns and Sunken City crates, | ||||
| nothing will come out of them. The moment those bulbs, urns and crates are opened, the location is considered received. | ||||
| nothing will come out of them. The moment those bulbs, urns and crates are opened, the location is considered checked. | ||||
| 
 | ||||
| The items in the randomizer are: | ||||
| - Dishes (used to learn recipes*); | ||||
| - Some ingredients; | ||||
| - The Wok (third plate used to cook 3 ingredients recipes everywhere); | ||||
| - All collectible treasure (including pet eggs and costumes); | ||||
| - Li and Li song; | ||||
| - All songs (other than Li's song since it is learned when Li is obtained); | ||||
| - Transportation to transturtles. | ||||
| - Dishes (used to learn recipes)<sup>*</sup> | ||||
| - Some ingredients | ||||
| - The Wok (third plate used to cook 3-ingredient recipes everywhere) | ||||
| - All collectible treasure (including pet eggs and costumes) | ||||
| - Li and Li's song | ||||
| - All songs (other than Li's song since it is learned when Li is obtained) | ||||
| - Transportation to transturtles | ||||
| 
 | ||||
| Also, there is the option to randomize every ingredient drops (from fishes, monsters | ||||
| or plants). | ||||
| 
 | ||||
| *Note that, unlike in the vanilla game, the recipes for dishes (other than the Sea Loaf) | ||||
| cannot be cooked (and learn) before being obtained as randomized items. Also, enemies and plants | ||||
| <sup>*</sup> Note that, unlike in the vanilla game, the recipes for dishes (other than the Sea Loaf) | ||||
| cannot be cooked (or learned) before being obtained as randomized items. Also, enemies and plants | ||||
| that drop dishes that have not been learned before will drop ingredients of this dish instead. | ||||
| 
 | ||||
| ## What is the goal of the game? | ||||
|  | @ -57,8 +57,8 @@ Any items specified above can be in another player's world. | |||
| No visuals are shown when finding locations other than collectible treasure. | ||||
| For those treasures, the visual of the treasure is visually unchanged. | ||||
| After collecting a location check, a message will be shown to inform the player | ||||
| what has been collected, and who will receive it. | ||||
| what has been collected and who will receive it. | ||||
| 
 | ||||
| ## When the player receives an item, what happens? | ||||
| When you receive an item, a message will pop up to inform you where you received | ||||
| the item from, and which one it is. | ||||
| the item from and which one it was. | ||||
|  | @ -2,9 +2,12 @@ | |||
| 
 | ||||
| ## Required Software | ||||
| 
 | ||||
| - The original Aquaria Game (buyable from a lot of online game seller); | ||||
| - The original Aquaria Game (purchasable from most online game stores) | ||||
| - The [Aquaria randomizer](https://github.com/tioui/Aquaria_Randomizer/releases) | ||||
| - Optional, for sending [commands](/tutorial/Archipelago/commands/en) like `!hint`: the TextClient from [the most recent Archipelago release](https://github.com/ArchipelagoMW/Archipelago/releases) | ||||
| 
 | ||||
| ## Optional Software | ||||
|   | ||||
| - For sending [commands](/tutorial/Archipelago/commands/en) like `!hint`: the TextClient from [the most recent Archipelago release](https://github.com/ArchipelagoMW/Archipelago/releases) | ||||
| 
 | ||||
| ## Installation and execution Procedures | ||||
| 
 | ||||
|  | @ -13,10 +16,9 @@ | |||
| First, you should copy the original Aquaria folder game. The randomizer will possibly modify the game so that | ||||
| the original game will stop working. Copying the folder will guarantee that the original game keeps on working. | ||||
| Also, in Windows, the save files are stored in the Aquaria folder. So copying the Aquaria folder for every Multiworld | ||||
| game you play will make sure that every game has their own save game. | ||||
| game you play will make sure that every game has its own save game. | ||||
| 
 | ||||
| Unzip the Aquaria randomizer release and copy all unzipped files in the Aquaria game folder. The unzipped files | ||||
| are those: | ||||
| Unzip the Aquaria randomizer release and copy all unzipped files in the Aquaria game folder. The unzipped files are: | ||||
| - aquaria_randomizer.exe | ||||
| - OpenAL32.dll | ||||
| - override (directory) | ||||
|  | @ -25,11 +27,11 @@ are those: | |||
| - wrap_oal.dll | ||||
| - cacert.pem | ||||
| 
 | ||||
| If there is a conflict between file in the original game folder and the unzipped files, you should override | ||||
| the original files with the one of the unzipped randomizer. | ||||
| If there is a conflict between files in the original game folder and the unzipped files, you should overwrite | ||||
| the original files with the ones from the unzipped randomizer. | ||||
| 
 | ||||
| Finally, to launch the randomizer, you must use the command line interface (you can open the command line interface | ||||
| by writing `cmd` in the address bar of the Windows file explorer). Here is the command line to use to start the | ||||
| by typing `cmd` in the address bar of the Windows File Explorer). Here is the command line used to start the | ||||
| randomizer: | ||||
| 
 | ||||
| ```bash | ||||
|  | @ -44,8 +46,8 @@ aquaria_randomizer.exe  --name YourName --server theServer:thePort --password th | |||
| 
 | ||||
| ### Linux when using the AppImage | ||||
| 
 | ||||
| If you use the AppImage, just copy it in the Aquaria game folder. You then have to make it executable. You | ||||
| can do that from command line by using  | ||||
| If you use the AppImage, just copy it into the Aquaria game folder. You then have to make it executable. You | ||||
| can do that from command line by using: | ||||
| 
 | ||||
| ```bash | ||||
| chmod +x Aquaria_Randomizer-*.AppImage | ||||
|  | @ -65,7 +67,7 @@ or, if the room has a password: | |||
| ./Aquaria_Randomizer-*.AppImage --name YourName --server theServer:thePort --password thePassword | ||||
| ``` | ||||
| 
 | ||||
| Note that you should not have multiple Aquaria_Randomizer AppImage file in the same folder. If this situation occurred, | ||||
| Note that you should not have multiple Aquaria_Randomizer AppImage file in the same folder. If this situation occurs, | ||||
| the preceding commands will launch the game multiple times. | ||||
| 
 | ||||
| ### Linux when using the tar file | ||||
|  | @ -73,24 +75,23 @@ the preceding commands will launch the game multiple times. | |||
| First, you should copy the original Aquaria folder game. The randomizer will possibly modify the game so that | ||||
| the original game will stop working. Copying the folder will guarantee that the original game keeps on working. | ||||
| 
 | ||||
| Untar the Aquaria randomizer release and copy all extracted files in the Aquaria game folder. The extracted | ||||
| files are those: | ||||
| Untar the Aquaria randomizer release and copy all extracted files in the Aquaria game folder. The extracted files are: | ||||
| - aquaria_randomizer | ||||
| - override (directory) | ||||
| - usersettings.xml | ||||
| - cacert.pem | ||||
| 
 | ||||
| If there is a conflict between file in the original game folder and the extracted files, you should override | ||||
| the original files with the one of the extracted randomizer files. | ||||
| If there is a conflict between files in the original game folder and the extracted files, you should overwrite | ||||
| the original files with the ones from the extracted randomizer files. | ||||
| 
 | ||||
| Then, you should use your system package manager to install liblua5, libogg, libvorbis, libopenal and libsdl2. | ||||
| Then, you should use your system package manager to install `liblua5`, `libogg`, `libvorbis`, `libopenal` and `libsdl2`. | ||||
| On Debian base system (like Ubuntu), you can use the following command: | ||||
| 
 | ||||
| ```bash | ||||
| sudo apt install liblua5.1-0-dev libogg-dev libvorbis-dev libopenal-dev libsdl2-dev | ||||
| ``` | ||||
| 
 | ||||
| Also, if there is some `.so` files in the Aquaria original game folder (`libgcc_s.so.1`, `libopenal.so.1`, | ||||
| Also, if there are certain `.so` files in the original Aquaria game folder (`libgcc_s.so.1`, `libopenal.so.1`, | ||||
| `libSDL-1.2.so.0` and `libstdc++.so.6`), you should remove them from the Aquaria Randomizer game folder. Those are | ||||
| old libraries that will not work on the recent build of the randomizer. | ||||
| 
 | ||||
|  | @ -106,7 +107,7 @@ or, if the room has a password: | |||
| ./aquaria_randomizer --name YourName --server theServer:thePort --password thePassword | ||||
| ``` | ||||
| 
 | ||||
| Note: If you have a permission denied error when using the command line, you can use this command line to be | ||||
| Note: If you get a permission denied error when using the command line, you can use this command to be | ||||
| sure that your executable has executable permission: | ||||
| 
 | ||||
| ```bash | ||||
|  |  | |||
|  | @ -25,7 +25,7 @@ after_home_water_locations = [ | |||
|     "Open water top right area, bulb in the turtle room", | ||||
|     "Open water top right area, Transturtle", | ||||
|     "Open water bottom left area, bulb behind the chomper fish", | ||||
|     "Open water bottom left area, bulb inside the downest fish pass", | ||||
|     "Open water bottom left area, bulb inside the lowest fish pass", | ||||
|     "Open water skeleton path, bulb close to the right exit", | ||||
|     "Open water skeleton path, bulb behind the chomper fish", | ||||
|     "Open water skeleton path, King skull", | ||||
|  | @ -82,7 +82,7 @@ after_home_water_locations = [ | |||
|     "Mithalas cathedral, third urn in the path behind the flesh vein", | ||||
|     "Mithalas cathedral, one of the urns in the top right room", | ||||
|     "Mithalas cathedral, Mithalan Dress", | ||||
|     "Mithalas cathedral right area, urn bellow the left entrance", | ||||
|     "Mithalas cathedral right area, urn below the left entrance", | ||||
|     "Cathedral underground, bulb in the center part", | ||||
|     "Cathedral underground, first bulb in the top left part", | ||||
|     "Cathedral underground, second bulb in the top left part", | ||||
|  | @ -178,7 +178,7 @@ after_home_water_locations = [ | |||
|     "The body main area, bulb on the main path blocking tube", | ||||
|     "The body left area, first bulb in the top face room", | ||||
|     "The body left area, second bulb in the top face room", | ||||
|     "The body left area, bulb bellow the water stream", | ||||
|     "The body left area, bulb below the water stream", | ||||
|     "The body left area, bulb in the top path to the top face room", | ||||
|     "The body left area, bulb in the bottom face room", | ||||
|     "The body right area, bulb in the top face room", | ||||
|  |  | |||
|  | @ -18,7 +18,7 @@ class BindSongAccessTest(AquariaTestBase): | |||
|         """Test locations that require Bind song""" | ||||
|         locations = [ | ||||
|             "Verse cave right area, Big Seed", | ||||
|             "Home water, bulb in the path bellow Nautilus Prime", | ||||
|             "Home water, bulb in the path below Nautilus Prime", | ||||
|             "Home water, bulb in the bottom left room", | ||||
|             "Home water, Nautilus Egg", | ||||
|             "Song cave, Verse egg", | ||||
|  |  | |||
|  | @ -24,7 +24,7 @@ class BindSongOptionAccessTest(AquariaTestBase): | |||
|             "Song cave, bulb under the rock close to the song door", | ||||
|             "Song cave, bulb under the rock in the path to the singing statues", | ||||
|             "Naija's home, bulb under the rock at the right of the main path", | ||||
|             "Home water, bulb in the path bellow Nautilus Prime", | ||||
|             "Home water, bulb in the path below Nautilus Prime", | ||||
|             "Home water, bulb in the bottom left room", | ||||
|             "Home water, Nautilus Egg", | ||||
|             "Song cave, Verse egg", | ||||
|  |  | |||
|  | @ -39,7 +39,7 @@ class EnergyFormAccessTest(AquariaTestBase): | |||
|             "Mithalas cathedral, third urn in the path behind the flesh vein", | ||||
|             "Mithalas cathedral, one of the urns in the top right room", | ||||
|             "Mithalas cathedral, Mithalan Dress", | ||||
|             "Mithalas cathedral right area, urn bellow the left entrance", | ||||
|             "Mithalas cathedral right area, urn below the left entrance", | ||||
|             "Cathedral boss area, beating Mithalan God", | ||||
|             "Kelp Forest top left area, bulb close to the Verse egg", | ||||
|             "Kelp forest top left area, Verse egg", | ||||
|  | @ -67,7 +67,6 @@ class EnergyFormAccessTest(AquariaTestBase): | |||
|             "First secret", | ||||
|             "Sunken City cleared", | ||||
|             "Objective complete", | ||||
| 
 | ||||
|         ] | ||||
|         items = [["Energy form"]] | ||||
|         self.assertAccessDependency(locations, items) | ||||
|  | @ -1,31 +0,0 @@ | |||
| """ | ||||
| Author: Louis M | ||||
| Date: Thu, 18 Apr 2024 18:45:56 +0000 | ||||
| Description: Unit test used to test accessibility of locations with and without the bind song (with the early | ||||
|              energy form option) | ||||
| """ | ||||
| 
 | ||||
| from worlds.aquaria.test import AquariaTestBase, after_home_water_locations | ||||
| 
 | ||||
| 
 | ||||
| class EnergyFormAccessTest(AquariaTestBase): | ||||
|     """Unit test used to test accessibility of locations with and without the energy form""" | ||||
|     options = { | ||||
|         "early_energy_form": True, | ||||
|     } | ||||
| 
 | ||||
|     def test_energy_form_location(self) -> None: | ||||
|         """Test locations that require Energy form with early energy song enable""" | ||||
|         locations = [ | ||||
|             "Home water, Nautilus Egg", | ||||
|             "Naija's home, bulb after the energy door", | ||||
|             "Energy temple first area, bulb in the bottom room blocked by a rock", | ||||
|             "Energy temple second area, bulb under the rock", | ||||
|             "Energy temple bottom entrance, Krotite armor", | ||||
|             "Energy temple third area, bulb in the bottom path", | ||||
|             "Energy temple boss area, Fallen god tooth", | ||||
|             "Energy temple blaster room, Blaster egg", | ||||
|             *after_home_water_locations | ||||
|         ] | ||||
|         items = [["Energy form"]] | ||||
|         self.assertAccessDependency(locations, items) | ||||
|  | @ -21,7 +21,7 @@ class FishFormAccessTest(AquariaTestBase): | |||
|             "Mithalas city, urn inside a home fish pass", | ||||
|             "Kelp Forest top right area, bulb in the top fish pass", | ||||
|             "The veil bottom area, Verse egg", | ||||
|             "Open water bottom left area, bulb inside the downest fish pass", | ||||
|             "Open water bottom left area, bulb inside the lowest fish pass", | ||||
|             "Kelp Forest top left area, bulb close to the Verse egg", | ||||
|             "Kelp forest top left area, Verse egg", | ||||
|             "Mermog cave, bulb in the left part of the cave", | ||||
|  |  | |||
|  | @ -27,7 +27,7 @@ class LiAccessTest(AquariaTestBase): | |||
|             "The body main area, bulb on the main path blocking tube", | ||||
|             "The body left area, first bulb in the top face room", | ||||
|             "The body left area, second bulb in the top face room", | ||||
|             "The body left area, bulb bellow the water stream", | ||||
|             "The body left area, bulb below the water stream", | ||||
|             "The body left area, bulb in the top path to the top face room", | ||||
|             "The body left area, bulb in the bottom face room", | ||||
|             "The body right area, bulb in the top face room", | ||||
|  |  | |||
|  | @ -41,7 +41,7 @@ class NatureFormAccessTest(AquariaTestBase): | |||
|             "The body main area, bulb on the main path blocking tube", | ||||
|             "The body left area, first bulb in the top face room", | ||||
|             "The body left area, second bulb in the top face room", | ||||
|             "The body left area, bulb bellow the water stream", | ||||
|             "The body left area, bulb below the water stream", | ||||
|             "The body left area, bulb in the top path to the top face room", | ||||
|             "The body left area, bulb in the bottom face room", | ||||
|             "The body right area, bulb in the top face room", | ||||
|  |  | |||
		Loading…
	
		Reference in New Issue