Dynmap

Screenshot

* AS I AM NOW SUPPORTING MORE THAN JUST BUKKIT WITH DYNMAP, MAIN SUPPORT THREAD IS NOW ON http://www.minecraftforum.net/topic/1543523-dynmap-dynamic-web-based-maps-for-minecraft/- FOR QUICKEST SUPPORT, PLEASE BEGIN USING THIS THREAD *

A Google Maps-like map for your Minecraft server that can be viewed in a browser. Easy to set up when making use of Dynmap's integrated webserver which works out-of-the-box, while also available to be integrated into existing websites running on Apache and the like. Dynmap can render your worlds using different renderers, some suitable for performance, some for high detail.

Components allow you to add/remove functionality to make Dynmap suit your needs. Using the components Dynmap comes supplied with, there is support for chat balloons, web-to-game chat, and configurable markers, areas, and lines.

Features

  • Highly configurable maps per world
  • Real-time updates: maps are kept in sync with your world in real-time, updates are shown while your leave your browser open
  • Players with their faces are visible on the map
  • Chat messages are visible (as balloons or in a chatbox) on the map.
  • Map viewers can chat to players in-game.
  • Current Minecraft time is visible on the map.
  • Current Minecraft weather is visible on the map.
  • WorldGuard, Residence, Towny and Factions regions that can be visible on the map (through corresponding Dynmap-* plugins)
  • Overall highly configurable and customizable.

Installation

Copy dynmap-*.jar into your plugins directory. If you are upgrading, delete the previous dynmap-*.jar - you do NOT need to delete the plugins/dynmap directory or its contents.

If you are running a separate webserver (like Apache) you may need to copy the files from 'plugins/dynmap/web/' to a directory in your http-root and follow this guide. When upgrading, make sure you also upgrade the copied files.

First time use

When you start CraftBukkit, you should be able to navigate to http://yourserverip:8123/ in your browser. In case you are running CraftBukkit on the PC you are currently working on, you can navigate to http://localhost:8123/. You should be able to see the players who are in-game. Note that the map is not yet rendered, therefore the background will be black.

If you are planning on using the HD renderer, now would be a good time to do so. Enable 'deftemplatesuffix: hires' in the top of configuration.txt. More information about deftemplatesuffix is available at Base plugin settings.

If you just want to see Dynmap work, use the following command in-game: /dynmap fullrender. The wiki contains more information about commands and permissions. The map should reveal itself gradually in the browser, give it some time. Progress messages indicate that Dynmap is working and will show when the render is completed.

Configuration

FAQ

Base plugin settings

World and template configuration

Component configuration

HD Map configuration

Wiki

Dynmap Add-Ons:

Both to demonstrate the API, and to help manage the growth of this already-huge plugin, we've started producing additional plugins for Dynmap. All of these will depend on Dynmap and interface through its APIs, but only need to be added by folks that are interested in the additional function they provide:

Mods integrated with Dynmap:

The following mods are known to support dynmap integration without needing an add-on:

Also, for the best response to questions and such, please post comments to our main forum thread - http://www.minecraftforum.net/topic/1543523-dynmap-dynamic-web-based-maps-for-minecraft/. Once again, having more than one place just isn't helpful, and this is where the 'Dynmap Community' already operates.

Disclosure

This plugin utilizes Hidendra's plugin metrics system, which means that the following information is collected and sent to mcstats.org:

  • A unique identifier
  • The server's version of Java
  • Whether the server is in offline or online mode
  • The plugin's version
  • The server's version
  • The OS version/name and architecture
  • The core count for the CPU
  • The number of players online
  • The Metrics version

