Skip to content

Map is laggy with thousands of shape markers #904

Open

Description

@strobil

What I did / Steps to reproduce

  1. Our server has ~9,300 shape markers in one marker set (land claims, simple rectangles). live/markers.json is ~5.4 MB.
  2. Open the map in flat view.
  3. Drag the map around and zoom in and out over an area with claims.

Expected result

The map stays smooth, the same as without the marker set.

Actual result

The whole map feels sluggish. Measured on a fast machine (Apple M1 Max, Chromium, 1600×1000 @2x) with the latest master:

FPS
Doing nothing, overview with claims on screen 26
Dragging the map 25
Dragging while fully zoomed out 16
Zooming in and out 23

With the marker set removed, or with shape markers drawn in batches (see below), the same scenarios run at 58–60 FPS. Weaker laptops and phones are hit much harder.

We made a patch that draws all shape markers of a set with one mesh per style. Happy to open a PR if you are interested.

Context

BlueMap Version: 5.29 (Paper/Folia)

Activity

  1. TBlueF commented on Nov 7, 2026

    @TBlueF
    Member

    Known issue, bluemap's marker system was never designed to hold more than ~1000 markers ..
    I am already working on a full webapp rewrite in the background, which is planned to also get a better system for markers, which will hopefully fix this issue as well. Don't expect a "quick fix" for this though.

  2. TBlueF commented on Nov 7, 2026

    @TBlueF
    Member

    @strobil One suggestion: Do you actually have 9300 claims? Because if your plugin currently just marks e.g. every claimed chunk with a separate marker then that is incredibly inefficient. Instead, you should try to merge chunks that are next to each other into one shape-marker. That way you can reduce markers many times. Here is a library that helps you convert many chunks into outline-shapes :)
    If you need help with this, please visit our discord!

  3. strobil commented on Nov 7, 2026

    @strobil
    Author

    Thanks! They are real claims, not chunks: one ProtectionStones region per marker, ~3900 different owners. Each region is a separate unit with its own owners, members and flags, so players need to see every one with its actual borders; merging them would hide who can build where. Even merging only touching regions of the same owner gets us from 9334 to just 6444.

  4. TBlueF commented on Nov 7, 2026

    @TBlueF
    Member

    Yeah then i have no immediate solution for you unfortunately, i am working on a better webapp already, but it will still take a while

  5. strobil commented on Nov 7, 2026

    @strobil
    Author

    Thanks a lot for the quick replies and for all the great work on BlueMap, our players love it! Looking forward to the new webapp.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions