Commit Graph

211 Commits

Author SHA1 Message Date
ivan tkachenko 3cdd99f57e When player dies, check for nearby Jester music source to show Game Over text 2026-04-06 07:50:06 +03:00
ivan tkachenko 8561834e22 Attempt to fix missing track selection 2026-04-06 07:50:06 +03:00
ivan tkachenko df0cfc16ff Fix Game Over Text resetting at the end of round
When the last player dies and should have their custom Game Over text
overridden, the mod previously would Clear() the override and destroy
the coroutine together with custom behaviour object.
2026-04-06 07:50:05 +03:00
ivan tkachenko b99e4c1e2c Select new random track groups every time 2026-04-06 07:50:05 +03:00
ivan tkachenko dfefc06abf Add tracks count getter to ISelectableTrack 2026-04-06 07:50:05 +03:00
ivan tkachenko 702eb9fccd Port to modern [Rpc] attribute
Method ChooseTrackServerRpc should never have been an RPC. Server will
invoke it when it's the right time. And only server was calling it
anyway.
2026-04-06 07:50:04 +03:00
ivan tkachenko 7794e44831 Add new track Yesterday 2026-04-06 07:50:04 +03:00
ivan tkachenko 24bae0e370 Add stylized lyrics for HighLow 2026-04-06 05:38:55 +03:00
ivan tkachenko 871c608a33 Guard against null during shutdown 2026-04-06 05:38:55 +03:00
ivan tkachenko a71c61b5c7 Add support for v80 2026-04-05 23:33:07 +03:00
ivan tkachenko f55e2e8436 [v80] Use vanilla RefreshLightsList
Vanilla v80 changed three things about this patch:
- allPoweredLightsAnimators list became nullable, breaking the patch.
- implemented looking up the List<> of children, rendering the patch
  obsolete.
- added new logic for objects tagged with "IndirectLightSource", making
  the patch incomplete.

All in all, the patch is not needed anymore.
2026-04-05 23:33:06 +03:00
ivan tkachenko 7fb63e4718 Bump version of dependency WaterGun-V70PoweredLights_Fix to 1.2.1
Version 1.2.1 correctly applies animators patches, so this mod doesn't
have to include a copy anymore.
2026-04-05 23:33:06 +03:00
ivan tkachenko d600a3170f Add sources of patches Unity assets 2026-04-04 23:24:46 +03:00
ivan tkachenko 98244dd3f1 Implement a better way to disable tracks while keeping them in JSON 2026-03-07 01:33:38 +02:00
ivan tkachenko f20a500992 Show Artist & Song metadata in config 2026-01-23 14:34:37 +02:00
ivan tkachenko 6a71ed578b Include Artist & Song metadata in the track info 2026-01-23 14:19:34 +02:00
ivan tkachenko 3490b1c2f3 Bump version 2026-01-23 14:01:00 +02:00
ivan tkachenko 5258b806d4 Add a new track Arcane 2026-01-23 05:23:53 +02:00
ivan tkachenko 4cc187b525 Split audio tracks metadata into a separate file 2026-01-23 01:52:23 +02:00
ivan tkachenko ecee2a25e2 Reorder [General] config section alphabetically
As a side-effect, this conveniently places the most important option
OverrideSpawnRates at the top.
2026-01-23 00:13:02 +02:00
ivan tkachenko af38056d11 Merge Config.DisplayLyrics and ReduceVFXIntensity
Both are responsible for some sort of VFX. Make the number of options
less overwhelming by merging the two into one.
2026-01-23 00:08:17 +02:00
ivan tkachenko 567597e353 Remove Config.ExtrapolateTime even from Debug build
Just always do it, there is no reason not to.