You must login to post a comment. Don't have an account? Register to get one!

  • Avatar of JonInnes JonInnes Mar 21, 2012 at 19:21 UTC - 0 likes

    Hi, sorry to be a pain but this map is essentials to our server and every time i try to start a render i get this error:

    07:15 PM [SEVERE] Exception in thread "AWT-EventQueue-0" 07:15 PM [SEVERE] org.bukkit.command.CommandException: Unhandled exception executing command 'dynmap' in plugin dynmap v0.35-991 07:15 PM [SEVERE] at org.bukkit.command.PluginCommand.execute(PluginCommand.java:42) 07:15 PM [SEVERE] at org.bukkit.command.SimpleCommandMap.dispatch(SimpleCommandMap.java:166) 07:15 PM [SEVERE] at org.bukkit.craftbukkit.CraftServer.dispatchCommand(CraftServer.java:469) 07:15 PM [SEVERE] at me.escapeNT.pail.GUIComponents.ServerConsolePanel$ConsoleCommandListener.actionPerformed(ServerConsolePanel.java:78) 07:15 PM [SEVERE] at javax.swing.JTextField.fireActionPerformed(Unknown Source) 07:15 PM [SEVERE] at javax.swing.JTextField.postActionEvent(Unknown Source) 07:15 PM [SEVERE] at javax.swing.JTextField$NotifyAction.actionPerformed(Unknown Source) 07:15 PM [SEVERE] at javax.swing.SwingUtilities.notifyAction(Unknown Source) 07:15 PM [SEVERE] at javax.swing.JComponent.processKeyBinding(Unknown Source) 07:15 PM [SEVERE] at javax.swing.JComponent.processKeyBindings(Unknown Source) 07:15 PM [SEVERE] at javax.swing.JComponent.processKeyEvent(Unknown Source) 07:15 PM [SEVERE] at java.awt.Component.processEvent(Unknown Source) 07:15 PM [SEVERE] at java.awt.Container.processEvent(Unknown Source) 07:15 PM [SEVERE] at java.awt.Component.dispatchEventImpl(Unknown Source) 07:15 PM [SEVERE] at java.awt.Container.dispatchEventImpl(Unknown Source) 07:15 PM [SEVERE] at java.awt.Component.dispatchEvent(Unknown Source) 07:15 PM [SEVERE] at java.awt.KeyboardFocusManager.redispatchEvent(Unknown Source) 07:15 PM [SEVERE] at java.awt.DefaultKeyboardFocusManager.dispatchKeyEvent(Unknown Source) 07:15 PM [SEVERE] at java.awt.DefaultKeyboardFocusManager.preDispatchKeyEvent(Unknown Source) 07:15 PM [SEVERE] at java.awt.DefaultKeyboardFocusManager.typeAheadAssertions(Unknown Source) 07:15 PM [SEVERE] at java.awt.DefaultKeyboardFocusManager.dispatchEvent(Unknown Source) 07:15 PM [SEVERE] at java.awt.Component.dispatchEventImpl(Unknown Source) 07:15 PM [SEVERE] at java.awt.Container.dispatchEventImpl(Unknown Source) 07:15 PM [SEVERE] at java.awt.Window.dispatchEventImpl(Unknown Source) 07:15 PM [SEVERE] at java.awt.Component.dispatchEvent(Unknown Source) 07:15 PM [SEVERE] at java.awt.EventQueue.dispatchEventImpl(Unknown Source) 07:15 PM [SEVERE] at java.awt.EventQueue.access$000(Unknown Source) 07:15 PM [SEVERE] at java.awt.EventQueue$1.run(Unknown Source) 07:15 PM [SEVERE] at java.security.AccessController.doPrivileged(Native Method) 07:15 PM [SEVERE] at java.security.AccessControlContext$1.doIntersectionPrivilege(Unknown Source) 07:15 PM [SEVERE] at java.awt.EventQueue$2.run(Unknown Source) 07:15 PM [SEVERE] at java.security.AccessController.doPrivileged(Native Method) 07:15 PM [SEVERE] at java.security.AccessControlContext$1.doIntersectionPrivilege(Unknown Source) 07:15 PM [SEVERE] at java.awt.EventQueue.dispatchEvent(Unknown Source) 07:15 PM [SEVERE] at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source) 07:15 PM [SEVERE] at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source) 07:15 PM [SEVERE] at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source) 07:15 PM [SEVERE] at java.awt.EventDispatchThread.pumpEvents(Unknown Source) 07:15 PM [SEVERE] at java.awt.EventDispatchThread.run(Unknown Source) 07:15 PM [SEVERE] Caused by: java.lang.NullPointerException 07:15 PM [SEVERE] at org.dynmap.DynmapCore.processCommand(DynmapCore.java:768) 07:15 PM [SEVERE] at org.dynmap.bukkit.DynmapPlugin.onCommand(DynmapPlugin.java:501) 07:15 PM [SEVERE] at org.bukkit.command.PluginCommand.execute(PluginCommand.java:40) 07:15 PM [SEVERE] ... 42 more

    Any ideas?? Thanks

  • Avatar of Mr_H4mm3r Mr_H4mm3r Mar 21, 2012 at 16:07 UTC - 0 likes

    Suggestion:

    Ability for making permissions for the chat.. So users with the permissions nodes can chat on dynmap!

    DiaCraft My server :-D

  • Avatar of Kommy000 Kommy000 Mar 21, 2012 at 15:17 UTC - 0 likes

    Hey guys, I had to switch from HD renderer to the the old one since my web files were over 12 gigs. HD rendered always showed the whole world and then you would zoom in to the location. the KezMap shows the map too zoomed in. I found setting in the configuration.txt file where it says default zoom 0 and changed it to 3 but nothing changed. Do I have to rerender the worlds all over again??? I see no setting like that in the worlds.txt file Or do I just add that to each world in the worlds.txt file??? is 3 ok to show the whole randered world or do I need to go higher Thanks

  • Avatar of cobash cobash Mar 21, 2012 at 05:55 UTC - 0 likes

    Gamachan,

    I had the same problem, comment out the following in the config file

    hideifshadow: 0      and     hideifundercover: 0   

      - class: org.dynmap.JsonFileClientUpdateComponent
        writeinterval: 1
        sendhealth: true
        sendposition: true
        allowwebchat: true
        webchat-interval: 5
        hidewebchatip: false
        includehiddenplayers: true
        use-player-login-ip: true
        require-player-login-ip: false
        block-banned-player-chat: true
        # hideifshadow: 0
        # hideifundercover: 0
        hideifsneaking: false

    Last edited Mar 21, 2012 by cobash
  • Avatar of BurnseyBoi BurnseyBoi Mar 20, 2012 at 22:33 UTC - 0 likes

    I have a problem with rendering. Everything above level 127 has full light level, even on the night render. Is this a known problem, as I can't find anything written about it anywhere. Or does no-one else have this and I've simply done something wrong?

    You can see what I mean by clicking on this link

  • Avatar of gummby8 gummby8 Mar 20, 2012 at 22:27 UTC - 0 likes

    Is there anyway to limit dynmap to updating only 1 time a day. When the dnymap plugin is not installed my servers CPU is at 50% with 10 people online, once dynmap is put in it is constantly running the CPU at 80-90%.

    I turned off every update event in the config and still it runs at 90% I even made it so the web only queries once a minute.

    Essentially I just want a map that does nothing but show terrain, and I only want it the map to update the terrain 1 time a day so it never uses resources during the day

  • Avatar of gamachan gamachan Mar 20, 2012 at 20:29 UTC - 0 likes

    @gamachan: Go

    Ok, I got this to work, I was trying to use the PHP section in config.js not json.

    However, users who are underground do not get displayed on the map any longer.

  • Avatar of gamachan gamachan Mar 20, 2012 at 20:07 UTC - 0 likes

    Anybody having issues with R: v0.35 for CB 1.2.3-R0.2 Mar 13, 2012

    not showing players who are online?

  • Avatar of cobash cobash Mar 20, 2012 at 13:09 UTC - 0 likes

    Is there a way to do a a render that allows you to grab the map and spin it 360? I can do multiple renders of the same world. But then you get a bunch of buttons on the right side of your screen.

    Thanks!

  • Avatar of Pandamatak Pandamatak Mar 20, 2012 at 05:19 UTC - 0 likes

    I was really enjoying this plugin until today, when I got home and saw my server had been at 100% cpu usage for the last few hours. When I got the plugin I had eight players on my server and the cpu usage was at 65%.

    I haven't changed anything in the config except for creating a new map for the world I already have.

    Previously, I had these two maps: Default flat map MyWorld, hires, SE, 30 deg, brightnightandday (stdtext) MyWorld, hires, NW, 30 deg, brightnightandday (stdtext)

    The only thing that changed was I added a new world which was:

    MyWorld. lowres, NW, 30 deg, shadows-smooth (cave)

    I don't know if it's because of that, but cpu usage is unusually high. If I kick all the players off my server, the cpu usage drops to 16% for one or two seconds before spiking back up to around 70% and it stays around the 40-70% range for a while. Strangely enough, this doesn't seem to change at all when I issue the command /dynmap pause all It's still high on CPU usage.

    I checked a previous ticket somebody had posted in which you said that the cpu usage was caused by updates, but here's what I get when I run /dynmap stats: Full/Radius renders are PAUSED Update renders are PAUSED Tile Render Statistics: TOTALS: processed=0, rendered=0, updated=0, transparent=0 Triggered update queue size: 0 Active render jobs: Chunk Loading Statistics: Cache hit rate: 0.00% Chunk sets: created=0, attempted=0 Chunk: loaded=0, attempted=0 Chunk load times: 0.00 msec (0.00 msec/chunk) Chunk set load times: 0.00 msec (0.00 msec/set) Chunk set delay times: 0.00 msec (0.00 msec/set) Chunk set exceptions: 0 World tick list processing calls: 0

    And when I run /dynmap purgequeue, I get: Purged 0 tiles from queue

    The render triggers I have active are:

    1. - playermove
    2. - playerjoin - blockplaced - blockbreak
    3. - leavesdecay
    4. - blockburn
    5. - chunkgenerated
    6. - blockformed
    7. - blockfaded - blockspread
    8. - pistonmoved - explosion
    9. - blockfromto
    10. - blockphysics - structuregrow - blockgrow

    Please help me fix this problem - I'd like to get dynmap back up and running as soon as possible while still allowing it to update in real-time (it did it perfectly before, I don't know why not now).

    Here's some extra info on the maps I have running:

    World1: test map flat: prefix=flat, title=Flat, perspective=iso_S_90_lowres, shader=stdtexture, lighting=brightnightandday, mapzoomin=1, img-format=default, icon=, append-to-world=

    map surface: prefix=t, title=Surface, perspective=iso_SE_30_hires, shader=stdtexture, lighting=brightnightandday, mapzoomin=1, img-format=default, icon=, append-to-world=

    map cave: prefix=ct, title=Surface2, perspective=iso_NW_30_hires, shader=stdtexture, lighting=brightnightandday, mapzoomin=1, img-format=default, icon=, append-to-world=

    World2

    map flat: prefix=flat, title=Flat, perspective=iso_S_90_lowres, shader=stdtexture, lighting=brightnightandday, mapzoomin=1, img-format=default, icon=, append-to-world=

    map surface: prefix=t, title=Surface, perspective=iso_SE_30_hires, shader=stdtexture, lighting=brightnightandday, mapzoomin=1, img-format=default, icon=, append-to-world=

    map cave: prefix=ct, title=Surface2, perspective=iso_NW_30_hires, shader=stdtexture, lighting=brightnightandday, mapzoomin=1, img-format=default, icon=, append-to-world=

    I should also note that all players play on World1 only.

    Thanks,

    Pandamatak

Facts

Date created
Aug 30, 2011
Categories
Last update
Apr 20, 2014
Development stage
Release
Language
  • enUS
License
Apache License version 2.0
Curse link
Dynmap
Downloads
1,051,402
Recent files

Authors