Instant Level Select 0.3

Overwrite button input value to prevent Level Select being activated when AreaLock is enabled
This commit is contained in:
sup39 2023-02-08 22:32:28 +09:00
parent 6f507d0d4e
commit db587f8f54
4 changed files with 347 additions and 134 deletions

356
Codes.xml
View file

@ -4421,15 +4421,12 @@
<title lang="en-US">Instant Level Select</title> <title lang="en-US">Instant Level Select</title>
<title lang="ja-JP">レベル選択DX</title> <title lang="ja-JP">レベル選択DX</title>
<author>sup39(サポミク)</author> <author>sup39(サポミク)</author>
<version>0.1</version> <version>0.3</version>
<date>Oct 16, 2022</date> <date>Feb 08, 2023</date>
<description lang="en-US"> <description lang="en-US">
::: warning ::: warning
Shine Get Timer does not restart with this code. Shine Get Timer does not restart with this code.
::: :::
::: warning
Z menu will be disabled
:::
#### Instant Restart #### Instant Restart
- Press `B + D-Pad Up` to **restart the current area** - Press `B + D-Pad Up` to **restart the current area**
@ -4457,9 +4454,6 @@
::: warning ::: warning
シャインゲットタイマーには未対応です。 シャインゲットタイマーには未対応です。
::: :::
::: warning
Zメニューは無効化されます。
:::
#### ポーズせずにやり直し #### ポーズせずにやり直し
- `B+十字キー上`で**現在のエリアをやり直す** - `B+十字キー上`で**現在のエリアをやり直す**
@ -4482,60 +4476,55 @@
4. これで好きなだけハニスキを練習できます。他のエリアに入ろうとする時に自動的にやり直すので、手動でやり直す必要がありません。必要であれば`B + 十字キー上`でやり直すこともできます。 4. これで好きなだけハニスキを練習できます。他のエリアに入ろうとする時に自動的にやり直すので、手動でやり直す必要がありません。必要であれば`B + 十字キー上`でやり直すこともできます。
</description> </description>
<source version="GMSJ01"> <source version="GMSJ01">
040ED64C 4970C435 C20F9B74 00000046
0410B100 496EE990 3C80817F 816D97D0
040EC420 4970D600 3D808040 80AC0D80
04236600 495C34C4 20050022 540A043D
0410B3CC 496EE6DC 41820008 8804002B
040FBAD8 496FDF30 540007FF 9804002B
040F9D68 496FFD78 28830001 4C451102
040EAB80 4970EEC0 40A2000C 38A00208
077F9800 000002F4 90AC0D80 7C7D1B79
3CA08040 80A50D80 418201EC 4800003D
70A00208 28800208 00141516 0017181D
3C60817F 88030004 34000090 2F2E3020
7C000379 4CC61202 32293328 2A1FBA3C
4CA60020 7D8802A6 371E213A 0E2C3900
4800003D 00141516 00010507 08090200
0017181D 34000090 123457D0 24567000
2F2E3020 32293328 12234070 23467001
2A1FBA3C 371E213A 7D2802A6 70A00208
0E2C3900 00010507 28000208 40A201A0
08090200 123457D0
24567000 12234070
23467001 7D2802A6
7D8803A6 3D40803E
394A6000 816D97D0
54A6CF38 50A6F77A 54A6CF38 50A6F77A
50A6E7BC 50A6D7FE 50A6E7BC 50A6D7FE
54A0C738 50A0B77C 54A0C738 50A0B77C
7CC60378 54A4873F 7CC60378 54A3873F
41820054 2C040009 41820054 2C030009
41820098 3C00C84A 41820098 3C00C84A
6000C004 1C840003 6000C004 1C630003
5C04277E 5485103A 5C031F7E 5465103A
2C06000C 408000BC 2C06000C 408000BC
2C06000A 408000D4 2C06000A 408000D4
2C060008 40800090 2C060008 40800090
3C005689 60000234 3C005689 60000234
548C103A 5C0C652E 546C103A 5C0C652E
7CC76378 54C8077E 7CC76378 54C8077E
480000C4 A0EA000E 480000C4 A0FF000E
2C060000 41820028 2C060000 41820028
2C060004 41820028 2C060004 41820028
2C06000A 41820028 2C06000A 41820028
7C0930AE 540744AE 7C0930AE 540744AE
5408CFFE 1D080007 5408CFFE 1D080007
48000094 A00A000A 48000094 A01F000A
B00A000E 890B00DF B01F000E 890B00DF
4800008C A0E30000 4800008C A0E40028
89030002 48000078 8904002A 48000078
3989000C 7C0C30AE 3989000C 7C0C30AE
540744AE 5007CFFE 540744AE 5007CFFE
3C00AC1A 60005CA2 3C00AC1A 60005CA2
1D860003 5C08677E 1D860003 5C08677E
48000054 39890018 48000054 39890018
7C0C20AE 540744AE 7C0C18AE 540744AE
3C001373 60002301 3C001373 60002301
5C082F7E 48000038 5C082F7E 48000038
3989FFF8 54C016B8 3989FFF8 54C016B8
@ -4544,54 +4533,239 @@
5C082F7E 48000018 5C082F7E 48000018
3C001578 60009200 3C001578 60009200
5C072F3E 60E70100 5C072F3E 60E70100
39000000 B0E30000 39000000 B0E40028
99030002 38000001 9904002A 38000001
980300B3 98030004 980400B3 990B00DF
990B00DF 38000000 38000000 900B00D8
900B00D8 A00B00CC A00B00CC 60004000
60004000 54000524 54000524 B00B00CC
B00B00CC B0EA0012 B0FF0012 54E0C63E
54E0C63E 818A0020 819F0020 2C000007
3880003B 2C000007 2C80000E 4C423382
41820010 2C00000E 3800003B 41820008
41820008 38800000 38000000 B00C00E4
B08C00E4 4E800020 A00C00E2 540007FA
3D80817F 880C0004 B00C00E2 54FDD7BE
7C000379 4C820020 3BBD0005 00000000
3800003C 4A9020C0 </source>
4BFFFDE1 40A60014 <source version="GMSJ0A">
7FE3FB78 4A8F1115 C2285FCC 00000046
3B800009 4A8F30F4 3C80817F 816D9E60
881F0064 4A8F29E8 3D80803F 80AC5458
3C60817F A0030004 20050022 540A043D
2C000001 40820028 41820008 8804002B
A01F004C 5400062C 540007FF 9804002B
B01F004C 816D97D0 28830001 4C451102
7F8AE378 A0EA000E 40A2000C 38A00208
4BFFFEB5 A0FC000A 90AC5458 7C7D1B79
B0FC000E 380000FF 418201EC 4800003D
38810054 4A8F1108 00141516 0017181D
3D80817F 888C0005 34000090 2F2E3020
68840001 4A8EE414 32293328 2A1FBA3C
4BFFFD71 40A6000C 371E213A 0E2C3900
38600002 9061012C 00010507 08090200
807F0020 4A911660 123457D0 24567000
3C60817F 88030004 12234070 23467001
2C000001 40820008 7D2802A6 70A00208
4A911A7C 2805000E 28000208 40A201A0
4A911910 4BFFFD3D 54A6CF38 50A6F77A
40A60008 4AA3CB54 50A6E7BC 50A6D7FE
807E0020 38BFFFCC 54A0C738 50A0B77C
8803013B 4AA3CB28 7CC60378 54A3873F
3C60817F 38000000 41820054 2C030009
98030004 7FA3EB78 41820098 3C00C84A
4A90027C 00000000 6000C004 1C630003
28400D50 00000021 5C031F7E 5465103A
017F0005 00000001 2C06000C 408000BC
28400D51 00000022 2C06000A 408000D4
017F0005 00000000 2C060008 40800090
E0000000 00000000 3C005689 60000234
040eb024 60000000 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
</source>
<source version="GMSP01">
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
</source>
<source version="GMSE01">
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
</source> </source>
</code> </code>
</codes> </codes>

