From de92e286f327024b63fc7d0da83f3efd32613e57 Mon Sep 17 00:00:00 2001 From: Henrique Gemignani Passos Lima Date: Mon, 28 Aug 2023 12:06:10 +0300 Subject: [PATCH] Add a file with expected hashes of all output files in the test export Don't ship gitignore --- src/open_dread_rando/misc_patches/exefs.py | 1 + .../starter_preset_expected_hashes.json | 371 ++++++++++++++++++ tests/test_full_patch.py | 28 +- 3 files changed, 399 insertions(+), 1 deletion(-) create mode 100644 tests/test_files/starter_preset_expected_hashes.json diff --git a/src/open_dread_rando/misc_patches/exefs.py b/src/open_dread_rando/misc_patches/exefs.py index 4db498ad6..c87570a9b 100644 --- a/src/open_dread_rando/misc_patches/exefs.py +++ b/src/open_dread_rando/misc_patches/exefs.py @@ -9,6 +9,7 @@ def patch_exefs(exefs_patches: Path, configuration: dict): provided_patches = files_path().joinpath("exefs_patches") shutil.copytree(provided_patches, exefs_patches, dirs_exist_ok=True) + exefs_patches.joinpath(".gitignore").unlink() def include_depackager(exefs_path: Path): diff --git a/tests/test_files/starter_preset_expected_hashes.json b/tests/test_files/starter_preset_expected_hashes.json new file mode 100644 index 000000000..6e567530c --- /dev/null +++ b/tests/test_files/starter_preset_expected_hashes.json @@ -0,0 +1,371 @@ +{ + "DreadRandovania/exefs/.gitignore": "1f2998dd548115315d36a31ae26b7293c8b3367d76093f8ff0a73bf663b03283", + "DreadRandovania/exefs/49161D9CCBC15DF944D0B6278A3C446C006B0BE8.ips": "b1583f5c6a482446676ba67587f00eec68ffa7daa9580f294d624ec130c92746", + "DreadRandovania/exefs/646761F643AFEBB379EDD5E6A5151AF2CEF93DC1.ips": "2e685413dc382d74c8aea4380cffdb9b549869ecd03229233806629f786dfa35", + "DreadRandovania/exefs/README.md": "0dd439765c2958c800748ff96a6af8067d81feca4c5b47a0e36f47cd1f9119e6", + "DreadRandovania/exefs/main.npdm": "177d482f6e82c5aa82c8892f2d38c00ba25d3695b5ebdb4d842028d2fe9302f0", + "DreadRandovania/romfs/actors/characters/chozocommander/charclasses/chozocommander.bmsad": "6a3a6750da26e069336d18e996c4a046af70be3481c12d8abbd8b9ca402d21ff", + "DreadRandovania/romfs/actors/characters/core_x/charclasses/core_x.bmsad": "9695ae1f812a9bb2a2b11338b99db093d4c8c2a4f96254edba2c15258703ac5b", + "DreadRandovania/romfs/actors/characters/core_x/scripts/core_x.lc": "1f4e89445fef1efeaf79268a54a25bff7374c462e7a90a88c0e57f7d240d6d57", + "DreadRandovania/romfs/actors/characters/core_x_superquetzoa/charclasses/core_x_superquetzoa.bmsad": "0a7012da91b7be2432ce3c6653612aefaa8a68c89adc97e8ed4998f1f80841b4", + "DreadRandovania/romfs/actors/characters/core_x_superquetzoa/scripts/core_x_superquetzoa.lc": "12c232fe3ea537b50b98d1de726837d3fe4694cedd15c298a3193bf10d574cdc", + "DreadRandovania/romfs/actors/characters/emmycave/charclasses/emmycave.bmsad": "cec6aa64fa12977f2767583d1ce9040385c15191c989457415ff6bf6da513eb2", + "DreadRandovania/romfs/actors/characters/emmyforest/charclasses/emmyforest.bmsad": "90b540877ce0e0de3c7087afeb1c69054496eaca9be1ab2b7d1bbdb121fcc33b", + "DreadRandovania/romfs/actors/characters/emmylab/charclasses/emmylab.bmsad": "b4f9a50e70c385f2874a115ad99d90ea5f87e33a834b58841b79c64e5c29a07a", + "DreadRandovania/romfs/actors/characters/emmymagma/charclasses/emmymagma.bmsad": "92300ab36e534b867cd95b44f4ade1f002d9df99714fb21b5239d5228e30da76", + "DreadRandovania/romfs/actors/characters/emmysanc/charclasses/emmysanc.bmsad": "19d1d1b145e0fabd1f98a1614a542d21b58a625de4f02bf59a635a9cf1370bce", + "DreadRandovania/romfs/actors/characters/emmyshipyard/charclasses/emmyshipyard.bmsad": "309f0ee4bc672fee4fb7be8f1d15943b9b257ac28f1aae33a7a9ff939d5ee7dc", + "DreadRandovania/romfs/actors/characters/samus/charclasses/samus.bmsad": "37cc1bd8c1202b55cdc273827213754bfb5d0da074c960359b700be2b205536e", + "DreadRandovania/romfs/actors/characters/scorpius/charclasses/scorpius.bmsad": "21f63e686575c9a20a0a302554f85c6f7c8dcf4514671fea5037470db3d1dcc4", + "DreadRandovania/romfs/actors/characters/warlotus/charclasses/warlotus.bmsad": "5eb534e1a59930bfdb632da3347478134370554d164e607e60e9ce7d88dff5d0", + "DreadRandovania/romfs/actors/items/item_cube/model/imats/itemcube_camo.bsmat": "ea89fbfd432ef049226227dd363db261c6469a834d865d8f01cb912a674ee4fa", + "DreadRandovania/romfs/actors/items/item_cube/model/imats/itemcube_sonr.bsmat": "dd19368b02cb541ac61de3e73de8d4abf15867dd7d0e0f74d70c8f87a6be66b2", + "DreadRandovania/romfs/actors/items/item_cube_broken/model/itemcube_camo.bcmdl": "30aaecfe6e63a45ba332484ec6591685dfcbe0eee76b65183156df807e2662ec", + "DreadRandovania/romfs/actors/items/item_cube_broken/model/itemcube_sonr.bcmdl": "64b869d0a265c8a993814278f7eaf9e1b8a48e5359183febf85492269815a720", + "DreadRandovania/romfs/actors/items/item_energyfragment/charclasses/item_energyfragment.bmsas": "1c4e044e9290a40cb3970db6109006e4969a1fabf82cfda771fedb3c74b994e2", + "DreadRandovania/romfs/actors/items/item_energyfragment/models/imats/item_energyfragment_glow.bsmat": "d04dd7a62e40bb02caad2009f1de043aead06047b75df3f403f929548cdbea39", + "DreadRandovania/romfs/actors/items/item_energyfragment/models/imats/item_energyfragment_inner.bsmat": "3feea81b562ff1a06e8a40aa1c2cfb536b33ae6b50ecdec3cae316f518a5fcaa", + "DreadRandovania/romfs/actors/items/item_energyfragment/models/imats/item_energyfragment_mat01.bsmat": "d1616e4567120533a9efce02813b764894ddf01a2ae77bd3875d957256fd4b40", + "DreadRandovania/romfs/actors/items/item_energyfragment/models/imats/item_energyfragment_mat02.bsmat": "5c1b7bc48c97ecf55b0a5b0745eca312c2a7e38a4a23d8a7e3df300f4c248eae", + "DreadRandovania/romfs/actors/items/item_energyfragment/models/item_energyfragment.bcmdl": "e03e5cc4c17912285182c349c630c41b656d16a0d13161e650587e4c1191dea1", + "DreadRandovania/romfs/actors/items/item_energytank/charclasses/item_energytank.bmsas": "1c4e044e9290a40cb3970db6109006e4969a1fabf82cfda771fedb3c74b994e2", + "DreadRandovania/romfs/actors/items/item_energytank/models/imats/item_energytank_mp_opaque_01.bsmat": "ff58b1dd896dc485f5ab47ea5a56697039ddab56746f4fb1b6a520c8f6e0c472", + "DreadRandovania/romfs/actors/items/item_energytank/models/item_energytank.bcmdl": "57b3f13694189fea212cd9f250c129dbc8ba50a38f16debd2ecb606695b775a9", + "DreadRandovania/romfs/actors/items/item_missiletank/models/imats/item_missile__BK_mp_fxhologram_01.bsmat": "5a2f89128b6f6a5b411e086f0cf2b02f689e602df19045ff25d168612e9075a6", + "DreadRandovania/romfs/actors/items/item_missiletank/models/imats/item_missile__BL_mp_fxhologram_01.bsmat": "167875e867b374e96f48d75d31185c16c7f70da98aa7bde242572238582e37f5", + "DreadRandovania/romfs/actors/items/item_missiletank/models/imats/item_missile__CY_mp_fxhologram_01.bsmat": "276fc88b798a3dc45e6d6f53202226139e914361b337678881edc651eee219ae", + "DreadRandovania/romfs/actors/items/item_missiletank/models/imats/item_missile__GN_mp_fxhologram_01.bsmat": "b8c1a811e4725bdc369281b36f25b5400ce9299b0b765b96515fc532cd9707ae", + "DreadRandovania/romfs/actors/items/item_missiletank/models/imats/item_missile__GY_mp_fxhologram_01.bsmat": "a49625c1c466b16f1949f846a0993e380987a6ec18613c7bbc6a41dd3ef55835", + "DreadRandovania/romfs/actors/items/item_missiletank/models/imats/item_missile__MG_mp_fxhologram_01.bsmat": "44c16efa1fe4b0a99a7e6bda67552477f57278f7ad3e95a248834d53e91d59d1", + "DreadRandovania/romfs/actors/items/item_missiletank/models/imats/item_missile__OR_mp_fxhologram_01.bsmat": "edc5c0f0fc7ea39edcdfdd3410fd1cc00ab3ba58bca6c21852007f685daebdfe", + "DreadRandovania/romfs/actors/items/item_missiletank/models/imats/item_missile__PK_mp_fxhologram_01.bsmat": "c3c13369cd044bb722b30d6d3b0bfad23c1f39fbd1e1fb400400d10d4a64f2e7", + "DreadRandovania/romfs/actors/items/item_missiletank/models/imats/item_missile__PR_mp_fxhologram_01.bsmat": "26e08fc876ac6983272a5d243bc5a73fb60d11d2b41d8d13d38eb48018b3eabe", + "DreadRandovania/romfs/actors/items/item_missiletank/models/imats/item_missile__WH_mp_fxhologram_01.bsmat": "a8492dcc38e8f6ff0ec66c9f6163e95a9e6edaa0fd84adf3814324aa1d2a09cd", + "DreadRandovania/romfs/actors/items/item_missiletank/models/imats/item_missile__YL_mp_fxhologram_01.bsmat": "5dd7ebe1e4002824f9d3df994a466ad665a4057166affefb3309e4d6d5840114", + "DreadRandovania/romfs/actors/items/item_missiletank/models/item_missile__BK.bcmdl": "be6ee9bb0216a2f3a72ca51c7d0811aced9f961ab3b2655799ae642903c28fa7", + "DreadRandovania/romfs/actors/items/item_missiletank/models/item_missile__BL.bcmdl": "7b89c2819fd26151811ab8d1919b2cf01dfc73bc51143c54656b9f4044d20beb", + "DreadRandovania/romfs/actors/items/item_missiletank/models/item_missile__CY.bcmdl": "82ab9664e567b97c006398666746829429f0e0ce17d500f08d550ebec7f94719", + "DreadRandovania/romfs/actors/items/item_missiletank/models/item_missile__GN.bcmdl": "ecb889a5a7fbc160c7913a8c1a9304569b04d5928112a944f136a582044809d2", + "DreadRandovania/romfs/actors/items/item_missiletank/models/item_missile__GY.bcmdl": "ced30c576cee4287b2f7fd45fb6736da11afe7a6531908ba31f0adad550c062f", + "DreadRandovania/romfs/actors/items/item_missiletank/models/item_missile__MG.bcmdl": "788a54b66346dbc7941fb1bfcfc4726f2989771fb935bf70a818d448f661cb53", + "DreadRandovania/romfs/actors/items/item_missiletank/models/item_missile__OR.bcmdl": "b5bdff1041473ccc23f24e76ddf4ccb3e4ee917b70eed0688b958ff33e9c9b7c", + "DreadRandovania/romfs/actors/items/item_missiletank/models/item_missile__PK.bcmdl": "c93099ee61f719911a46b4dadd69d9a014146d20ab79fe598b86b56a3211c575", + "DreadRandovania/romfs/actors/items/item_missiletank/models/item_missile__PR.bcmdl": "8bf9088d3eb6b1a904185d7411752601c00af045be4ef98678d52355bef5dcdc", + "DreadRandovania/romfs/actors/items/item_missiletank/models/item_missile__WH.bcmdl": "080892a59cd60f4a06c573e52c876b3af9292e3cb1dc470752c814817c6a5734", + "DreadRandovania/romfs/actors/items/item_missiletank/models/item_missile__YL.bcmdl": "1fa21c1115bea38ac698f0ac14d0454f632f877e5e28182906625b3228bb4f37", + "DreadRandovania/romfs/actors/items/itemsphere/animations/relax.bcskla": "804e53f73f0626f2f20bb7627c422a4ae33977b4eb392748c0a80a50ff99f1fa", + "DreadRandovania/romfs/actors/items/itemsphere/models/imats/speedboost_mp_opaque_01.bsmat": "36486eddf5ec7d2a11c824853b866322d3b7cfa1f8b79ece6bd178fd554d8459", + "DreadRandovania/romfs/actors/items/itemsphere/models/speed_booster.bcmdl": "5cf324e9dcc1cf9254e248277cf470d22c262e8c4aa4c5792f1a25f538e326fd", + "DreadRandovania/romfs/actors/items/powerup_bomb/charclasses/powerup_bomb.bmsas": "f499b75252575ae62a243b29426192ab8c245aafa283d66af46fa2f159f203e4", + "DreadRandovania/romfs/actors/items/powerup_bomb/models/imats/powerup_bomb_hologram.bsmat": "7c7074d50870562e8dddddd76c5e24cb1f13c80ad5f6e167e5539176af7095ac", + "DreadRandovania/romfs/actors/items/powerup_bomb/models/imats/powerup_bomb_material.bsmat": "3e761cf8bda60ef5a96b894ed0daa8b741242f1008a44dec34ac8f0e9c988aa3", + "DreadRandovania/romfs/actors/items/powerup_bomb/models/imats/powerup_morphhologram.bsmat": "0ffd29502facbdb8575155b6ba19d65467a9a64a1d2f6a071bd09080c5c09337", + "DreadRandovania/romfs/actors/items/powerup_bomb/models/imats/powerup_morphmaterial.bsmat": "5797e30ba1679f81ec1f92c041df26b958cd4876bafd2bf25cc860f0e0494c7d", + "DreadRandovania/romfs/actors/items/powerup_bomb/models/powerup_bomb.bcmdl": "ec2f828956650e411954942625e9c8d2f13ba54a34f49732f5e9a2c33c0ca00f", + "DreadRandovania/romfs/actors/items/powerup_bomb/models/powerup_morph.bcmdl": "47c8e92c7af3ee085868e5cb22adb09308989c7c3785e1e15d3e431618f7b335", + "DreadRandovania/romfs/actors/items/powerup_diffusionbeam/charclasses/powerup_diffusionbeam.bmsas": "f499b75252575ae62a243b29426192ab8c245aafa283d66af46fa2f159f203e4", + "DreadRandovania/romfs/actors/items/powerup_diffusionbeam/models/imats/powerup_diffusionbeam_autoilum.bsmat": "86810ca3669669c93a910791dd7dc910a4168e30563fddad7d6e8c39f76cb75f", + "DreadRandovania/romfs/actors/items/powerup_diffusionbeam/models/imats/powerup_diffusionbeam_mp_glass_01.bsmat": "db7fc3207f18d491429e5e00d493977c6c7fb6c5370a0d3c44811e3aa2c3e0a6", + "DreadRandovania/romfs/actors/items/powerup_diffusionbeam/models/imats/powerup_diffusionbeam_mp_opaque_01.bsmat": "26adb9782b8cdce921e1822ea790ed2bc43e0e3da80713d6d781d58a462558e6", + "DreadRandovania/romfs/actors/items/powerup_diffusionbeam/models/powerup_diffusionbeam.bcmdl": "32a4a375098d4191a71a0bacd56d9038a441117e7e19ec9172a4d2dfb1cbc791", + "DreadRandovania/romfs/actors/items/powerup_doublejump/charclasses/powerup_doublejump.bmsas": "f499b75252575ae62a243b29426192ab8c245aafa283d66af46fa2f159f203e4", + "DreadRandovania/romfs/actors/items/powerup_doublejump/models/imats/powerup_doublejump_mp_glass_01.bsmat": "ed26c96fe46f0f7fd2c882b309bf2a88aa1c365e8f1ae20c7b52cc019d79ea08", + "DreadRandovania/romfs/actors/items/powerup_doublejump/models/imats/powerup_doublejump_mp_magnet01.bsmat": "cffa7c9af5f4cee0fa76d0281c890992dde59d128ffa5ef9b5f0112e05716c23", + "DreadRandovania/romfs/actors/items/powerup_doublejump/models/imats/powerup_doublejump_mp_opaque_01.bsmat": "4d642fe08bf1a887514f604d864e75af22d6cb1127a725998e459a4534f2e861", + "DreadRandovania/romfs/actors/items/powerup_doublejump/models/imats/powerup_doublejump_mp_white__01.bsmat": "56a4345fc86a35f36cbef00b5ce46e589c667620da8b56f2de36e9890ffebd92", + "DreadRandovania/romfs/actors/items/powerup_doublejump/models/powerup_doublejump.bcmdl": "9a83a491daa387482625aa80d53ed8b28cf7631b6fc485ae412ed30c13242ec9", + "DreadRandovania/romfs/actors/items/powerup_doublejump/models/powerup_magnet.bcmdl": "d41a895392361b0aeb06fd6d256ec88cbf3f5f4dc56899e9b0a56a7f9033cfc6", + "DreadRandovania/romfs/actors/items/powerup_grapplebeam/charclasses/powerup_grapplebeam.bmsad": "8837022d3619eddf4265022b24a3d05e1f2f0b492ddf3ca945d0eb71951016ea", + "DreadRandovania/romfs/actors/items/powerup_grapplebeam/charclasses/powerup_grapplebeam.bmsas": "f499b75252575ae62a243b29426192ab8c245aafa283d66af46fa2f159f203e4", + "DreadRandovania/romfs/actors/items/powerup_grapplebeam/fx/auraitemparticle.bcptl": "87cc19e806bc00dffa78b92072ada91461b40dd4b42abf4555af7a89f2eac1f1", + "DreadRandovania/romfs/actors/items/powerup_grapplebeam/models/imats/powerup_grapplebeam_grapplebeam.bsmat": "f9e764262d1ce53187732b611b3df0c5f29cafb3ec36f0d8ccf0c18b457a719e", + "DreadRandovania/romfs/actors/items/powerup_grapplebeam/models/powerup_grapplebeam.bcmdl": "3a9c18099de914f8bfcc297ec14cd170b1777cd36d1674b1be5a94a7ff21c4af", + "DreadRandovania/romfs/actors/items/powerup_gravitysuit/charclasses/powerup_gravitysuit.bmsas": "f499b75252575ae62a243b29426192ab8c245aafa283d66af46fa2f159f203e4", + "DreadRandovania/romfs/actors/items/powerup_gravitysuit/models/imats/powerup_gravitysuit_ball.bsmat": "fa554b9b70d0e87d2ea26980604eb5121c0c533baa1dc9ef2535c077f8a8670f", + "DreadRandovania/romfs/actors/items/powerup_gravitysuit/models/imats/powerup_gravitysuit_grav.bsmat": "56300aa92d0abc58ead7952f7b552cd01d39930ecd8c4541f44ca66a53743efd", + "DreadRandovania/romfs/actors/items/powerup_gravitysuit/models/imats/powerup_gravitysuit_mp_opaque_01.bsmat": "48d92ac0a1131ffff38e555aa7008ec7fc31e4f20443a4f87425b836c88920b7", + "DreadRandovania/romfs/actors/items/powerup_gravitysuit/models/powerup_gravitysuit.bcmdl": "1dffb66629f1e624ee0a89072dfeb88e9f694bac3b2e185f8e96e442e1fafc37", + "DreadRandovania/romfs/actors/items/powerup_plasmabeam/charclasses/powerup_plasmabeam.bmsas": "f499b75252575ae62a243b29426192ab8c245aafa283d66af46fa2f159f203e4", + "DreadRandovania/romfs/actors/items/powerup_plasmabeam/models/imats/powerup_plasmabeam_autoilum.bsmat": "cbbb68668cd051df19eb07ba1a58867473d813be810624395db8820a5a3af20d", + "DreadRandovania/romfs/actors/items/powerup_plasmabeam/models/imats/powerup_plasmabeam_body.bsmat": "2548aaab7388a4a1d2e3be9dc5bb0d39430b50466b7aa62a0ad5e9f034af54dc", + "DreadRandovania/romfs/actors/items/powerup_plasmabeam/models/imats/powerup_plasmabeam_mp_glass_01.bsmat": "9026318654a325bfbdac00eca54726a371061c45d49753fb3de575145e4ef7e4", + "DreadRandovania/romfs/actors/items/powerup_plasmabeam/models/powerup_plasmabeam.bcmdl": "e901a6da66ff7d7baef93bf76d94800376f199ebfd3293dc8fe0eadbbbdc5712", + "DreadRandovania/romfs/actors/items/powerup_powerbomb/models/imats/powerup_powerbomb_mat0001.bsmat": "7ecef934b5c042109be54095f7ed41eade723c9f394c196839d88dda3041b9ce", + "DreadRandovania/romfs/actors/items/powerup_powerbomb/models/imats/powerup_powerbomb_mp_fxhologram_0001.bsmat": "ce6dc6942467ba3ac4821752a33b5db1fa777d63b248df72c2aa452eb127d1a4", + "DreadRandovania/romfs/actors/items/powerup_powerbomb/models/powerup_powerbomb.bcmdl": "c63bbccc4c5928990906235bd6d06f055928b678ad43df0f20050fc970b2d47d", + "DreadRandovania/romfs/actors/items/powerup_screwattack/charclasses/powerup_screwattack.bmsas": "f499b75252575ae62a243b29426192ab8c245aafa283d66af46fa2f159f203e4", + "DreadRandovania/romfs/actors/items/powerup_screwattack/models/imats/powerup_screwattack_mp_opaque_01.bsmat": "6bd1507374aacefc28d814e9c291f825d0ed11c5ea27a66ca137cf18665737b3", + "DreadRandovania/romfs/actors/items/powerup_screwattack/models/powerup_screwattack.bcmdl": "eef10d4ac9c6e9df6a91edfe82f4cdf395a4e2937139a86a89893fbca92eb772", + "DreadRandovania/romfs/actors/items/powerup_spacejump/charclasses/powerup_spacejump.bmsas": "f499b75252575ae62a243b29426192ab8c245aafa283d66af46fa2f159f203e4", + "DreadRandovania/romfs/actors/items/powerup_spacejump/models/imats/powerup_spacejump_mat01.bsmat": "51823d98dbcc5ce53c740409fd805e390ffd6170d178c4a2ef74db1148ef0391", + "DreadRandovania/romfs/actors/items/powerup_spacejump/models/powerup_spacejump.bcmdl": "9ace0e9e1de09ddd39fc2cef7b21b618dece8f8088d25c5c1a0c0a73946163f3", + "DreadRandovania/romfs/actors/items/powerup_supermissile/charclasses/powerup_supermissile.bmsas": "f499b75252575ae62a243b29426192ab8c245aafa283d66af46fa2f159f203e4", + "DreadRandovania/romfs/actors/items/powerup_supermissile/models/imats/powerup_ice__missile_mp_opaque_01.bsmat": "3c051b578ce09952aeb4d1516da3506930e0a8b0a8cda03dc7bb2b4fb7e33392", + "DreadRandovania/romfs/actors/items/powerup_supermissile/models/imats/powerup_supermissile_hologram.bsmat": "b944cb06b01850c3a7b7cd6d49db69085d1de6f018f994b54a29973ae52d0da5", + "DreadRandovania/romfs/actors/items/powerup_supermissile/models/imats/powerup_supermissile_mp_opaque_01.bsmat": "290cde716533e801373d31a856b6d8f36830107511c052bf64f9ebbf8716da1d", + "DreadRandovania/romfs/actors/items/powerup_supermissile/models/powerup_ice__missile.bcmdl": "16b6522566a39b5bd230e4fed870365e92e9e2fece77dafa77e62e24cf4fb363", + "DreadRandovania/romfs/actors/items/powerup_supermissile/models/powerup_supermissile.bcmdl": "1a4b435275aab9957f3f0a999538a010a177d5ff550024f9d9e89946f050f31c", + "DreadRandovania/romfs/actors/items/powerup_variasuit/charclasses/powerup_variasuit.bmsas": "f499b75252575ae62a243b29426192ab8c245aafa283d66af46fa2f159f203e4", + "DreadRandovania/romfs/actors/items/powerup_variasuit/models/imats/powerup_variasuit_material01.bsmat": "f61f2c51f27f8b7411f4e6adcb13a474cef05997eff887ee193c436d1b22f971", + "DreadRandovania/romfs/actors/items/powerup_variasuit/models/powerup_variasuit.bcmdl": "996f8b8ecf695f52d28172d91ffa7ecc2dd77b8297b3d0899849eb5a92b77ca6", + "DreadRandovania/romfs/actors/items/powerup_widebeam/charclasses/powerup_widebeam.bmsas": "f499b75252575ae62a243b29426192ab8c245aafa283d66af46fa2f159f203e4", + "DreadRandovania/romfs/actors/items/powerup_widebeam/models/imats/powerup_wavebeam_autoilum.bsmat": "ce2b41ec97834c2a9fb39731d3551a6e6022196c84878c62375b529eb44f0489", + "DreadRandovania/romfs/actors/items/powerup_widebeam/models/imats/powerup_wavebeam_bola.bsmat": "79a982a4db17c864406dae0e86fbd0bf25d999d7323345a9b47d4382b6555b03", + "DreadRandovania/romfs/actors/items/powerup_widebeam/models/imats/powerup_wavebeam_cangrejo.bsmat": "81ce04e6d01d73dfb4b000e191791fdc16d6fcac3d307bca9c2c1a89876617f6", + "DreadRandovania/romfs/actors/items/powerup_widebeam/models/imats/powerup_widebeam_autoilum.bsmat": "ed4de33797c269e8b78e44d6e62a5ba5d821f67630bf068b5fe50d0f55621c5b", + "DreadRandovania/romfs/actors/items/powerup_widebeam/models/imats/powerup_widebeam_bola.bsmat": "55ee0a677489baeda6e6ec3087fb0f1dac1d149cd96ae8e2b0b7568c0b414c8a", + "DreadRandovania/romfs/actors/items/powerup_widebeam/models/imats/powerup_widebeam_cangrejo.bsmat": "6cbd33f14cdc12e20045d0e46d94fe29378034b42840b5f80251d8ea3fc568f5", + "DreadRandovania/romfs/actors/items/powerup_widebeam/models/powerup_wavebeam.bcmdl": "fc723f4cff426c97d433ab6850836a49b8d8159068e589b727c38182d9d76083", + "DreadRandovania/romfs/actors/items/powerup_widebeam/models/powerup_widebeam.bcmdl": "a688d0065fd27b5a055f651e8cb796bc6dbeab4ff6af3569044726c04d4906d4", + "DreadRandovania/romfs/actors/items/randomizer_powerup/charclasses/randomizer_powerup_0.bmsad": "f46b0ade6e23e77cdd77e2463012e4971683057b5880845d756759dbf4c588ec", + "DreadRandovania/romfs/actors/items/randomizer_powerup/charclasses/randomizer_powerup_1.bmsad": "e5ed9ef29565193175e6e96b1e854a706947f7830fa05904fa09d773ddb97408", + "DreadRandovania/romfs/actors/items/randomizer_powerup/charclasses/randomizer_powerup_10.bmsad": "f3cb32a8b46d1ad09b8dfa552d3fcdecbb4bcf624f0de5769111e51749178e07", + "DreadRandovania/romfs/actors/items/randomizer_powerup/charclasses/randomizer_powerup_100.bmsad": "abee208637bd65a0fbfed034c6445d0a6285c05ade587607d06af511febf1bdb", + "DreadRandovania/romfs/actors/items/randomizer_powerup/charclasses/randomizer_powerup_101.bmsad": "2394b749cc8640d8ac6b390312e227ec4348d902ba6f99f464c787543aa7828c", + "DreadRandovania/romfs/actors/items/randomizer_powerup/charclasses/randomizer_powerup_102.bmsad": "aade9e1d4abb88cbf6322e814590920de9e298a8a1a8eca8cf5c964afa7a6427", + "DreadRandovania/romfs/actors/items/randomizer_powerup/charclasses/randomizer_powerup_103.bmsad": "ddfb46d34f2ddcf0340af81d6c0f95077f874c9e01ab76ab28acc261648d3ea8", + "DreadRandovania/romfs/actors/items/randomizer_powerup/charclasses/randomizer_powerup_104.bmsad": "3036fab9517a595d98d382e42adec407a42b9f25637ab6fd6970f2bc62e7bff3", + "DreadRandovania/romfs/actors/items/randomizer_powerup/charclasses/randomizer_powerup_105.bmsad": "38c978233d308d4c5e810a8151c32ccf842ba2ca5b87a04f6f9f994ed37b6fc7", + "DreadRandovania/romfs/actors/items/randomizer_powerup/charclasses/randomizer_powerup_106.bmsad": "47a5b320510eff449bd22cbc9f14c2c6aecd85e7b2267893a520e86882c82b11", + "DreadRandovania/romfs/actors/items/randomizer_powerup/charclasses/randomizer_powerup_107.bmsad": "2cddbaa83cb55256f7058ccbc37dd6e94bd9f9dba69f3bf63e422fce37d77797", + "DreadRandovania/romfs/actors/items/randomizer_powerup/charclasses/randomizer_powerup_108.bmsad": "6adcb011748587d88a36db82cc266f015acd3c23176b40a3b1401225d14b46dc", + "DreadRandovania/romfs/actors/items/randomizer_powerup/charclasses/randomizer_powerup_109.bmsad": "c4f9f19c9977b96579b58f84783a6d5f966d0b01e321bb9474c9de29b5bb4c77", + "DreadRandovania/romfs/actors/items/randomizer_powerup/charclasses/randomizer_powerup_11.bmsad": "bcdbddfb50427ab3ea9bc7f9686057478e683810d9c44fdb83541755cd7b8298", + "DreadRandovania/romfs/actors/items/randomizer_powerup/charclasses/randomizer_powerup_110.bmsad": "7141d648a512df75cfc5e2663ca2dc7ac01df6b59c5f2302fc52141e67e7eb22", + "DreadRandovania/romfs/actors/items/randomizer_powerup/charclasses/randomizer_powerup_111.bmsad": "3dab20a26db13da579d79a2ed7dae982bff1e17aabf6e6a7f834c87f12db9e68", + "DreadRandovania/romfs/actors/items/randomizer_powerup/charclasses/randomizer_powerup_112.bmsad": "732c3f5de4fdbcf320d2b2eb3a660171c19ed4c6cf595a8e07cc73129118d153", + "DreadRandovania/romfs/actors/items/randomizer_powerup/charclasses/randomizer_powerup_113.bmsad": "1f206762d82544cf62a6a3fae04fc97c5cb4517687d4f1b1b47bb5dd1465a07d", + "DreadRandovania/romfs/actors/items/randomizer_powerup/charclasses/randomizer_powerup_114.bmsad": "f3925b398aef472116554b491c94b937e470c3ebe9a77cbea20e71589faba262", + "DreadRandovania/romfs/actors/items/randomizer_powerup/charclasses/randomizer_powerup_115.bmsad": "556274e0cff61bb14f04266b4c295d95325c859fdaeaf9914cbbf6ec305ec0bf", + "DreadRandovania/romfs/actors/items/randomizer_powerup/charclasses/randomizer_powerup_116.bmsad": "3007061b6424ee211525b5297a08efa032e3de43841cccbc67e44a371590b72d", + "DreadRandovania/romfs/actors/items/randomizer_powerup/charclasses/randomizer_powerup_117.bmsad": "22b20c063c0f4fae5174d7b174cfa4dd5004d58e42dde20edcb881e9851f7b4f", + "DreadRandovania/romfs/actors/items/randomizer_powerup/charclasses/randomizer_powerup_118.bmsad": "476a80b4290e29585120b6040232135f63ecea88c7615c22d821a91e980893e3", + "DreadRandovania/romfs/actors/items/randomizer_powerup/charclasses/randomizer_powerup_119.bmsad": "a4648657777840641fb5dded4b95371907e8ad04875751cf56ea1b958529d9bb", + "DreadRandovania/romfs/actors/items/randomizer_powerup/charclasses/randomizer_powerup_12.bmsad": "2f4470148aa645f112f91b061cc4e432bb6c7179de61e32051b68418ae4d788f", + "DreadRandovania/romfs/actors/items/randomizer_powerup/charclasses/randomizer_powerup_120.bmsad": "d4b4344025b79c4df0f6a6e35a5c261be7dac1bfd5078ffad4a6f4264633d12b", + "DreadRandovania/romfs/actors/items/randomizer_powerup/charclasses/randomizer_powerup_121.bmsad": "5f5d126cb6f5f5d8a55911168af81b7e05196a8c31325c3629fb272c55fa2b57", + "DreadRandovania/romfs/actors/items/randomizer_powerup/charclasses/randomizer_powerup_122.bmsad": "25db8365ce67a01e5fc25511d0dc61211d7e938832633811955ed97591160c47", + "DreadRandovania/romfs/actors/items/randomizer_powerup/charclasses/randomizer_powerup_123.bmsad": "504328fc2498c9eff7f095348ef9c711da18a1c776737396a71e8a505d5c16e2", + "DreadRandovania/romfs/actors/items/randomizer_powerup/charclasses/randomizer_powerup_124.bmsad": "1ce22c80789081f91a8a9ddde0c9ea059d4ce60eeccd5f0d4adc27224d534e6c", + "DreadRandovania/romfs/actors/items/randomizer_powerup/charclasses/randomizer_powerup_125.bmsad": "3174ea57d7f2a6653bdf79e4f3988d3a025a17e89daea874c7ed1d7733914575", + "DreadRandovania/romfs/actors/items/randomizer_powerup/charclasses/randomizer_powerup_126.bmsad": "651bf4e7c0ff954ddbcd722f36e9aed354333ba5f7efb027caaa760bf64434df", + "DreadRandovania/romfs/actors/items/randomizer_powerup/charclasses/randomizer_powerup_127.bmsad": "54726c86c7ea24f0ee88f9aa4b4429abc7e77b814aa22da820cceb89a17f9ff9", + "DreadRandovania/romfs/actors/items/randomizer_powerup/charclasses/randomizer_powerup_128.bmsad": "76dfe42a876c8070796da47a09eb247c68e4820bafa6cea803ec699321f3a694", + "DreadRandovania/romfs/actors/items/randomizer_powerup/charclasses/randomizer_powerup_129.bmsad": "e0f19d47132a81ac7d6691010836f82941f43b33f9445d194863b60085ca1998", + "DreadRandovania/romfs/actors/items/randomizer_powerup/charclasses/randomizer_powerup_13.bmsad": "dbd04e260507c0477c296e85dd46c0c8f9196d4aa92b6102133c7de8328313bb", + "DreadRandovania/romfs/actors/items/randomizer_powerup/charclasses/randomizer_powerup_130.bmsad": "6681b2f5e5dc97f1dc3d6d809e4061da690718aa3bd4c0a27fcb8e69026ca2a1", + "DreadRandovania/romfs/actors/items/randomizer_powerup/charclasses/randomizer_powerup_131.bmsad": "2ba9ca6194970f78b5436cfccd1ddda787c2c23e2feb7492c2d4df7899b26eba", + "DreadRandovania/romfs/actors/items/randomizer_powerup/charclasses/randomizer_powerup_132.bmsad": "d9cd79e741f3262c393aaa264b6aed936dae35e44c0b709701f823cb88433950", + "DreadRandovania/romfs/actors/items/randomizer_powerup/charclasses/randomizer_powerup_133.bmsad": "4156554a1b9178ed0a4e75c706102ca3b5c4bce9ce9cd213fe53f9e9cdac9cd7", + "DreadRandovania/romfs/actors/items/randomizer_powerup/charclasses/randomizer_powerup_134.bmsad": "f2a95364e4c700fe775563e4dede8d8beea8b3a59fc4f0092c5bef37fc7e896d", + "DreadRandovania/romfs/actors/items/randomizer_powerup/charclasses/randomizer_powerup_135.bmsad": "9f807d25120f0458d4882bb0f77643b521cd316241cbbfdc85a293d31ffcda3d", + "DreadRandovania/romfs/actors/items/randomizer_powerup/charclasses/randomizer_powerup_136.bmsad": "eece8fcb369aa98d89bc2a78891793a7baf56d8be36c98c3139a152f658c82ca", + "DreadRandovania/romfs/actors/items/randomizer_powerup/charclasses/randomizer_powerup_14.bmsad": "226cdaf844a8bff15af04e94c8d74a31e161766eb5fb6686157e2ab0a761feb3", + "DreadRandovania/romfs/actors/items/randomizer_powerup/charclasses/randomizer_powerup_15.bmsad": "f68a8b289f7508f14af31705d31ef7c52ba88975afa6c02f655a18a75866f18c", + "DreadRandovania/romfs/actors/items/randomizer_powerup/charclasses/randomizer_powerup_16.bmsad": "dc523ef0df6ac23dde36ea118d9b43b53ad6060e2ca518f6166c8c1852dfbc0f", + "DreadRandovania/romfs/actors/items/randomizer_powerup/charclasses/randomizer_powerup_17.bmsad": "7c15afed45d38879f00e43870a3446facaff4bc72dc117752ab8e2dc1c6058d6", + "DreadRandovania/romfs/actors/items/randomizer_powerup/charclasses/randomizer_powerup_18.bmsad": "bea766b4f53018b7e4a258d0bf10aee049120d08875938d33e271e8e99319b7f", + "DreadRandovania/romfs/actors/items/randomizer_powerup/charclasses/randomizer_powerup_19.bmsad": "78cf90ce47836637b7097f7ecd84f026993a9e0a051acf43b37b7bf02ae8e529", + "DreadRandovania/romfs/actors/items/randomizer_powerup/charclasses/randomizer_powerup_2.bmsad": "76582d7a6f69c2d817045a3442f84dbe249b5ec6d39928330d70e005c5ed8d5e", + "DreadRandovania/romfs/actors/items/randomizer_powerup/charclasses/randomizer_powerup_20.bmsad": "fcf86120e85f18ee3dea58abbb110e2da1bf6dc06f5e78478bc3addbcc00dfa6", + "DreadRandovania/romfs/actors/items/randomizer_powerup/charclasses/randomizer_powerup_21.bmsad": "d5e9736011bb21a412a8f5f4c3be2acee86c76b86341c008ea8b82849e596023", + "DreadRandovania/romfs/actors/items/randomizer_powerup/charclasses/randomizer_powerup_22.bmsad": "e22eba4c7a9005ed4061ba281eb097077a1b659152e29739034ada80dd01ce95", + "DreadRandovania/romfs/actors/items/randomizer_powerup/charclasses/randomizer_powerup_23.bmsad": "5fe5c1c0e72ed211f8dfd782cb559f850eb74c249e0119e263d3bb5262649611", + "DreadRandovania/romfs/actors/items/randomizer_powerup/charclasses/randomizer_powerup_24.bmsad": "1c9e0665aeec78379a9dd06b261c6e8139ef305f70766a224ba18e4da8ed2ef4", + "DreadRandovania/romfs/actors/items/randomizer_powerup/charclasses/randomizer_powerup_25.bmsad": "33613cbeb7b0d31936cb23aaffc50ef5dd2d9616d9d9de50381c3cbbe48bdeb3", + "DreadRandovania/romfs/actors/items/randomizer_powerup/charclasses/randomizer_powerup_26.bmsad": "a8b960e36fedcace2d12d8aedb54bbff2653b21d7299883166f12ef911b1c230", + "DreadRandovania/romfs/actors/items/randomizer_powerup/charclasses/randomizer_powerup_27.bmsad": "5eec1d35cb935ddc532f326d48164040c7d0cac67cc5cc7e2475439cbe21171c", + "DreadRandovania/romfs/actors/items/randomizer_powerup/charclasses/randomizer_powerup_28.bmsad": "8ff3e4c38620c91f8869e04950ac2e943daa21049dbfbca3b20b130422ba0f87", + "DreadRandovania/romfs/actors/items/randomizer_powerup/charclasses/randomizer_powerup_29.bmsad": "fc55a59df7a6696cde7e26f5f0aaee6b821abc00251d1df8e237f708a7a9a476", + "DreadRandovania/romfs/actors/items/randomizer_powerup/charclasses/randomizer_powerup_3.bmsad": "8d0a84038423103bd7897c232719f76aed3b0109f1139189b4afa8b4b1c6e980", + "DreadRandovania/romfs/actors/items/randomizer_powerup/charclasses/randomizer_powerup_30.bmsad": "c0ef9d584df10ea0f1e5d92d4458887ab111af76b355aaa1d628c75a721d3816", + "DreadRandovania/romfs/actors/items/randomizer_powerup/charclasses/randomizer_powerup_31.bmsad": "3efceba29e12769b22118af5c0ab0208bf7a3c55bc9b45a541e81e75f1eba770", + "DreadRandovania/romfs/actors/items/randomizer_powerup/charclasses/randomizer_powerup_32.bmsad": "9ab46855aa22912c315654b4ba8c3379dc1800c1c32e75596a95a5eeeaadb2b5", + "DreadRandovania/romfs/actors/items/randomizer_powerup/charclasses/randomizer_powerup_33.bmsad": "3622d0107efa1d8f38f64b0b7827cd677a1d5e4a218c0e404a1536c43b19eb9e", + "DreadRandovania/romfs/actors/items/randomizer_powerup/charclasses/randomizer_powerup_34.bmsad": "15ecc0b5c44b98e2d3d90f3d03cfe4dba4272fb56ed72f66d10f8c87228413cd", + "DreadRandovania/romfs/actors/items/randomizer_powerup/charclasses/randomizer_powerup_35.bmsad": "7a808305f19cd937cd5ed1a1f050cc450d5810e2197d88f9caed9d6cf569974b", + "DreadRandovania/romfs/actors/items/randomizer_powerup/charclasses/randomizer_powerup_36.bmsad": "fbe660c1666da883f3467284f8d41af46d23454ae3830faee339967aabc31968", + "DreadRandovania/romfs/actors/items/randomizer_powerup/charclasses/randomizer_powerup_37.bmsad": "7ce2b3dc3040bf6780c8f2ab00c382751a6729f7624dc33a7c2b6a4122da25c9", + "DreadRandovania/romfs/actors/items/randomizer_powerup/charclasses/randomizer_powerup_38.bmsad": "db06f15992e813901e61ab7029625451e3696bc3263c692c712fbf9e7bc746c4", + "DreadRandovania/romfs/actors/items/randomizer_powerup/charclasses/randomizer_powerup_39.bmsad": "2cc2430092b63149fdeacd348fb77844f37e7a30547731bd35b911f6b5b0f032", + "DreadRandovania/romfs/actors/items/randomizer_powerup/charclasses/randomizer_powerup_4.bmsad": "93d884f3e42faa56b63fdd01918369db7d421d883a5d93e3dcc0602ae58627b0", + "DreadRandovania/romfs/actors/items/randomizer_powerup/charclasses/randomizer_powerup_40.bmsad": "919c2ec3bfb35bf7535fb76cfc9a94570564a4cadd3e151723bea3cc0ca4d561", + "DreadRandovania/romfs/actors/items/randomizer_powerup/charclasses/randomizer_powerup_41.bmsad": "caa15edad9e1b7e144d5dc67f55556e10042ef1d9ada01624ca8d35a47cfab1c", + "DreadRandovania/romfs/actors/items/randomizer_powerup/charclasses/randomizer_powerup_42.bmsad": "750018db4dad5dbdda065a471100654c524db19789d4700b45a44e4964cfe6c8", + "DreadRandovania/romfs/actors/items/randomizer_powerup/charclasses/randomizer_powerup_43.bmsad": "6a4536f713e2725ac759018e32ff9a6667f9a01af258f9aaae7c45af277a35ae", + "DreadRandovania/romfs/actors/items/randomizer_powerup/charclasses/randomizer_powerup_44.bmsad": "d83d3f8959cca47e4519d124a222b89b4ecc60370dddeaa69eb8efd7969d614c", + "DreadRandovania/romfs/actors/items/randomizer_powerup/charclasses/randomizer_powerup_45.bmsad": "bf4e834b1f4f7412ecae9f79172cebe9e038eab5c5476b0fffd718650f03208d", + "DreadRandovania/romfs/actors/items/randomizer_powerup/charclasses/randomizer_powerup_46.bmsad": "4390f5fe49fa3db4c00189c374ef143ec71fbd6526d3b6ae287d1c0318e2d758", + "DreadRandovania/romfs/actors/items/randomizer_powerup/charclasses/randomizer_powerup_47.bmsad": "7619628e81c8317455b82d4f218996bec8d7157baf7365cc44eb28944b32c5b5", + "DreadRandovania/romfs/actors/items/randomizer_powerup/charclasses/randomizer_powerup_48.bmsad": "afaa3f6ee4955c73f5d6d71bb4fc7d93b7a78a0091ae83eec7414b8fd8a8766f", + "DreadRandovania/romfs/actors/items/randomizer_powerup/charclasses/randomizer_powerup_49.bmsad": "6a1d59b54664f58bc77b6a5b5bae47283153cedcb08416c6daa4b5f33ce8624b", + "DreadRandovania/romfs/actors/items/randomizer_powerup/charclasses/randomizer_powerup_5.bmsad": "edb27bf8533d60e1dab3b555106e67dabb36a18dc2c60a4f575453b50cc22959", + "DreadRandovania/romfs/actors/items/randomizer_powerup/charclasses/randomizer_powerup_50.bmsad": "6d5fe778219d80ad485cc55149d29c543132ca3a58a6509f76a26d9abbcaa26e", + "DreadRandovania/romfs/actors/items/randomizer_powerup/charclasses/randomizer_powerup_51.bmsad": "3f483298f7739cdb3ffca96b2e0660d3c53abf0faf445433a38d5548d7af75d8", + "DreadRandovania/romfs/actors/items/randomizer_powerup/charclasses/randomizer_powerup_52.bmsad": "001abc08ecf93a3e34edea5b5cb40f2177e55357b0528b8b793d05ae7effad04", + "DreadRandovania/romfs/actors/items/randomizer_powerup/charclasses/randomizer_powerup_53.bmsad": "f15d72f8b1f6d339ed7953962de393b23a67023ce63f9ac3fbda162698ada7a7", + "DreadRandovania/romfs/actors/items/randomizer_powerup/charclasses/randomizer_powerup_54.bmsad": "3511905ba43ff49958a04478151ba3a8bfb6b65fbd0aad9819d21d9e32bcd4a3", + "DreadRandovania/romfs/actors/items/randomizer_powerup/charclasses/randomizer_powerup_55.bmsad": "befe01998f8341284bc264471d92bfa2a96d383b426a02c40fcdd628e1c6c112", + "DreadRandovania/romfs/actors/items/randomizer_powerup/charclasses/randomizer_powerup_56.bmsad": "32066559fa2946e65a9b271504e95b43616afcdb5a03b051f59a1370138b0c01", + "DreadRandovania/romfs/actors/items/randomizer_powerup/charclasses/randomizer_powerup_57.bmsad": "853af5473483b7e67e266882196a82e35053fcd4c64e1b290d19febbf39f8712", + "DreadRandovania/romfs/actors/items/randomizer_powerup/charclasses/randomizer_powerup_58.bmsad": "c84a7abb7fe5e9a86cebb5e5bf8c149a427f7c11087fbb15c3dec5500cc99b72", + "DreadRandovania/romfs/actors/items/randomizer_powerup/charclasses/randomizer_powerup_59.bmsad": "955273a966a563d6dcbce9c7e586b26548e5f3b671c8334031160d5aebeab8d7", + "DreadRandovania/romfs/actors/items/randomizer_powerup/charclasses/randomizer_powerup_6.bmsad": "cd3ee2131ec575d2a88691417ede2319f86bc2a934f863d5f04ffb966349c94e", + "DreadRandovania/romfs/actors/items/randomizer_powerup/charclasses/randomizer_powerup_60.bmsad": "e0187016ad050e4fcfc80cc7f7aae1cf7f748f32979e2f2815150909bc9b58db", + "DreadRandovania/romfs/actors/items/randomizer_powerup/charclasses/randomizer_powerup_61.bmsad": "df214360a88675199ff276a5e10a21178c2aa6189c93d6cdefe1051955f9f940", + "DreadRandovania/romfs/actors/items/randomizer_powerup/charclasses/randomizer_powerup_62.bmsad": "5f87a60a053934f5ca7c6b2065c1f79d04d4ead9f7309ee94a159be2b07e72d6", + "DreadRandovania/romfs/actors/items/randomizer_powerup/charclasses/randomizer_powerup_63.bmsad": "7d53084719c67d644609a39f1ee7d89f9212a4dc4daf66ff4536f94130f7c0ab", + "DreadRandovania/romfs/actors/items/randomizer_powerup/charclasses/randomizer_powerup_64.bmsad": "447adf8538c7bd67e53eaa96f848592b14a16f7c32385be9d3111058a73c3ee4", + "DreadRandovania/romfs/actors/items/randomizer_powerup/charclasses/randomizer_powerup_65.bmsad": "35cd572c0423e473e147b83219de16379a3c411e16cfecdc38a5000a592bd3f2", + "DreadRandovania/romfs/actors/items/randomizer_powerup/charclasses/randomizer_powerup_66.bmsad": "2466c1682a09a444460af1133598eff403a6f4fc9f95aee2a584a840bb8e16af", + "DreadRandovania/romfs/actors/items/randomizer_powerup/charclasses/randomizer_powerup_67.bmsad": "8f9a975b883dcfec0c721818c265de0f1ffbfc337cc00bdde9f325aab446478b", + "DreadRandovania/romfs/actors/items/randomizer_powerup/charclasses/randomizer_powerup_68.bmsad": "be33f0fc54669948c7b2110e8dbd4833bb7083a9985ff80a7f53887e13d250d4", + "DreadRandovania/romfs/actors/items/randomizer_powerup/charclasses/randomizer_powerup_69.bmsad": "74e0c680e4ff2dcb9d4c3183e38c3523e1e25a60f9a693b9347cd8df28de5d5e", + "DreadRandovania/romfs/actors/items/randomizer_powerup/charclasses/randomizer_powerup_7.bmsad": "09520f6a273f041d0214d79025aed4f74552b8dc2827f1d26613ddca52772bac", + "DreadRandovania/romfs/actors/items/randomizer_powerup/charclasses/randomizer_powerup_70.bmsad": "58ca0ad4fea57f375fdb71f7b48d9a0ea10eb75a1e1cf20adc00371ed9a7a8cd", + "DreadRandovania/romfs/actors/items/randomizer_powerup/charclasses/randomizer_powerup_71.bmsad": "ca5838fb9348a66895e4026dcb16cb135e07ce60b5789e160ef5f1d6427bb626", + "DreadRandovania/romfs/actors/items/randomizer_powerup/charclasses/randomizer_powerup_72.bmsad": "d9f7ea50542f36b63b4f8f04bcaa3fe666072d2c3519ff4dfadd78ef2b7e0189", + "DreadRandovania/romfs/actors/items/randomizer_powerup/charclasses/randomizer_powerup_73.bmsad": "4b7ed0a85d95407c9a6b1af62a8bb11de7924aeda24ef6f73c7b1e0d83baf03c", + "DreadRandovania/romfs/actors/items/randomizer_powerup/charclasses/randomizer_powerup_74.bmsad": "3390899eb57565c30b1f58b4e9a8255fa554b792628cac1edd36a30d1a321c8a", + "DreadRandovania/romfs/actors/items/randomizer_powerup/charclasses/randomizer_powerup_75.bmsad": "82da4a86cf687d81650a5737108b328f02be90c167cdaa7619bfcb84aa30c930", + "DreadRandovania/romfs/actors/items/randomizer_powerup/charclasses/randomizer_powerup_76.bmsad": "51de989fe432532f97010be8fd65489a74ee5b97007ea3f60f77d277ed4ff9ba", + "DreadRandovania/romfs/actors/items/randomizer_powerup/charclasses/randomizer_powerup_77.bmsad": "de3c7da0f7b8b4916c17e82f4e2b574a515e10c17a8ae000414696c3adbb5008", + "DreadRandovania/romfs/actors/items/randomizer_powerup/charclasses/randomizer_powerup_78.bmsad": "ca8bf1ade8b25678ce9205b3c3f9dc24a3acc54cc3f68ada63204ecc1f559454", + "DreadRandovania/romfs/actors/items/randomizer_powerup/charclasses/randomizer_powerup_79.bmsad": "e50f8aae0e1ebfb03ac749fe4bdf4db66d9dfbd62b8cdcaccf9df0d606a44c1e", + "DreadRandovania/romfs/actors/items/randomizer_powerup/charclasses/randomizer_powerup_8.bmsad": "622623c7b76890a931a129a359f19ceadd08aa3e902d69d0707928b354ac85bc", + "DreadRandovania/romfs/actors/items/randomizer_powerup/charclasses/randomizer_powerup_80.bmsad": "84acd14cbdd481439674bcaf3c96f5eb15eaccecd78af1377196d9515e3b5a21", + "DreadRandovania/romfs/actors/items/randomizer_powerup/charclasses/randomizer_powerup_81.bmsad": "076e83c138be7663e4840e80cfde0874c1812f445b51b63125b1bdd13255abe6", + "DreadRandovania/romfs/actors/items/randomizer_powerup/charclasses/randomizer_powerup_82.bmsad": "f55852545019a57aa6999fd5711126a688c3a7d9664e07eae8bc6be8a5e3f363", + "DreadRandovania/romfs/actors/items/randomizer_powerup/charclasses/randomizer_powerup_83.bmsad": "23d3eec44d7b3d737c2e5328f019dfeb8927e37a28cb370983a036ac4e57eff2", + "DreadRandovania/romfs/actors/items/randomizer_powerup/charclasses/randomizer_powerup_84.bmsad": "9bee646266a5f0df116c2df4edf3b12874b59449c22dfab04e92cd75b2fcaab9", + "DreadRandovania/romfs/actors/items/randomizer_powerup/charclasses/randomizer_powerup_85.bmsad": "219dbb8b4052e68fe4889f3c690a26ad2e9a80d516ef3c962de49ba89a7a839c", + "DreadRandovania/romfs/actors/items/randomizer_powerup/charclasses/randomizer_powerup_86.bmsad": "0df7dddb2b9a85cacb80ba8f9a1f81794fedad8ff507b5c225d2e33b6f3f1d84", + "DreadRandovania/romfs/actors/items/randomizer_powerup/charclasses/randomizer_powerup_87.bmsad": "aa64b08f54ab9872f0ca00ee12d9736d829ca492d3d5e4c909dc5f6941e9aacc", + "DreadRandovania/romfs/actors/items/randomizer_powerup/charclasses/randomizer_powerup_88.bmsad": "df784ea38672c38a4e86de4c4654236c1f6b7c074d73da86e1f06251a594b556", + "DreadRandovania/romfs/actors/items/randomizer_powerup/charclasses/randomizer_powerup_89.bmsad": "7fa2e2c4440831db8e1734ff3d26ea7d7d21fe8734cf04149aa449a822e399fc", + "DreadRandovania/romfs/actors/items/randomizer_powerup/charclasses/randomizer_powerup_9.bmsad": "9e8c00754b6fe1b72787fa75edef21238bb525b6223ee2b67fc8a31f81b55d01", + "DreadRandovania/romfs/actors/items/randomizer_powerup/charclasses/randomizer_powerup_90.bmsad": "284d15f921aadff74f751cdd0c24773412ea4aab607be541d574e6a275b20c7a", + "DreadRandovania/romfs/actors/items/randomizer_powerup/charclasses/randomizer_powerup_91.bmsad": "554d21fad39bb942f1e1f0b44d27e54bb29027f8165ed1f18a07fbb70e876df1", + "DreadRandovania/romfs/actors/items/randomizer_powerup/charclasses/randomizer_powerup_92.bmsad": "85f1cc9114553f4fd5864c48a94de41ccbf46d4d1dad146a55ca7480cf06504c", + "DreadRandovania/romfs/actors/items/randomizer_powerup/charclasses/randomizer_powerup_93.bmsad": "66abaafa06668468ffa9913dd9fff903f4388347d8097027d72ead368065c670", + "DreadRandovania/romfs/actors/items/randomizer_powerup/charclasses/randomizer_powerup_94.bmsad": "ee4d1a1acb1b43a800e366af881f2f7ab1d9c916ddf7b698d710c6915115afcb", + "DreadRandovania/romfs/actors/items/randomizer_powerup/charclasses/randomizer_powerup_95.bmsad": "781b5288cabbda70471968b6f5dcab051824d20f0e55ca1d56516af7a1ccb8cc", + "DreadRandovania/romfs/actors/items/randomizer_powerup/charclasses/randomizer_powerup_96.bmsad": "f1b52601c5f27c18a5642b739ed3cbf9e2844f3fc4679cec2d08f686193d53c5", + "DreadRandovania/romfs/actors/items/randomizer_powerup/charclasses/randomizer_powerup_97.bmsad": "956487d791a5dca2adb768b5c9fac4fa29f909dc1dd4ffa0c14315b5c18c3205", + "DreadRandovania/romfs/actors/items/randomizer_powerup/charclasses/randomizer_powerup_98.bmsad": "d81a77e5bf34d8f26c74915b9a5fecac96b2ebe8ecf92d3f1eae7d4ddc07e84d", + "DreadRandovania/romfs/actors/items/randomizer_powerup/charclasses/randomizer_powerup_99.bmsad": "7464b1f3aeeab6035cb80d2afe4398e17d24acf6c25b3ff20b07094111a1f759", + "DreadRandovania/romfs/actors/items/randomizer_powerup/scripts/randomizer_powerup.lc": "ce82f55650f9f7c297f4d5fd20d9ee156a9fb306cbb5c924ad3650a92ebe8942", + "DreadRandovania/romfs/actors/props/accesspoint/cameras/fake_accespoint.bccam": "1c81349315e5d42f3e8e6220f11f64653edff66136b413ffe09fd7087f2ae360", + "DreadRandovania/romfs/actors/props/accesspoint/cameras/fakeaccess_userroom_loop_front.bccam": "22cf1df001a4ab1db5f192b7ae94288fd024fcb80e22cb851fb25438b8a4c03d", + "DreadRandovania/romfs/actors/props/accesspoint/cameras/userroom_discoverinit_left.bccam": "ca992b2a43cc1cd09a107ab206d9e9dfdef051d27bf6420384bb2f8d2f319862", + "DreadRandovania/romfs/actors/props/accesspoint/charclasses/accesspoint.bmsad": "2fb4a8f2569c832935e10773693dc8d48c3f918ec9eb98f3ff4e5d4a0d4b9486", + "DreadRandovania/romfs/actors/props/accesspoint/lightsdef/light.bldef": "1022784ffb4734b9293bfaff73301896dcf08d9e8cc2fb573838e6049e557d91", + "DreadRandovania/romfs/actors/props/door_shield_plasma/charclasses/door_shield_plasma.bmsad": "ac2d32744197b26a54c9ece8e600d594be4bc2ad6f1bf2440ea47ddc94a313b2", + "DreadRandovania/romfs/actors/props/doorchargecharge/charclasses/doorchargecharge.bmsad": "0df2b8e84d37d5229049d70bf2bc7e8549b9ed78f05f7fdc3dd3cae64f928833", + "DreadRandovania/romfs/actors/props/doorchargeclosed/charclasses/doorchargeclosed.bmsad": "7c9c2f2ae62d8bcf340dae7d81d68c5cd333d80e412634e14a3d99d3a060ac9b", + "DreadRandovania/romfs/actors/props/doorclosedcharge/charclasses/doorclosedcharge.bmsad": "4e31140dc16bb421866abde53585850fd9574a88edf82a1ac080694f8aa9d29b", + "DreadRandovania/romfs/actors/props/doorpresence/collisions/doorpresence.bmscd": "9917cba3277883534396e0ddc92d9f52509a904eda6fdc1a3a414f12e0e19874", + "DreadRandovania/romfs/actors/props/doorshieldbomb/charclasses/doorshieldbomb.bmsad": "a5477209484b7104d755be9324055d7d0101622573f447191b7d9e05fad1c8a3", + "DreadRandovania/romfs/actors/props/doorshieldbomb/models/doorshieldbomb.bcmdl": "ef1b2526bc742ff07b9fe056a0842de20f4636fe1cc0aec105fb51d56012dab2", + "DreadRandovania/romfs/actors/props/doorshieldbomb/models/imats/doorshieldbomb_mp_opaque_01.bsmat": "b026b5025666109a325144320c46ea745145e26a702512482adf2d36df9c2cb0", + "DreadRandovania/romfs/actors/props/doorshieldcrossbomb/charclasses/doorshieldcrossbomb.bmsad": "12dd04b083928316fb81f86dc22b495d597f27f4507f2ca1fc20be9365445e05", + "DreadRandovania/romfs/actors/props/doorshieldcrossbomb/models/doorshieldcrossbomb.bcmdl": "c66c6f866e55ae51b333fe1eef274ed14ac2bf4eafc7692ba7f2cb7c1678be37", + "DreadRandovania/romfs/actors/props/doorshieldcrossbomb/models/imats/doorshieldcrossbomb_mp_opaque_01.bsmat": "4cc879ffbc4f2f8e64d510fbffef238ff3471e3f2bc68dad4b7ae78c9ec5eec3", + "DreadRandovania/romfs/actors/props/doorshieldicemissile/charclasses/doorshieldicemissile.bmsad": "17edeee027ad5a0aff2f5821de052de87a9197562fb95c53bc2624a08caffb25", + "DreadRandovania/romfs/actors/props/doorshieldicemissile/models/doorshieldicemissile.bcmdl": "9409579361eea208cad6d1fc5c7d858b54ceda45aaf307cb8a454775a236b493", + "DreadRandovania/romfs/actors/props/doorshieldicemissile/models/imats/doorshieldicemissile_mp_opaque_01.bsmat": "6b0fe0a4ff8afe91e9005422cd2fa583dd78e8320d0f0d34fbb6f6fd7ccaed64", + "DreadRandovania/romfs/actors/props/doorshieldmissile/collisions/shield_bomb_colls.bmscd": "6ddfc49bc2cc15ab8a8a5b14cf1700d61511f6f7e3e644e6adf7d97dfc8e38e8", + "DreadRandovania/romfs/actors/props/doorshieldpowerbomb/charclasses/doorshieldpowerbomb.bmsad": "15314212eeddc4e0f3c2397240145564a47c2418392cf67895f28e0c92289b4a", + "DreadRandovania/romfs/actors/props/doorshieldpowerbomb/models/doorshieldpowerbomb.bcmdl": "d64783558eef78128444afed198a65c93d0f229729a3997ced8a13e0f07751e3", + "DreadRandovania/romfs/actors/props/doorshieldpowerbomb/models/imats/doorshieldpowerbomb_mp_opaque_01.bsmat": "65fb7bb836af854d9082a48072ae74c760f452a9ac9bc3f8a74878d121a5dcb8", + "DreadRandovania/romfs/actors/props/doorshieldstormmissile/charclasses/doorshieldstormmissile.bmsad": "8d4089d899500fb51901be616c4303a16f0f41fbd23452fd5182f8406d039f72", + "DreadRandovania/romfs/actors/props/doorshieldstormmissile/models/doorshieldstormmissile.bcmdl": "aeaa55b6100eeb551ab3aeae5acfd36138ad181c7b7432928be6a53b00ca21f0", + "DreadRandovania/romfs/actors/props/doorshieldstormmissile/models/imats/doorshieldstormmissile_mp_opaque_01.bsmat": "6b1abca2df2ac9316366a1770480bab53238642387abc7941d6933f17259d784", + "DreadRandovania/romfs/actors/props/doorshieldsupermissile/charclasses/doorshieldsupermissile.bmsad": "4600f1dc1500d3d95227ef2efce53a1b62323a557d4373c4ab9f8cac50f74be5", + "DreadRandovania/romfs/actors/props/shield_diffusion/charclasses/shield_diffusion.bmsad": "c28be1fc91ae60f1fbe6d35357c070b77588f497f9c5f1cbd12553e813b7041e", + "DreadRandovania/romfs/actors/props/shield_diffusion/models/imats/shield_diffusion_mp_opaque_01.bsmat": "3d549e005c85cb16d456e002e8fee8f41820211c77a49021199b0513b8852e0f", + "DreadRandovania/romfs/actors/props/shield_diffusion/models/shield_diffusion.bcmdl": "b93d381fb7b22b792b2db9c22b94068185e56e35fd041cd3466b9dcc81a4f42d", + "DreadRandovania/romfs/actors/props/weightactivatedplatform_access/charclasses/timeline.bmsas": "cda4f454bcf1a7f2510bd67381609c8c0b467d1f40d1a3f1f0250664b6896ad1", + "DreadRandovania/romfs/actors/props/weightactivatedplatform_access/charclasses/weightactivatedplatform_access.bmsad": "33ec24b864c2711a6934afd1a4b0e15018c1ef6cc2d58d746098bb50cafeebac", + "DreadRandovania/romfs/actors/props/weightactivatedplatform_access/charclasses/weightactivatedplatform_access.bmsas": "601b1fec30cd8312bde95f42709fc966492f672f135dfff1e1e99c1242b4087b", + "DreadRandovania/romfs/actors/props/weightactivatedplatform_access/models/imats/weightactivatedplatform_access_material01.bsmat": "871042dfd50033c2b053c4ebe0ac485cd12a2dc83d87f50ddb897fe7211d7db3", + "DreadRandovania/romfs/actors/props/weightactivatedplatform_access/models/weightactivatedplatform_access.bcmdl": "54dadfaf03ac742a1863afc7ff04ccb4641e468a21c6236d789acdbbe3ea917b", + "DreadRandovania/romfs/actors/weapons/soloicemissile/charclasses/soloicemissile.bmsad": "2c5cd4fb91888897ba3fb832e7c642070747bc06fcd755e3b9935f1d6056548c", + "DreadRandovania/romfs/config.ini": "e640635b456305f00b8c1bfe773c92ba14d237379aeca211937b898abe5942d5", + "DreadRandovania/romfs/custom_names.json": "1bb12b907200e5eefd93e45e32c4f241430e48c38b518ea02fe6cf4bde97d444", + "DreadRandovania/romfs/gui/scripts/extrasmenucomposition.bmscp": "33e14913fc1bd7f88ea5067defd28da29642c1a732ace19efc630fae89008c73", + "DreadRandovania/romfs/gui/scripts/msemenu_mainmenu.lc": "294f3ff8166ba54f8752faa57ebad3efd39e55077ce742b703923171e3244b46", + "DreadRandovania/romfs/gui/scripts/msemenu_mainmenu_original.lc": "6ddfe48da80780287475c71f8acf7c62398661a886428848a33c9964b1e20cf4", + "DreadRandovania/romfs/gui/scripts/sprites_hud_tileset.bmsss": "cb8766b4f573709c7e724b29e2bfd431847d0b4fe1c8610152d0b581db530e97", + "DreadRandovania/romfs/maps/levels/c10_samus/s010_cave/s010_cave.brfld": "1ba20d659c93e5dea9bc2cc61bbfee806a14abbb07a663ba011c3b62572d0a13", + "DreadRandovania/romfs/maps/levels/c10_samus/s010_cave/s010_cave.brsa": "609e0644702e44a0015ed894e16507fae2da5454db0904a1521ffb3c601b6cb7", + "DreadRandovania/romfs/maps/levels/c10_samus/s010_cave/s010_cave.lc": "a192ce4063802170265618b70bfae3eaac6050bdfcaedb875eae43b913194c37", + "DreadRandovania/romfs/maps/levels/c10_samus/s010_cave/s010_cave_original.lc": "a3d6ce316c588658cef9288198c344bb9061672367176d90258bb62a41b8fcf3", + "DreadRandovania/romfs/maps/levels/c10_samus/s020_magma/s020_magma.brfld": "ee8a5c71e7350da302d5b62ae7552fd1a645be34f7041bd298d8c1ef6dd7795c", + "DreadRandovania/romfs/maps/levels/c10_samus/s020_magma/s020_magma.brsa": "633c2811a4d68159ac1556c326432cf1fe0baefa631cee8c866b74c1e350920e", + "DreadRandovania/romfs/maps/levels/c10_samus/s020_magma/s020_magma.lc": "58d65a58d55266aca3d4d5510ed6e04dd75ee44dc800f1faa316a497794d5592", + "DreadRandovania/romfs/maps/levels/c10_samus/s020_magma/s020_magma_original.lc": "11414c8d20957ff0cc406c4756495c8c8807290d43e59dbc3bb88d0aea8b985c", + "DreadRandovania/romfs/maps/levels/c10_samus/s030_baselab/s030_baselab.brfld": "d3e4e96ed231a4beb0e35afcd7fab452eb00506d1d0c46afdb4e553bf30b5767", + "DreadRandovania/romfs/maps/levels/c10_samus/s030_baselab/s030_baselab.lc": "bddaba07eb00d89c9a0d485d8f52660deb429b48fa0d7b75e6cb7f0bb8a3826e", + "DreadRandovania/romfs/maps/levels/c10_samus/s030_baselab/s030_baselab_original.lc": "81da428545e5b0651cdba2ba41d7c4e73512820291b13570574e538f455d25ba", + "DreadRandovania/romfs/maps/levels/c10_samus/s040_aqua/s040_aqua.brfld": "531166cdc567d734fbad0b5da38c65d4169fcf35d115485f8e87cd7f5ecf96f6", + "DreadRandovania/romfs/maps/levels/c10_samus/s040_aqua/s040_aqua.brsa": "57e1e23126fbf2bb6a31fea2b1b4648b13465f97a3a5938bda9e52f258316436", + "DreadRandovania/romfs/maps/levels/c10_samus/s040_aqua/s040_aqua.lc": "a1bbad20bc7870d8ce4059c2c92d83f93a5b805b20ef3ffc21aa5b3fba15deeb", + "DreadRandovania/romfs/maps/levels/c10_samus/s040_aqua/s040_aqua_original.lc": "7c4a3922a00a8185beedb9bff028529418931a04806ab62aa7f4f7ee33c6c291", + "DreadRandovania/romfs/maps/levels/c10_samus/s050_forest/s050_forest.brfld": "54c75c119d89dfb3440a362b7f6ecd966a35f2e8472f8e67f089c7efd9d29542", + "DreadRandovania/romfs/maps/levels/c10_samus/s050_forest/s050_forest.lc": "46c128f3e244a80c5de4244e1e358b174615bc2769c09ef5d4c10159580cda4f", + "DreadRandovania/romfs/maps/levels/c10_samus/s050_forest/s050_forest_original.lc": "36ba40bb2499e2ce2439c376133e8af1272780251e9d8449277b35339c466b60", + "DreadRandovania/romfs/maps/levels/c10_samus/s060_quarantine/s060_quarantine.brfld": "1e75abd0e827e27353ac501c3fa182cd8a187352ba2b388017b3e77e9a1473bf", + "DreadRandovania/romfs/maps/levels/c10_samus/s060_quarantine/s060_quarantine.lc": "8099658fbfc1d001248b1c2c83041b9a283d29cc52cda79e32957f8fe615a210", + "DreadRandovania/romfs/maps/levels/c10_samus/s070_basesanc/s070_basesanc.brfld": "de70d3e39b918f09e9dfbea3d81663a7e1d95cc624b58cb16216068e8699608f", + "DreadRandovania/romfs/maps/levels/c10_samus/s070_basesanc/s070_basesanc.brsa": "629cc28f5a111bc915fd2d220722bf3d7cdc612dea172b5dfa0a2517505fe386", + "DreadRandovania/romfs/maps/levels/c10_samus/s070_basesanc/s070_basesanc.lc": "14d1aa901d94a7aca0345a2fabe45c06db3a2b8b873618b7bd3d650934dcccee", + "DreadRandovania/romfs/maps/levels/c10_samus/s070_basesanc/s070_basesanc_original.lc": "309d0c07ad0a05bb50ef97939501918273de530c44c3c3acfc5b737d851a90fc", + "DreadRandovania/romfs/maps/levels/c10_samus/s080_shipyard/s080_shipyard.brfld": "195565bb83ffba499ab7aa936a1e14ba954a0f31cbfb90786afc8d24b7ed0d49", + "DreadRandovania/romfs/maps/levels/c10_samus/s080_shipyard/s080_shipyard.lc": "c94f0da8ee91e159149510f6953ff354585c79d25a434dfc1af162d4b630b6ec", + "DreadRandovania/romfs/maps/levels/c10_samus/s080_shipyard/s080_shipyard_original.lc": "4d7ea2e37d69ccf9dcbb6b78e000c03e1f731dbef062cd56851daf535d5a79fc", + "DreadRandovania/romfs/maps/levels/c10_samus/s090_skybase/s090_skybase.brfld": "2e847e739e7ab9a55c7a24d5267a6ec30897658bc782f6352523235470c5c0cd", + "DreadRandovania/romfs/maps/levels/c10_samus/s090_skybase/s090_skybase.lc": "facd12c691550228409e9cf3911ddb867c105c449039cdbdcf301e7dd40970cb", + "DreadRandovania/romfs/packs/system/system.pkg": "29fd5f921906c5eaeb7e041d4a4d68c4054166a2c14ad04cfc0dfe67d3fd400a", + "DreadRandovania/romfs/replacements.json": "9bf1f9f870c59829ef03bf90ee4a9cd8a1adbe043923ccb05c0c24caf0bd12f0", + "DreadRandovania/romfs/system/animtrees/base.bmsat": "8f1d1a9e38750645dd7da2b81c3ba5c18eab24be1670b11a809bb00ca594ce53", + "DreadRandovania/romfs/system/files.toc": "0e9cf01e99272308ef104ab09e434a624e7efc0f9224780be325442c58cd9e70", + "DreadRandovania/romfs/system/localization/credits.txt": "f875cab4a05ab6734f04e7c69d33a882d1750219e7380caf358ccd3223c8b9da", + "DreadRandovania/romfs/system/localization/us_english.txt": "ce028cdaea5e1556ed325f4bfd1b2e57601928f92dc13f8f4aad8abe8ffa4409", + "DreadRandovania/romfs/system/minimap/minimap.bmmdef": "b41bc0e2603928e8a75b43786d6eaae73b3ca4165cd595d7ddca80c0b940c539", + "DreadRandovania/romfs/system/scripts/bit.lc": "ffba62371e77027e64a4c529bb2a04a7f66f1e661874b22a9ba2c60ac1c6235b", + "DreadRandovania/romfs/system/scripts/cc_to_room_name.lc": "ca9db16b27e7f866d7be02a3eea9440d0eba20bf1454c81c3285db656ccde73e", + "DreadRandovania/romfs/system/scripts/data_structures.lc": "cd17a1eb157639085986b68cd92119cf996f1023b4b61d877785bb5c64026971", + "DreadRandovania/romfs/system/scripts/death_counter.lc": "ee5670e34639f9479a4625773be354f166e0a94e2f9c0f9dc4e68f7b100a67c8", + "DreadRandovania/romfs/system/scripts/disconnect_gui.lc": "2325500c63a24feed125ed8107773bd9a120168a27c083321d1891cad7d8d961", + "DreadRandovania/romfs/system/scripts/guilib.lc": "a1539988b798640fe4dc638990221647f7ff26f67f781a80c2c41133b9a1f321", + "DreadRandovania/romfs/system/scripts/init.lc": "d6d4de3d00a6b5bda66a1fc1b6503cd57ca2a4ded44e664da4589ae9009780dc", + "DreadRandovania/romfs/system/scripts/init_original.lc": "8a7b4dc482da2c7539a06aa4960b4401c3743e7f996b51f8ed58794ad36972bd", + "DreadRandovania/romfs/system/scripts/input_handling.lc": "6bd46a931e9010cbac78a7d970f3885564dc7523c04c76455e2212c267146488", + "DreadRandovania/romfs/system/scripts/room_names.lc": "6f385433c4248cdaaf15fc0af5fb61ff3b916106fa7956b8e603e41e77918f90", + "DreadRandovania/romfs/system/scripts/scenario.lc": "debaddde4d7e1345621f8add7c7456f25c1d249f522e4ffd2a17c102fa571660", + "DreadRandovania/romfs/system/scripts/scenario_original.lc": "3561524f283e9dfa4b7ffaa71c713ee3bbb80e4967f15d7d39291b4bdaa4bf0a", + "DreadRandovania/romfs/textures/actors/items/itemsphere/models/textures/speedboost_at.bctex": "3a2e63ede23609d89ef689712ba369fbc25213dac61fa360ec2da3134af1d181", + "DreadRandovania/romfs/textures/actors/items/itemsphere/models/textures/speedboost_bc.bctex": "0065092756c1dceebded5bd700a185e8c3e9cb72431dbf4612c98277779f05a8", + "DreadRandovania/romfs/textures/actors/items/itemsphere/models/textures/speedboost_nm.bctex": "4b30b4e16cdfaeb9addb075e23da1243518371d15fdac60dc5d93b5dfc666342", + "DreadRandovania/romfs/textures/actors/items/powerup_bomb/models/textures/powerup_morphat.bctex": "e101110c7485ca66892aca7ffc42744060137438225b928c5f1a0b28f4c5b5a6", + "DreadRandovania/romfs/textures/actors/items/powerup_bomb/models/textures/powerup_morphbc.bctex": "bb77bcbda581225890c6738906e4cd75c047c37f7e172f78bbe5864d862cac04", + "DreadRandovania/romfs/textures/actors/items/powerup_bomb/models/textures/powerup_morphnm.bctex": "4fcfc6ff0a4e70d7a6953189528839b26dd25483000d44bac06b7eded590a001", + "DreadRandovania/romfs/textures/actors/items/powerup_doublejump/models/textures/powerup_spi_magnet_bc.bctex": "74fd5c8dfe8ccf60186cf1cf03708376bbe475cfc46c4f84980245e93ad39ef3", + "DreadRandovania/romfs/textures/actors/items/powerup_supermissile/models/textures/powerup_ice__missile_bc.bctex": "dc5e81e3cd46d98afe75a10dc9403de636d1b2f88f80b6b289e0d874f69f8d08", + "DreadRandovania/romfs/textures/actors/items/powerup_widebeam/models/textures/pup_wavebeam_bc.bctex": "a97a303c7c6edd775fddf058663c96d0b971735f5825fdaee22200dc0fae275b", + "DreadRandovania/romfs/textures/actors/props/doorshieldbomb/models/textures/doorshieldbomb_alt_bc.bctex": "0d9d916ddaf60b4387d806c2511ff5b8e427d8ebb325596eb4d9d9c8a2fe14d5", + "DreadRandovania/romfs/textures/actors/props/doorshieldbomb/models/textures/doorshieldbomb_bc.bctex": "9e1372df3356225671a32b165d0cc95f191c9d912e8fd1e09cdce6dd847d64d8", + "DreadRandovania/romfs/textures/actors/props/doorshieldcrossbomb/models/textures/doorshieldcrossbomb_alt_bc.bctex": "2e3207d406096a2008b8a6148c0dc280462aa85294a9e799d1a91822a3a0f562", + "DreadRandovania/romfs/textures/actors/props/doorshieldicemissile/models/textures/doorshieldicemissile_alt_bc.bctex": "fd9049ba2867397dafedfee1a0ac8569b895960a45c6c98025f1201a86318e13", + "DreadRandovania/romfs/textures/actors/props/doorshieldmissile/models/textures/shield_no_attribs_at.bctex": "c4be6a05be178b8234a21d51ff04547eadb80791163516b738d0cdb57a137788", + "DreadRandovania/romfs/textures/actors/props/doorshieldmissile/models/textures/shield_no_normals_nm.bctex": "24fc9773582b9d13f999ec5169daf9bdfc115729ca6174149cc1448c3ba1857a", + "DreadRandovania/romfs/textures/actors/props/doorshieldpowerbomb/models/textures/doorshieldpowerbomb_alt_bc.bctex": "bb1df60026e32afaa677003dba1c957597681e41fa4384013c726736e655f8e4", + "DreadRandovania/romfs/textures/actors/props/doorshieldpowerbomb/models/textures/doorshieldpowerbomb_rdv_bc.bctex": "8f825028b1668fdc9944636e6d6746e84a6913b580a8293fa117a7649010f4cb", + "DreadRandovania/romfs/textures/actors/props/doorshieldstormmissile/models/textures/doorshieldstormmissile_alt_bc.bctex": "b7bdc6675b3a69ab14d19e469659cedb3aca1caffadc319991cb7ac8659bf946", + "DreadRandovania/romfs/textures/actors/props/doorshieldstormmissile/models/textures/doorshieldstormmissile_bc.bctex": "35e9fa2972e16203cd49d328a12df746bd04f755760c092db38dfa6d0c6d6bab", + "DreadRandovania/romfs/textures/actors/props/shield_diffusion/models/textures/shield_diffusion_alt_bc.bctex": "b79b2b4bf00605b0588b1bb7625f3fa0ca2ba41fa973e42ddceb3cc17bae1f5f", + "DreadRandovania/romfs/textures/gui/textures/hud_tileset.bctex": "f91e07cc9beb32e73e426e3e53a7a43addf0f5d7118ee5cdb3e725344987e317", + "DreadRandovania/romfs/textures/system/minimap/icons/icons.bctex": "d5b92ec7118f2e823141214a5a9998be0f90e32a8a193bf0f8f37db8dd9bf6ca", + "___replacements": "{\n \"replacements\": [\n \"system/scripts/init.lc\",\n \"system/scripts/scenario.lc\",\n \"actors/characters/emmyshipyard/charclasses/emmyshipyard.bmsad\",\n \"actors/characters/scorpius/charclasses/scorpius.bmsad\",\n \"actors/characters/emmycave/charclasses/emmycave.bmsad\",\n \"actors/characters/core_x_superquetzoa/charclasses/core_x_superquetzoa.bmsad\",\n \"actors/characters/emmysanc/charclasses/emmysanc.bmsad\",\n \"actors/characters/emmymagma/charclasses/emmymagma.bmsad\",\n \"actors/characters/core_x/charclasses/core_x.bmsad\",\n \"actors/characters/emmyforest/charclasses/emmyforest.bmsad\",\n \"actors/characters/emmylab/charclasses/emmylab.bmsad\",\n \"maps/levels/c10_samus/s010_cave/s010_cave.lc\",\n \"maps/levels/c10_samus/s020_magma/s020_magma.lc\",\n \"maps/levels/c10_samus/s030_baselab/s030_baselab.lc\",\n \"maps/levels/c10_samus/s040_aqua/s040_aqua.lc\",\n \"maps/levels/c10_samus/s050_forest/s050_forest.lc\",\n \"maps/levels/c10_samus/s060_quarantine/s060_quarantine.lc\",\n \"maps/levels/c10_samus/s070_basesanc/s070_basesanc.lc\",\n \"maps/levels/c10_samus/s080_shipyard/s080_shipyard.lc\",\n \"maps/levels/c10_samus/s090_skybase/s090_skybase.lc\",\n \"actors/characters/core_x/scripts/core_x.lc\",\n \"actors/characters/core_x_superquetzoa/scripts/core_x_superquetzoa.lc\",\n \"maps/levels/c10_samus/s010_cave/s010_cave.brsa\",\n \"maps/levels/c10_samus/s020_magma/s020_magma.brsa\",\n \"maps/levels/c10_samus/s040_aqua/s040_aqua.brsa\",\n \"maps/levels/c10_samus/s070_basesanc/s070_basesanc.brsa\",\n \"maps/levels/c10_samus/s010_cave/s010_cave.brfld\",\n \"maps/levels/c10_samus/s030_baselab/s030_baselab.brfld\",\n \"maps/levels/c10_samus/s020_magma/s020_magma.brfld\",\n \"maps/levels/c10_samus/s040_aqua/s040_aqua.brfld\",\n \"maps/levels/c10_samus/s050_forest/s050_forest.brfld\",\n \"maps/levels/c10_samus/s060_quarantine/s060_quarantine.brfld\",\n \"maps/levels/c10_samus/s070_basesanc/s070_basesanc.brfld\",\n \"maps/levels/c10_samus/s080_shipyard/s080_shipyard.brfld\",\n \"maps/levels/c10_samus/s090_skybase/s090_skybase.brfld\",\n \"actors/characters/samus/charclasses/samus.bmsad\",\n \"actors/props/doorshieldsupermissile/charclasses/doorshieldsupermissile.bmsad\",\n \"actors/props/door_shield_plasma/charclasses/door_shield_plasma.bmsad\",\n \"actors/items/powerup_grapplebeam/charclasses/powerup_grapplebeam.bmsad\",\n \"actors/props/doorpresence/collisions/doorpresence.bmscd\",\n \"actors/characters/chozocommander/charclasses/chozocommander.bmsad\",\n \"actors/characters/warlotus/charclasses/warlotus.bmsad\",\n \"actors/props/doorchargecharge/charclasses/doorchargecharge.bmsad\",\n \"actors/props/doorchargeclosed/charclasses/doorchargeclosed.bmsad\",\n \"actors/props/doorclosedcharge/charclasses/doorclosedcharge.bmsad\"\n ]\n}" +} \ No newline at end of file diff --git a/tests/test_full_patch.py b/tests/test_full_patch.py index 357b9ae14..0cce166f7 100644 --- a/tests/test_full_patch.py +++ b/tests/test_full_patch.py @@ -1,6 +1,25 @@ +import hashlib +from pathlib import Path + from open_dread_rando import dread_patcher +def _try_hash_path(path: Path) -> str: + try: + data = path.read_text("utf-8").encode("utf-8") + except UnicodeError: + data = path.read_bytes() + + return hashlib.sha256(data).hexdigest() + + +def _hash_everything(root: Path) -> dict[str, str]: + return dict(sorted( + (p.relative_to(root).as_posix(), _try_hash_path(p)) + for p in root.rglob("*.*") + )) + + def test_export(dread_path, tmp_path, test_files_dir): output_path = tmp_path.joinpath("out") configuration = test_files_dir.read_json("starter_preset_patcher.json") @@ -10,7 +29,14 @@ def test_export(dread_path, tmp_path, test_files_dir): output_path=output_path, configuration=configuration, ) - assert len(list(output_path.rglob("*.lc"))) == 33 + output_hashes = _hash_everything(output_path) + output_hashes["___replacements"] = output_path.joinpath("DreadRandovania/romfs/replacements.json").read_text() + + # # Uncomment these lines to quickly update the expected hashes file + # expected_path = test_files_dir.joinpath("starter_preset_expected_hashes.json") + # import json; expected_path.write_text(json.dumps(output_hashes, indent=4)); assert False + + assert output_hashes == test_files_dir.read_json("starter_preset_expected_hashes.json") ips = sorted( f.relative_to(output_path).as_posix()