webbukkit / dynmap

A set of Minecraft mods that provide a real time web-based map system for various Minecraft server implementations.
https://www.reddit.com/r/Dynmap/
Apache License 2.0
2.06k stars 419 forks source link

Support for 1.13 (Spigot & Forge)? #2271

Closed smmmadden closed 5 years ago

smmmadden commented 6 years ago

Tried with today's spigot server build for 1.13 and started up my test server to see which plugins may be broken. 23:01:37 INFO]: [dynmap] Loading dynmap v3.0-SNAPSHOT-Dev201802140139 [23:01:37 INFO]: [dynmap] version=git-Spigot-ed1cec9-1c7adf7 (MC: 1.13) [23:01:37 ERROR]: [dynmap] Unable to find field temperature for net.minecraft.server.v1_13_R1.BiomeBase [23:01:37 ERROR]: [dynmap] Unable to find field humidity for net.minecraft.server.v1_13_R1.BiomeBase [23:01:37 ERROR]: [dynmap] Unable to find field y for net.minecraft.server.v1_13_R1.BiomeBase [23:01:37 INFO]: [dynmap] Unload queue not found - default to unload all chunks [23:01:37 INFO]: [dynmap] inhabitedTicks field not found - inhabited shader not functional [23:01:37 ERROR]: Error initializing dynmap - bukkit version incompatible! initializing dynmap v3.0-SNAPSHOT-Dev201802140139 (Is it up to date?) java.lang.IllegalArgumentException: Error initializing dynmap - bukkit version incompatible! at org.dynmap.bukkit.BukkitVersionHelperGeneric.(BukkitVersionHelperGeneric.java:157) ~[?:?] at org.dynmap.bukkit.BukkitVersionHelperCB.(BukkitVersionHelperCB.java:39) ~[?:?] at org.dynmap.bukkit.BukkitVersionHelper.getHelper(BukkitVersionHelper.java:42) ~[?:?] at org.dynmap.bukkit.DynmapPlugin.onLoad(DynmapPlugin.java:769) ~[?:?] at org.bukkit.craftbukkit.v1_13_R1.CraftServer.loadPlugins(CraftServer.java:318) [spigot-1.13-22-July-2018.jar:git-Spigot-ed1cec9-1c7adf7] at net.minecraft.server.v1_13_R1.DedicatedServer.init(DedicatedServer.java:213) [spigot-1.13-22-July-2018.jar:git-Spigot-ed1cec9-1c7adf7] at net.minecraft.server.v1_13_R1.MinecraftServer.run(MinecraftServer.java:686) [spigot-1.13-22-July-2018.jar:git-Spigot-ed1cec9-1c7adf7] at java.lang.Thread.run(Unknown Source) [?:1.8.0_181]

p47-6 commented 6 years ago

I think i found a 3D render bug when Fencegates and Fence are not of the same type: image EDIT: I think this bug affects all Fencegates: image

smmmadden commented 6 years ago

three types of Air? lol Next they'll come up with smoke, smog and vog :-)

mikeprimm commented 6 years ago

@smmmadden Yes - "air", "void air" and "cave air" :)

smmmadden commented 6 years ago

Cave generation is now working in the latest build. Thanks @mikeprimm :-) image

cabal5935 commented 6 years ago

Hi @mikeprimm, Firstly, I simply adore this mod. Minecraft just isn't as fun when you can't admire your creations in the way dynmap provides! Keep up the good work.

I have found a couple of missing blocks, Mushroom heads (both types) aren't showing but the stems are capture Also Prismarine Steps (all varieties) aren't showing either. Both of these are being shown as air atm. I'm also having the water rendering over decking issue.

If you need more info, let me know.

Also, with the new conduits for underwater breathing, I've been thinking it would be really nice if a 'drain the ocean' style map/shader could be produced? Then I could show off my epic underwater creations! Just a thought/suggestion, obviously really appreciate what it does currently.

mikeprimm commented 6 years ago