View file

@ -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): - [site/.vuepress/components/codes/ui.js](site/.vuepress/components/codes/ui.js):
Specify the vue component for the configuration of the code. Specify the vue component for the configuration of the code.
The version string will be passed as a property. 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 #### 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) | `0x14` | `0x15` | DPad Functions: Stored Angle (Mario) |
| ![](./docs/reserved.svg) | `0x16` | `0x1B` | DPad Functions: Stored Position (Camera) | | ![](./docs/reserved.svg) | `0x16` | `0x1B` | DPad Functions: Stored Position (Camera) |
| ![](./docs/reserved.svg) | `0x20` | `0x23` | Coin Count Savestate: Coin Count | | ![](./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) | `0x94` | `0xA3` | QF Timer: Coordinates of the Text box (LTRB) |
| ![](./docs/reserved.svg) | `0xA4` | `0xB0` | QF Timer: Timer Format String | | ![](./docs/reserved.svg) | `0xA4` | `0xB0` | QF Timer: Timer Format String |
| ![](./docs/reserved.svg) | `0xB0` | `0xB1` | QF Timer: (Unused) | | ![](./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) | `0x110` | `0x237` | QF Timer: Timer Textbox |
| ![](./docs/reserved.svg) | `0x238` | `0x347` | General Function (`drawText`) | | ![](./docs/reserved.svg) | `0x238` | `0x347` | General Function (`drawText`) |
| ![](./docs/buffer.svg) | `0x348` | `0x39B` | Buffer (QF Timer) | | ![](./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 ### Adding translations

View file

@ -1,4 +1,8 @@
# Changelog # 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 ## Jan 10, 2023
### Updated 'Quarterframe Timer' ### Updated 'Quarterframe Timer'
Added the following options to freeze QFT: Added the following options to freeze QFT:

View file

@ -1,41 +1,41 @@
{ {
"name": "gctgenerator", "name": "gctgenerator",
"version": "3.0.1", "version": "3.0.1",
"description": "Super Mario Sunshine Practice File Generator", "description": "Super Mario Sunshine Practice File Generator",
"main": "index.js", "main": "index.js",
"authors": { "authors": {
"name": "Matteias Collet", "name": "Matteias Collet",
"email": "matteias.collet@bluewin.ch" "email": "matteias.collet@bluewin.ch"
}, },
"repository": "https://github.com/BitPatty/gctGenerator/gctGenerator", "repository": "https://github.com/BitPatty/gctGenerator/gctGenerator",
"scripts": { "scripts": {
"dev": "npm run codes:inject && npm run translations:compare && vuepress dev site", "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", "build": "node ./scripts/inject_codes.js && npm run translations:compare && vuepress build site",
"format": "prettier --write ./site/**/*{.md,.js,.json}", "format": "prettier --write ./site/**/*{.md,.js,.json}",
"translations:compare": "node ./scripts/compare_translations.js", "translations:compare": "node ./scripts/compare_translations.js",
"codes:inject": "node ./scripts/inject_codes.js && npm run format", "codes:inject": "node ./scripts/inject_codes.js && npm run format",
"codes:clean": "node ./scripts/clean_codes.js && npm run format", "codes:clean": "node ./scripts/clean_codes.js && npm run format",
"precommit": "npm run codes:clean && git add .", "precommit": "npm run codes:clean && git add .",
"serve": "serve ./site/.vuepress/dist" "serve": "serve ./site/.vuepress/dist"
}, },
"license": "Apache-2.0", "license": "Apache-2.0",
"devDependencies": { "devDependencies": {
"@sup39/markdown-it-attr": "1.2.2", "@sup39/markdown-it-attr": "1.2.2",
"@sup39/markdown-it-inline-tag": "1.0.1", "@sup39/markdown-it-inline-tag": "1.0.1",
"@types/encoding-japanese": "^2.0.1", "@types/encoding-japanese": "^2.0.1",
"@vuepress/plugin-back-to-top": "1.9.8", "@vuepress/plugin-back-to-top": "1.9.8",
"@vuepress/plugin-medium-zoom": "1.9.8", "@vuepress/plugin-medium-zoom": "1.9.8",
"encoding-japanese": "^2.0.0", "encoding-japanese": "^2.0.0",
"jsdom": "21.1.0", "jsdom": "21.1.0",
"pre-commit": "1.2.2", "pre-commit": "1.2.2",
"prettier": "2.8.3", "prettier": "2.8.3",
"serve": "14.2.0", "serve": "14.2.0",
"vuepress": "1.9.8" "vuepress": "1.9.8"
}, },
"dependencies": { "dependencies": {
"vuedraggable": "2.24.3" "vuedraggable": "2.24.3"
}, },
"pre-commit": [ "pre-commit": [
"precommit" "precommit"
] ]
} }