Musical Instrument Minecraft Interface (MIMI)

Musical Instrument Minecraft Interface (MIMI)

637k Downloads

[BUGS] Receiver & Maestro issues

Epik-B0mber opened this issue ยท 19 comments

commented

Describe the bug
I have a handful of bugs to report, mixed with a feature. Firstly, the "Note Held" trigger does not seem to work on the Receiver; the device would also be more helpful if it could trigger longer than 20 ticks. Another issue seems to be that when the song is changed/stopped on the Maestro, there is a chance they will stop playing until they are pulled out, set down, and then put back in to the machine.

EDIT:
I've just learned generally any time the server is closed and opened (or just any time the song in the server transmitter stops without playing another song), the instruments go back to not working; and the Server Transmitters do not retain the song put into them. Also, (i think this is just my crappy server) the instruments have a chance of being deleted out of existence when moved into slots.

To Reproduce
Steps to reproduce the behavior:
Use the Receiver or Maestro and Server Transmitter as described.

Expected behavior
I added bars to a song that are very long for the Receiver to note, but nothing happens. In the Maestro, I switch songs and a handful of the instruments (more often the block ones) cease playing if they are not pulled out.

Screenshots
Not really anything to show, just what is described.

Crash Logs
No crashes.

Environment (please complete the following information):

  • OS: Windows 11
  • Mod Version: 4.0.1
  • Minecraft Version: 1.20.2
  • Forge Version: 1.20.2
commented

Hello!

Thank you so much for all of that information! I have had a really busy couple of days but should hopefully have time to really dig into all of that tomorrow!

In the meantime I've recently uploaded version 4.0.4 which may help with the instruments not making sound. Feel free to try it out if you have time!

ModRinth: https://modrinth.com/mod/mimi/version/1.20.2-4.0.4
CurseForge: CurseForge is still reviewing the files which can sometimes take up to 48 hours ๐Ÿ˜ž

commented

Update, I have confirmed the random deletion out of the slots was just my server, but everything else stillstands as an issue.

commented

Thanks for the bug report and apologies for the slow reply, I was traveling for the last week and have had very limited access to the internet.

Would you be able to upload your server log file when you have some time? This is definitely a strange issue that I have not run into before and I'm having trouble reproducing it so hoping that there may be some more information I can learn from the logs.

MIMI is unfortunately a fairly heavy load on the server because it has to process all of the notes from the MIDI file in order to keep things synchronized for all players so it's possible that it's running into issues with not having enough memory available to process the MIDI files.

commented

Hello there! No worries about the "slowness", I've been on a bug crunching crusade all about github and trust me, there is way slower XD.

latest - Copy.log

Anywhoodles, here is my latest log after trying to use one of the machines! There doesn't seem to be much there except these few lines:
`[net.minecraft.world.item.crafting.RecipeManager/]: Parsing error loading recipe mimi:guide: com.google.gson.JsonSyntaxException: Unknown item 'patchouli:guide_book'

[net.minecraftforge.common.loot.LootModifierManager/]: Could not decode GlobalLootModifier with json id mimi:witch_witchpipe - error: Unknown registry key in ResourceKey[minecraft:root / forge:global_loot_modifier_serializers]: mimi:generic_add_drop

[net.minecraftforge.common.loot.LootModifierManager/]: Could not decode GlobalLootModifier with json id mimi:skeleton_bonelute - error: Unknown registry key in ResourceKey[minecraft:root / forge:global_loot_modifier_serializers]: mimi:generic_add_drop`

As I said- or think I said before, I didn't see any actual errors regarding these. It simply just kind of is without explanation, though, if you're saying you haven't seen these before then perhaps it is just on my end. I've tried cleaning up the memory but no luck so far, I'll keep at it though! Thanks.

commented

I also now want to note that I just made the update to the latest version (I saw you made one) and no instruments make sound now, so, I dunno if that's me and really ironic timing or something but yes.

commented

Hmm I've been poking around in the logs as well and I'm also not seeing anything that stands out as causing your issues.

One thing I'd be curious to see would be the performance metrics from the server. If you have some time would you be able to install the Spark mod (https://www.curseforge.com/minecraft/mc-mods/spark) onto your server?

