Jak 1: Initial commit: Cell Locations, Items, and Regions modeled.

This commit is contained in:
massimilianodelliubaldini
2024-04-14 11:10:37 -04:00
parent 7e660dbd23
commit 57b2ecf14c
8 changed files with 340 additions and 0 deletions

View File

@@ -0,0 +1,25 @@
import typing
from BaseClasses import Item
class JakAndDaxterItem(Item):
game: str = "Jak and Daxter: The Precursor Legacy"
# Items Found Multiple Times
generic_item_table = {
"Power Cell": 1000,
"Scout Fly": 2000,
"Precursor Orb": 3000
}
# Items Only Found Once
special_item_table = {
"Fisherman's Boat": 0,
"Sculptor's Muse": 1,
"Flut Flut": 2,
"Blue Eco Switch": 3,
"Gladiator's Pontoons": 4,
"Yellow Eco Switch": 5
}
# All Items
item_table = {**generic_item_table, **special_item_table}

View File

@@ -0,0 +1,43 @@
import typing
import locs.CellLocations
import locs.ScoutLocations
from BaseClasses import Location
class JakAndDaxterLocation(Location):
game: str = "Jak and Daxter: The Precursor Legacy"
# All Locations
location_cellTable = {
**locGR_cellTable, \
**locSV_cellTable, \
**locFJ_cellTable, \
**locSB_cellTable, \
**locMI_cellTable, \
**locFC_cellTable, \
**locRV_cellTable, \
**locPB_cellTable, \
**locLPC_cellTable, \
**locBS_cellTable, \
**locMP_cellTable, \
**locVC_cellTable, \
**locSC_cellTable, \
**locSM_cellTable, \
**locLT_cellTable, \
**locGMC_cellTable, \
**locGR_scoutTable, \
**locSV_scoutTable, \
**locFJ_scoutTable, \
**locSB_scoutTable, \
**locMI_scoutTable, \
**locFC_scoutTable, \
**locRV_scoutTable, \
**locPB_scoutTable, \
**locLPC_scoutTable, \
**locBS_scoutTable, \
**locMP_scoutTable, \
**locVC_scoutTable, \
**locSC_scoutTable, \
**locSM_scoutTable, \
**locLT_scoutTable, \
**locGMC_scoutTable
}

View File

@@ -0,0 +1,12 @@
import typing
from dataclasses import dataclass
from Options import DefaultOnToggle, Range, Toggle, DeathLink, Choice, PerGameCommonOptions, OptionSet
from .Items import action_item_table
class EnableScoutFlies(Toggle):
"""Enable to include each Scout Fly as a check. Adds 213 checks to the pool."""
display_name = "Enable Scout Flies"
# class EnablePrecursorOrbs(Toggle):
# """Enable to include each Precursor Orb as a check. Adds 2000 checks to the pool."""
# display_name = "Enable Precursor Orbs"

View File

@@ -0,0 +1,33 @@
import typing
from BaseClasses import Region, Location
from .Locations import JakAndDaxterLocation, location_table
class JakAndDaxterLevel(int, Enum):
GEYSER_ROCK = 0
SANDOVER_VILLAGE = 1
FORBIDDEN_JUNGLE = 2
SENTINEL_BEACH = 3
MISTY_ISLAND = 4
FIRE_CANYON = 5
ROCK_VILLAGE = 6
PRECURSOR_BASIN = 7
LOST_PRECURSOR_CITY = 8
BOGGY_SWAMP = 9
MOUNTAIN_PASS = 10
VOLCANIC_CRATER = 11
SPIDER_CAVE = 12
SNOWY_MOUNTAIN = 13
LAVA_TUBE = 14
GOL_AND_MAIAS_CITADEL = 15
class JakAndDaxterSubLevel(int, Enum):
MAIN = 0
FORBIDDEN_JUNGLE_PLANT_ROOM = 1
SENTINEL_BEACH_CANNON_TOWER = 2
BOGGY_SWAMP_FLUT_FLUT = 3
MOUNTAIN_PASS_SHORTCUT = 4
SNOWY_MOUNTAIN_FLUT_FLUT = 5
SNOWY_MOUNTAIN_LURKER_FORT = 6
class JakAndDaxterRegion(Region):
game: str = "Jak and Daxter: The Precursor Legacy"

