forked from mirror/Archipelago
Some checks failed
Analyze modified files / flake8 (push) Failing after 2m28s
Build / build-win (push) Has been cancelled
Build / build-ubuntu2204 (push) Has been cancelled
ctest / Test C++ ubuntu-latest (push) Has been cancelled
ctest / Test C++ windows-latest (push) Has been cancelled
Analyze modified files / mypy (push) Has been cancelled
Build and Publish Docker Images / Push Docker image to Docker Hub (push) Successful in 5m4s
Native Code Static Analysis / scan-build (push) Failing after 5m2s
type check / pyright (push) Successful in 1m7s
unittests / Test Python 3.11.2 ubuntu-latest (push) Failing after 16m23s
unittests / Test Python 3.12 ubuntu-latest (push) Failing after 28m19s
unittests / Test Python 3.13 ubuntu-latest (push) Failing after 14m49s
unittests / Test hosting with 3.13 on ubuntu-latest (push) Successful in 5m0s
unittests / Test Python 3.13 macos-latest (push) Has been cancelled
unittests / Test Python 3.11 windows-latest (push) Has been cancelled
unittests / Test Python 3.13 windows-latest (push) Has been cancelled
308 lines
7.9 KiB
Python
308 lines
7.9 KiB
Python
from .items import BASE_ID
|
|
boss_flags = {
|
|
0b1: BASE_ID,
|
|
0b10: BASE_ID + 1,
|
|
0b100: BASE_ID + 2,
|
|
0b1000: BASE_ID + 3,
|
|
0b10000: BASE_ID + 8,
|
|
0b100000: BASE_ID + 15,
|
|
0b1000000: BASE_ID + 16,
|
|
0b10000000: BASE_ID + 17,
|
|
0b100000000: BASE_ID + 18,
|
|
# Skip all Revenge, use chapter ID for it
|
|
# Use planet flags for MWW
|
|
}
|
|
|
|
treasure_base_id = BASE_ID + 19
|
|
|
|
deluxe_essence_flags = {
|
|
0b10: BASE_ID + 92,
|
|
0b100: BASE_ID + 89,
|
|
0b1000: BASE_ID + 103,
|
|
0b10000: BASE_ID + 94,
|
|
0b100000: BASE_ID + 107,
|
|
0b1000000: BASE_ID + 104,
|
|
0b100000000: BASE_ID + 88,
|
|
0b1000000000: BASE_ID + 100,
|
|
0b10000000000: BASE_ID + 90,
|
|
0b100000000000: BASE_ID + 96,
|
|
0b1000000000000: BASE_ID + 93,
|
|
0b10000000000000: BASE_ID + 110,
|
|
0b100000000000000: BASE_ID + 111,
|
|
0b1000000000000000: BASE_ID + 97,
|
|
0b10000000000000000: BASE_ID + 108,
|
|
0b100000000000000000: BASE_ID + 98,
|
|
0b1000000000000000000: BASE_ID + 105,
|
|
0b10000000000000000000: BASE_ID + 112,
|
|
0b100000000000000000000: BASE_ID + 101,
|
|
}
|
|
|
|
planet_flags = {
|
|
0b1: BASE_ID + 87,
|
|
0b10: BASE_ID + 99,
|
|
0b100: BASE_ID + 95,
|
|
0b1000: BASE_ID + 102,
|
|
0b10000: BASE_ID + 91,
|
|
0b100000: BASE_ID + 106,
|
|
0b1000000: BASE_ID + 109
|
|
}
|
|
|
|
consumable_table = {
|
|
0x100: (0x0010, 0x4),
|
|
0x200: (0x0020, 0x10),
|
|
0x201: (0x0318, 0x40),
|
|
0x400: (0x0320, 0x10),
|
|
0x202: (0x0629, 0x40),
|
|
0x101: (0x0628, 0x40),
|
|
0x203: (0x0638, 0x4),
|
|
0x204: (0x0c1c, 0x4),
|
|
0x102: (0x0c28, 0x10),
|
|
0x800: (0x0c29, 0x1),
|
|
0x103: (0x0c19, 0x1),
|
|
0x205: (0x0c18, 0x40),
|
|
0x401: (0x0c21, 0x10),
|
|
0x104: (0x0c23, 0x10),
|
|
0x206: (0x0f20, 0x10),
|
|
0x801: (0x0f34, 0x4),
|
|
0x105: (0x0f33, 0x40),
|
|
0x207: (0x0f33, 0x10),
|
|
0x208: (0x0f48, 0x4),
|
|
0x209: (0x0f48, 0x10),
|
|
0x20A: (0x0f48, 0x40),
|
|
0x106: (0x1b02, 0x1),
|
|
0x107: (0x1b01, 0x40),
|
|
0x802: (0x1b00, 0x4),
|
|
0x803: (0x1b05, 0x10),
|
|
0x804: (0x1b01, 0x4),
|
|
0x805: (0x1b00, 0x40),
|
|
0x806: (0x1b00, 0x10),
|
|
0x807: (0x1b05, 0x1),
|
|
0x808: (0x1b04, 0x40),
|
|
0x809: (0x1b01, 0x1),
|
|
0x80A: (0x1b05, 0x4),
|
|
0x80B: (0x1b01, 0x10),
|
|
0x108: (0x1238, 0x4),
|
|
0x20B: (0x1238, 0x10),
|
|
0x20C: (0x1241, 0x1),
|
|
0x20D: (0x1514, 0x1),
|
|
0x80C: (0x1511, 0x10),
|
|
0x20E: (0x1552, 0x10),
|
|
0x20F: (0x1553, 0x4),
|
|
0x210: (0x1552, 0x40),
|
|
0x402: (0x151B, 0x1),
|
|
0x109: (0x1540, 0x10),
|
|
0x10A: (0x1540, 0x40),
|
|
0x211: (0x1540, 0x4),
|
|
0x80D: (0x1548, 0x4),
|
|
0x212: (0x1522, 0x1),
|
|
0x10B: (0x1531, 0x1),
|
|
0x80E: (0x1e00, 0x40),
|
|
0x80F: (0x1e00, 0x10),
|
|
0x810: (0x1e01, 0x10),
|
|
0x811: (0x1e04, 0x40),
|
|
0x812: (0x1e04, 0x10),
|
|
0x813: (0x1e01, 0x1),
|
|
0x814: (0x1e04, 0x4),
|
|
0x815: (0x1e01, 0x40),
|
|
0x816: (0x1e01, 0x4),
|
|
0x10C: (0x1e03, 0x40),
|
|
0x860: (0x1809, 0x1),
|
|
0x861: (0x1808, 0x4),
|
|
0x862: (0x1808, 0x10),
|
|
0x863: (0x1808, 0x1),
|
|
0x817: (0x2702, 0x10),
|
|
0x818: (0x2718, 0x1),
|
|
0x819: (0x2702, 0x4),
|
|
0x81A: (0x2717, 0x40),
|
|
0x81B: (0x2702, 0x4),
|
|
0x213: (0x2d25, 0x40),
|
|
0x10D: (0x2d25, 0x1),
|
|
# gc st - maxim save - invalid
|
|
0x214: (0x2d39, 0x10),
|
|
0x10E: (0x2f69, 0x4),
|
|
0x81C: (0x2f68, 0x10),
|
|
0x81D: (0x2f68, 0x40),
|
|
0x81E: (0x2f69, 0x1),
|
|
0x10F: (0x2d4b, 0x10),
|
|
0x215: (0x2d72, 0x10),
|
|
# gc cr - maxim save - invalid
|
|
0x110: (0x2d78, 0x10),
|
|
0x111: (0x2d78, 0x4),
|
|
0x112: (0x2d96, 0x40),
|
|
0x113: (0x2f80, 0x10),
|
|
0x81F: (0x2f81, 0x4),
|
|
0x820: (0x2f80, 0x40),
|
|
0x821: (0x2f81, 0x1),
|
|
0x114: (0x2d52, 0x10),
|
|
# gc ot - maxim save - invalid
|
|
0x115: (0x2d5a, 0x40),
|
|
0x116: (0x2da3, 0x40),
|
|
0x216: (0x2da4, 0x10),
|
|
0x117: (0x2de1, 0x40),
|
|
0x118: (0x2f20, 0x4),
|
|
0x822: (0x2e90, 0x10),
|
|
0x823: (0x2e90, 0x40),
|
|
0x824: (0x2e92, 0x4),
|
|
0x825: (0x2e92, 0x1),
|
|
0x826: (0x2e90, 0x4),
|
|
0x827: (0x2e91, 0x10),
|
|
0x828: (0x2e91, 0x4),
|
|
0x829: (0x2e91, 0x1),
|
|
0x119: (0x2f71, 0x4),
|
|
0x82A: (0x2f70, 0x10),
|
|
0x82B: (0x2f70, 0x40),
|
|
0x82C: (0x2f71, 0x1),
|
|
0x11A: (0x2ec0, 0x40),
|
|
0x82D: (0x2e68, 0x40),
|
|
0x11B: (0x2e1a, 0x40),
|
|
0x11C: (0x2e78, 0x4),
|
|
0x11D: (0x2e23, 0x10),
|
|
0x11E: (0x2e80, 0x4),
|
|
0x11F: (0x2db0, 0x40),
|
|
0x120: (0x2e50, 0x10),
|
|
0x217: (0x2e50, 0x40),
|
|
# gc ga - maxim save - invalid
|
|
0x82E: (0x2f31, 0x40),
|
|
0x82F: (0x2f32, 0x1),
|
|
0x830: (0x2f31, 0x10),
|
|
0x121: (0x2f30, 0x40),
|
|
0x122: (0x2edb, 0x4),
|
|
0x123: (0x2f3a, 0x10),
|
|
0x124: (0x2f43, 0x10),
|
|
0x159: (0x2F42, 0x4),
|
|
0x218: (0x2f43, 0x4),
|
|
0x230: (0x2F47, 0x40),
|
|
0x831: (0x2ef3, 0x1),
|
|
0x832: (0x2ef2, 0x4),
|
|
0x125: (0x2f08, 0x4),
|
|
0x833: (0x2f18, 0x10),
|
|
0x834: (0x2ef2, 0x40),
|
|
0x835: (0x2ef2, 0x10),
|
|
0x219: (0x2df0, 0x40),
|
|
0x126: (0x2df0, 0x4),
|
|
0x127: (0x2f28, 0x4),
|
|
0x21A: (0x2f29, 0x1),
|
|
0x21B: (0x2f29, 0x4),
|
|
0x21C: (0x2f49, 0x10),
|
|
0x128: (0x2f49, 0x4),
|
|
0x129: (0x2f79, 0x4),
|
|
0x836: (0x2f78, 0x10),
|
|
0x837: (0x2f78, 0x40),
|
|
0x838: (0x2f79, 0x1),
|
|
0x12A: (0x2d62, 0x10),
|
|
0x12B: (0x360b, 0x4),
|
|
0x12C: (0x3618, 0x4),
|
|
0x839: (0x3618, 0x10),
|
|
0x83A: (0x3618, 0x40),
|
|
0x83B: (0x3619, 0x1),
|
|
# mk 3 - maxim 1 - invalid
|
|
0x21D: (0x3930, 0x4),
|
|
0x83C: (0x3931, 0x1),
|
|
0x83D: (0x3930, 0x10),
|
|
0x83E: (0x3930, 0x40),
|
|
0x83F: (0x390C, 0x1),
|
|
0x840: (0x3909, 0x10),
|
|
0x12D: (0x390C, 0x10),
|
|
0x22F: (0x390B, 0x10),
|
|
0x841: (0x390B, 0x4),
|
|
0x842: (0x390B, 0x40),
|
|
0x843: (0x390B, 0x1),
|
|
0x844: (0x390C, 0x4),
|
|
0x232: (0x3912, 0x1),
|
|
0x864: (0x3C1A, 0x40),
|
|
0x403: (0x3C20, 0x40),
|
|
0x12E: (0x3C20, 0x4),
|
|
0x845: (0x3C28, 0x10),
|
|
0x846: (0x3C28, 0x40),
|
|
0x847: (0x3C29, 0x1),
|
|
0x12F: (0x3C28, 0x4),
|
|
0x130: (0x3F08, 0x1),
|
|
0x131: (0x4B18, 0x4),
|
|
0x848: (0x4B18, 0x40),
|
|
0x849: (0x4B18, 0x10),
|
|
0x84A: (0x4B12, 0x4),
|
|
0x84B: (0x4B12, 0x1),
|
|
0x84C: (0x4B10, 0x40),
|
|
0x84D: (0x4B11, 0x4),
|
|
0x84E: (0x4B11, 0x10),
|
|
0x84F: (0x4B11, 0x40),
|
|
0x850: (0x4B11, 0x1),
|
|
0x132: (0x4B12, 0x10),
|
|
0x851: (0x420A, 0x10),
|
|
0x852: (0x420A, 0x4),
|
|
0x853: (0x420A, 0x1),
|
|
0x404: (0x4209, 0x1),
|
|
0x133: (0x420A, 0x40),
|
|
0x854: (0x421E, 0x40),
|
|
0x855: (0x421F, 0x1),
|
|
0x856: (0x421F, 0x10),
|
|
0x21E: (0x4219, 0x10),
|
|
0x21F: (0x4220, 0x4),
|
|
0x134: (0x4220, 0x10),
|
|
0x857: (0x4228, 0x10),
|
|
0x135: (0x4228, 0x4),
|
|
0x858: (0x4503, 0x40),
|
|
0x859: (0x4504, 0x1),
|
|
0x85A: (0x4504, 0x4),
|
|
0x85B: (0x4504, 0x10),
|
|
0x85C: (0x4506, 0x40),
|
|
0x136: (0x4503, 0x10),
|
|
0x137: (0x4508, 0x4),
|
|
0x138: (0x4508, 0x10),
|
|
0x85D: (0x4510, 0x10),
|
|
0x85E: (0x4510, 0x4),
|
|
0x85F: (0x4510, 0x40),
|
|
0x139: (0x4511, 0x1),
|
|
0x13A: (0x4E1D, 0x40),
|
|
0x220: (0x5A11, 0x1),
|
|
0x13B: (0x5A11, 0x4),
|
|
0x221: (0x5A28, 0x40),
|
|
0x13C: (0x5A15, 0x40),
|
|
0x13D: (0x5A39, 0x40),
|
|
0x222: (0x5A26, 0x10),
|
|
0x13E: (0x5A23, 0x1),
|
|
0x223: (0x540F, 0x4),
|
|
0x13F: (0x540E, 0x4),
|
|
0x405: (0x5449, 0x1),
|
|
0x140: (0x5449, 0x10),
|
|
0x406: (0x5104, 0x1),
|
|
0x141: (0x5110, 0x10),
|
|
0x142: (0x510E, 0x1),
|
|
0x143: (0x5108, 0x40),
|
|
0x224: (0x5109, 0x1),
|
|
0x225: (0x5115, 0x40),
|
|
0x231: (0x5115, 0x4),
|
|
0x144: (0x5116, 0x1),
|
|
0x145: (0x5114, 0x40),
|
|
0x226: (0x5113, 0x40),
|
|
0x146: (0x5113, 0x10),
|
|
0x147: (0x5116, 0x10),
|
|
0x148: (0x5708, 0x4),
|
|
0x149: (0x5711, 0x40),
|
|
0x14A: (0x5709, 0x4),
|
|
0x227: (0x5709, 0x10),
|
|
0x14B: (0x5712, 0x1),
|
|
0x14C: (0x5718, 0x4),
|
|
0x228: (0x5719, 0x1),
|
|
0x407: (0x5718, 0x40),
|
|
0x229: (0x5D0C, 0x10),
|
|
0x408: (0x5D09, 0x1),
|
|
0x22A: (0x5D08, 0x40),
|
|
0x14D: (0x5D09, 0x4),
|
|
0x14E: (0x5D1B, 0x40),
|
|
0x22B: (0x5D1A, 0x40),
|
|
0x22C: (0x5D1B, 0x1),
|
|
0x22D: (0x5D1B, 0x4),
|
|
0x14F: (0x5D1B, 0x10),
|
|
0x150: (0x6015, 0x40),
|
|
0x151: (0x6019, 0x4),
|
|
0x22E: (0x6019, 0x10),
|
|
0x152: (0x6023, 0x1),
|
|
0x153: (0x6038, 0x40),
|
|
0x154: (0x6909, 0x10),
|
|
0x155: (0x6908, 0x10),
|
|
0x156: (0x6909, 0x1),
|
|
0x157: (0x6909, 0x40),
|
|
0x158: (0x6908, 0x40),
|
|
}
|