@cabal5935 On the custom shader: already in the release (I just haven't documented it). To add a map using the 'see underwater' shader, do the following (for 'world' world - edit as you see fit):

1) /dynmap pause all 2) /dmap mapadd world:underwater perspective:iso_SE_30_hires shader:stdtexture-underwater lighting:default mapzoomin:1 mapzoomout:7 3) /dynmap pause none 4) /dynmap fullrender world:underwater

xplekterx commented 6 years ago

Hi guys, after fullrender I only get a very small part of the map visible, but I have discovered so much more. Also the cave only shows the green parts, not the blue.

Any ideas?

image

image

cabal5935 commented 6 years ago

Hi @mikeprimm , Underwater map added and rendering as we speak. This already looks epic. Honestly dude, dynmap is what keeps me playing because I keep looking at my world when I'm not playing coming up with my next big plan.

On another note, I've noticed that glass panes aren't rendering correctly where there should be a right angle corner: capture2

Keep up the good work, really excited to see my underwater render when it finishes later!

smmmadden commented 6 years ago

Hi @mikeprimm - I ran the fullrender on underwater as you provided in a previous post and it's coming out great. I did notice that there wasn't an image showing on the world_underwater option so I created a block_underwater.png and put it under my web/images folder and now i can see an icon as below. image block_underwater Feel free to use the one I took of water. :-)

souldin commented 6 years ago

can someone help me locate the newest download for the update, i have the original from weeks ago.

souldin commented 6 years ago

never mind i got it

Primorior commented 6 years ago

1.13.1 just released :D

pavelGR83 commented 6 years ago

[13:06:21] [Server thread/INFO]: [dynmap] Loading dynmap v3.0-SNAPSHOT-71 [13:06:21] [Server thread/INFO]: [dynmap] version=git-Spigot-2440e18-b3dc236 (MC: 1.13.1) [13:06:22] [Server thread/ERROR]: [dynmap] Unable to find method getById for net.minecraft.server.v1_13_R2.Block [13:06:22] [Server thread/ERROR]: [dynmap] Unable to find method a for net.minecraft.server.v1_13_R2.BiomeBase [13:06:22] [Server thread/ERROR]: [dynmap] Unable to find field humidity for net.minecraft.server.v1_13_R2.BiomeBase [13:06:22] [Server thread/ERROR]: [dynmap] Unable to find field y for net.minecraft.server.v1_13_R2.BiomeBase [13:06:22] [Server thread/INFO]: [dynmap] Unload queue not found - default to unload all chunks [13:06:22] [Server thread/INFO]: [dynmap] inhabitedTicks field not found - inhabited shader not functional

mikeprimm commented 6 years ago

1.13.1 will not be working just yet - I'll get a dev update out later today for that, and will post here when it is in place.

smmmadden commented 6 years ago

sounds good, thank you sir. Just read md_5's post on Spigot that they'll be supporting 1.13.1 going forward and not 1.13. Once I get updates for Dynmap, WorldEdit, SelectionVisualizer I will begin doing all testing on 1.13.1 going forward as well.

ZeeFear commented 6 years ago