View File

View File

View File

@@ -0,0 +1,164 @@
# Geyser Rock
locGR_cellTable = {
"GR: Find The Cell On The Path": 0,
"GR: Open The Precursor Door": 1,
"GR: Climb Up The Cliff": 2,
"GR: Free 7 Scout Flies": 3
}
# Sandover Village
locSV_cellTable = {
"SV: Bring 90 Orbs To The Mayor": 4,
"SV: Bring 90 Orbs to Your Uncle": 5,
"SV: Herd The Yakows Into The Pen": 6,
"SV: Bring 120 Orbs To The Oracle (1)": 7,
"SV: Bring 120 Orbs To The Oracle (2)": 8,
"SV: Free 7 Scout Flies": 9
}
# Forbidden Jungle
locFJ_cellTable = {
"FJ: Connect The Eco Beams": 10,
"FJ: Get To The Top Of The Temple": 11,
"FJ: Find The Blue Vent Switch": 12,
"FJ: Defeat The Dark Eco Plant": 13,
"FJ: Catch 200 Pounds Of Fish": 14,
"FJ: Follow The Canyon To The Sea": 15,
"FJ: Open The Locked Temple Door": 16,
"FJ: Free 7 Scout Flies": 17
}
# Sentinel Beach
locSB_cellTable = {
"SB: Unblock The Eco Harvesters": 18,
"SB: Push The Flut Flut Egg Off The Cliff": 19,
"SB: Get The Power Cell From The Pelican": 20,
"SB: Chase The Seagulls": 21,
"SB: Launch Up To The Cannon Tower": 22,
"SB: Explore The Beach": 23,
"SB: Climb The Sentinel": 24,
"SB: Free 7 Scout Flies": 25
}
# Misty Island
locMI_cellTable = {
"MI: Catch The Sculptor's Muse": 26,
"MI: Climb The Lurker Ship": 27,
"MI: Stop The Cannon": 28,
"MI: Return To The Dark Eco Pool": 29,
"MI: Destroy the Balloon Lurkers": 30,
"MI: Use Zoomer To Reach Power Cell": 31,
"MI: Use Blue Eco To Reach Power Cell": 32,
"MI: Free 7 Scout Flies": 33
}
# Fire Canyon
locFC_cellTable = {
"FC: Reach The End Of Fire Canyon": 34,
"FC: Free 7 Scout Flies": 35
}
# Rock Village
locRV_cellTable = {
"RV: Bring 90 Orbs To The Gambler": 36,
"RV: Bring 90 Orbs To The Geologist": 37,
"RV: Bring 90 Orbs To The Warrior": 38,
"RV: Bring 120 Orbs To The Oracle (1)": 39,
"RV: Bring 120 Orbs To The Oracle (2)": 40,
"RV: Free 7 Scout Flies": 41
}
# Precursor Basin
locPB_cellTable = {
"PB: Herd The Moles Into Their Hole": 42,
"PB: Catch The Flying Lurkers": 43,
"PB: Beat Record Time On The Gorge": 44,
"PB: Get The Power Cell Over The Lake": 45,
"PB: Cure Dark Eco Infected Plants": 46,
"PB: Navigate The Purple Precursor Rings": 47,
"PB: Navigate The Blue Precursor Rings": 48,
"PB: Free 7 Scout Flies": 49
}
# Lost Precursor City
locLPC_cellTable = {
"LPC: Raise The Chamber": 50,
"LPC: Follow The Colored Pipes": 51,
"LPC: Reach The Bottom Of The City": 52,
"LPC: Quickly Cross The Dangerous Pool": 53,
"LPC: Match The Platform Colors": 54,
"LPC: Climb The Slide Tube": 55,
"LPC: Reach The Center Of The Complex": 56,
"LPC: Free 7 Scout Flies": 57
}
# Boggy Swamp
locBS_cellTable = {
"BS: Ride The Flut Flut": 58,
"BS: Protect Farthy's Snacks": 59,
"BS: Defeat The Lurker Ambush": 60,
"BS: Break The Tethers To The Zeppelin (1)": 61,
"BS: Break The Tethers To The Zeppelin (2)": 62,
"BS: Break The Tethers To The Zeppelin (3)": 63,
"BS: Break The Tethers To The Zeppelin (4)": 64,
"BS: Free 7 Scout Flies": 65
}
# Mountain Pass
locMP_cellTable = {
"MP: Defeat Klaww": 66,
"MP: Reach The End Of The Mountain Pass": 67,
"MP: Find The Hidden Power Cell": 68,
"MP: Free 7 Scout Flies": 69
}
# Volcanic Crater
locVC_cellTable = {
"VC: Bring 90 Orbs To The Miners (1)": 70,
"VC: Bring 90 Orbs To The Miners (2)": 71,
"VC: Bring 90 Orbs To The Miners (3)": 72,
"VC: Bring 90 Orbs To The Miners (4)": 73,
"VC: Bring 120 Orbs To The Oracle (1)": 74,
"VC: Bring 120 Orbs To The Oracle (2)": 75,
"VC: Find The Hidden Power Cell": 76,
"VC: Free 7 Scout Flies": 77
}
# Spider Cave
locSC_cellTable = {
"SC: Use Your Goggles To Shoot The Gnawing Lurkers": 78,
"SC: Destroy The Dark Eco Crystals": 79,
"SC: Explore The Dark Cave": 80,
"SC: Climb The Giant Robot": 81,
"SC: Launch To The Poles": 82,
"SC: Navigate The Spider Tunnel": 83,
"SC: Climb the Precursor Platforms": 84,
"SC: Free 7 Scout Flies": 85
}
# Snowy Mountain
locSM_cellTable = {
"SM: Find The Yellow Vent Switch": 86,
"SM: Stop The 3 Lurker Glacier Troops": 87,
"SM: Deactivate The Precursor Blockers": 88,
"SM: Open The Frozen Crate": 89,
"SM: Get Through The Lurker Fort": 90,
"SM: Open The Lurker Fort Gate": 91,
"SM: Survive The Lurker Infested Cave": 92,
"SM: Free 7 Scout Flies": 93
}
# Lava Tube
locLT_cellTable = {
"LT: Cross The Lava Tube": 94,
"LT: Free 7 Scout Flies": 95
}
# Gol and Maias Citadel
locGMC_cellTable = {
"GMC: Free The Blue Sage": 96,
"GMC: Free The Red Sage": 97,
"GMC: Free The Yellow Sage": 98,
"GMC: Free The Green Sage": 99,
"GMC: Free 7 Scout Flies ": 100
}

View File

@@ -0,0 +1,63 @@
# Geyser Rock
locGR_scoutTable = {
}
# Sandover Village
locSV_scoutTable = {
}
# Forbidden Jungle
locFJ_scoutTable = {
}
# Sentinel Beach
locSB_scoutTable = {
}
# Misty Island
locMI_scoutTable = {
}
# Fire Canyon
locFC_scoutTable = {
}
# Rock Village
locRV_scoutTable = {
}
# Precursor Basin
locPB_scoutTable = {
}
# Lost Precursor City
locLPC_scoutTable = {
}
# Boggy Swamp
locBS_scoutTable = {
}
# Mountain Pass
locMP_scoutTable = {
}
# Volcanic Crater
locVC_scoutTable = {
}
# Spider Cave
locSC_scoutTable = {
}
# Snowy Mountain
locSM_scoutTable = {
}
# Lava Tube
locLT_scoutTable = {
}
# Gol and Maias Citadel
locGMC_scoutTable = {
}