Pokopia Palette Town Reset#1185
Conversation
add program for Pokopia Palette Town Reset with neutral time skip
|
Azure Pipelines: 2 pipeline(s) were filtered out due to trigger conditions. |
| @@ -1,2805 +1,2818 @@ | |||
| # This CMake file defines all the code file paths as the CMake variables | |||
There was a problem hiding this comment.
What did you do this file?
Replace tab with spaces
|
@Ericzklm is the only person who can review this since no other dev plays Pokopia. In the meantime, can you fix the changes to the cmake file? |
| pbf_press_button(context, BUTTON_A, 160ms, 840ms); | ||
| pbf_press_button(context, BUTTON_A, 48ms, 24ms);//month | ||
| pbf_move_left_joystick(context, {0,-1}, 48ms, 24ms); | ||
| pbf_press_button(context, BUTTON_A, 48ms, 24ms);//day | ||
| pbf_press_button(context, BUTTON_A, 48ms, 24ms);//year | ||
| pbf_press_button(context, BUTTON_A, 48ms, 24ms);//hour | ||
| pbf_press_button(context, BUTTON_A, 48ms, 24ms);//minute | ||
| pbf_press_button(context, BUTTON_A, 48ms, 24ms);//am-pm | ||
| pbf_press_button(context, BUTTON_A, 160ms, 840ms); |
There was a problem hiding this comment.
This may be different for different locales. The NintendoSwitch/Programs/DateSkip area should have routines to abstract this
|
|
||
| //start in game facing a PC, with the A button visible, | ||
| for (uint32_t c = 0; c < SKIPS; c++){ | ||
| env.log("Resets: " + tostr_u_commas(c)); |
There was a problem hiding this comment.
The resets can be added as a program stat
| access_pc_from_overworld(env.console, context, true); | ||
| env.console.log("Opened Cloud Island PC menu"); | ||
| pbf_wait(context, 2000ms); | ||
|
|
||
| Stamp todays_stamp = get_stamp(env.console, context, TODAYS_STAMP_BOX); |
There was a problem hiding this comment.
This would break if the user already opened the PC once today since the stamp card would not automatically pop up
| access_pc_from_overworld(env.console, context, true); | ||
| env.console.log("Opened Cloud Island PC menu"); | ||
| pbf_wait(context, 2000ms); | ||
|
|
There was a problem hiding this comment.
Minor non-gating suggestion: It may be worthwhile to add some logic to detect that the stamp card is actually open before get_stamp(). Possibly by using a watcher for SelectionArrowDetector on ADD_STAMP_BOX.
Having some detection here would stop the program from trailing off in an unknown state in case of something unexpected or setup error (ie. forgetting to pick up Ditto flag). get_stamp() does not distinguish between "not a ditto stamp" and "this isn't even a stamp at all"
| for (uint32_t c = 0; c < SKIPS; c++){ | ||
| env.log("Resets: " + tostr_u_commas(c)); | ||
|
|
||
| wait_for_overworld(env.console, context); |

add program for Pokopia Palette Town Reset with neutral time skip