Blue wool blocks are not displayed on the map =( 2018-08-26_16 10 52 111

smmmadden commented 6 years ago

confirmed - blue appears to be missing in the alpha build. image White Orange Blue

ghost commented 6 years ago

If i download the latest dynmap dev build from http://dynmap.us/builds/dynmap/Dynmap-HEAD-spigot.jar I cannot see the underwater option in dynmap. Anyone know why?

smmmadden commented 6 years ago

it's not documented yet, but you can see the instructions for creating the map directly as @mikeprimm already stated above. Here is what to expect at least with Spigot Server.

dynmap pause all [00:05:09 INFO]: [dynmap] Full/radius render pause set to true [00:05:09 INFO]: [dynmap] Update render pause set to true [00:05:09 INFO]: Full/Radius renders are PAUSED [00:05:09 INFO]: Update renders are PAUSED [00:05:09 INFO]: Zoom out processing is ACTIVE dmap mapadd world:underwater perspective:iso_SE_30_hires shader:stdtexture-underwater lighting:default [00:05:47 INFO]: Refreshing configuration for world world [00:05:47 INFO]: [dynmap] Loaded 4 maps of world 'world'. [00:05:47 INFO]: If you are done editing map data, run '/dynmap pause none' to resume rendering dynmap pause none [00:06:02 INFO]: [dynmap] Full/radius render pause set to false [00:06:02 INFO]: [dynmap] Update render pause set to false [00:06:02 INFO]: Full/Radius renders are ACTIVE [00:06:02 INFO]: Update renders are ACTIVE [00:06:02 INFO]: Zoom out processing is ACTIVE dynmap fullrender world:underwater [00:06:12 INFO]: Full render starting on world 'world'...

mikeprimm commented 6 years ago

Latest development builds now include following:

ghost commented 6 years ago

Nice job mike. Here is something u can work on too. I did what smmmadden said but the render is so weird. I don't know what happend but it stilll rendering.

[00:25:41 INFO]: Full render of map 'underwater' of 'world' in progress - 10300 tiles rendered (336.44 msec/tile, 285.97 msec per render) [00:26:13 INFO]: Full render of map 'underwater' of 'world' in progress - 10400 tiles rendered (336.24 msec/tile, 285.79 msec per render) [00:26:43 INFO]: Full render of map 'underwater' of 'world' in progress - 10500 tiles rendered (335.93 msec/tile, 285.64 msec per render) [00:27:01 INFO]: Full render of map 'underwater' of 'world' in progress - 10600 tiles rendered (334.45 msec/tile, 284.16 msec per render) [00:27:33 INFO]: Full render of map 'underwater' of 'world' in progress - 10700 tiles rendered (334.26 msec/tile, 283.91 msec per render) [00:28:04 INFO]: Full render of map 'underwater' of 'world' in progress - 10800 tiles rendered (334.06 msec/tile, 283.73 msec per render) [00:28:33 INFO]: Full render of map 'underwater' of 'world' in progress - 10900 tiles rendered (333.69 msec/tile, 283.51 msec per render) [00:28:49 INFO]: Full render of map 'underwater' of 'world' in progress - 11000 tiles rendered (332.11 msec/tile, 281.95 msec per render)

dynmap

fhgui2 commented 6 years ago

Oh ok I was wondering why my dynamp wasnt working derp

smmmadden commented 6 years ago

that's what it should look like but more complete once the rendering finishes. It basically removes all water from the world in the map hence the name of underwater.

mikeprimm commented 6 years ago

Just release v3.0-alpha-2 on SpigotMC and on dev.bukkit.org - download can be found at http://dynmap.us/releases/Dynmap-3.0-alpha-2-spigot.jar

Changes since alpha-1:

mikeprimm commented 6 years ago

I had a SNAFU on the v3.0-alpha-2 release - the initial released binary broke on pre-1.13 (which is probably not too interesting for folks on this thread), but I wound up re-releasing this morning. The 'final' v3.0-alpha-2 is build 'v3.0-alpha-2-88', if you want to be sure you have the same bytes as the actual 'final' release.

smmmadden commented 6 years ago

Thanks, updating to _88 and retesting.

ghost commented 6 years ago

What does this _88 update do? I dont understand really? And where is it to download?

aroswald commented 6 years ago

Tried to download, could not find

smmmadden commented 6 years ago

@aroswald and @cuperus - just read back a couple posts and you'll find the link that MikePrimm added. If either of you read any of these posts you would know what the build 88 fixes. I suggest taking a few minutes and read what's been fixed.

aroswald commented 6 years ago

@smmadden, The last post which contains a download link links to Dynmap-3.0-alpha-2-spigot.jar, and was posted yesterday. That is the version I'm running. When I reinstalled it and looked in my server startup, it does say -88. so, my bad.

ghost commented 6 years ago

@smmadden im reading every post. But it was just a little bit confusing for me. But i figured it out tho. Sometimes it is hard for me to understand some things. Because it takes some time for my brain to understand. Sorry for my broken english. I'm dutch. Anyways. Good work boys!

smmmadden commented 6 years ago

no problem, it can get technically challenging sometimes. I'm still learning after almost 3 years of this. I'm more of a visual guy that seeing registers in my brain better than text. Of course not everything can be done that way so we all struggle from time to time. :-)

