1
0
Fork 0
mirror of https://github.com/jugeeya/UltimateTrainingModpack.git synced 2024-11-20 00:46:34 +00:00
Commit graph

52 commits

Author SHA1 Message Date
asimon-1
cc66406216
More gracefully handle scenario when TOML file doesn't match schema (#599) 2023-08-18 10:21:47 -07:00
asimon-1
cc78dc7e4a
Automatically Keep the Modpack Up-to-Date (#595)
* Grab releases from Github and install

* Refactor

* Fix crash

* Work on fixing install() crash

* Fix the crash by increasing stack size

* Block main() execution on the auto-updater

* Improve error handling

* Delete hash.txt

* Fix get_update_policy()

* Use current time as default last_update_version; Compare publish date to last_update_version to determine if update should be applied.

* Use skyline_web dialogs for user_wants_to_install. Use default selections on emulator instead.

* Fix some logic

* Convert CURRENT_VERSION to a Mutex; implement functions to update the config file

* Adjust logging

* Remove unneeded file

* Allow unwrap after is_some() check

* Fix format

* Auto-updater (squashed)

* Move update policy from config file to menu

* Skip version check on emulator

* Rustfmt, clippy

---------

Co-authored-by: jugeeya <jugeeya@live.com>
2023-08-17 21:21:59 -07:00
jugeeya
c360ce1ad5
Fix text for multiple options (#597) 2023-08-17 17:37:45 -07:00
jugeeya
afdd620c53
Fix Toggle Naming; Update import for skyline-web (#596)
* Initial

* Convert to using Display

* Small test refactor

* Fix for recent skyline_web change
2023-08-17 13:10:31 -07:00
Austin Traver
10ebff5a6f
Refactor string representation for buttons and menus (#592)
* Refactor string representation for buttons and menus

* Pass test cases

* Update help text
2023-08-15 19:37:35 -07:00
GradualSyrup
7c522c02bc
Option to Crop Recording when it ends with neutral inputs (#587)
* Working neutral end early

* fmt

* Default on

* Normalize namespace
2023-08-12 15:37:27 -07:00
GradualSyrup
a76808c838
Ledge Recording Fixes (#585)
* Add reusable print_fighter_info()

* rustfmt

* Clippy

* Standby fix, ngu fix, beginning posY fix, debugging ledge delay

* Fighter specific ledge adjustments

* Fix ledge delay

* Remove debug, fmt

* Fix Savestate Record

* fmt

* clippy
2023-08-11 08:33:46 -07:00
jugeeya
77f527c99a
Use Native Smash Input for All Input Processing (#581)
* Initial

* Finishing up with button config

* Formatting, some clippy

* Move button config to menu

* Consts formatting

* Fix input_record_press (thanks test!)

* Properly migrate menu button inputs

* Updates to triggers, including text

* Convert to multi-select
2023-08-10 07:28:13 -07:00
jugeeya
03cac66d5c
Record Trigger Refactor (#580)
* Initial

* Formatting
2023-08-07 20:11:26 -07:00
jugeeya
85815f87ff
Input Recording Menu Refactor (#579)
* Initial

* Formatting

* Slight name changes
2023-08-07 11:59:47 -07:00
jugeeya
fb9d1648d4
Configurable Recording Frames (#570)
* Playback Slots for Actions and Ledge Options

* Inital attempt

* Fix playback slot

* Fix menu option, probably

* Fix reading from menu option
2023-08-06 17:07:01 -07:00
jugeeya
60f8ffc410
Playback Slots for Actions and Ledge Options (#569) 2023-08-04 15:45:07 -07:00
GradualSyrup
dcb1e831dc
Shulk Monado Art Buffs, SFX and Visual Buff Fixes (#564)
* Monado Buffs, Shulk Dial on Input Recording, Silent Buffs

* All Buffs Silent

* Shulk Flash removed, working on KO UI update

* Little Mac Meter Update

* Remove a few debug functions

* More cleanup

* merge with main

* Paren

* Paren

* rustfmt

* Clippy Fixes

* Fix further Shulk effect issues, improve buff functions
2023-08-04 10:23:22 -07:00
jugeeya
9ef506aac7
[Build] Fix formatting (#557)
* [Build] Fix formatting

* Another set of fixes
2023-08-02 13:53:24 -07:00
jugeeya
3a40d46fca
Add input recording slots as menu options, randomize playback slots (#553) 2023-08-02 10:27:50 -07:00
asimon-1
ace4654f3d
Set tumble trigger as default (#541) 2023-07-29 13:39:09 -07:00
GradualSyrup
78d4b36400
Override ledge fix and input recording menu fixes (#542)
* GCC+tinkering

* First working pass with 8-byte structure usage.
Control scheme is effectively copied for CPU.

* CPU override, sticks not working properly

* Recording working again during record, playback issues.
Also, aerials are all nair, and jump/Dash Attack issues.

* Structure creation cleanup

* Continued testing, still aerial, jump, and dash attack issues

* Fix Dockerfile

* Rework with ControlModuleInternal and ControlModuleStored - same exact issues

* Fix playback inconsistency

* Dead code of trying to find attack air address

* It works! Fix mash.rs overrides of input playback

* Action passing groundwork; Clatter off by default for now

* All Overrides implemented, notes on Snake

* Input Submenu, dummy slots and save state/mash playback interaction

* Nana command fix, mash fix

* Initial Savestate/Ledge record (slight issues)

* Add TODO

* Lasso handled, ledge jump issue fixed, shield decay with input recording fixed, standby setup begun

* first frame playback clear, fix neutral getup

* Standy by groundwork, broken by our frame late record impl

* Prepare for structure change

* On time small structure recording, needs ledge adjustments

* Coloring fix for poessession, lockout implemented and full ledge functionality

* Cleaning and menu fix

* Fix ledge option loop and shield holding on mash

* Fix shielding issues

* turn off playback

* Enable input recording

* Resolving comments 1,2,4,5

* Resolve comments 6, 7, and 8

* External Mash Function

* No Trigger for Overrides, Clatter and Tumble Added

* LR Support, Full Hop Fix

* Starting Status WIP, Structure WIP, LedgeOption PLAYBACK renaming

* WIP Playback Mash - OoS issues - WIP Slots

* Merge branch 'main' into for-restructure prep

* more merge prep

* Return None fix

* More cleanup

* Block -> Shieldstun

* Don't crash on missing menu icons

* Add input recording tab to prevent crash

* Fix general override behavior

* Fix teching overrides

* Additional merge changes

* Nana fixes (also on master so this will be awkward)

* Additional Merge Fixes

* Remove extra tab, prevent panic on missing input recording items

* Needs proper selection of action

* Ledge overrides work without trigger, remove playback/record slot until working
2023-07-29 13:12:32 -07:00
jugeeya
62298ecbc1
Input Recording (#539)
* GCC+tinkering

* First working pass with 8-byte structure usage.
Control scheme is effectively copied for CPU.

* CPU override, sticks not working properly

* Recording working again during record, playback issues.
Also, aerials are all nair, and jump/Dash Attack issues.

* Structure creation cleanup

* Continued testing, still aerial, jump, and dash attack issues

* Fix Dockerfile

* Rework with ControlModuleInternal and ControlModuleStored - same exact issues

* Fix playback inconsistency

* Dead code of trying to find attack air address

* It works! Fix mash.rs overrides of input playback

* Action passing groundwork; Clatter off by default for now

* All Overrides implemented, notes on Snake

* Input Submenu, dummy slots and save state/mash playback interaction

* Nana command fix, mash fix

* Initial Savestate/Ledge record (slight issues)

* Add TODO

* Lasso handled, ledge jump issue fixed, shield decay with input recording fixed, standby setup begun

* first frame playback clear, fix neutral getup

* Standy by groundwork, broken by our frame late record impl

* Prepare for structure change

* On time small structure recording, needs ledge adjustments

* Coloring fix for poessession, lockout implemented and full ledge functionality

* Cleaning and menu fix

* Fix ledge option loop and shield holding on mash

* Fix shielding issues

* turn off playback

* Enable input recording

* Resolving comments 1,2,4,5

* Resolve comments 6, 7, and 8

* External Mash Function

* No Trigger for Overrides, Clatter and Tumble Added

* LR Support, Full Hop Fix

* Starting Status WIP, Structure WIP, LedgeOption PLAYBACK renaming

* WIP Playback Mash - OoS issues - WIP Slots

* Merge branch 'main' into for-restructure prep

* more merge prep

* Return None fix

* More cleanup

* Block -> Shieldstun

* Don't crash on missing menu icons

* Add input recording tab to prevent crash

* Fix general override behavior

* Fix teching overrides

* Additional merge changes

* Nana fixes (also on master so this will be awkward)

* Additional Merge Fixes

* Remove extra tab, prevent panic on missing input recording items

* Remove some TODOs

---------

Co-authored-by: GradualSyrup <68757075+GradualSyrup@users.noreply.github.com>
2023-07-27 16:42:21 -07:00
asimon-1
7eec409086
Mash Overrides (#533)
* Merge from CookieScythe branch

* Rename block to shieldstun, add icons to layout.arc, add new options to ui_menu

* Address clippy warnings and reformat

* Add fn_null_check back to whitelist

* Pray to clippy gods
2023-07-12 11:36:32 -07:00
jugeeya
dbfa60bebc
Fix Save State Slots menu crash (#526)
* Update options.rs

* Update save_states.rs

* Update options.rs
2023-04-29 12:22:45 -07:00
jugeeya
1ce2850af3
Save State Slots as Menu Option (#520)
* Initial

* Clippy + Format

* Update save_states.rs

* selected vs random

* fix

* Formats

* Format

* Format

* Updated copy, 2 randomize_slots, 2 save_slot_state

* Update to 5.1, fix random logic

---------

Co-authored-by: Matthew Edell <edell.matthew@gmail.com>
2023-04-14 15:48:22 -07:00
Chris McDonald
5b2e4c7319
Add rustfmt CI checker and format (#518)
* Add rustfmt CI checker

Minimal checker that just runs `cargo fmt --check` on all targets.

* rustfmt
2023-04-11 14:56:14 -07:00
jugeeya
330976f490
Change default button config for save states: load/save to Shield, slots to Grab (#510)
* initial

* Change references to grab/shield

* Update README.md
2023-03-22 14:22:27 -07:00
Austin Traver
c74a2b3432
Adjust wording of some help-text (#508) 2023-03-14 18:29:16 -07:00
jugeeya
58a18de2b9
Save State Slots: Add enabler toggle, switch to Shield+Left/Right (#505)
* Switch to Shield+Left/Right

* Add option in menu
2023-03-13 22:12:24 -07:00
Austin Traver
c3a36e78e5
Convert line separators from CRLF to LF (#499) 2023-02-26 12:14:03 -08:00
jugeeya
e981a0bfd0
Move files to sd:/ultimate/TrainingModpack (#480)
* Initial

* Move filepaths

* Small fix

* Notification on save state save
2023-02-13 19:58:22 -08:00
jugeeya
3d6ea34eeb
Use layout.arc to Build UI (#473)
* Update lib.rs

* Remaining fixes

* Initial

* Forgot to commit

* Clippy

* Initial

* Use feature gate

* Fixes

* layout.arc actually working. Add training_mod_menu_button

* Add docstring, fix from static

* Use include_flate to keep binary smaller

* Add most menu features back

* Add help, tabs

* Add help, tabs

* Small refactor

* Fix clippy, some other issues

* Updated menu buttons, inactive text colour (btns), layouts

---------

Co-authored-by: Matthew Edell <edell.matthew@gmail.com>
2023-02-09 07:51:40 -08:00
jugeeya
d23dcdf968
Deprecate Web Menu (#472)
* Initial

* Fixes
2023-02-07 06:01:52 -08:00
jugeeya
d5c0d636a0
UI Code Refactor; Notifications; Save Defaults for Quick Menu (#461)
* Initial refactor

* Full refactor

* Depend only on pane creator flags

* Small refactor

* Small refactors; notification support

* Don't push event for every quick menu change

* Backend for defaults almost done

* Run tests on CI

* Finish save + reset defaults without confirmation

* Added slider menu UI

---------

Co-authored-by: xhudaman <edell.matthew@gmail.com>
2023-02-02 15:01:11 -08:00
asimon-1
f35f10e4f4
Fix two bugs which caused some OnOffs to work incorrectly (#454) 2022-12-31 12:02:49 -08:00
jugeeya
c1a6f6626d
Add HUD toggle (#452)
* A bunch of things

* Current progress

* Fix for ResAnimationContent

* Figure out Parts*

* Cleanup, just because

* New pane working!!!

* New null pane for hierarchy

* Success with parent pane

* Generate multiple panes

* Multiple panes, almost working text color

* MaterialColor test, but fails

* Forgot bitfield-struct

* Vtable for material. Fixes SetWhiteColor!

* Refactor color changing, change naming scheme

* Just Frame Advantage

* Merge

* Delete T_test.txt

* Delete set_txt_num_01.txt

* Delete libtraining_modpack.nro

* Format Rust code using rustfmt

* Ignore shell scripts in repo languages

* General refactor, add basis for quick menu

* Small refactor, fix ordering of submenu options

* Toggles, sliders

* Tons of progress...

* Correct dmg updater, remove old quick menu backend

* Fix damage percentage display

* Small QoL

* Format Rust code using rustfmt

* More edits. Use Quit Training button as Modpack Menu header

* Finish merge

* Format Rust code using rustfmt

* Use vanilla backgrounds for text options

* Format ui_hacks, also always do new percent display

* Fix merge

* That was the most awful merge ever

* Address clippy warnings

* Format Rust code using rustfmt

* Last impls for resources, small cleanup

* Use macro for pane names

* Format

* Add HUD toggle

* Small change

* Fix for reentering training mode

* Last cleanup

* Format Rust code using rustfmt

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2022-12-30 15:56:35 -08:00
gnaomo
743d5dbce0
Changed Menu Defaults (#423)
* Changed Menu Defaults

* Update lib.rs
2022-11-07 08:37:46 -08:00
asimon-1
b66d5189c7
Separate SdiFrequency and ClatterFrequency. Make the clatter strength faster (#397) 2022-11-01 17:42:01 -07:00
asimon-1
fa451986e0
Randomized percent on load (#394)
* Create save states tab

* Initial work - crashes on boot

* Change usizes to u32's.
Refactor toggle "checked" logic.
Add blujay's panic tracker.

* Rename tui mins/maxes

* Fix misc. TUI bugs

* Fix panic caused by prematurely setting the submenu state to GaugeState::None

Set submenu state to GaugeState::MinHover when opening a slider menu so that the slider is immediately loaded

When changing from GaugeState::Min/MaxSelected to Min/MaxHover, commit changes from App.current_sub_menu_slider to SubMenu.slider so that it can be exported to JSON

* Merge save_damage and save_state_pct_rand_enable settings

* Add comments to training_mod_tui::lib.rs

* Add icon

* Initial work on web slider

Todo:
Styling polish
Bugfix for initial settings load
Handle dragging using gamepad

* Style and fix web slider

* Add separate settings for player random damage

* TUI styling fixes

* Paginate TUI tabs

* Address CR comments
2022-11-01 13:52:38 -07:00
asimon-1
bbc0c93c9a
Refactor input_delay from i32 to Delay (#386)
* Change input_delay to use Delay structure instead of i32

* Update input_delay.rs
2022-10-06 16:03:41 -07:00
asimon-1
945ef21f60
Mash Triggers (#385)
* Create mash triggers; remove mash in neutral and escape options

* Add landing condition

* Make default more readable
2022-10-06 12:15:36 -07:00
jugeeya
3f5e8398d7 Fix Quick Menu selection (failed to r/w hitbox vis + quick menu previously) 2022-10-04 01:23:55 -07:00
asimon-1
36c6e8859a
Refactor to use Web Sessions (#384)
* Initial commit

* don't rewrite file each time

* Format Rust code using rustfmt

* Receive menu settings from web via message

* Adjust logic

* Stub changes for json messages

* Rust: receive menu as json

* Small JS changes for desktop

* Attempt to fix exit issues

* Fix filename issue

* JS: Export menu as json

* Use JSON for Rust -> JS message

* Update .conf file schema to json

* Tear down session when leaving training mode

* Remove URL behavior, rename WebAppletResponse -> MenuJsonStruct

* Update TUI to use JSON

Co-authored-by: jugeeya <jugeeya@live.com>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2022-09-07 19:34:39 -07:00
Matthew Edell
16f975a9d0
Update web UI for better maintenance (#380)
* Updated menu buttons and icons

* Cleaned up .devcotainer

* removed dockerfile from .devcontainer in favour
of using image

* Added JS settings, updated menu template, css, js

* Updated tab width to 4

* Refactored openTab and closeAllItems,
default tab content to be hidden,
added polyfill for NodeList.forEach

* Refactored openItem, made targeting modals easier

* Refactored toggleOption

* Fixed clicking tab not closing active modals

* Updated aerial delay and falling aerial icons

* Updated colours of defensive settings menu icons

* Updated misc tab menu icon colours

* Fixed oos_offset, shield_state, and shield_tilt

* Fixed all tabs defaulting to active,
Updated modals to be outside menu_items,
Refactored JS to work with new HTML hierarchy

* Updated settings to be JSON

* Fixed single options not populating correctly from url

* Updated menu to edit settings object when toggled

* Removed updating settings from menu before exit

* Refactored comments to fewer lines

* Refactored to use const,
Refactored to use camelCase,
Refactored resetCurrentSubmenu & resetAllSubmenus

* Fixed size and alignment of menu item text,
Fixed size of option button's text,
Fixed colour of crouch icon

* Updated stroke width for crouch icon feet & arms

* Updated check to use fontawesome as a base,
Changed colour to have better contrast,
Added outline for better contrast

* Updated one-winged angel option to 1-winged angel

* Updated openTab and resetCurrentMenu to play sfx
2022-08-04 19:34:25 -07:00
asimon-1
9d2f87290b
Add Crouch Setting (#373)
* Hold stick down when requesting crouch

* Add icon
2022-06-16 07:38:33 -10:00
asimon-1
5e1f523bb6
Fix input delay getting passed to url params incorrectly (#371) 2022-06-07 18:54:26 -07:00
jugeeya
283279b10c
Fixes for Quick Menu Multi-selections (#362) 2022-05-31 20:43:00 -07:00
jugeeya
ac78fb4a4d
Save States with items (#350)
* initial

* Complete refactor, add save state autoload

* forgot to commit consts folder

* Format Rust code using rustfmt

* Refactor, attempt CPU as well

* Update items.rs

* Format Rust code using rustfmt

* Fix web menu

* Format Rust code using rustfmt

* Fix crashes due to cpu kind not set

* Format Rust code using rustfmt

* Prevent Nana from Spawning with Items (#353)

Simple check before giving items

* somehow this code caused blackscreens on ryujinx?

* remerge

* Link and Diddy fixes, Players spawning with CPU item fixes (#355)

* Format Rust code using rustfmt

* Delete mash buffer queue entirely when spawning items to fix diddy as cpu; nits

* fix merge

* nit

* Format Rust code using rustfmt

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: GradualSyrup <68757075+GradualSyrup@users.noreply.github.com>
2022-05-21 17:57:41 -07:00
jugeeya
41ecb8aa38
Save state autoload (#352)
* Add save state autoload option

* Add autoload option

* Format Rust code using rustfmt

* Update save_states.rs

* Add files via upload

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2022-05-16 21:58:32 -07:00
asimon-1
2cd382e0bc
Feature: Clatter Strength (#337)
* Initial clatter work

* Add clatter to menus

* Change joint to hip

* Update SDI and Clatter to use the same enum

* Avoid early clatter/sdi input
2022-05-03 23:23:01 -07:00
jugeeya
92a3d5711d
Another bugfix for input_delay 2022-05-03 17:52:49 -07:00
asimon-1
fb6de31aa4
bugfix for input delay (#339) 2022-04-23 07:21:14 -07:00
asimon-1
a6bed95de3
Tabbed Web Menu (#333)
* Web menu refactor

* Fix some menu items

* Fixes for quick_menu, general clippy fixes

* Revert small testing change

* Add quick menu SVG

* Fix defaults saving/loading

* Log the last URL from the web menu

Co-authored-by: jugeeya <jugeeya@live.com>
2022-04-09 15:10:44 -07:00
jugeeya
2c3e0d752c Fixes to menu; use left side of screen 2022-03-21 00:51:58 -07:00