Povstalec / StargateJourney

A repository for the Stargate Journey Minecraft Mod
43 stars 18 forks source link

Can you add a Config option that lets you straight up disable the dimensions this mod adds? [1.20.1] #109

Closed DestinyPlayer closed 2 weeks ago

DestinyPlayer commented 5 months ago

Specifically, not just voiding them out but straight up making them not generate or register period.

I want to make a modpack where Stargates are used as the primary method of teleportation, alongside reworking them via KubeJS to fit the tone of the pack better (Specifically I wanted to reskin them into Singh Jenkins Relays ala Sunless Skies, which worked out surprisingly well heh) and 1. the dimensions are a somewhat unneeded extra source of tickrate, and 2. an acquaintance of mine had weird issues with introducing the mod mid-save where the dimensions generating would just send it into a loop of crashing, restarting and crashing again, and it was specifically the dimensions to blame, and flat out disabling dimensions would certainly help with that.

I wish I could provide the crash log for that latter issue but they've cleaned them out and really don't want to try again, so all I really have is the request for a configuration option >>

Povstalec commented 5 months ago

Dimensions only generate when players/entities go to those dimensions, or when some modded code causes them to generate (in the case of this mod specifically when Stargate Network is searching for Stargates it can connect). They also do not tick if they're not loaded, because... well there's nothing to tick without anything loaded. So unless there's something really weird going on, possibly caused by other mods, none of these should even be an issue without someone/something going out of their way to generate those dimensions.

It would make more sense to try and solve what caused the dimensions to even generate when they shouldn't and fix the core issue at hand, instead of trying to just skip it by getting rid of dimensions, ignoring there was some issue in the first place. It's unfortunate there is no crashlog, since maybe I could have done something about it.

Anyway, I use datapacks to register dimensions, so it's not as simple as adding in a config option for them to never generate, because datapacks can't do that. It would require writing custom dimension registry code, which not only do I not know how to do properly without risking more issues, but it would most definitely make it incompatible with datapacks.

DestinyPlayer commented 5 months ago

Damn, that's unfortunate.

From what I've been told, the issue is that, in a server environment, the server keeps the spawn area of each dimension forcibly perma-loaded, which might be causing some issues there.

I'll try and see if I can convince the acquaintance to try and generate the crash log again at some point, maybe it'll help? Beyond that, uh... if there's anything obvious in there, here's the modpack (sans Stargate) itself they've been using - https://i.imgur.com/llUJkeX.png, Forge 47.2.17

Povstalec commented 5 months ago

I see, well I tested a Forge 47.2.17 server and there was no indication of any chunks being loaded. BUT I did notice that I completely forgot about the fact that Raids and Forge Capabilities are actually loaded every time, so even if there is nothing physical like chunks or entities actually loaded and ticking, the dimensions are still being accessed for the purposes of loading and saving Raids and Capabilities.

It could be that some mod is loading those chunk areas in other dimensions, or that there is a problem with accessing Raids/Capabilities. Or it could be something completely different, we can only speculate at this point.

tehgreatdoge commented 4 months ago

It would require writing custom dimension registry code and custom config loading so that you could even do the forbidden configurable registration