Once you have Spark installed if you could try to play music from a MIMI Transmitter and then run this command:

/spark profiler start --timeout 30

That should gather performance statistics for 30 seconds and then upload it to Spark's web viewer and give you a link to the report. If you could share that report link here I will take a look and see if anything looks suspect from MIMI's side of things.

As far as your new issue with not being able to hear any instruments - Would you be able to upload your latest log file again from the new version of the mod?

Thanks for your help looking into this! Hopefully we can track down the cause

commented

Yes of course! Luckily I already have spark on hand.
Actually ironically, I just shut down my server after seeing this post to refresh it for the test, and I got these wicked errors that seem to explain some semblance of issue at the current; these weren't here in version 4.0.1 of your mod.
issues.log

I'm trying to stamp out other possible issues in the server right now, but I will try to get a profile of it for both version 4.0.1 and 4.0.2 shortly. Thanks!

commented

Alright I am back after two quick runs. Here are my results, the 4.0.2 version really laying out some lead over 4.0.1.
server4.0.2.log
server4.0.1.log

https://spark.lucko.me/F8xIzbKfEm Results 4.0.2
https://spark.lucko.me/L592XoNrni Results 4.0.1

Really hope this helps get you an idea of where things are going wrong! Just want to let you know that a trio of my friends played Tetris in choral unison with this mod and it was definitely a great memory to behold. Keep up the good work! :-)

commented

Hey Tofo! I tried out your latest version of the mod, and it sounds like things are still mute on the latest version of the mod in my server (though using 4.0.1 still allows sound on 4.0.4 coding). Notably I did see that the favorites seem to cache, so that's good; otherwise, nothing showed up in the logs!

I tried it singleplayer too but seemed to get the same result. With that said though, I did notice some debug in my client log, so have a spoonful to hopefully get some idea of what's going on. Thanks for all your work! (I included some other mod startup jargon just incase it has any semblance of helping)
client1.20.1.log

commented

Hello again!

I have just uploaded version 4.0.5 to CurseForge and Modrinth that should hopefully resolve this issue!

The CurseForge uploads are still processing (can take up to 24hours ๐Ÿ˜ž) but the Modrinth versions are available now!

Let me know if this version helps and thank you for all of your help with getting to the bottom of this issue!

commented

Howdy-howdy! I went ahead and got onto the latest version, but I was well surprised to find that the instruments still refuse to play any sounds! This is a bit unnerving for me as I'm sure you did a bit of tinkering to try to fix it, so having the same issue is boggling!

