forked from ArchipelagoMW/Archipelago
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Undertale for AP (ArchipelagoMW#439)
Randomizes the items, and adds a new item to the pool, "Plot" which lets you go further and further in the game the more you have. Developers: WirTheAvali (Preferred name for professional use, mewlif)
- Loading branch information
1 parent
cfb767c
commit 6429e16
Showing
13 changed files
with
1,904 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Large diffs are not rendered by default.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,241 @@ | ||
from BaseClasses import Item, ItemClassification | ||
import typing | ||
|
||
|
||
class ItemData(typing.NamedTuple): | ||
code: typing.Optional[int] | ||
classification: any | ||
|
||
|
||
class UndertaleItem(Item): | ||
game: str = "Undertale" | ||
|
||
|
||
item_table = { | ||
"Progressive Plot": ItemData(77700, ItemClassification.progression), | ||
"Progressive Weapons": ItemData(77701, ItemClassification.useful), | ||
"Progressive Armor": ItemData(77702, ItemClassification.useful), | ||
"Monster Candy": ItemData(77001, ItemClassification.filler), | ||
"Croquet Roll": ItemData(77002, ItemClassification.filler), | ||
"Stick": ItemData(77003, ItemClassification.useful), | ||
"Bandage": ItemData(77004, ItemClassification.useful), | ||
"Rock Candy": ItemData(77005, ItemClassification.filler), | ||
"Pumpkin Rings": ItemData(77006, ItemClassification.filler), | ||
"Spider Donut": ItemData(77007, ItemClassification.filler), | ||
"Stoic Onion": ItemData(77008, ItemClassification.filler), | ||
"Ghost Fruit": ItemData(77009, ItemClassification.filler), | ||
"Spider Cider": ItemData(77010, ItemClassification.filler), | ||
"Butterscotch Pie": ItemData(77011, ItemClassification.useful), | ||
"Faded Ribbon": ItemData(77012, ItemClassification.useful), | ||
"Toy Knife": ItemData(77013, ItemClassification.useful), | ||
"Tough Glove": ItemData(77014, ItemClassification.useful), | ||
"Manly Bandanna": ItemData(77015, ItemClassification.useful), | ||
"Snowman Piece": ItemData(77016, ItemClassification.useful), | ||
"Nice Cream": ItemData(77017, ItemClassification.filler), | ||
"Puppydough Icecream": ItemData(77018, ItemClassification.filler), | ||
"Bisicle": ItemData(77019, ItemClassification.filler), | ||
"Unisicle": ItemData(77020, ItemClassification.filler), | ||
"Cinnamon Bun": ItemData(77021, ItemClassification.filler), | ||
"Temmie Flakes": ItemData(77022, ItemClassification.filler), | ||
"Abandoned Quiche": ItemData(77023, ItemClassification.filler), | ||
"Old Tutu": ItemData(77024, ItemClassification.useful), | ||
"Ballet Shoes": ItemData(77025, ItemClassification.useful), | ||
"Punch Card": ItemData(77026, ItemClassification.progression), | ||
"Annoying Dog": ItemData(77027, ItemClassification.filler), | ||
"Dog Salad": ItemData(77028, ItemClassification.filler), | ||
"Dog Residue": ItemData(77029, ItemClassification.filler), | ||
"Astronaut Food": ItemData(77035, ItemClassification.filler), | ||
"Instant Noodles": ItemData(77036, ItemClassification.useful), | ||
"Crab Apple": ItemData(77037, ItemClassification.filler), | ||
"Hot Dog...?": ItemData(77038, ItemClassification.progression), | ||
"Hot Cat": ItemData(77039, ItemClassification.filler), | ||
"Glamburger": ItemData(77040, ItemClassification.filler), | ||
"Sea Tea": ItemData(77041, ItemClassification.filler), | ||
"Starfait": ItemData(77042, ItemClassification.filler), | ||
"Legendary Hero": ItemData(77043, ItemClassification.filler), | ||
"Cloudy Glasses": ItemData(77044, ItemClassification.useful), | ||
"Torn Notebook": ItemData(77045, ItemClassification.useful), | ||
"Stained Apron": ItemData(77046, ItemClassification.useful), | ||
"Burnt Pan": ItemData(77047, ItemClassification.useful), | ||
"Cowboy Hat": ItemData(77048, ItemClassification.useful), | ||
"Empty Gun": ItemData(77049, ItemClassification.useful), | ||
"Heart Locket": ItemData(77050, ItemClassification.useful), | ||
"Worn Dagger": ItemData(77051, ItemClassification.useful), | ||
"Real Knife": ItemData(77052, ItemClassification.useful), | ||
"The Locket": ItemData(77053, ItemClassification.useful), | ||
"Bad Memory": ItemData(77054, ItemClassification.filler), | ||
"Dream": ItemData(77055, ItemClassification.filler), | ||
"Undyne's Letter": ItemData(77056, ItemClassification.filler), | ||
"Undyne Letter EX": ItemData(77057, ItemClassification.progression), | ||
"Popato Chisps": ItemData(77058, ItemClassification.filler), | ||
"Junk Food": ItemData(77059, ItemClassification.filler), | ||
"Mystery Key": ItemData(77060, ItemClassification.filler), | ||
"Face Steak": ItemData(77061, ItemClassification.filler), | ||
"Hush Puppy": ItemData(77062, ItemClassification.filler), | ||
"Snail Pie": ItemData(77063, ItemClassification.filler), | ||
"temy armor": ItemData(77064, ItemClassification.useful), | ||
"Complete Skeleton": ItemData(77779, ItemClassification.progression), | ||
"Fish": ItemData(77780, ItemClassification.progression), | ||
"DT Extractor": ItemData(77782, ItemClassification.progression), | ||
"Mettaton Plush": ItemData(77786, ItemClassification.progression), | ||
"Left Home Key": ItemData(77787, ItemClassification.progression), | ||
"LOVE": ItemData(77788, ItemClassification.useful), | ||
"Right Home Key": ItemData(77789, ItemClassification.progression), | ||
"Key Piece": ItemData(77000, ItemClassification.progression), | ||
"100G": ItemData(77999, ItemClassification.useful), | ||
"500G": ItemData(77998, ItemClassification.useful), | ||
"1000G": ItemData(77997, ItemClassification.progression), | ||
"ATK Up": ItemData(77065, ItemClassification.useful), | ||
"DEF Up": ItemData(77066, ItemClassification.useful), | ||
"HP Up": ItemData(77067, ItemClassification.useful), | ||
"FIGHT": ItemData(77077, ItemClassification.progression), | ||
"ACT": ItemData(77078, ItemClassification.progression), | ||
"ITEM": ItemData(77079, ItemClassification.progression), | ||
"MERCY": ItemData(77080, ItemClassification.progression), | ||
"Ruins Key": ItemData(77081, ItemClassification.progression), | ||
"Snowdin Key": ItemData(77082, ItemClassification.progression), | ||
"Waterfall Key": ItemData(77083, ItemClassification.progression), | ||
"Hotland Key": ItemData(77084, ItemClassification.progression), | ||
"Core Key": ItemData(77085, ItemClassification.progression), | ||
"Undyne Date": ItemData(None, ItemClassification.progression), | ||
"Alphys Date": ItemData(None, ItemClassification.progression), | ||
"Papyrus Date": ItemData(None, ItemClassification.progression), | ||
} | ||
|
||
non_key_items = { | ||
"Butterscotch Pie": 1, | ||
"500G": 2, | ||
"1000G": 2, | ||
"Face Steak": 1, | ||
"Snowman Piece": 1, | ||
"Instant Noodles": 1, | ||
"Astronaut Food": 2, | ||
"Hot Cat": 1, | ||
"Abandoned Quiche": 1, | ||
"Spider Donut": 1, | ||
"Spider Cider": 1, | ||
"Hush Puppy": 1, | ||
} | ||
|
||
required_armor = { | ||
"Cloudy Glasses": 1, | ||
"Manly Bandanna": 1, | ||
"Old Tutu": 1, | ||
"Stained Apron": 1, | ||
"Heart Locket": 1, | ||
"Faded Ribbon": 1, | ||
"Cowboy Hat": 1, | ||
} | ||
|
||
required_weapons = { | ||
"Torn Notebook": 1, | ||
"Tough Glove": 1, | ||
"Ballet Shoes": 1, | ||
"Burnt Pan": 1, | ||
"Worn Dagger": 1, | ||
"Toy Knife": 1, | ||
"Empty Gun": 1, | ||
} | ||
|
||
plot_items = { | ||
"Complete Skeleton": 1, | ||
"Fish": 1, | ||
"Mettaton Plush": 1, | ||
"DT Extractor": 1, | ||
} | ||
|
||
key_items = { | ||
"Complete Skeleton": 1, | ||
"Fish": 1, | ||
"DT Extractor": 1, | ||
"Mettaton Plush": 1, | ||
"Punch Card": 3, | ||
"Hot Dog...?": 1, | ||
"ATK Up": 19, | ||
"DEF Up": 4, | ||
"HP Up": 19, | ||
"LOVE": 19, | ||
"Ruins Key": 1, | ||
"Snowdin Key": 1, | ||
"Waterfall Key": 1, | ||
"Hotland Key": 1, | ||
"Core Key": 1, | ||
} | ||
|
||
junk_weights_all = { | ||
"Bisicle": 12, | ||
"Legendary Hero": 8, | ||
"Glamburger": 10, | ||
"Crab Apple": 12, | ||
"Sea Tea": 12, | ||
"Nice Cream": 10, | ||
"Spider Donut": 10, | ||
"Popato Chisps": 12, | ||
"Junk Food": 12, | ||
"Temmie Flakes": 10, | ||
"Spider Cider": 8, | ||
"Hot Dog...?": 10, | ||
"Cinnamon Bun": 10, | ||
"Starfait": 12, | ||
"Punch Card": 8, | ||
"Monster Candy": 6, | ||
"100G": 6, | ||
"500G": 3, | ||
} | ||
|
||
junk_weights_neutral = { | ||
"Bisicle": 12, | ||
"Legendary Hero": 8, | ||
"Glamburger": 10, | ||
"Crab Apple": 12, | ||
"Sea Tea": 12, | ||
"Nice Cream": 10, | ||
"Spider Donut": 10, | ||
"Junk Food": 12, | ||
"Temmie Flakes": 10, | ||
"Spider Cider": 8, | ||
"Cinnamon Bun": 10, | ||
"Starfait": 12, | ||
"Punch Card": 8, | ||
"Monster Candy": 6, | ||
"100G": 6, | ||
"500G": 3, | ||
} | ||
|
||
junk_weights_pacifist = { | ||
"Bisicle": 12, | ||
"Legendary Hero": 8, | ||
"Glamburger": 10, | ||
"Crab Apple": 12, | ||
"Sea Tea": 12, | ||
"Nice Cream": 10, | ||
"Spider Donut": 10, | ||
"Popato Chisps": 12, | ||
"Junk Food": 12, | ||
"Temmie Flakes": 10, | ||
"Spider Cider": 8, | ||
"Hot Dog...?": 10, | ||
"Cinnamon Bun": 10, | ||
"Starfait": 12, | ||
"Punch Card": 8, | ||
"Monster Candy": 6, | ||
"100G": 6, | ||
"500G": 3, | ||
} | ||
|
||
junk_weights_genocide = { | ||
"Bisicle": 12, | ||
"Legendary Hero": 8, | ||
"Glamburger": 10, | ||
"Crab Apple": 12, | ||
"Sea Tea": 12, | ||
"Spider Donut": 10, | ||
"Junk Food": 12, | ||
"Temmie Flakes": 10, | ||
"Spider Cider": 8, | ||
"Cinnamon Bun": 10, | ||
"Starfait": 12, | ||
"Monster Candy": 6, | ||
"100G": 6, | ||
"500G": 3, | ||
} |
Oops, something went wrong.