Mods / VS LiveMap Revival

Tags: #Other #QoL #Utility
Author: mja00
Side: Both
Created: Jan 1st at 3:03 AM
Last modified: Jan 4th at 7:09 PM
Downloads: 377
Follow Unfollow 53

Recommended download (for Vintage Story 1.21.6):
LiveMap-0.1.9.zip  1-click install


VS LiveMap Revival

Banner

VS LiveMap Revival is a continuation of the original VS LiveMap by BillyGalbreath.

This project picks up where the original left off—forked from the old branch before the project was archived. At the time, the mod was in the middle of a refactor, and much of the original documentation and wikis were removed. This revival aims to bring the map back to life, fix bugs, and restore functionality for the Vintage Story community.

A Personal Note: I am picking this up as my first proper C# project. Development, bug fixes, and new features might come a bit slowly as I learn the ropes, but I am committed to getting this working smoothly!

Features

  • Integrated Web Server
    • Works out-of-the-box with no external dependencies (Apache/Nginx not required).
    • Host the map directly from your game server.
  • Real-time Updates
    • The map updates automatically as players explore, build, and modify the world.
  • Built-in Layers
    • Players: See online players and their health in real-time.
    • Traders: Automatically marks discovered trader locations.
    • Translocators: Tracks discovered translocators to help with navigation.
    • Spawn: Highlights the world's default spawn point.
  • Multiple Rendering Styles
    • Choose between styles like Basic and Sepia to fit your preference.
  • High Performance
    • Uses asynchronous rendering and task management to minimize impact on server ticks.
  • Extensive API
    • Developer-friendly API allows other mods to add custom layers and markers easily.
  • Customizable UI
    • Configure the logo, title, and attribution to match your server's identity.
  • Mod Integration

 

 

Demo Server: https://vslivemap.mart.fyi/

Note: This server is heavily cached on Cloudflare so things may act weird.