mikeprimm commented 6 years ago

Sorry - the version I mentioned (v3.0-alpha-2-88) is the INTERNAL version number: you will see this reported during plugin startup, or if you run the '/dynmap version' command. It describes the major version/release as well as a unique build number (88) that gets bumped every time that my Jenkins build server spins a new build. The file name is still Dynmap-3.0-alpha-2-spigot.jar - you just need to check the version reported in the server log, or via the version command, to confirm that you have the newer version (particularly if you downloaded before I posted about the final version. Sorry for any confusion! :)

Cassolotl commented 6 years ago

Okay so, disclaimer, I am not very technical and all of this is Greek to me, but.

I've got a Spigot 1.13.1 server, and I installed Dynmap and told it /dynmap fullrender world and it's been pootling along quite happily with no one logged in, until this:

[11:01:20] [Dynmap Render Thread/INFO]: Full render of map 'flat' of 'world' in progress - 8700 tiles rendered (80.05 msec/tile, 35.34 msec per render)
[11:01:29] [Dynmap Render Thread/INFO]: Full render of map 'flat' of 'world' in progress - 8800 tiles rendered (80.05 msec/tile, 35.22 msec per render)
[11:01:34] [Server thread/INFO]: Attempted to place a tile entity (net.minecraft.server.v1_13_R2.TileEntityBed@3dad70b4) at 250,64,2421 (minecraft:air) where there was no entity tile!
[11:01:34] [Server thread/INFO]: Chunk coordinates: 240,2416
[11:01:34] [Server thread/WARN]: java.lang.Exception
[11:01:34] [Server thread/WARN]: at net.minecraft.server.v1_13_R2.Chunk.a(Chunk.java:749)
[11:01:34] [Server thread/WARN]: at net.minecraft.server.v1_13_R2.Chunk.a(Chunk.java:727)
[11:01:34] [Server thread/WARN]: at net.minecraft.server.v1_13_R2.ChunkRegionLoader.loadEntities(ChunkRegionLoader.java:704)
[11:01:34] [Server thread/WARN]: at net.minecraft.server.v1_13_R2.ChunkRegionLoader.a(ChunkRegionLoader.java:139)
[11:01:34] [Server thread/WARN]: at net.minecraft.server.v1_13_R2.ChunkProviderServer.getChunkAt(ChunkProviderServer.java:95)
[11:01:34] [Server thread/WARN]: at org.bukkit.craftbukkit.v1_13_R2.CraftWorld.loadChunk(CraftWorld.java:261)
[11:01:34] [Server thread/WARN]: at org.dynmap.bukkit.helper.AbstractMapChunkCache.loadChunks(AbstractMapChunkCache.java:799)
[11:01:34] [Server thread/WARN]: at org.dynmap.bukkit.DynmapPlugin$BukkitServer$6.call(DynmapPlugin.java:461)
[11:01:34] [Server thread/WARN]: at org.dynmap.bukkit.DynmapPlugin$BukkitServer$6.call(DynmapPlugin.java:448)
[11:01:34] [Server thread/WARN]: at org.bukkit.craftbukkit.v1_13_R2.scheduler.CraftFuture.run(CraftFuture.java:85)
[11:01:34] [Server thread/WARN]: at org.bukkit.craftbukkit.v1_13_R2.scheduler.CraftScheduler.mainThreadHeartbeat(CraftScheduler.java:361)
[11:01:34] [Server thread/WARN]: at net.minecraft.server.v1_13_R2.MinecraftServer.b(MinecraftServer.java:889)
[11:01:34] [Server thread/WARN]: at net.minecraft.server.v1_13_R2.DedicatedServer.b(DedicatedServer.java:411)
[11:01:34] [Server thread/WARN]: at net.minecraft.server.v1_13_R2.MinecraftServer.a(MinecraftServer.java:831)
[11:01:34] [Server thread/WARN]: at net.minecraft.server.v1_13_R2.MinecraftServer.run(MinecraftServer.java:729)
[11:01:34] [Server thread/WARN]: at java.lang.Thread.run(Thread.java:748)
[11:01:34] [Server thread/INFO]: Attempted to place a tile entity (net.minecraft.server.v1_13_R2.TileEntityBed@32422017) at 249,64,2421 (minecraft:air) where there was no entity tile!
[11:01:34] [Server thread/INFO]: Chunk coordinates: 240,2416
[11:01:34] [Server thread/WARN]: java.lang.Exception
[11:01:34] [Server thread/WARN]: at net.minecraft.server.v1_13_R2.Chunk.a(Chunk.java:749)
[11:01:34] [Server thread/WARN]: at net.minecraft.server.v1_13_R2.Chunk.a(Chunk.java:727)
[11:01:34] [Server thread/WARN]: at net.minecraft.server.v1_13_R2.ChunkRegionLoader.loadEntities(ChunkRegionLoader.java:704)
[11:01:34] [Server thread/WARN]: at net.minecraft.server.v1_13_R2.ChunkRegionLoader.a(ChunkRegionLoader.java:139)
[11:01:34] [Server thread/WARN]: at net.minecraft.server.v1_13_R2.ChunkProviderServer.getChunkAt(ChunkProviderServer.java:95)
[11:01:34] [Server thread/WARN]: at org.bukkit.craftbukkit.v1_13_R2.CraftWorld.loadChunk(CraftWorld.java:261)
[11:01:34] [Server thread/WARN]: at org.dynmap.bukkit.helper.AbstractMapChunkCache.loadChunks(AbstractMapChunkCache.java:799)
[11:01:34] [Server thread/WARN]: at org.dynmap.bukkit.DynmapPlugin$BukkitServer$6.call(DynmapPlugin.java:461)
[11:01:34] [Server thread/WARN]: at org.dynmap.bukkit.DynmapPlugin$BukkitServer$6.call(DynmapPlugin.java:448)
[11:01:34] [Server thread/WARN]: at org.bukkit.craftbukkit.v1_13_R2.scheduler.CraftFuture.run(CraftFuture.java:85)
[11:01:34] [Server thread/WARN]: at org.bukkit.craftbukkit.v1_13_R2.scheduler.CraftScheduler.mainThreadHeartbeat(CraftScheduler.java:361)
[11:01:34] [Server thread/WARN]: at net.minecraft.server.v1_13_R2.MinecraftServer.b(MinecraftServer.java:889)
[11:01:34] [Server thread/WARN]: at net.minecraft.server.v1_13_R2.DedicatedServer.b(DedicatedServer.java:411)
[11:01:34] [Server thread/WARN]: at net.minecraft.server.v1_13_R2.MinecraftServer.a(MinecraftServer.java:831)
[11:01:34] [Server thread/WARN]: at net.minecraft.server.v1_13_R2.MinecraftServer.run(MinecraftServer.java:729)
[11:01:34] [Server thread/WARN]: at java.lang.Thread.run(Thread.java:748)
[11:01:38] [Dynmap Render Thread/INFO]: Full render of map 'flat' of 'world' in progress - 8900 tiles rendered (80.06 msec/tile, 35.11 msec per render)
[11:01:46] [Dynmap Render Thread/INFO]: Full render of map 'flat' of 'world' in progress - 9000 tiles rendered (80.03 msec/tile, 34.99 msec per render)
[11:01:55] [Dynmap Render Thread/INFO]: Full render of map 'flat' of 'world' in progress - 9100 tiles rendered (80.06 msec/tile, 34.91 msec per render)