With that said, here's another client log from the experience, I feel this is the part of the bug crunching where you work backwards to try to retrace your own steps; I also want to theorize maybe there's either some sort of typo for the recipe book (at "mimi:tuning/mimi" which seemingly can't be found), or maybe other mods are somehow conflicting with this mod, such as Simple Voicechat and Sound Physics Remastered. It might be worth doing a cross examination with them if you can.
logclient4.0.5.log

Good luck on the tinkering as always! I'm sure we're getting there. ๐Ÿ‘๐Ÿ‘

Edit: Scratch the conflicting, I just played MC with just MIMI loaded and there's still no sound. This is very interesting. Here is a completely raw log of that, including a recipe book error I was deleting before since it was jumbled with a lot of other mods; it might be the ticket!
latest.log

commented

Update: I have managed to recreate the issue locally! Still investigating the root cause but it's much easier to do so now that I can reliably recreate the issue so fingers crossed I'll find the cause soon.

Update 2: I found the issue!! Fix up soon, hopefully for real this time! ๐Ÿ˜„

commented

I have just uploaded version 1.20.1-4.0.6 to Modrinth and CurseForge which should hopefully fix this issue!

The CurseForge builds are still processing (can take up to 48 hours) but the Modrinth builds are available now!

Link: https://modrinth.com/mod/mimi/version/1.20.1-4.0.6

commented

Hey! It's back to working! Great job Tofo! Now we're on track to getting some more work done on the other things! Hope you give yourself a little break after all that, haha!

commented

Woohoo! Glad to hear the sound is working again! ๐Ÿ˜„

To get back to the main issues you were running into, I've tried to recreate the behavior you've seen but so far I've been unsuccessful. I took this quick video showing what I'm seeing on a pair of Receivers and a pair of Listeners. The ones on the left are set to "Note Held" and the ones on the right are set to "Note Start" for triggering, and they all have "Hold Ticks" set to 1 (I will be updating the "20" for max hold ticks up to something a bit higher, probably 200 which is about 10 seconds, and I'm going to rename "Hold Ticks" to something else which doesn't use the word "hold" since it's a bit confusing with the "Note Held" trigger mode).

https://www.veed.io/view/7615e7b3-9af9-4796-9724-e3df46dc3cb0

EDIT: After playing around a bit more I was able to re-create some of the behavior you were seeing! Digging into it now ๐Ÿ”Ž

When you have some time would you be able to take a quick video of the behavior that you're seeing?

Side-note: I have been working on a pretty significant rewrite of the Transmitter system backend on the side which may inadvertently fix some of the issues you're seeing so I may try to get an Alpha build of that put together sooner rather than later so you can give it a shot.

commented

Here is a video of my experience; it's just a smidge long ad sorry for the mic volume lol. I encountered an error while I was setting this up, maybe it'll help with things too.
In rundown, the "Held Note" function doesn't seem to work at all in my server; notably the player transmitter works absolutely fine, but the server transmitter remains a burden
https://www.veed.io/view/8a69fdff-6d24-484f-9c8b-73362dbd2298?panel=share
exception.log

Good luck as always!

commented

Thanks so much for the super detailed video, that was extremely helpful! You're definitely doing some much more creative stuff with MIMI than I have actually tried to do myself so I wouldn't be surprised if you run into more issues but that's all super helpful for me! ๐Ÿ˜„

I just uploaded version 4.0.7 to CurseForge and Modrinth (as usual still processing on CurseForge but Modrinth is available now) which I think should hopefully address a number of the issues you're seeing! It doesn't include upping the 20-tick hold limit yet as that's a bit more involved of a change to make, but should hopefully fix the "Note Held" trigger and interaction between Server Transmitters and Mechanical Maestros!

Let me know how it works and thanks again for all of your help with this, it's really helping me find issues that I hadn't run into myself which helps me make MIMI much more polished!

Modrinth Download: https://modrinth.com/mod/mimi/version/1.20.1-4.0.7

commented

Absolutely astounding work my friend, it looks like you really hit your work good with the wrench! I can't believe the amount of stuff you got done! Here is a more cinematic experience of the results.
https://www.veed.io/view/2b99a861-349b-4794-8d51-ed7fd5568d6a?panel=share

On a closing note, the only thing I've since noticed was some not-often bugs such as first notes repeating, the start of songs slowing down, or simply playing all as one or a bunch of mushed notes. I'm blaming this on my server for now since I've had latency/memory issues (and issues like the mushed notes resolves if you start the song 99% at the end and let it replay), so I'm sure you can sit back and relax a tad before pounding that ground again!
(You also outdone yourself where music can be left on without needing to be set back up on player disconnect! I'll see if there's any difference on server resets and do general other stress tests later, otherwise with all this progress it's def not urgent or anything)

Thanks so much for your responsiveness and speed in successfully upgrading your mod! You'd be surprised how many developers are sticks in muds, so it's a relief (and a pleasure) to be somewhere where I can actually help out! You're welcome for all the stuff I could dump out for ya! (You had me beat on light shows, I wouldn't've thunk of that if I didn't see your video) :-)

No logs tonight, God bless! ๐Ÿ‘๐Ÿ‘๐Ÿ‘ ๐Ÿ™

commented

Dang, that's super cool! It's so fun to see all of the awesome stuff people are making with MIMI so thanks for sharing that updated video!

Re: The note latency/slow downs - That definitely sounds like it's related to server performance constraints. When MIMI is playing a MIDI file it does so on a lower priority than other Minecraft Server tasks so that it doesn't cause the server itself to slow down, at the cost of sometimes the song having hiccups like you've seen. I think some of the performance refactoring work I've been doing on the side should help with that so I'll make sure to let you know when I release that!

Thanks again for all of your help with this issue and I'm glad we got everything working! ๐Ÿ˜„