Installation & Usage

  1. Install the Mod: Install the LiveMap mod on both the Server and your Client.
  2. Generate the Colormap:
    • After installation, join the server with your client.
    • Run the following command in-game:
      /livemap colormap
    • Note: This command sends the necessary color data to the server to begin rendering tiles. Once completed, the mod is technically no longer strictly required on the client side, but it is recommended for updates.
  3. Access the Map: Open your browser and navigate to the map URL (default is usually http://<server-ip>:8080 or http://localhost:8080 if running locally, check your config).
  4. Run a full render: You'll most likely want to run a full render with /livemap fullrender. As render tasks then are only ran on auto save. 

Known Issues

  • The translocator marker layer is essentially non-working. It works enough to generate the layer but none of the markers. Fixed as of 0.1.9
  • The render layer (Standard and Sepia) buttons in the web ui sometimes bug out on first start. This is down to a race condition I'm working on mitigating. 
  • Russian translations will lag behind a bit as I move quickly on new features. I don't wanna bug community translators 20 times a day. 

Links & Support


Original mod by BillyGalbreath. Revived and maintained by mja00.

Mod Version Mod IdentifierFor Game version Downloads Released Changelog Download 1-click mod install*
0.1.9 livemap 160 Jan 4th at 7:09 PM LiveMap-0.1.9.zip 1-click install

Fixes

  • Translocator layer (7244a61) #43
    • Note: You'll need to re-render the map with either a /livemap fullrender or update chunks translocators exist in. This'll have them added to the marker system. 
    • If the mod was previously installed the marker CSS will not be updated. The new default is now .livemap-marker-translocator { color: #2d704e; }which gives them a green color.

Refactor

  • Remove some redundant reflections (2c7ada4)
0.1.8 livemap 33 Jan 3rd at 11:34 PM LiveMap-0.1.8.zip 1-click install

Features

  • Add support for Cartographer's shared waypoint layer (860c747) #41
  • Show mod version in the frontend (f28316e)
  • Add basic webserver cache (f715a7f) #39

Refactor

  • Extract from LiveMap.cs (3b96c29) #40
0.1.7 livemap 29 Jan 3rd at 5:03 PM LiveMap-0.1.7.zip 1-click install

Features

  • Run fullrender on colormap received

Fixes

  • Use kebab case where appropriate
  • Don't throw exceptions when stopping
  • Resolve critical bugs and refactor magic numbers

Performance

  • Comprehensive performance optimizations
0.1.6 livemap 39 Jan 3rd at 3:06 AM LiveMap-0.1.6.zip 1-click install

What's New

Features

- Russian language support - The mod now includes full Russian translations alongside English
- Improved color accuracy - Map rendering now displays more accurate colors matching the in-game world

Bug Fixes

- Fixed a resource leak in the chunk loading system that could cause performance issues over time

Other Changes

- General code cleanup and optimization throughout the mod

0.1.5 livemap 25 Jan 2nd at 4:35 PM LiveMap-0.1.5.zip 1-click install

Adds buttons in the web UI to swap renderers between basic and sepia. 

0.1.4 livemap 11 Jan 2nd at 3:19 PM LiveMap-0.1.4.zip 1-click install

Fixes an issue where very modded servers would generate a colormap that's too large to upload in 1 packet. 

0.1.3 livemap
1.21.6-rc.1 - 1.21.6
22 Jan 2nd at 2:37 AM LiveMap.zip 1-click install

Fixes a bug where chunks aren't queued for rendering on exploration.

0.1.2 livemap
1.21.6-rc.1 - 1.21.6
5 Jan 2nd at 2:12 AM LiveMap.zip 1-click install

Fixes an issue with the layers system where the spawn layer was unlabeled and the players label was infinitely repeating. This now also supports custom markers. They're just json files in the mod's data folder. 

0.1.1 livemap
1.21.6-rc.1 - 1.21.6
8 Jan 1st at 11:42 PM LiveMap.zip 1-click install

Swap to GenHTTP for the internal HTTP webserver. This fixes binding issues on Windows. 

0.1.0 livemap
1.21.6-rc.1 - 1.21.6
41 Jan 1st at 3:09 AM LiveMap.zip 1-click install

Initial revival build. Minor tweaks from the base old branch, on Windows it gets mad if you try to bind * without admin so I've added a fallback to localhost. 


54 Comments (oldest first | newest first)

mja00 , 4 days ago

Chumber yeah it's using the API originally made by Billy, which I'm assuming has gone down now. I've started work on doing avatar generation in-mod but to be able to handle playermodels created by mods I gotta do actual rendering code and it's been a pain lol

HaraiseTenshi I'll have to look into it. Hytale's launch has somewhat sidetracked me with work related stuff.

HaraiseTenshi, 5 days ago

Seems like the translocators are still not working. Can't select the layer (I am guessing it would show where traders are as well)

Specifically walked through a Translocator and did a reload of the webpage still no Translocator showing.

Chumber, Jan 12th at 8:53 AM (modified Jan 12th at 8:53 AM)

Something seems to have broken as of last night-- everyone in my server is shown on the map as bald default models for their avatar. Not sure if it's an SSL cert issue or something, but I noticed the URL to the player icons has invalid https creds. 

 

Is there a way the avatar generation portion of the mod can be moved off an external resource and run on the same server/as part of the mod?

Dietzee, Jan 10th at 2:56 PM

mja00 I'm having the same issue as @DocBees , I run the command and it just says requesting etc, however I'm the op on the server. Any suggestions?

mja00 , Jan 8th at 2:44 PM

Rikun82 if you click on the translocator marker it should move your map to the corresponding translocator. But yeah I think I wanna add lines too. 

Rikun82, Jan 8th at 9:51 AM

Thanks mja00!

I'd like to give a suggestion. Would it be possible to add a layer that shows lines connecting the portals to each other? This way, it's much easier and faster to visualize the routes of each portal, instead of having to look up the coordinates, write them down, move the map to a region, and keep moving the cursor around the map to find the portal that corresponds to the coordinates.

DeeTales, Jan 7th at 12:46 PM (modified Jan 7th at 12:48 PM)

Seems like the server map changed back to spring colors before winter ended in game. 

 

Also, I don't think it ever changed the color pallette for areas I didn't re-visit during winter. 

 

@gNecrOz 

Needs to be on the server and client, if you're not running as single player. 

gNecrOz, Jan 7th at 5:51 AM

So mja00 I think the issue I am having... is I do not feel like my VS is even readin that the mod is there?

which is strange. I am on 1.21.5, I have it in my Server

Server Files
image

 

Client Files
image

 

I am running the VS launcher and for server debugging I am running GI map So I am really not sure... when I try to run the command /livemap colormap I get the 

No such command exists.
image

so I am kind of at a loss?

mja00 , Jan 5th at 9:08 PM

DocBees make sure you have admin on your server or the server will reject the colormap. I should probably do more error messaging. 

DocBees, Jan 5th at 5:35 PM

Tried to run the colormap command and it just says "Requesting colormap from client" with nothing else after that. It is installed on both Server and Client side

mja00 , Jan 5th at 12:19 PM

gNecrOz I don't see why it wouldn't work. I mostly set it to 1.21.6 as a fresh slate kinda thing. As for the IP situation. The mod attempts to bind to any IP it can get. If that doesn't work and you need to bind to a specific IP you can do so in the config under the httpd and bindAddress option. If you reach out to your host they'll know their networking setup better. 

gNecrOz, Jan 4th at 11:13 PM (modified Jan 5th at 4:04 AM)

Will this be okay running on 1.21.5? I do not think much changed radically between them,

Just wanted clarity though ^_^

 

Sidenote: utitilzing a server hosting company, Creeper Host specifically, you do not get a true "IP" with them,

any thoughts?

mja00 , Jan 4th at 10:01 PM

DejFidOFF looks to be pretty easy. I'll add it in the next update. 

DejFidOFF, Jan 4th at 9:33 PM

mja00

 

Hello o/ How possible will be add feature when click on the player to center and zoom on the location where he is?

Nitrometan, Jan 4th at 7:21 PM

Will test once i'm done playing my current session, thanks :3

mja00 , Jan 4th at 7:09 PM

Rikun82 and Nitrometan I've fixed the translocator layer in 0.1.9. 

mja00 , Jan 4th at 5:07 PM

Rikun82  Nitrometan Yeah I've realized the entire codebase for translocators is commented out or marked with a TODO, other than the boilerplate for it showing on the ui. It's next on my chopping block of things to fix. In theory it shouldn't be too bad. 

Rikun82, Jan 4th at 4:50 PM

Feedback: For some reason, the translocator markers are not appearing on the online map, even when set to TRUE in the modconfig.

Rikun82, Jan 4th at 11:47 AM

@mja00 I just installed the mod on my server hosted on Bisect Hosting and it worked perfectly! I was using port 8080, but the server support team explained how to adjust the port in the config and showed me the ports I already have open. I just had to replace the unconfigured 8080 with the available port and boom! Everything is running!

 

I don't know what else you plan to do with it, but the mod is amazing and running SMOOTHLY! I've wanted a mod like this on my server for a long time! Thank you!

Nitrometan, Jan 4th at 9:12 AM

Thanks for the revival. I suppose the TLs are still not implemented, or, is there a documentation for this to get this layer to show TLs ? Never seen it working even on Billy's original demo (which was ahead of the moddb release as well).

mja00 , Jan 3rd at 11:34 PM

MRGOOSE done! 

MRGOOSE, Jan 3rd at 8:54 PM

could Cartographer mod shared waypoints be compatible with this and shown on the map as a new layer?

Tharpadarp, Jan 3rd at 8:07 PM

This is wonderful. The only thing I'd want that's left now is shareable waypoints, maybe with toggles for who they belong to in the sidebar.

mja00 , Jan 3rd at 5:31 PM

StrayFox It'll depend on host. Essentially you just need to be able to use a port alongside the server's main port. Some host require you to contact them to open up a port, some let you do it from the panel, some have all ports open. Best to chat in with them as they'll know. Just let them know you need a 2nd port and/or send them the mod's link. 

StrayFox, Jan 3rd at 5:25 PM

Is this possible with a paid server host? Or is this just for personal server hosting? Can't seem to get it to work with my paid hosting service.

mja00 , Jan 3rd at 5:07 PM

masingbackstage I did fix this starting in 0.1.7 (which I just released), sending a colormap will now trigger a full render. Appreciate the comment :D 

masingbackstage, Jan 3rd at 4:54 PM

@mja00, yeah you are right, that fixed the issue, thanks!

mja00 , Jan 3rd at 4:42 PM

masingbackstage you'll probably want to do /livemap fullrender first. Editing and new chunks are queued for render and then when the server auto saves, that way we're not constantly re-rendering chunks all the time. 

masingbackstage, Jan 3rd at 3:42 PM (modified Jan 3rd at 3:51 PM)

Hi mja00!

Thanks for all the contributions, it feels like a much better alternative to WebCartographer with its live capabilities. However, I have one issue (probably my fault lol). Even though my map is much bigger than what's rendered on the site, WebMap only shows spawn chunks. Any idea what might be wrong? Even when I enter the area outside LiveMaps scope it still does not update (player position is shown correctly).

https://imgur.com/a/fr9tO40

Edit:
When using /livemap colormap I get Colormap sent successfully (12 chunks)

Tyeia, Jan 3rd at 2:42 AM

mja00 Figured out the issue. I had 0.1.0 installed on my client, since my mod updater wasnt picking up on the version difference. After updating it worked.

mja00 , Jan 2nd at 8:59 PM

Tyeia First make sure you have the mod installed on your client as well, as it has to use your client to generate the colormap and then upload it to the server. It should log as its sending the colormap up in chunks. 

Tyeia, Jan 2nd at 7:39 PM

Any chance of adding more log entries to the colormap generation? Ran /livemap colormap after the update and nothing happens after the "Received colormap request from server". Not sure if the colormap is exceptionally large and takes a long time to generate or whether something is not working. Was trying to look at logs to figure out what the problem was and didn't see anything.

Jurry0503, Jan 2nd at 6:53 PM

mja00 thank you very much for all the quick fixes

mja00 , Jan 2nd at 4:36 PM

Jurry0503 I implemented the toggles for the specific renderers to the web UI. 
image

tinyoverflow, Jan 2nd at 3:08 PM

DeeTales According to the source code, it's your servers IP or hostname with port 8080 by default. You might want to configure it in case you're using a paid hoster with a shared IP address.

mja00 , Jan 2nd at 1:50 PM

DejFidOFF And btw do you know about the issue when original livemap was installed and conflicted with From Golden Combs mod?

Unsure if the conflict still exists but I can definitely test. I know currently we conflict with Ancestral Bliss Shaders mod that I'm actively attempting to figure out a workaround for. 



Tyeia hmm, shocked it would be that big but I guess if you have mods that add a LOT of content it could be large. I'll have to take a look to see if we can upload the colormap in chunks to get around a size issue. 

DejFidOFF, Jan 2nd at 1:33 PM

mja00

Hello o/ Thank you for your efford. After this mod settle little bit I will try to switch over from old livemap to this one.

And btw do you know about the issue when original livemap was installed and conflicted with From Golden Combs mod?

Tyeia, Jan 2nd at 6:29 AM

Tossed an issue on the tracker. Tried running /livemap colormap with an apparently large colormap, server booted me with the following error:

"2.1.2026 07:18:41 [Server Notification] Client (IP) disconnected, too large packet of 1047845 bytes received"

mja00 , Jan 2nd at 3:32 AM

propaneko oops, added that to the description. 

propaneko, Jan 2nd at 3:23 AM (modified Jan 2nd at 3:26 AM)

To not be confused please try to name your mod files with version like "LiveMap_0.0.1" etc. Thank you for taking over, it is a great livemap! I could check the code and maybe help a little.

Also add to description that you need to put this mod both on server and on the client if you want to send "colormap" command on the dedicated server.

mja00 , Jan 2nd at 2:31 AM

MonAmour actually there does appear to be a bug where we're only marking chunks as ready to be rendered when they're dirtied (aka built in) and not when they're freshly loaded. I've got a fix in the works that'll queue a chunk for rendering when its loaded so they show up as you're exploring. 

mja00 , Jan 2nd at 2:18 AM

Jurry0503 0.1.2 fixes up that UI bug with the markers

Jurry0503, Jan 2nd at 1:44 AM

MonAmour I can't say i have that issue did you do a full render?

MonAmour, Jan 2nd at 1:36 AM

So awesome that it works in the first place but the livemap seems to stop rendering anything past 1000 blocks from spawn

 

mja00 , Jan 2nd at 12:11 AM

Jurry0503 yeah, definitely on my list to fix. Currently getting the major bugs fixed, modernizing the codebase a little, and getting unit tests working as a top priority. 

Jurry0503, Jan 2nd at 12:09 AM

mja00 Thank you so much for the quick fix.
I really hope to see the other things i pointed out in my first comment to be fixed but no rush, i am just happy that it works now

mja00 , Jan 1st at 11:43 PM

Jurry0503 try out the 0.1.1 version. I swapped out HTTP server libraries and this one binds properly on windows for me. 

Jurry0503, Jan 1st at 11:15 PM

mja00 i tried that and now the webserver doesn't want to start anymore so i undid it, i hope you can fix it on your end.

For others that tried the command and don't know how to undo it, here is how: "netsh http delete urlacl url=http://+:8080/"

mja00 , Jan 1st at 10:22 PM

Jurry0503 yeah for some reason Windows gets really annoying about binding things. I may be able to swap away form the ACL'd HttpListener and roll my own TcpListener stack to get around it. For now you can in theory use netsh http add urlacl url=http://+:8080/ user=Everyone in an admin cmd/terminal and that should allow the mod to bind to a wildcard. It shouldn't be too hard for me to swap to raw TCP listening and handle HTTP myself, as it is just a static webserver. 

Jurry0503, Jan 1st at 8:12 PM (modified Jan 1st at 8:13 PM)

The mod seems to block everything other than "localhost:8080". I can't proxy it via cloudflare or get it to do anything within the same network (192.168.x.x:8080) changing to url to someting else doesn't work and changing the port to something other than 8080 also seems to break it.
In the UI it seems to make a lot of markers without a name and icon.
in the features list you metioned Basic and Sepia but you can only change it by editing the url, or am i missing a button?

Other than my issue's i find this mod to work better than WebCartographer because i can't get WebCartographer to load while playing the game and it takes more time to load, so being able to play while it loads is amazing.

I am hosting this on singleplayer and opening it to lan.

after seeing your post 1 min ago i am playing/hosting on windows 11

mja00 , Jan 1st at 8:11 PM

DeeTales by default it'll bind to whatever IP is available on the machine and port 8080. Although on Windows there's issues binding outside of localhost currently. 

mja00 , Jan 1st at 7:47 PM

mynametimmy yeah I think there's some stale/bad code from before the full refactor that has broken binding to all interfaces. Gonna look into it today. 

mynametimmy, Jan 1st at 4:54 PM

Seems to have not started the webserver properly. I get an error saying "Internal webserver has failed to start", going to the link via /livemap doesn't seem to have the map.

 

DeeTales, Jan 1st at 3:32 PM

What's the URL and port to access the app?