And maybe try dspTime to replace the whole extrapolation technique.
2026-01-22 23:47:00 +02:00
ivan tkachenko ee2b1574d0 Hide AudioOffset from Lethal Config
It is a niche option, and having two sliders next to each other might be
overwhelming for players.
2026-01-22 23:43:02 +02:00
ivan tkachenko 02903ba537 Adapt to WaterGun-V70PoweredLights_Fix-1.1.0
Don't replace the rest of the patches, because animators and audio would
be broken for reasons yet unknown.
2026-01-22 23:38:57 +02:00
ivan tkachenko b0d5922c3c Replace hotfix in code with a properly rebuilt asset bundle 2026-01-22 23:38:56 +02:00
ivan tkachenko 4e9ba0928f Disable track Yalgaar in release builds
Still will be available in a web player.
2026-01-22 23:38:56 +02:00
ivan tkachenko 6a5cc637ac Rewrite client-side vanilla-compat mode
Amends b8ef4d7937

Networking and playback are fixed, but client-side vanilla-compat mode
can never work as intended, because timers are actually client-side and
not synchronized at all. No matter what your local timer is set to, the
host gets to decide when to pop Jester at a completely random for your
client moment. There can be no meaningful prediction whatsoever.
2026-01-22 23:38:56 +02:00
ivan tkachenko a2cf66476c Deduplicate logs to avoid spamming console with errors each frame 2026-01-20 01:48:39 +02:00
ivan tkachenko a254188f0c Stop farAudio (popGoesTheWeaselTheme) in the only place where it matters 2026-01-17 19:40:42 +02:00
ivan tkachenko 3041d9f73c Merge EnemyAI.OnDestroy patch with cleanups into existing Behaviour
That Harmony patch predated MuzikaGromcheJesterNetworkBehaviour, but
there is no need to have as a separate class, especially not with the
subclass check hack.
2026-01-16 19:38:43 +02:00
ivan tkachenko 3835e84450 Bump version 2026-01-16 18:04:06 +02:00
ivan tkachenko cfff2b808a Tweak disco balls at the factory's start room
Remove all but one in the center and hang it lower.
I don't access to source assets of the bundle, and I have no idea if
reassembling it after the AssetReapper is gonna work.
2026-01-13 22:38:06 +02:00
ivan tkachenko b8ef4d7937 Implement client-side playback with Vanilla Compat Mode 2026-01-13 21:43:52 +02:00
ivan tkachenko ffa2e952c9 Add new track TwoFastTuFurious 2026-01-13 04:57:49 +02:00
ivan tkachenko e05c3b2471 Bump version 2026-01-13 03:18:55 +02:00
ivan tkachenko 3f06cc9aa6 Add new track PickUpSticks 2026-01-12 03:20:03 +02:00
ivan tkachenko a4cee92d00 Load audio clips on demand, implement cache
Reduces cold-boot memory usage by 400 MB for the current playlist of
58 audio files (27.8 MB).
2026-01-11 16:06:45 +02:00
ivan tkachenko f83f2a72ba Mark AudioClip as nullable 2026-01-11 03:17:49 +02:00
ivan tkachenko afb3e34e71 Implement seasonal content framework
to ensure that New Year's songs won't play in summer.
2026-01-11 02:53:53 +02:00
ivan tkachenko ebd7811b12 Avoid null dereference while reading seed in orbit 2026-01-11 02:13:19 +02:00
ivan tkachenko a64d671527 Add Config.ReduceVFXIntensity option 2026-01-11 00:12:21 +02:00
ivan tkachenko 7eaa5fce75 Add new track DiscoKapot 2026-01-10 23:47:39 +02:00
ivan tkachenko da86ca6a2d Add new track Paarden 2026-01-10 22:51:56 +02:00
ivan tkachenko c4c1919df6 Adjust lyrics for PWNED 2026-01-10 21:10:08 +02:00
ivan tkachenko 869d982b1e Remaster recently added track IkWilJe, rework visual effects 2026-01-10 21:07:15 +02:00
ivan tkachenko 398de3dc04 Bump version 2026-01-10 19:41:07 +02:00
ivan tkachenko 4f432968ef Release v1337.9001.3 2025-12-30 23:40:33 +02:00
ivan tkachenko 56cea50a65 add new track IkWilJe 2025-12-30 23:39:01 +02:00
ivan tkachenko c1d91839e4 add new track HighLow 2025-12-30 22:25:50 +02:00
ivan tkachenko 76189c6ad2 Update BepInEx.PluginInfoProps to version 2.x
2.x implements better namespacing.
2025-12-30 22:25:49 +02:00