A Skyline plugin using cargo-skyline for adding features to the training mode. It interfaces with a Tesla, a Switch custom overlay, for use as a menu to the features offered in training mode.
Built releases can be found here.
The features in this modpack are configured through the Tesla menu, which can be accessed at any time with by pressing L+X+DPad Left
. This button configuration is fully configurable in the file /config/tesla/config.ini
.
Currently only works on shield. Practice moves on shield to find out the frame advantage of the moves performed. Best used with Infinite Shield.
At any time in Training Mode, you can press Grab + Down Taunt
to save the state of training mode. This will save the position, state, and damage of each fighter, which can then be reverted to at any time with Grab + Up Taunt
. Use this instead of the built-in training mode reset!
Currently, hitboxes and grabboxes are supported. When visualization is active, other move effects are temporarily turned off for easier visualization.
Any submenu that allows you to toggle multiple options will randomize between only those options. This is the vast majority of items in the menu detailed below, and it's a huge change that allows for really deep practice.
Note: Combine this with the shield toggles to force the CPU to perform options OoS when their shield is damaged!
CPUs will mash an option on the first frame possible out of hitstun.
Airdodge has specific logic that the CPU will also flash shield when landing.
Set a mash option to perform directly after the one specified with Mash Toggles.
Set a CPU to mash specified option in neutral/idle state.
CPUs DI in the direction specified, relative to the player's facing position.
Works the same way as the DI toggle, but choose a direction for the CPU to SDI every 4 frames of hitlag.
When a CPU is set to mash airdodge, it will use this direction as its airdodge direction.
CPUs will perform a random ledge option among the selected options.
CPUs will also perform a defensive option after getting up.
CPUs will perform a random tech option among the selected options.
CPUs will also perform a defensive option after getting up.
CPUs will perform the defensive option a CPU will perform after teching or getting up from the ledge, among the selected options.
- Infinite: CPUs will hold a shield that does not deteriorate over time or by damage.
- Hold: CPUs will hold a shield that does not deteriorate over time until hit for the first time.
The CPU will delay until the specified number of hits to perform an OoS option.
The CPU will delay a specified number of frames before performing an OoS option.
Edit how the CPU performs aerials.
Specified in frames (from apex of CPU's jump).
The overall process can be found in the Github Actions specification file as well.
- Rust environment with cargo-skyline
- DEVKITPRO
switch-dev
installation - Built Skyline, Tesla nx-ovlloader and Tesla Menu, and libnro_hook.nro
# clone the repository recursively
git clone --recursive
# to build the training mod Skyline plugin
# resulting build is found in target/aarch64-skyline-switch/release/libtraining_modpack.nro
cargo skyline build --release
# to build the training mod Tesla overlay
# resulting build is ovlTrainingModpack.ovl
cd TrainingModpackOverlay && make