Jump to content

Recommended Posts

Posted

Amazing <shakes head>. Whenever Minecraft selects an element from a weighted list (such as the creatures that can spawn in a biome), it adds up the total weight of elements in the collection. Again and again and again.

 

Shouldn't the weight only change when an element is added or removed? If so, then shouldn't total weight be pre-calculated at the moment a random selection is made?

 

More importantly... Am I missing something here? Is total weight sometimes more dynamic than the building of a list at load time?

The debugger is a powerful and necessary tool in any IDE, so learn how to use it. You'll be able to tell us more and get better help here if you investigate your runtime problems in the debugger before posting.

Posted

Amazing <shakes head>. Whenever Minecraft selects an element from a weighted list (such as the creatures that can spawn in a biome), it adds up the total weight of elements in the collection. Again and again and again.

 

Shouldn't the weight only change when an element is added or removed? If so, then shouldn't total weight be pre-calculated at the moment a random selection is made?

 

More importantly... Am I missing something here? Is total weight sometimes more dynamic than the building of a list at load time?

The debugger is a powerful and necessary tool in any IDE, so learn how to use it. You'll be able to tell us more and get better help here if you investigate your runtime problems in the debugger before posting.

Posted

It doesn't matter. The lists are small so it's fast enough. We're not in the business of re-writing stupid things like this. So Why does this matter and what do you expect us to do about it? You can find a lot of issues and inefficiencies in MC code base, welcome to Minecraft....

I do Forge for free, however the servers to run it arn't free, so anything is appreciated.
Consider supporting the team on Patreon

Posted

Oh heavens no, I don't expect Forge to correct minor MC inefficiencies. I was just worried that there was something hidden that I needed to understand before deciding what weight to assign to my new animal(s).

 

Thanks for confirming that my myopic impression was close to the mark.

The debugger is a powerful and necessary tool in any IDE, so learn how to use it. You'll be able to tell us more and get better help here if you investigate your runtime problems in the debugger before posting.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Announcements



  • Recently Browsing

    • No registered users viewing this page.
  • Posts

    • Start with removing controllable
    • Please read the FAQ and post logs as described there.
    • Upon starting the server I get; [main/ERROR] [minecraft/Main]: Failed to start the minecraft server net.minecraftforge.fml.LoadingFailedException: Loading errors encountered: [     Framework (framework) has failed to load correctly §7java.lang.NoClassDefFoundError: net/minecraft/client/gui/components/toasts/Toast ] I suspect there is a (possibly a few) client-only mods installed on my server. Any help would be appreciated! (Yes I know there are a lot of mods...) Here is the crash log:   https://paste.ee/p/pRz5mhMl#s=0
    • That's basically what the failure does, my apologies for failing to specify.  It just tries again on the next tick until it detects the entities for that chunk are loaded, and then tries to load the entity.  From there it gets into different failure states depending on what goes wrong, but in short, if the entity fails to load once the entity list becomes available, the request is cleared and must be resubmitted by the end user.  There should be few cases where that actually happens. Yes, that is my understanding of forceloading.  That's why on a successful summon, it removes the forceload.  Otherwise it does just leave the chunks loaded long term. Thank you for your help, any knowledge is useful!  I don't often mess with forceloading and my prior experience is 1.16 so I'm also a bit out of my depth haha.
    • I will have to do more research about 1.18 chunk loading. You were unclear about how your code manages with the entity load failure. If you simply used a loop, I suggest submitting a tick task to the next tick which does the same thing, checking if the entities are loaded and if so teleporting the right one else submitting another tick task etc. Also I think forceloading permanently force loads the chunk, and it only starts to unload when you make a subsequent call to mark the chunk as not forceloaded. I may be completely wrong, I dont know much about 1.18, most of my experience is 1.20. Good luck I hope you figure it out after all this time 😅
  • Topics

×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.