• LiveLM
    link
    fedilink
    English
    arrow-up
    10
    ·
    edit-2
    23 hours ago

    To be fair I’m being a dickhead.
    I’m sure Minecraft’s slowness has more to do with how it was built/tech debt and such than Java itself, as the mods that massively boost performance show.

    • Excrubulent@slrpnk.net
      link
      fedilink
      English
      arrow-up
      2
      ·
      edit-2
      11 hours ago

      You know why villagers cause so much lag if there’s too many and they’re allowed to roam free? Well, rather than optimise their pathfinding logic they just… recalculate their paths every goddamn frame. They also take shortcuts in calculating their paths to reduce this overhead, so their movement is derpy and frequently kills them.

      You could make the path then record all the blocks they will interact with, and only recalculate if one of those blocks changes. Boom, millions of operations eliminated, and you’ve got some spare time to make sure the paths will actually work. You could also stagger pathfinding so if a bunch of villagers need a path all at once - like you just blocked a path to where they were all going - you could spread out that load, and prevent lag spikes.

      But they don’t do that, so people end up sticking them in tiny boxes on top of carpets so they stop trying to pathfind. Just absurd stuff.