From db587f8f54bc6736ab4dc1e4bee579caa7732b4b Mon Sep 17 00:00:00 2001 From: sup39 Date: Wed, 8 Feb 2023 22:32:28 +0900 Subject: [PATCH] Instant Level Select 0.3 Overwrite button input value to prevent Level Select being activated when AreaLock is enabled --- Codes.xml | 356 ++++++++++++++++++++++++++++++++++++++------------- Readme.md | 39 +++++- changelog.md | 4 + package.json | 82 ++++++------ 4 files changed, 347 insertions(+), 134 deletions(-) diff --git a/Codes.xml b/Codes.xml index 0a323a9..9b2d70a 100644 --- a/Codes.xml +++ b/Codes.xml @@ -4421,15 +4421,12 @@ Instant Level Select レベル選択DX sup39(サポミク) - 0.1 - Oct 16, 2022 + 0.3 + Feb 08, 2023 ::: warning Shine Get Timer does not restart with this code. ::: - ::: warning - Z menu will be disabled - ::: #### Instant Restart - Press `B + D-Pad Up` to **restart the current area** @@ -4457,9 +4454,6 @@ ::: warning シャインゲットタイマーには未対応です。 ::: - ::: warning - Zメニューは無効化されます。 - ::: #### ポーズせずにやり直し - `B+十字キー上`で**現在のエリアをやり直す** @@ -4482,60 +4476,55 @@ 4. これで好きなだけハニスキを練習できます。他のエリアに入ろうとする時に自動的にやり直すので、手動でやり直す必要がありません。必要であれば`B + 十字キー上`でやり直すこともできます。 - 040ED64C 4970C435 - 0410B100 496EE990 - 040EC420 4970D600 - 04236600 495C34C4 - 0410B3CC 496EE6DC - 040FBAD8 496FDF30 - 040F9D68 496FFD78 - 040EAB80 4970EEC0 - 077F9800 000002F4 - 3CA08040 80A50D80 - 70A00208 28800208 - 3C60817F 88030004 - 7C000379 4CC61202 - 4CA60020 7D8802A6 - 4800003D 00141516 - 0017181D 34000090 - 2F2E3020 32293328 - 2A1FBA3C 371E213A - 0E2C3900 00010507 - 08090200 123457D0 - 24567000 12234070 - 23467001 7D2802A6 - 7D8803A6 3D40803E - 394A6000 816D97D0 + C20F9B74 00000046 + 3C80817F 816D97D0 + 3D808040 80AC0D80 + 20050022 540A043D + 41820008 8804002B + 540007FF 9804002B + 28830001 4C451102 + 40A2000C 38A00208 + 90AC0D80 7C7D1B79 + 418201EC 4800003D + 00141516 0017181D + 34000090 2F2E3020 + 32293328 2A1FBA3C + 371E213A 0E2C3900 + 00010507 08090200 + 123457D0 24567000 + 12234070 23467001 + 7D2802A6 70A00208 + 28000208 40A201A0 54A6CF38 50A6F77A 50A6E7BC 50A6D7FE 54A0C738 50A0B77C - 7CC60378 54A4873F - 41820054 2C040009 + 7CC60378 54A3873F + 41820054 2C030009 41820098 3C00C84A - 6000C004 1C840003 - 5C04277E 5485103A + 6000C004 1C630003 + 5C031F7E 5465103A 2C06000C 408000BC 2C06000A 408000D4 2C060008 40800090 3C005689 60000234 - 548C103A 5C0C652E + 546C103A 5C0C652E 7CC76378 54C8077E - 480000C4 A0EA000E + 480000C4 A0FF000E 2C060000 41820028 2C060004 41820028 2C06000A 41820028 7C0930AE 540744AE 5408CFFE 1D080007 - 48000094 A00A000A - B00A000E 890B00DF - 4800008C A0E30000 - 89030002 48000078 + 48000094 A01F000A + B01F000E 890B00DF + 4800008C A0E40028 + 8904002A 48000078 3989000C 7C0C30AE 540744AE 5007CFFE 3C00AC1A 60005CA2 1D860003 5C08677E 48000054 39890018 - 7C0C20AE 540744AE + 7C0C18AE 540744AE 3C001373 60002301 5C082F7E 48000038 3989FFF8 54C016B8 @@ -4544,54 +4533,239 @@ 5C082F7E 48000018 3C001578 60009200 5C072F3E 60E70100 - 39000000 B0E30000 - 99030002 38000001 - 980300B3 98030004 - 990B00DF 38000000 - 900B00D8 A00B00CC - 60004000 54000524 - B00B00CC B0EA0012 - 54E0C63E 818A0020 - 3880003B 2C000007 - 41820010 2C00000E - 41820008 38800000 - B08C00E4 4E800020 - 3D80817F 880C0004 - 7C000379 4C820020 - 3800003C 4A9020C0 - 4BFFFDE1 40A60014 - 7FE3FB78 4A8F1115 - 3B800009 4A8F30F4 - 881F0064 4A8F29E8 - 3C60817F A0030004 - 2C000001 40820028 - A01F004C 5400062C - B01F004C 816D97D0 - 7F8AE378 A0EA000E - 4BFFFEB5 A0FC000A - B0FC000E 380000FF - 38810054 4A8F1108 - 3D80817F 888C0005 - 68840001 4A8EE414 - 4BFFFD71 40A6000C - 38600002 9061012C - 807F0020 4A911660 - 3C60817F 88030004 - 2C000001 40820008 - 4A911A7C 2805000E - 4A911910 4BFFFD3D - 40A60008 4AA3CB54 - 807E0020 38BFFFCC - 8803013B 4AA3CB28 - 3C60817F 38000000 - 98030004 7FA3EB78 - 4A90027C 00000000 - 28400D50 00000021 - 017F0005 00000001 - 28400D51 00000022 - 017F0005 00000000 - E0000000 00000000 - 040eb024 60000000 + 39000000 B0E40028 + 9904002A 38000001 + 980400B3 990B00DF + 38000000 900B00D8 + A00B00CC 60004000 + 54000524 B00B00CC + B0FF0012 54E0C63E + 819F0020 2C000007 + 2C80000E 4C423382 + 3800003B 41820008 + 38000000 B00C00E4 + A00C00E2 540007FA + B00C00E2 54FDD7BE + 3BBD0005 00000000 + + + C2285FCC 00000046 + 3C80817F 816D9E60 + 3D80803F 80AC5458 + 20050022 540A043D + 41820008 8804002B + 540007FF 9804002B + 28830001 4C451102 + 40A2000C 38A00208 + 90AC5458 7C7D1B79 + 418201EC 4800003D + 00141516 0017181D + 34000090 2F2E3020 + 32293328 2A1FBA3C + 371E213A 0E2C3900 + 00010507 08090200 + 123457D0 24567000 + 12234070 23467001 + 7D2802A6 70A00208 + 28000208 40A201A0 + 54A6CF38 50A6F77A + 50A6E7BC 50A6D7FE + 54A0C738 50A0B77C + 7CC60378 54A3873F + 41820054 2C030009 + 41820098 3C00C84A + 6000C004 1C630003 + 5C031F7E 5465103A + 2C06000C 408000BC + 2C06000A 408000D4 + 2C060008 40800090 + 3C005689 60000234 + 546C103A 5C0C652E + 7CC76378 54C8077E + 480000C4 A0FF000E + 2C060000 41820028 + 2C060004 41820028 + 2C06000A 41820028 + 7C0930AE 540744AE + 5408CFFE 1D080007 + 48000094 A01F000A + B01F000E 890B00DF + 4800008C A0E40028 + 8904002A 48000078 + 3989000C 7C0C30AE + 540744AE 5007CFFE + 3C00AC1A 60005CA2 + 1D860003 5C08677E + 48000054 39890018 + 7C0C18AE 540744AE + 3C001373 60002301 + 5C082F7E 48000038 + 3989FFF8 54C016B8 + 7C0C006E 5C072F7E + 5007252E 800C0004 + 5C082F7E 48000018 + 3C001578 60009200 + 5C072F3E 60E70100 + 39000000 B0E40028 + 9904002A 38000001 + 980400B3 990B00DF + 38000000 900B00D8 + A00B00CC 60004000 + 54000524 B00B00CC + B0FF0012 54E0C63E + 819F0020 2C000007 + 2C80000E 4C423382 + 3800003B 41820008 + 38000000 B00C00E4 + A00C00E2 540007FA + B00C00E2 54FDD7BE + 3BBD0005 00000000 + + + C229E080 00000046 + 3C80817F 816D9EC8 + 3D808040 80ACBC24 + 20050022 540A043D + 41820008 8804002B + 540007FF 9804002B + 28830001 4C451102 + 40A2000C 38A00208 + 90ACBC24 7C7D1B79 + 418201EC 4800003D + 00141516 0017181D + 34000090 2F2E3020 + 32293328 2A1FBA3C + 371E213A 0E2C3900 + 00010507 08090200 + 123457D0 24567000 + 12234070 23467001 + 7D2802A6 70A00208 + 28000208 40A201A0 + 54A6CF38 50A6F77A + 50A6E7BC 50A6D7FE + 54A0C738 50A0B77C + 7CC60378 54A3873F + 41820054 2C030009 + 41820098 3C00C84A + 6000C004 1C630003 + 5C031F7E 5465103A + 2C06000C 408000BC + 2C06000A 408000D4 + 2C060008 40800090 + 3C005689 60000234 + 546C103A 5C0C652E + 7CC76378 54C8077E + 480000C4 A0FF000E + 2C060000 41820028 + 2C060004 41820028 + 2C06000A 41820028 + 7C0930AE 540744AE + 5408CFFE 1D080007 + 48000094 A01F000A + B01F000E 890B00DF + 4800008C A0E40028 + 8904002A 48000078 + 3989000C 7C0C30AE + 540744AE 5007CFFE + 3C00AC1A 60005CA2 + 1D860003 5C08677E + 48000054 39890018 + 7C0C18AE 540744AE + 3C001373 60002301 + 5C082F7E 48000038 + 3989FFF8 54C016B8 + 7C0C006E 5C072F7E + 5007252E 800C0004 + 5C082F7E 48000018 + 3C001578 60009200 + 5C072F3E 60E70100 + 39000000 B0E40028 + 9904002A 38000001 + 980400B3 990B00DF + 38000000 900B00D8 + A00B00CC 60004000 + 54000524 B00B00CC + B0FF0012 54E0C63E + 819F0020 2C000007 + 2C80000E 4C423382 + 3800003B 41820008 + 38000000 B00C00E4 + A00C00E2 540007FA + B00C00E2 54FDD7BE + 3BBD0005 00000000 + + + C22A6170 00000046 + 3C80817F 816D9FA0 + 3D808040 80AC4484 + 20050022 540A043D + 41820008 8804002B + 540007FF 9804002B + 28830001 4C451102 + 40A2000C 38A00208 + 90AC4484 7C7D1B79 + 418201EC 4800003D + 00141516 0017181D + 34000090 2F2E3020 + 32293328 2A1FBA3C + 371E213A 0E2C3900 + 00010507 08090200 + 123457D0 24567000 + 12234070 23467001 + 7D2802A6 70A00208 + 28000208 40A201A0 + 54A6CF38 50A6F77A + 50A6E7BC 50A6D7FE + 54A0C738 50A0B77C + 7CC60378 54A3873F + 41820054 2C030009 + 41820098 3C00C84A + 6000C004 1C630003 + 5C031F7E 5465103A + 2C06000C 408000BC + 2C06000A 408000D4 + 2C060008 40800090 + 3C005689 60000234 + 546C103A 5C0C652E + 7CC76378 54C8077E + 480000C4 A0FF000E + 2C060000 41820028 + 2C060004 41820028 + 2C06000A 41820028 + 7C0930AE 540744AE + 5408CFFE 1D080007 + 48000094 A01F000A + B01F000E 890B00DF + 4800008C A0E40028 + 8904002A 48000078 + 3989000C 7C0C30AE + 540744AE 5007CFFE + 3C00AC1A 60005CA2 + 1D860003 5C08677E + 48000054 39890018 + 7C0C18AE 540744AE + 3C001373 60002301 + 5C082F7E 48000038 + 3989FFF8 54C016B8 + 7C0C006E 5C072F7E + 5007252E 800C0004 + 5C082F7E 48000018 + 3C001578 60009200 + 5C072F3E 60E70100 + 39000000 B0E40028 + 9904002A 38000001 + 980400B3 990B00DF + 38000000 900B00D8 + A00B00CC 60004000 + 54000524 B00B00CC + B0FF0012 54E0C63E + 819F0020 2C000007 + 2C80000E 4C423382 + 3800003B 41820008 + 38000000 B00C00E4 + A00C00E2 540007FA + B00C00E2 54FDD7BE + 3BBD0005 00000000 diff --git a/Readme.md b/Readme.md index f6ec0b0..1dae04d 100644 --- a/Readme.md +++ b/Readme.md @@ -35,6 +35,8 @@ you may also need to check the following files: - [site/.vuepress/components/codes/ui.js](site/.vuepress/components/codes/ui.js): Specify the vue component for the configuration of the code. The version string will be passed as a property. +- [site/.vuepress/components/codes/preview.js](site/.vuepress/components/codes/preview.js): + Specify the `id` and the `getConfig(version)` function of the code to make it shown in preview. #### Reserved Memory @@ -47,7 +49,12 @@ Some codes store some states in the games memory starting from address 0x817F000 | ![](./docs/reserved.svg) | `0x14` | `0x15` | DPad Functions: Stored Angle (Mario) | | ![](./docs/reserved.svg) | `0x16` | `0x1B` | DPad Functions: Stored Position (Camera) | | ![](./docs/reserved.svg) | `0x20` | `0x23` | Coin Count Savestate: Coin Count | -| ![](./docs/unallocated.svg) | `0x24` | `0x93` | Not Allocated | +| ![](./docs/reserved.svg) | `0x24` | `0x26` | Pattern Selector: Selected Pattern Numbers | +| ![](./docs/reserved.svg) | `0x27` | `0x27` | Pattern Selector: Cursor Position | +| ![](./docs/reserved.svg) | `0x28` | `0x29` | Instant Level Select: Last Selected Area ID | +| ![](./docs/reserved.svg) | `0x2A` | `0x2A` | Instant Level Select: Last Selected Episode Number | +| ![](./docs/reserved.svg) | `0x2B` | `0x2B` | Instant Level Select: Area Lock Flag | +| ![](./docs/unallocated.svg) | `0x2C` | `0x93` | Not Allocated | | ![](./docs/reserved.svg) | `0x94` | `0xA3` | QF Timer: Coordinates of the Text box (LTRB) | | ![](./docs/reserved.svg) | `0xA4` | `0xB0` | QF Timer: Timer Format String | | ![](./docs/reserved.svg) | `0xB0` | `0xB1` | QF Timer: (Unused) | @@ -65,7 +72,35 @@ Some codes store some states in the games memory starting from address 0x817F000 | ![](./docs/reserved.svg) | `0x110` | `0x237` | QF Timer: Timer Textbox | | ![](./docs/reserved.svg) | `0x238` | `0x347` | General Function (`drawText`) | | ![](./docs/buffer.svg) | `0x348` | `0x39B` | Buffer (QF Timer) | -| ![](./docs/unallocated.svg) | `0x39C` | `0xFFF` | Not Allocated | +| ![](./docs/reserved.svg) | `0x39C` | `0x3AF` | QF Section Timer: Background Config | +| ![](./docs/reserved.svg) | `0x3B0` | `0x3BF` | QF Section Timer: Text Config | +| ![](./docs/reserved.svg) | `0x3C0` | `0x3C8` | QF Section Timer: Format String | +| ![](./docs/reserved.svg) | `0x3C9` | `0x3C9` | QF Section Timer: (Unused) | +| ![](./docs/reserved.svg) | `0x3CA` | `0x3CB` | QF Section Timer: Section Count | +| ![](./docs/reserved.svg) | `0x3CC` | `0x3CF` | QF Section Timer: Last Freezed Time | +| ![](./docs/reserved.svg) | `0x3D0` | `0x40F` | QF Section Timer: Section Time Array | +| ![](./docs/reserved.svg) | `0x410` | `0x41F` | Pattern Selector: Background Config | +| ![](./docs/reserved.svg) | `0x424` | `0x433` | Pattern Selector: Text Config | +| ![](./docs/reserved.svg) | `0x434` | `0x440` | Pattern Selector: Format String | +| ![](./docs/reserved.svg) | `0x441` | `0x475` | Pattern Selector: Pattern Data | +| ![](./docs/reserved.svg) | `0x476` | `0x477` | Attempt Counter: Previous Area | +| ![](./docs/reserved.svg) | `0x478` | `0x478` | Attempt Counter: Display Timer | +| ![](./docs/reserved.svg) | `0x479` | `0x479` | Attempt Counter: Display Duration | +| ![](./docs/reserved.svg) | `0x47A` | `0x47F` | Attempt Counter: Format String | +| ![](./docs/reserved.svg) | `0x480` | `0x48F` | Attempt Counter: Text Config | +| ![](./docs/reserved.svg) | `0x490` | `0x4A3` | Attempt Counter: Background Config | +| ![](./docs/reserved.svg) | `0x4A4` | `0x4A5` | Attempt Counter: Success Count | +| ![](./docs/reserved.svg) | `0x4A6` | `0x4A7` | Attempt Counter: Attempt Count | +| ![](./docs/reserved.svg) | `0x4A8` | `0x4A8` | Attempt Counter: Got Shine Flag | +| ![](./docs/buffer.svg) | `0x4A9` | `0x4AF` | Buffer (Attempt Counter) | +| ![](./docs/unallocated.svg) | `0x4B0` | `0x4BF` | Not Allocated | +| ![](./docs/buffer.svg) | `0x4C0` | `0x4C2` | Buffer (Controller Input Display) | +| ![](./docs/reserved.svg) | `0x4C3` | `0x4C3` | Controller Input Display: Line Width | +| ![](./docs/reserved.svg) | `0x4C4` | `0x4C7` | Controller Input Display: Scale | +| ![](./docs/reserved.svg) | `0x4C8` | `0x4CB` | Controller Input Display: (X, Y) Coordinate | +| ![](./docs/reserved.svg) | `0x4CC` | `0x4CF` | Controller Input Display: Background Color | +| ![](./docs/reserved.svg) | `0x4D0` | `0x53F` | Controller Input Display: Components Config | +| ![](./docs/unallocated.svg) | `0x540` | `0xFFF` | Not Allocated | ### Adding translations diff --git a/changelog.md b/changelog.md index 10f9223..ebc6840 100644 --- a/changelog.md +++ b/changelog.md @@ -1,4 +1,8 @@ # Changelog +## Feb 08, 2023 +### Updated 'Instant Level Select' +Overwrite button input value to prevent Level Select being activated when AreaLock is enabled + ## Jan 10, 2023 ### Updated 'Quarterframe Timer' Added the following options to freeze QFT: diff --git a/package.json b/package.json index 694221e..181d328 100644 --- a/package.json +++ b/package.json @@ -1,41 +1,41 @@ -{ - "name": "gctgenerator", - "version": "3.0.1", - "description": "Super Mario Sunshine Practice File Generator", - "main": "index.js", - "authors": { - "name": "Matteias Collet", - "email": "matteias.collet@bluewin.ch" - }, - "repository": "https://github.com/BitPatty/gctGenerator/gctGenerator", - "scripts": { - "dev": "npm run codes:inject && npm run translations:compare && vuepress dev site", - "build": "node ./scripts/inject_codes.js && npm run translations:compare && vuepress build site", - "format": "prettier --write ./site/**/*{.md,.js,.json}", - "translations:compare": "node ./scripts/compare_translations.js", - "codes:inject": "node ./scripts/inject_codes.js && npm run format", - "codes:clean": "node ./scripts/clean_codes.js && npm run format", - "precommit": "npm run codes:clean && git add .", - "serve": "serve ./site/.vuepress/dist" - }, - "license": "Apache-2.0", - "devDependencies": { - "@sup39/markdown-it-attr": "1.2.2", - "@sup39/markdown-it-inline-tag": "1.0.1", - "@types/encoding-japanese": "^2.0.1", - "@vuepress/plugin-back-to-top": "1.9.8", - "@vuepress/plugin-medium-zoom": "1.9.8", - "encoding-japanese": "^2.0.0", - "jsdom": "21.1.0", - "pre-commit": "1.2.2", - "prettier": "2.8.3", - "serve": "14.2.0", - "vuepress": "1.9.8" - }, - "dependencies": { - "vuedraggable": "2.24.3" - }, - "pre-commit": [ - "precommit" - ] -} +{ + "name": "gctgenerator", + "version": "3.0.1", + "description": "Super Mario Sunshine Practice File Generator", + "main": "index.js", + "authors": { + "name": "Matteias Collet", + "email": "matteias.collet@bluewin.ch" + }, + "repository": "https://github.com/BitPatty/gctGenerator/gctGenerator", + "scripts": { + "dev": "npm run codes:inject && npm run translations:compare && vuepress dev site", + "build": "node ./scripts/inject_codes.js && npm run translations:compare && vuepress build site", + "format": "prettier --write ./site/**/*{.md,.js,.json}", + "translations:compare": "node ./scripts/compare_translations.js", + "codes:inject": "node ./scripts/inject_codes.js && npm run format", + "codes:clean": "node ./scripts/clean_codes.js && npm run format", + "precommit": "npm run codes:clean && git add .", + "serve": "serve ./site/.vuepress/dist" + }, + "license": "Apache-2.0", + "devDependencies": { + "@sup39/markdown-it-attr": "1.2.2", + "@sup39/markdown-it-inline-tag": "1.0.1", + "@types/encoding-japanese": "^2.0.1", + "@vuepress/plugin-back-to-top": "1.9.8", + "@vuepress/plugin-medium-zoom": "1.9.8", + "encoding-japanese": "^2.0.0", + "jsdom": "21.1.0", + "pre-commit": "1.2.2", + "prettier": "2.8.3", + "serve": "14.2.0", + "vuepress": "1.9.8" + }, + "dependencies": { + "vuedraggable": "2.24.3" + }, + "pre-commit": [ + "precommit" + ] +}