And I thought I should let you know in case it's important!

PS: Thank you so much for making and maintaining this plugin, it makes our server so much more fun! :)

Cassolotl commented 6 years ago

Also this /dynmap fullrender world is turning out pretty weird! It looked like this when it finished:

screen shot 2018-08-31 at 12 34 07

screen shot 2018-08-31 at 12 33 53

It was fixed when I restarted the server, and it looks how it should now.

dootbin commented 6 years ago

My dynmap full render is working great, thanks mike. No issues yet. screen shot 2018-08-31 at 07 20 34 am

fichdlmaa commented 6 years ago

Hello Mike, Alpha2 works fine with latest Spigot 1.13.1 - Thank you!!!

dynmap_2d_20180831 2D dynmap_3d_20180831 3D

mikeprimm commented 6 years ago

OK - new dev update just dropped: I'm reworking how water is done. Goals are to get water (and lava) looking more like in-game models (particularly the flowing stuff). Not there yet, but part of the rework is that surface still water (lakes, oceans) is no longer a 'full' block (as it has always been in dynmap previously), but is instead the 7/8th full block it should be - which will also fix the rendering of 'waterlogged' (submerged) blocks that are flush with the top of the block (e.g. stairs, upper half slabs). The modeling for water will be changing quite a bit over the course of the weekend, but what is there now should show: 1) Proper immersed/waterlogged block rendering (1.13 stuff) 2) Water/fluid level rendering for flowing fluids more or less as it was in older versions

