The Bumblezone (NeoForge/Forge)

The Bumblezone (NeoForge/Forge)

23M Downloads

Lag Issues - Forge 1.20.1

TheGameAce opened this issue · 16 comments

commented

Sorry to be a bother. Not sure what to put down here since this is a bit more of a vague issue. I've been developing a modpack for a little while now and in my current playtesting I've found the dimension to be very laggy. Like dipping to between 40 and 60 FPS range on average, which is unusual. I recall performance previously being far more stable, even on an older PC. Keep in mind that 40 - 60 range is with the usual suite of performance mods, working to bolster an RTX 5070 + Ryzen 5 9600X combo.

Ironically, GPU usage in here is extremely low compared to the overworld.

Image

I had an issue like this one time before, and I'd bet the same culprit this time around as well: Tectonic. I recall you put out a quick fix that compensated for Tectonic's issues a fair ways back, which resolved the majority of issues. I would presume it's the same problem cropping up again, especially since Tectonic updated more recently to backport the modern 1.21 version to 1.20.1.

Let me know if you need my logs or any more specific information to help you.

commented

@TheGameAce /sparkc does exist but you need Spark to be running on the client side. Meaning in your mods folder on the client, not just the server. The render thread is only ran on the client to handle drawing on the screen which is why Spark needs to be on client before /sparkc shows up

commented

It is very likely not tectonic. Tectonic only impacted Bumblezone a long time ago because I used some vanilla density function/noise files. I do not anymore and have my own copies of the file which prevents tectonic or any other overworld overhaul worldgen mod from impacting Bumblezone.

Second, the tectonic issue would impact worldgen speeds and maybe tps in weird scenarios because worldgen is ran on the worldgen threads, not the render thread.

What you should do is put on spark and have Spark profile the render thread and see exactly what is taking up your fps

commented

Hmm, alright then. I was just going on what little I knew from prior issues. I ran a regular profiler but I can't seem to find the render thread one you're referring to.

Don't know if it matters, but there were 807 Rootmin accounted for by Spark. Regrettably I know virtually nothing else to look through in the basic report that I can think of that might have an impact.

commented

I believe /sparkc is what you want
https://spark.lucko.me/docs/Command-Usage

The high amount of rootmins may be because you are near a floral meadow biome with a render distance set very high. Rootmins are common in that biome and spawn as part of the landscape, hidden as blocks

commented

Also, if you are not using Embeddium/Sodium along with ImmediatelyFast/Iris, having those mods may help with entity rendering fps quite a bit as well. I can do an update to slightly improve Rootmin rendering but it won't be much.

But I still would like to see the client spark report to see if it is indeed your large render distance loading an excess of rootmins at once (which the other mods I mentioned would help with)

commented

Pardon, my memory is poor in part to bad health and I forgot about this until now.
Tried /sparkc, wasn't a valid command. Looked over the command usage docs before you even mentioned it, and still didn't see anything in there talking about a render profiler.

I also do have Embeddium iirc, along with the usual suite of performance mods. Even at lower render distances, the problem seems to be about the same as well. While I was near a floral meadow, the issue extended well beyond that area in some testing I did the other day. Far enough that there were no local floral meadows I could see on the minimap, that'd have been in range of rendering.

commented

I swear it wasn't actually giving me that before, but I managed to get it finally. Apologies, I've had a lot of little technical difficulties.

Here's the report I just got: https://spark.lucko.me/6xEafyQy4L

RenderDragonBannerProcedure is the one thing I notice in there, though I have limited idea of what I'm looking at.

commented

It is on the client side, which is where I tested that command. Running it on a singleplayer world at present. I'll try again, but I haven't had any luck getting it to do anything.

commented

Shows up for me in Forge 1.20.1

Image Image

The other thing you can do is try giving me a link to download the modpack and I can try and see if I get the fps drop in single player and profile it myself

commented

Yeah it’s Block Factory Bosses by Unusual that’s tanking your fps. It is taking up a massive amount of time. It is also an Mcreator mod that was not built very well if it is doing this.

Disabling the mod should restore your fps. Reporting the issue to that modder may get them to fix their procedure

commented

The mod name might be different. I think it is this mod: https://www.curseforge.com/minecraft/mc-mods/bossesrise

commented

It is that mod. I decompiled it to look at its code and holy

Every single tick, it will iterate over ALL chunks in render distance, then grab every block entity in those chunks and iterate over those to check if dragon banner. And this is the bulk of the work eating up your fps. And this is all to just render the banner instead of using the BlockEntityRenderer like normal blocks do. So an incredibly inefficient way to render banners instead of using what vanilla already has

commented

Made an issue report in their discord server:
https://discord.com/channels/697639441505845300/1413508837830295562

commented

Oh dang, I normally avoid MCreator mods for reasons like that and missed the tag for it. Actually surprised it uses that given what's visible to the player at least looks so well done.

But yeah, that would explain why my FPS is tanking. I am curious why it seems to be happening specifically while in Bumblezone, though... I think I'll run a profiler in the overworld as well and see if it's having some impact there that I've not as of yet noticed. (I get a fairly consistent 200+ there normally, so if it's having an impact there as well I never noticed; baffles me why it would only seem to impact Bumblezone)

Addendum: I just finished running a profiler for several minutes in the overworld, and didn't get the same issue at all. No idea if that's valuable knowledge to you since that seems to specifically narrow it to Bumblezone (for the moment; haven't tested other dimensions like Aether or Twilight Forest quite yet), but just in case it helps for you to know. Adding the report here: https://spark.lucko.me/yXeqvY1tl9

Oh, I also wanted to thank you for teaching me about the existence and use of /sparkc for render profiling. Managed to find an issue with another mod thanks to it just a short while ago, which I probably would have never realized was there otherwise.

commented

Gonna close this now. The dev on discord said they will fix the dragon banner rendering in their mod

commented

Dev says they now fixed it in 1.0.9.2