* Change vanilla_emblem_pieces to randomize_emblem_pieces * Add jungle slider and starting tools options * Update option name and add preset * GICU changes * unnecessary * Update Options.py * Fix has_all * Update Options.py * Update Options.py * Some potenitial logic changes * Oops * Oops 2 * Cups choice options * typos * Logic tweaks * Ice Titan and Superboss changes * Suggested change and one more * Updating some other option descriptions for clarity/typos * Update Locations.py * commit * SYNTHESIS * commit * commit * commit * Add command to change communication path I'm not a python programmer, so do excuse the code etiquette. This aims to allow Linux users to communicate to their proton directory. * commit * commit * commit * commit * commit * commit * commit * commit * Update Client.py * Update Locations.py * Update Regions.py * commit * commit * commit * Update Rules.py * commit * commit * commit * commit logic changes and linux fix from other branch * commit * commit * Update __init__.py * Update Rules.py * commit * commit * commit * commit * add starting accessory setting * fix starting accessories bug * Update Locations.py * commit * add ap cost rando * fix some problem locations * add raft materials * Update Client.py * OK WORK THIS TIME PLEASE * Corrected typos * setting up for logic difficulty * commit 1 * commit 2 * commit 3 * minor error fix * some logic changes and fixed some typos * tweaks * commit * SYNTHESIS * commit * commit * commit * commit * commit * commit * commit * commit * commit * commit * commit * Update Client.py * Update Locations.py * Update Regions.py * commit * commit * commit * Update Rules.py * commit * commit * commit * commit logic changes and linux fix from other branch * commit * commit * Update __init__.py * Update Rules.py * commit * commit * commit * commit * add starting accessory setting * fix starting accessories bug * Update Locations.py * commit * add ap cost rando * fix some problem locations * add raft materials * Update Client.py * cleanup * commit 4 * tweaks 2 * tweaks 3 * Reset * Update __init__.py * Change vanilla_emblem_pieces to randomize_emblem_pieces * Add jungle slider and starting tools options * unnecessary * Vanilla Puppies Part 1 The easy part * Update __init__.py I'm not certain this is the exact right chest for Tea Party Garden, Waterfall Cavern, HT Cemetery, or Neverland Hold but logically it's the same. Will do a test run later and fix if need be * Vanilla Puppies Part 3 Wrong toggle cause I just copied over Emblem Pieces oops * Vanilla Puppies Part 4 Forgor commented out code * Vanilla Puppies Part 5 I now realize how this works and that what I had before was redundant * Update __init__.py Learning much about strings * cleanup * Update __init__.py Only missed one! * Update option name and add preset * GICU changes * Update Options.py * Fix has_all * Update Options.py * Update Options.py * Cups choice options * typos * Ice Titan and Superboss changes * Some potenitial logic changes * Oops * Oops 2 * Logic tweaks * Suggested change and one more * Updating some other option descriptions for clarity/typos * Update Locations.py * Add command to change communication path I'm not a python programmer, so do excuse the code etiquette. This aims to allow Linux users to communicate to their proton directory. * Moving over changes from REVAMP * whoops * Fix patch files on the website * Update test_goal.py * commit * Update worlds/kh1/__init__.py Co-authored-by: Scipio Wright <scipiowright@gmail.com> * change some default options * Missed a condition * let's try that * Update Options.py * unnecessary sub check * Some more cleanup * tuples * add icon * merge cleanup * merge cleanup 2 * merge clean up 3 * Update Data.py * Fix cups option * commit * Update Rules.py * Update Rules.py * phantom tweak * review commit * minor fixes * review 2 * minor typo fix * minor logic tweak * Update Client.py * Update __init__.py * Update Rules.py * Olympus Cup fixes * Update Options.py * even MORE tweaks * commit * Update Options.py * Update has_x_worlds * Update Rules.py * commit * Update Options.py * Update Options.py * Update Options.py * tweak 5 * Add Stacking Key Items and Halloween Town Key Item Bundle * Update worlds/kh1/Rules.py Co-authored-by: Scipio Wright <scipiowright@gmail.com> * Update Rules.py * commit * Update worlds/kh1/__init__.py Co-authored-by: Scipio Wright <scipiowright@gmail.com> * Update __init__.py * Update __init__.py * whoops * Update Rules.py * Update Rules.py * Fix documentation styling * Clean up option help text * Reordering options so they're consistent and fixing a logic bug when EOTW Unlock is item but door is emblems * Make have x world logic consider if the player has HAW on or not * Fix Atlantica beginner logic things, vanilla keyblade stats being broken, and some behind boss locations * Fix vanilla puppy option * hotfix for crabclaw logic * Fix defaults and some boss locations * Fix server spam * Remove 3 High Jump Item Workshop Logic, small client changes * Updates for PR --------- Co-authored-by: esutley <ecsutley@gmail.com> Co-authored-by: Goblin God <37878138+esutley@users.noreply.github.com> Co-authored-by: River Buizel <4911928+rocket0634@users.noreply.github.com> Co-authored-by: omnises <OmnisGamers@gmail.com> Co-authored-by: Omnises Nihilis <38057571+Omnises@users.noreply.github.com> Co-authored-by: Scipio Wright <scipiowright@gmail.com>
202 lines
9.1 KiB
Python
202 lines
9.1 KiB
Python
VANILLA_KEYBLADE_STATS = [
|
||
{"STR": 3, "CRR": 20, "CRB": 0, "REC": 30, "MP": 0}, # Kingdom Key
|
||
{"STR": 1, "CRR": 20, "CRB": 0, "REC": 30, "MP": 0}, # Dream Sword
|
||
{"STR": 1, "CRR": 0, "CRB": 0, "REC": 60, "MP": 0}, # Dream Shield
|
||
{"STR": 1, "CRR": 10, "CRB": 0, "REC": 30, "MP": 0}, # Dream Rod
|
||
{"STR": 0, "CRR": 20, "CRB": 0, "REC": 30, "MP": 0}, # Wooden Sword
|
||
{"STR": 5, "CRR": 10, "CRB": 0, "REC": 1, "MP": 0}, # Jungle King
|
||
{"STR": 6, "CRR": 20, "CRB": 0, "REC": 60, "MP": 0}, # Three Wishes
|
||
{"STR": 8, "CRR": 10, "CRB": 2, "REC": 30, "MP": 1}, # Fairy Harp
|
||
{"STR": 7, "CRR": 40, "CRB": 0, "REC": 1, "MP": 0}, # Pumpkinhead
|
||
{"STR": 6, "CRR": 20, "CRB": 0, "REC": 30, "MP": 1}, # Crabclaw
|
||
{"STR": 13, "CRR": 40, "CRB": 0, "REC": 60, "MP": 0}, # Divine Rose
|
||
{"STR": 4, "CRR": 20, "CRB": 0, "REC": 30, "MP": 2}, # Spellbinder
|
||
{"STR": 10, "CRR": 20, "CRB": 2, "REC": 90, "MP": 0}, # Olympia
|
||
{"STR": 10, "CRR": 20, "CRB": 0, "REC": 30, "MP": 1}, # Lionheart
|
||
{"STR": 9, "CRR": 2, "CRB": 0, "REC": 90, "MP": -1}, # Metal Chocobo
|
||
{"STR": 9, "CRR": 40, "CRB": 0, "REC": 1, "MP": 1}, # Oathkeeper
|
||
{"STR": 11, "CRR": 20, "CRB": 2, "REC": 30, "MP": -1}, # Oblivion
|
||
{"STR": 7, "CRR": 20, "CRB": 0, "REC": 1, "MP": 2}, # Lady Luck
|
||
{"STR": 5, "CRR": 200, "CRB": 2, "REC": 1, "MP": 0}, # Wishing Star
|
||
{"STR": 14, "CRR": 40, "CRB": 2, "REC": 90, "MP": 2}, # Ultima Weapon
|
||
{"STR": 3, "CRR": 20, "CRB": 0, "REC": 1, "MP": 3}, # Diamond Dust
|
||
{"STR": 8, "CRR": 10, "CRB": 16, "REC": 90, "MP": -2}, # One-Winged Angel
|
||
]
|
||
VANILLA_PUPPY_LOCATIONS = [
|
||
"Traverse Town Mystical House Glide Chest",
|
||
"Traverse Town Alleyway Behind Crates Chest",
|
||
"Traverse Town Item Workshop Left Chest",
|
||
"Traverse Town Secret Waterway Near Stairs Chest",
|
||
"Wonderland Queen's Castle Hedge Right Blue Chest",
|
||
"Wonderland Lotus Forest Nut Chest",
|
||
"Wonderland Tea Party Garden Above Lotus Forest Entrance 1st Chest",
|
||
"Olympus Coliseum Coliseum Gates Right Blue Trinity Chest",
|
||
"Deep Jungle Hippo's Lagoon Center Chest",
|
||
"Deep Jungle Vines 2 Chest",
|
||
"Deep Jungle Waterfall Cavern Middle Chest",
|
||
"Deep Jungle Camp Blue Trinity Chest",
|
||
"Agrabah Cave of Wonders Treasure Room Across Platforms Chest",
|
||
"Halloween Town Oogie's Manor Hollow Chest",
|
||
"Neverland Pirate Ship Deck White Trinity Chest",
|
||
"Agrabah Cave of Wonders Hidden Room Left Chest",
|
||
"Agrabah Cave of Wonders Entrance Tall Tower Chest",
|
||
"Agrabah Palace Gates High Opposite Palace Chest",
|
||
"Monstro Chamber 3 Platform Above Chamber 2 Entrance Chest",
|
||
"Wonderland Lotus Forest Through the Painting Thunder Plant Chest",
|
||
"Hollow Bastion Grand Hall Left of Gate Chest",
|
||
"Halloween Town Cemetery By Cat Shape Chest",
|
||
"Halloween Town Moonlight Hill White Trinity Chest",
|
||
"Halloween Town Guillotine Square Pumpkin Structure Right Chest",
|
||
"Monstro Mouth High Platform Across from Boat Chest",
|
||
"Monstro Chamber 6 Low Chest",
|
||
"Monstro Chamber 5 Atop Barrel Chest",
|
||
"Neverland Hold Flight 1st Chest",
|
||
"Neverland Hold Yellow Trinity Green Chest",
|
||
"Neverland Captain's Cabin Chest",
|
||
"Hollow Bastion Rising Falls Floating Platform Near Save Chest",
|
||
"Hollow Bastion Castle Gates Gravity Chest",
|
||
"Hollow Bastion Lift Stop Outside Library Gravity Chest"
|
||
]
|
||
CHAR_TO_KH = {
|
||
" ": 0x01,
|
||
"0": 0x21,
|
||
"1": 0x22,
|
||
"2": 0x23,
|
||
"3": 0x24,
|
||
"4": 0x25,
|
||
"5": 0x26,
|
||
"6": 0x27,
|
||
"7": 0x28,
|
||
"8": 0x29,
|
||
"9": 0x2A,
|
||
"A": 0x2B,
|
||
"B": 0x2C,
|
||
"C": 0x2D,
|
||
"D": 0x2E,
|
||
"E": 0x2F,
|
||
"F": 0x30,
|
||
"G": 0x31,
|
||
"H": 0x32,
|
||
"I": 0x33,
|
||
"J": 0x34,
|
||
"K": 0x35,
|
||
"L": 0x36,
|
||
"M": 0x37,
|
||
"N": 0x38,
|
||
"O": 0x39,
|
||
"P": 0x3A,
|
||
"Q": 0x3B,
|
||
"R": 0x3C,
|
||
"S": 0x3D,
|
||
"T": 0x3E,
|
||
"U": 0x3F,
|
||
"V": 0x40,
|
||
"W": 0x41,
|
||
"X": 0x42,
|
||
"Y": 0x43,
|
||
"Z": 0x44,
|
||
"a": 0x45,
|
||
"b": 0x46,
|
||
"c": 0x47,
|
||
"d": 0x48,
|
||
"e": 0x49,
|
||
"f": 0x4A,
|
||
"g": 0x4B,
|
||
"h": 0x4C,
|
||
"i": 0x4D,
|
||
"j": 0x4E,
|
||
"k": 0x4F,
|
||
"l": 0x50,
|
||
"m": 0x51,
|
||
"n": 0x52,
|
||
"o": 0x53,
|
||
"p": 0x54,
|
||
"q": 0x55,
|
||
"r": 0x56,
|
||
"s": 0x57,
|
||
"t": 0x58,
|
||
"u": 0x59,
|
||
"v": 0x5A,
|
||
"w": 0x5B,
|
||
"x": 0x5C,
|
||
"y": 0x5D,
|
||
"z": 0x5E
|
||
}
|
||
VANILLA_ABILITY_AP_COSTS = [
|
||
{"Ability Name": "Treasure Magnet", "AP Cost": 2, "Randomize": True},
|
||
{"Ability Name": "Combo Plus", "AP Cost": 1, "Randomize": True},
|
||
{"Ability Name": "Air Combo Plus", "AP Cost": 1, "Randomize": True},
|
||
{"Ability Name": "Critical Plus", "AP Cost": 2, "Randomize": True},
|
||
{"Ability Name": "Second Wind", "AP Cost": 3, "Randomize": True},
|
||
{"Ability Name": "Scan", "AP Cost": 1, "Randomize": True},
|
||
{"Ability Name": "Sonic Blade", "AP Cost": 3, "Randomize": True},
|
||
{"Ability Name": "Ars Arcanum", "AP Cost": 4, "Randomize": True},
|
||
{"Ability Name": "Strike Raid", "AP Cost": 3, "Randomize": True},
|
||
{"Ability Name": "Ragnarok", "AP Cost": 4, "Randomize": True},
|
||
{"Ability Name": "Trinity Limit", "AP Cost": 1, "Randomize": True},
|
||
{"Ability Name": "Cheer", "AP Cost": 1, "Randomize": True},
|
||
{"Ability Name": "Vortex", "AP Cost": 1, "Randomize": True},
|
||
{"Ability Name": "Aerial Sweep", "AP Cost": 2, "Randomize": True},
|
||
{"Ability Name": "Counter Attack", "AP Cost": 2, "Randomize": True},
|
||
{"Ability Name": "Blitz", "AP Cost": 2, "Randomize": True},
|
||
{"Ability Name": "Guard", "AP Cost": 2, "Randomize": True},
|
||
{"Ability Name": "Dodge Roll", "AP Cost": 1, "Randomize": True},
|
||
{"Ability Name": "MP Haste", "AP Cost": 3, "Randomize": True},
|
||
{"Ability Name": "MP Rage", "AP Cost": 3, "Randomize": True},
|
||
{"Ability Name": "Second Chance", "AP Cost": 5, "Randomize": True},
|
||
{"Ability Name": "Berserk", "AP Cost": 1, "Randomize": True},
|
||
{"Ability Name": "Jackpot", "AP Cost": 2, "Randomize": True},
|
||
{"Ability Name": "Lucky Strike", "AP Cost": 2, "Randomize": True},
|
||
{"Ability Name": "Charge", "AP Cost": 1, "Randomize": True},
|
||
{"Ability Name": "Rocket", "AP Cost": 1, "Randomize": True},
|
||
{"Ability Name": "Tornado", "AP Cost": 2, "Randomize": True},
|
||
{"Ability Name": "MP Gift", "AP Cost": 3, "Randomize": True},
|
||
{"Ability Name": "Raging Boar", "AP Cost": 2, "Randomize": True},
|
||
{"Ability Name": "Asp's Bite", "AP Cost": 2, "Randomize": True},
|
||
{"Ability Name": "Healing Herb", "AP Cost": 3, "Randomize": True},
|
||
{"Ability Name": "Wind Armor", "AP Cost": 3, "Randomize": True},
|
||
{"Ability Name": "Crescent", "AP Cost": 2, "Randomize": True},
|
||
{"Ability Name": "Sandstorm", "AP Cost": 2, "Randomize": True},
|
||
{"Ability Name": "Applause!", "AP Cost": 1, "Randomize": True},
|
||
{"Ability Name": "Blazing Fury", "AP Cost": 2, "Randomize": True},
|
||
{"Ability Name": "Icy Terror", "AP Cost": 2, "Randomize": True},
|
||
{"Ability Name": "Bolts of Sorrow", "AP Cost": 3, "Randomize": True},
|
||
{"Ability Name": "Ghostly Scream", "AP Cost": 3, "Randomize": True},
|
||
{"Ability Name": "Hummingbird", "AP Cost": 2, "Randomize": True},
|
||
{"Ability Name": "Time-Out", "AP Cost": 4, "Randomize": True},
|
||
{"Ability Name": "Storm´s Eye", "AP Cost": 3, "Randomize": True},
|
||
{"Ability Name": "Ferocious Lunge", "AP Cost": 2, "Randomize": True},
|
||
{"Ability Name": "Furious Bellow", "AP Cost": 3, "Randomize": True},
|
||
{"Ability Name": "Spiral Wave", "AP Cost": 1, "Randomize": True},
|
||
{"Ability Name": "Thunder Potion", "AP Cost": 3, "Randomize": True},
|
||
{"Ability Name": "Cure Potion", "AP Cost": 3, "Randomize": True},
|
||
{"Ability Name": "Aero Potion", "AP Cost": 3, "Randomize": True},
|
||
{"Ability Name": "Slapshot", "AP Cost": 1, "Randomize": True},
|
||
{"Ability Name": "Sliding Dash", "AP Cost": 1, "Randomize": True},
|
||
{"Ability Name": "Hurricane Blast", "AP Cost": 2, "Randomize": True},
|
||
{"Ability Name": "Ripple Drive", "AP Cost": 3, "Randomize": True},
|
||
{"Ability Name": "Stun Impact", "AP Cost": 2, "Randomize": True},
|
||
{"Ability Name": "Gravity Break", "AP Cost": 2, "Randomize": True},
|
||
{"Ability Name": "Zantetsuken", "AP Cost": 2, "Randomize": True},
|
||
{"Ability Name": "Tech Boost", "AP Cost": 2, "Randomize": True},
|
||
{"Ability Name": "Encounter Plus", "AP Cost": 1, "Randomize": True},
|
||
{"Ability Name": "Leaf Bracer", "AP Cost": 5, "Randomize": True},
|
||
{"Ability Name": "Evolution", "AP Cost": 3, "Randomize": True},
|
||
{"Ability Name": "EXP Zero", "AP Cost": 0, "Randomize": True},
|
||
{"Ability Name": "Combo Master", "AP Cost": 3, "Randomize": True}
|
||
]
|
||
|
||
WORLD_KEY_ITEMS = {
|
||
"Footprints": "Wonderland",
|
||
"Entry Pass": "Olympus Coliseum",
|
||
"Slides": "Deep Jungle",
|
||
"Crystal Trident": "Atlantica",
|
||
"Forget-Me-Not": "Halloween Town",
|
||
"Jack-In-The-Box": "Halloween Town",
|
||
"Theon Vol. 6": "Hollow Bastion"
|
||
}
|
||
|
||
LOGIC_BEGINNER = 0
|
||
LOGIC_NORMAL = 5
|
||
LOGIC_PROUD = 10
|
||
LOGIC_MINIMAL = 15 |