EleRas commented 6 years ago

In the new DEV - version half-slabs seem to work okay now, but the update broke bubble - columns: screenshot_20180902_125857

Tried with Dynmap version: core=3.0-SNAPSHOT-100, plugin=3.0-SNAPSHOT-100

Keep up the good work, really liking the plugin :)

mikeprimm commented 6 years ago

@EleRas Oops - that one is fixed in builds 101 and later :)

mikeprimm commented 6 years ago

@Cassolotl That's an interesting exception - I'm loading the chunk, but something in vanilla or spigot is having an issue. Not sure if I'll be able to fix that directly, but I'll try to look in to it.

ghost commented 6 years ago

I still have some problems. if i do /dynmap fullrender world. It only renders the map where i have been and not the parts i havent been. Is there a way for fixing this?

mikeprimm commented 6 years ago

@cuperus That is correct behavior - dynmap never causes terrain to be generated: you need to either go there yourself or use a tool like '/wb fill' to drive generation of terrain. Zero chance that I'll change that, since the MC world is more or less unbounded, so there is no 'end' where I'd stop generating the map.

ghost commented 6 years ago

So with '/wb fill' i can results like this: https://user-images.githubusercontent.com/22200788/44911995-76324500-acee-11e8-897c-4f93059649ee.png

EleRas commented 6 years ago

Yes, but to avoid black lines in the rendering, something like this works better - but also takes a lot longer, since it basically teleports you to each chunk.

mikeprimm commented 6 years ago

New dev build - as of build 104, there is a new fluid rendering model: flowing and still lava and water, including immersed blocks in 1.13.x, should now render approximately the same as in-game (only thing off right now is the 45-degree angle flowing top textures). Here are some samples:

image

mikeprimm commented 6 years ago

@EleRas That command block based map generator idea is VERY clever! :)

smmmadden commented 6 years ago

regenerating world with latest build. Thanks Mike!

mikeprimm commented 6 years ago

I've started crawling into WorldBorder - pretty sure I've got a lead on the problem there (which I believe is a WB issue - a problem with their logic making assumptions that were valid for every MC version BEFORE 1.13....). See https://github.com/Brettflan/WorldBorder/issues/101 for details. I'll be working with the WB dev to see if we can put this one to bed ASAP.

mikeprimm commented 6 years ago

OK - people with 'black snakes' problems: I believe you can workaround the WB issue by rerunning the /wb fill operation with the force option set to true (e.g. /wb world fill 20 208 true). The bug is tied to the fact that the logic for determining whether a chunk NEEDS to be generated is:

a) not right for 1.13.x, even though it was right for 1.12 and earlier, and b) leaves the world in a state where a simple fix to the WB fill algorithm (checking for protochunks in a 3 chunk radius) no longer works, meaning the simple fix for WB will not fix you

In any case, the 'force' option tells WB to load every chunk vs assuming it can tell which ones need loading in order to be generated: for chunks already generated, this is harmless - it just generates load and makes the process take longer - but it should both fix the 'black snakes' (if you already have run /wb fill), or avoid it while WB is fixed (if you haven't run /wb fill yet).