Commit graph

24 commits

Author SHA1 Message Date
minenice55 3002e48350
Alternate Control Styles Support (#554)
* add mouse controller

* support different control styles in options

deprecate old input check methods

* fully functional input actions system

* btsds InputAction

* blue bear InputAction

* more games

fix bugs with some input related systems

* coin toss re-toss

* cheer readers touch

* dog ninja touch

* multiple games

* last of the easy games' touch

* more specialized games

* specialized games 2

* finish ktb games

* remove legacy settings disclaimer

* "only" two games left

* karate man touch

* rockers touch

still needs fixes and bad judge strum

* DSGuy flicking animation

* playstyle chart property

* improve performance of minigame preloading

* improve look of cursor

make assetbundles use chunk-based compression
refactor assetbundle loading methods a bit

* prime conductor stream playback to stabilize seeking operations

* fix air rally swing on pad release

* use virtual mouse pointer

* add UniTask

* make BeatAction use UniTask

* implement UniTask to replace some coroutines

* add touch style UI elements and effects

games now support the ability to define two cursor colours if they need split screen touch inputs

* update plugins and buildscript

* implement thresholded pointer position clipping

* fix clamping

* instant show / hide

fix discord game SDK crashes
2023-10-29 19:44:47 +00:00
minenice55 60d29f19c6
Timekeeping Improvements and Small Optimizations (#544)
* make BeatActions coroutines instead of componentrs

* pooled scheduled sounds

implement S' entity seek

* remove debug prints from last two changes

* implement absolute time tracking

implement DSP time resyncing

* optimize GameManager

* update TMPro

* update IDE packages

* fix dsp sync making the drift worse

* fix issue with the JSL dll

* relocate debug print

* make scheduled pitch setter functional

* any cpu
2023-09-11 22:28:04 +00:00
minenice55 bb2ae74339
Integration of Jukebox Library (#451)
* add Jukebox library

todo:
- saving / loading of new format
- inferrence of unknown data like past versions
- move the temporary float casts to proper use of double
- make sound related functions take double for timing
- inform people that the Jukebox sound player was renamed to SoundByte lol

* make sound, input scheduling, and super curve use double precision

* successfully load charts

* editor works again

v1 riqs can be saved and loaded

* first tempo and volume markers are unmovable

fix loading of charts' easing values

* use gsync / freesync

* update Jukebox refs to SoundByte

* game events use double part 1

Air Rally - Glee Club converted

* don't load song if chart load fails

* finish conversion of all minigames

* remove editor waveform toggle

* timeline now respects added song offset length

clear cache files on app close
prepped notes for dsp sync

* update timeline length when offset changed

* update to latest Jukebox

* make error panel object in global game manager

* improve conductor music scheduling

* added error message box

fix first game events sometimes not playing
2023-06-10 15:13:29 -04:00
ev 9b16a8d5a9
Fan Club Retouch (#416)
* new sprites not done

* more sprites more anim chanegs

* almost done

* INSANE

* sheet done

* its done

* re-implement improved squat sprite

* remove many unused assets

allow games to be hidden in the editor

* start animations of backup dancers

* finish backup dancer animations

* add effects to backup dancers' tree

* add dancers to the prefab

* import new sprites

* backup dancers fully functional

* game camera now updates in LateUpdate()

* touched some anims

* oops

* oops 2

* add audience applause

fix the mapped cellanim shaders

---------

Co-authored-by: minenice55 <star.elementa@gmail.com>
2023-05-21 17:35:00 +00:00
minenice55 caf7d9465f
Play Mode Features Part 1 (#413)
* add pause menu assets

* layout and animation for pause

* make play mode prefab function

re-assign unused class inheritance

* remove filepath

* don't init medals twice

* remove PlayerActionObject

* initial attempt at anti-note lock

TODO: circumvent inputs clearing themselves making the functionality not work

* properly implement input lock prevention

* fix error on editor open

* functional pause menu

* bugfix

* make unpausing not reset current play statistics

* serialize initializer components in inspector instead of procedurally generating

* sanity check

* note for fade

* make flashes in the camera prefabs instead of in world space

remove / reorganize script files
address issue #411

* fix bug with perfect campaign

make minigame transitions hide the game canvas
adjust animation of the song credits textbox

* fully functional intro scene (placeholder for future title screen)

refactored entire game loading procedure
re-organized some files

* add interaction query to disclaimer text

* reword legal

* anchor section medals to section display

more tempo change placement controls

* operation order bugfix

* prep for future ratings and stats

* loading text

* autoload opening scene

* splash screen adjustments

added setting to force enable splash screen

* adjust setting entry
2023-05-07 20:33:15 +00:00
minenice55 da60d3acf4
Air Rally Improvements (#248)
* air rally enhancements

* update credits

* add near miss for fanclub (oops)
2023-01-30 16:42:19 -05:00
minenice55 a8b6f345a2
Scoring System Preparation (#235)
* add calculation for accuracy

* record accuracy for playthrough

* implement forced miss scoring to some games
2023-01-24 22:54:19 -05:00
minenice55 eaba812665
Timing Window Improvements (#199)
* implement a fix for #196

- improve checking for unwanted inputs in minigame scripts, see Fan Club, Karate Man, and Pajama Party for examples
- provisionally implemented calculating average player input offset

* update samurai slice ds to new assets

implement near miss feedback

* import new pajama party assets
2023-01-13 23:53:25 -05:00
minenice55 695f6671fb
Performance Improvements (#173)
* improve performance with new render settings

- fix letterboxing losing camera references

* fin in missing params?

needs testing

* finish default param check

* scale jump animation of fan club spectators

* fix missing references in a karate man method

* more liberal use of Double in conductor

beatkeeping is now absolute instead of being additive

* optimize Conductor more

reduce caching from constantly sorting tempo changes despite game manager doing it for us
moved metronome logic to LateUpdate
2022-09-22 22:05:04 -04:00
minenice55 bccd88e164
Beatmap Sections & Latency Reduction (#170)
* prep UI for chart section

* all special layers now on one area

todo: have buttons toggle between special layers  (selection mode shows all?), use the tabs system for this

* swapping between special timelines - prelim

* special entities can be placed

* spec. timeline base functions complete

music volume changes should work now

* attempt at input lag reduction

needs testing

* fix dsp issues

* smaller DSP buffer?

* Revert "smaller DSP buffer?"

This reverts commit 9d36db5ff9.

* make conductor clock use real time (double)

change order of execution of input-related scripts to further attempt a reduction in input latency

* start values can be changed

make the old special entity bar visible when the corresponding type is selected

* creation of Chart Sections (TODO: GO REFERENCE)

* added GO references

* section edit dialog

* disable wrapping on chart section obj

* backspace can now delete entities

* entities don't shift when duplicated

* fix PlayerActionEvent order of operations

- fixed remix loading trying to clear special timeline while it's writing to itself

* make oop check match parity

* more operation order fix

* fix Karate Man BG initialization

* show section progress in editor

todo: section progress in-game

* more fix for entity duping
2022-09-18 16:48:14 -04:00
minenice55 1c95c317b8 address Fan Club spectator "sticky hands" 2022-08-19 17:08:58 -04:00
minenice55 06fe482f3d add controller selection, auto-search
- fix bug in master volume control where the text input doesn't work
- fix bug in the Fan Club minigame where the player wouldn't jump when they were supposed to
2022-07-23 22:24:07 -04:00
minenice55 b039ff219a
Small Bugfixes (#95)
* Fix Sheets issue 11

* Textboxes: Fix unicode glyphs sometimes not displaying

* Fan Club: fix order of operation bug

* Conductor: refactor ReportBeat

this fixes issues with using crop stomp alongside tempo changes

* Built to Scale (Gold): temporarily disable post-processing

game renders very incorrectly due to the post processing effects
will need someone who knows what they're doing in that field to fix it proper

* marked some assets for deletion

* I'm dumb and left in debug prints
2022-06-08 20:35:15 -07:00
minenice55 52ecce8c3e
Gameplay: Timing windows use a "smart" BPM scaling system (#86)
* Game: Pajama Party

* Pajama Party: bg setup, Mako jump

* Pajama Party: mako jumping

* Pajama Party: prep landing anim references

* Pajama Party: several anims, improved 3d scene

* Pajama Party: bg cleanup

* Pajama Party: Mako sleeping anims

* Pajama Party: All Mako anims, add sounds to fs

* Pajama Party: prep monkey prefab

* Pajama Party: thrown pillow, prep sequences

* Pajama Party: make embarrassed catch not loop

whoops

* Pajama Party: sound adjust, prefab work

* Pajama Party: monkey spawning, basic jumping

* Pajama Party: jump sequence

no input detection or landing yet

* Pajama Party: anims override

* Pajama Party: jump cue functional

comes with improvements and bugfixes to PlayerActionEvent

* Pajama Party: sleep cue functional

* Pajama Party: some notes

* PlayerActionEvent: more bugfixes

* Pajama Party: fully functional throw cue

* Pajama Party: start animating sleep cue

* Pajama Party: feature-complete

* Pajama Party: unfuck layering

* Pajama Party: icon

also adds Fan Club's concept icon

* Pajama Party: cues while unloaded

* inverse-scale timing windows based on speed

* Fan Club: move to new input system

* Fan Club: allow forced animations during calls

* Crop Stomp: fix camera shake regression
2022-06-03 20:15:56 -07:00
minenice55 6be3b47559 Fan Club: various adjustments
address input lockout (still has one minor issue I need to check)
make certain forced animations make more sense
2022-04-28 16:01:07 -04:00
minenice55 04328464f7 Merge branch 'master' into more-ntrIdol-2 2022-03-28 09:43:55 -04:00
minenice55 8ca290cc3f Fan Club: more animations 2022-03-27 19:05:08 -04:00
Slaith ebeea121ed Moved all minigame initialization to Awake()
I just moved everything that was in start to awake. There are a few other changes I made, like using init functions rather than awake in scripts that depended on something that was initialized in another script's awake (to make sure things always happen in the right order), as well as some other stuff in some specific minigames
2022-03-25 19:08:46 -07:00
minenice55 a84b8858d6 Fan Club: landing sound 2022-03-17 17:01:26 -04:00
minenice55 f6269d1acb Fan Club: add cues continuing from transition, muted cues 2022-03-17 16:43:35 -04:00
minenice55 7d6fe11243 Fan Club: refactoring, fixes 2022-03-17 15:13:48 -04:00
minenice55 5ae6b8a267 Fan Club: finish all basic functionality
todo: other "special" animations
2022-03-16 17:41:46 -04:00
minenice55 b58030e018 Fan Club: actual functionality (input still bugged) 2022-03-15 18:43:13 -04:00
minenice55 9c640ea3d2 Fan Club: like 50% of the game lmao 2022-03-14 20:54:54 -04:00