nyxtheshield / trombloader Goto Github PK
View Code? Open in Web Editor NEWTrombone Champ Custom Chart Loader
License: Other
Trombone Champ Custom Chart Loader
License: Other
More recent updates of Trombone Champ have added songs with variable beats per minute. The game does seem to have some sort of special behaviour for these tracks, where it hides the beat bars after a specific point in the track, although I'm unsure of if there's anything else going on in regards to how the data is actually stored/read, so actual functionality for custom charts may be limited.
At the very least, being able to hide the beat bars would be better than no variable BPM support at all.
Just a few things that I thought useful when I created custom charts.
I have no idea how viable some of these are but ill write them down anyway.
A couple suggestions for new events:
Other nice things:
Notes:
If you have a Tromboner prefab from the Unity Project disabled, the replacement code will not recognize it
Should be easily fixable by changing the method parameters here:
I did everything correctly, but the custom folder is not appearing here is the log:
LogOutput.log
I'm trying to select the NYANYANYANYANYANYANYA... song but it immediately jumps to a different song if I select it, however, the info boxes to the left that have the description of the long are listed correctly and I can actually play the song.
Attached is the log
Player.log
Currently have BepInEx v5.4.21
Downloaded v1.4.2 of Trombloader (latest version on github as of right now)
Songs load in the menu but when clicked on they do not load and the game gets stuck in a black screen.
Have not been able to find a solution, I have tried every version of trombloader I can find, but the others just straight up break the game.
BepInEx is correctly installed and I have a custom songs folder with custom songs in it.
I don't think this is an actual issue anyone else will have, but the game freezes if you have 49 charts with the same short and long name. Only happens if you return to the character select from the tracklist, then go back to the tracklist and try to play a song, otherwise everything plays normally.
my custom charts dont show up here is my log file
[Message: BepInEx] BepInEx 5.4.21.0 - TromboneChamp (18.11.2022 22:08:40)
[Info : BepInEx] Running under Unity v2019.3.11.13561645
[Info : BepInEx] CLR runtime version: 4.0.30319.17020
[Info : BepInEx] Supports SRE: False
[Info : BepInEx] System platform: Bits64, Windows
[Message: BepInEx] Preloader started
[Info : BepInEx] Loaded 1 patcher method from [BepInEx.Preloader 5.4.21.0]
[Info : BepInEx] 1 patcher plugin loaded
[Info : BepInEx] Patching [UnityEngine.CoreModule] with [BepInEx.Chainloader]
[Message: BepInEx] Preloader finished
[Message: BepInEx] Chainloader ready
[Message: BepInEx] Chainloader started
[Info : BepInEx] 1 plugins to load
[Info : BepInEx] Loading [TrombLoader 1.4.2]
[Info :TrombLoader] Plugin TrombLoader is loaded!
[Error : HarmonyX] Failed to patch void GameController::tryToLoadLevel(string filename): System.Exception: Parameter "customtrack" not found in method void GameController::tryToLoadLevel(string filename)
at HarmonyLib.Public.Patching.HarmonyManipulator.EmitCallParameter (System.Reflection.MethodInfo patch, System.Boolean allowFirsParamPassthrough, Mono.Cecil.Cil.VariableDefinition& tmpObjectVar, System.Collections.Generic.List`1[HarmonyLib.Public.Patching.HarmonyManipulator+ArgumentBoxInfo]& tmpBoxVars) [0x007ae] in <474744d65d8e460fa08cd5fd82b5d65f>:0
at HarmonyLib.Public.Patching.HarmonyManipulator.WritePrefixes (HarmonyLib.Internal.Util.ILEmitter+Label returnLabel) [0x00179] in <474744d65d8e460fa08cd5fd82b5d65f>:0
at HarmonyLib.Public.Patching.HarmonyManipulator.WriteImpl () [0x0022c] in <474744d65d8e460fa08cd5fd82b5d65f>:0
[Message: BepInEx] Chainloader startup complete
here is my LogOutput[Message: BepInEx] BepInEx 5.4.21.0 - trombonechamp (30/10/2023 17:12:41)
[Info : BepInEx] Running under Unity v2019.4.40.16762411
[Info : BepInEx] CLR runtime version: 4.0.30319.17020
[Info : BepInEx] Supports SRE: False
[Info : BepInEx] System platform: Bits64, Windows
[Message: BepInEx] Preloader started
[Info : BepInEx] Loaded 1 patcher method from [BepInEx.Preloader 5.4.21.0]
[Info : BepInEx] 1 patcher plugin loaded
[Info : BepInEx] Patching [UnityEngine.CoreModule] with [BepInEx.Chainloader]
[Message: BepInEx] Preloader finished
[Message: BepInEx] Chainloader ready
[Message: BepInEx] Chainloader started
[Info : BepInEx] 1 plugins to load
[Error : BepInEx] Could not load [TrombLoader 2.1.0] because it has missing dependencies: ch.offbeatwit.baboonapi.plugin (v2.1.0 or newer)
[Message: BepInEx] Chainloader startup complete
The game loads correctly and can see custom songs in the menu, but when trying to play them the screen goes black and does not load. Currently using the latest TrombLoader version (v1.4.2).
A friendly Mac user and I successfully installed BepInEx to the game on a MacOS device.
However attempting to load a custom chart resulted in a blackscreen with notes faintly visible and no music playing.
The following error occurs as the plugin is attempting to load the .ogg (at Plugin.GetClipAudioSync)
UriFormatException: Invalid URI: The Authority/Host could not be parsed.
at UnityEngineInternal.WebRequestUtils.MakeInitialUrl (System.String targetUrl, System.String localUrl) [0x000c8] in <a5f78ef8005a453aa863503f7ed64467>:0
at UnityEngine.Networking.UnityWebRequest.set_url (System.String value) [0x00007] in <a5f78ef8005a453aa863503f7ed64467>:0
at UnityEngine.Networking.UnityWebRequest..ctor (System.String url, System.String method, UnityEngine.Networking.DownloadHandler downloadHandler, UnityEngine.Networking.UploadHandler uploadHandler) [0x0001a] in <a5f78ef8005a453aa863503f7ed64467>:0
at UnityEngine.Networking.UnityWebRequestMultimedia.GetAudioClip (System.String uri, UnityEngine.AudioType audioType) [0x0000e] in <7e5e565e073b4587968ebb6ef13b9047>:0
at TrombLoader.Plugin+<GetAudioClipSync>d__5.MoveNext () [0x00045] in <67e261e65508417587fb3c8ce428cf63>:0
at TrombLoader.Class_Patches.GameControllerStartPatch.Prefix (GameController __instance) [0x007f6] in <67e261e65508417587fb3c8ce428cf63>:0
at GameController.Start () [0x00005] in <2c1bd930c016469ea082019b9c08a9e7>:0
The above error is followed by a flood of NullReferenceExceptions until the game was closed
One possible cause I've considered is the different file path compared to Windows or Linux as well as the use of backslashes in the file uri.
So I tried this:
public IEnumerator GetAudioClip(string path, Action callback = null)
{
if (SystemInfo.operatingSystemFamily == OperatingSystemFamily.MacOSX)
{
path = "file://" + path;
}
else
{
path = "file:\\\\" + Path.GetFullPath(path);
}
Which turned out unsuccessful and resulted in an identical error...
Since I don't want to annoy our friendly community member by throwing poop at the wall until something sticks ill create an issue instead.
I've attached the Player.log of the first time they attempted to load a song with an unaltered Build of Trombloader 1.4.2
(For the sake of their privacy I've replaced all instances of their username with "USERNAME")
Having a way to determine which tromboner the player has selected (via an event or some other method) would, for example, let backgrounds selectively pick out what tromboner model to use for an animation.
The only issue I can see with this is if the game adds more tromboners in the future, or if custom tromboners were made available through a mod, so maybe a fallback solution should also be included to prevent backgrounds from potentially breaking in the future.
Right now, BGdata events have to be sorted by time to properly fire
It's also handled in LateUpdate() and can only be fired one at a time.
Both of these could cause issues with events being fired properly, and this should be reworked
Can be reproduced by attempting to challenge trazom with a custom song installed
In step 2 it says "Step 2: Patch Trombone Champ with BepInEx"
How exactly does one "patch" Trombone Champ with BepInEx
When I paste trombloader.dll file to bepinex/plugins folder, the game black screen, when i delete it, the game doesnt black screen.
[Message: BepInEx] BepInEx 5.4.21.0 - TromboneChamp (2023/01/03 23:42:38)
[Info : BepInEx] Running under Unity v2019.3.11.13561645
[Info : BepInEx] CLR runtime version: 4.0.30319.17020
[Info : BepInEx] Supports SRE: False
[Info : BepInEx] System platform: Bits64, Windows
[Message: BepInEx] Preloader started
[Info : BepInEx] Loaded 1 patcher method from [BepInEx.Preloader 5.4.21.0]
[Info : BepInEx] 1 patcher plugin loaded
[Info : BepInEx] Patching [UnityEngine.CoreModule] with [BepInEx.Chainloader]
[Message: BepInEx] Preloader finished
[Message: BepInEx] Chainloader ready
[Message: BepInEx] Chainloader started
[Info : BepInEx] 1 plugins to load
[Info : BepInEx] Loading [TrombLoader 1.4.1]
[Info :TrombLoader] Plugin TrombLoader is loaded!
[Message: BepInEx] Chainloader startup complete
Here's the log file from bepinex, I tried v6 pre release and also 5.4.21
OS: Windows 11 22H2 x64
Figured I'd list the charts I've tested on here.
The entire frame is pink, up until the camera zooms in enough on the trombone photo (trombone jump-scare).
Lighting appears to be broken, skybox is black. No shadows. Custom models are invisible aside from some eyes. Ground is missing specular highlights. This was the full version of the background, not the lite version.
Everything mostly appears correct, although there are no shadows.
Windows are completely opaque, shadows are missing. Some lighting errors, especially as the camera switches to show the trombone player.
Trombone is missing shading, otherwise looks fine.
Lighting appears to be slightly darker than it should be. The headlights don’t emit any light, and the lens flares on them aren't rendered correctly. The windshield is also opaque.
Can barely see a thing due to the smoke effect missing transparency. Possibly some other rendering errors, but hard to see due to the smoke. At least the coloured lighting appears to work correctly?
Renders perfectly, although on a 16:10 display the image is letterboxed with grey bars, but that's not our problem.
Looks completely borked, likely transparency related.
Initially seemed okay aside from the pink sky and slightly incorrect lighting, but after a camera cut goes completely pink.
The colours seem to be slightly off, but otherwise it looks perfect and the numbers pop up correctly.
Lighting is too bright and it’s nothing but pink outside the window.
Same transparency issue as Detonate with the same smoke texture.
Looks perfect, including the transparent layers used in select scenes. Videos all work.
Skybox is pink, lighting is broken, some textures appear to just be black, and the custom models are almost entirely missing, and I think I recognise that smoke texture from somewhere 🤔. Also you can see the confetti lol.
Everything is pink, only this time you can’t even see the UI. This uses a custom shader in the UI layer, so it’s obviously not going to work here.
Pink sky, and the ground is black. Lighting seems to be correct, at least.
Missing the shadow on the floor in that one specific shot, otherwise is fine.
Slight lighting differences, the red ground at the start is darker and missing some specularity. Sephiroth’s face is all kinds of fucked up, and his dress is entirely black. Skybox at the start is black instead of grey.
Scene is slightly darker than it should be. Particles are missing transparency and the bushes are pink. Skybox is also black. The pictures that fly in seem to work fine.
Lighting and shadow issues, along with the usual problems with transparent textures on the ground and trees. The letterbox also doesn’t quite fully scale vertically to 16:10, although that’s not a TrombLoader issue.
Transparency issues with the bubbles. The water caustics effect may also be affected by this, since it’s now showing as a static spotlight. Shadows are missing, but the custom lighting otherwise seems to work fine (including colour changes), along with the flashes in the background. The tromboner that appears at the end is incorrectly scaled, although this was more likely the result of a bug with TrombLoader that I had to work around by fucking with the scaling, and that bug seems to no longer exist.
Everything is pink aside from the table and trombone, up until it switches to a video which looks fine.
Miku and her friends are all pink, along with the screens in the background. Tansparent effects, such as the lights, seem to be mostly working fine.
The characters are all pink and are sitting in cylinders. The tables have some large brown circles on them, which might be from the candles that are usually there. There’s also an extra set of white curtains that’s not supposed to be there.
Works perfectly, aside from an issue on 16:10 displays. Again, not our problem.
The whole scene is pink, aside from the tromboner.
How do I install using Linux Proton?
I've seen discord sometimes strip trombackground files into just .trombackgroun
occasionally. Might have to do with a hardcoded file extension limit.
I haven't seen it cause any problems yet, but it could be worth checking for both types just in case.
In step 2 it says "Step 2: Patch Trombone Champ with BepInEx"
How exactly does one "patch" Trombone Champ with BepInEx
Should work the same as the other options, letting you pick enabled, disabled or whatever the player chooses.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.