Mods / VSHUD

Category: #Utility
Author: Novocain
Side: Client
Created: Feb 14th 2021 at 8:08 PM
Last modified: Feb 11th 2023 at 11:28 PM
Downloads: 13704
Follow Unfollow 88

Latest file for v1.17.11:
VSHUD.dll 1-click install


DISCLAIMER: (DOES NOT MAKE WAYPOINTS FROM PAST DEATHS)

Support VSHUD

A mod that adds a few more things to the client side of the game, a few main features right now are: Floaty damage UIs, .obj Caching/Creation, Auto Death Waypoints, Floaty Waypoints, a measuring tool under .measure, .lightutil, a construction planner under .shape, and block placement previews so you know what those slabs are going to look like before you place them.

There are a few default keybindings which can be changed in settings:
U to show floating waypoints.

O to cull automatic death waypoints.

P to open Waypoint Utils GUI

L to open Claims GUI

Pressing R over a floaty waypoint will bring up the edit dialog.

This mod can be used by the player on any server since it's a client exclusive mod.

.wpcfg [dotrange|titlerange|perblockwaypoints|purge|waypointprefix|waypointid|enableall|import|export|pillars] General Config and import/export commands (from/to a waypoints.json file in the game data directory)

.measure Lets you use a measuring tool.

.lightutil Has some stuff relating to showing light level of blocks.

.pconfig [enabled|tinted] For block placement preview config.

.clockconfig [Calendar|Season|Temperature|Rainfall|WindVelocity|LocalTemporalStability|PlayerTemporalStability|TemporalStormInfo] true/false [Offset] x/y Clock UI Configuration

.shape [sphere|cube|circle|dome|path|clear|extrude|save|load] [radius (shape id for saving/loading) (from waypoint id for path)] [thickness (to waypoint id for path)] [attach (true/false)] For making outlines to aid in construction.

.obj Exports an obj mesh file of the block or entity the player is currently looking at.

.objworld Enables/Disables the caching of chunks as .obj parts during chunk tesselation.

.fdcfg state [true/false] Toggles floaty damage UI creation.

.fdcfg range [number] Changes the range at which floaty damages can be produced. Recommended keep this number low (around 100 meters).

.exportmap Exports the world map (ui) tiles into %gamedatapath%/SavedMaps

If the DLL doesn't work on windows, right click it->go to properties->click allow.

If after doing the above and it still refuses to work, or you have a similar issue on Linux, use the .zipped version named VSHUDCompat.zip instead.

Version For Game version Downloads Release date Changelog Download 1-click mod install*
v2.1.2 1032 Feb 11th 2023 at 11:28 PM Show VSHUD.dll Install now
v2.1.1 162 Feb 10th 2023 at 3:01 AM Show VSHUD.dll Install now
v2.1.0 1148 Sep 3rd 2022 at 9:58 PM Show VSHUD.dll Install now
v2.0.31 1304 Feb 14th 2022 at 1:50 AM Show VSHUD.dll Install now
v2.0.30 317 Feb 9th 2022 at 3:02 AM Show VSHUD.dll Install now
v2.0.29 500 Jan 22nd 2022 at 11:37 AM Show VSHUD.dll Install now
v2.0.27 517 Jan 6th 2022 at 2:04 AM Show VSHUD.dll Install now
v2.0.25 296 Dec 31st 2021 at 9:09 PM Show VSHUD.dll Install now
v2.0.23 334 Dec 24th 2021 at 1:03 AM Show VSHUD.dll Install now
v2.0.21 285 Dec 23rd 2021 at 4:35 AM Show VSHUD.dll Install now
v2.0.19 304 Dec 18th 2021 at 1:14 AM Show VSHUD.dll Install now
v2.0.17 267 Dec 17th 2021 at 1:05 AM Show VSHUD.dll Install now
v2.0.28 278 Jan 6th 2022 at 2:06 AM Show VSHUD.dll Install now
v2.0.26 266 Dec 31st 2021 at 9:07 PM Show VSHUD.dll Install now
v2.0.24 324 Dec 24th 2021 at 1:04 AM Show VSHUD.dll Install now
v2.0.22 246 Dec 23rd 2021 at 4:37 AM Show VSHUD.dll Install now
v2.0.20 285 Dec 19th 2021 at 1:23 AM Show VSHUD.dll Install now
v2.0.18 262 Dec 18th 2021 at 1:11 AM Show VSHUD.dll Install now
v2.0.16 269 Dec 17th 2021 at 1:02 AM Show VSHUD.dll Install now
v2.0.15 929 Jul 24th 2021 at 1:00 AM Show VSHUD.dll Install now
v2.0.15 616 Jul 24th 2021 at 12:59 AM Show VSHUDCompat.zip Install now
v2.0.14 400 Jul 20th 2021 at 7:37 PM Show VSHUD.dll Install now
v2.0.14 360 Jul 20th 2021 at 7:37 PM Show VSHUDCompat.zip Install now
v2.0.12 361 Jul 14th 2021 at 11:13 PM Show VSHUDCompat.zip Install now
v2.0.12 440 Jul 14th 2021 at 11:14 PM Show VSHUD.dll Install now
v2.0.10 366 Jul 13th 2021 at 4:16 AM Show VSHUDCompat.zip Install now
v2.0.10 351 Jul 13th 2021 at 4:16 AM Show VSHUD.dll Install now

30 Comments (oldest first | newest first)

💬 BaconQueen, Feb 14th at 8:48 AM

Novocain Please please update this mod it is very handy and needed for everyone to enjoy!

💬 SuccubusKayla, Jul 17th 2023 at 4:38 PM

Mod is dead, so I assume Novocain is as well. Rest In Peace.

💬 MackRaven, Jun 18th 2023 at 10:57 AM

the mod is dead (it seems to be)

💬 SparkleKitti, Jun 1st 2023 at 9:20 PM

Crashes 1.8.5

💬 Ethanol_Balls, Apr 26th 2023 at 12:21 AM

I'm having an issue running the game with this mod, is there a better place to contact you through than these comments?

💬 Apache, Apr 22nd 2023 at 11:04 PM

I just wanted to jump in and give my love for this mod. So far as I'm concerned, it's an essential mod to play with; possibly even above any of my own! This mod has also taught me so much about modding, and how to interact with the game. Thank you for everything you'd done with it.

💬 gndrneutralnoun, Apr 22nd 2023 at 4:19 PM

+1 on the update. Alternatively, simply an estimate on when it'll happen, and/or confirmation of whether it works on 1.18 or not, would be awesome.

💬 OBEDIA, Apr 20th 2023 at 5:43 PM

Update this essential mod please!

💬 Stormius, Apr 6th 2023 at 9:23 AM

please uptade to 1.18. i can not play on multiplayer :(

💬 Aledark, Mar 12th 2023 at 4:09 AM

small bug but irritating(for me) in a MP server. (vshud affecting keybinds...specifically G key to sit)
Everytime i press G key on my keyboard(in the context of typing a command in the chat bar or just typing to someone it shouldnt trigger the sit key. Yet without your mod, it doesnt make me sit, so definately something inbetween vanilla and your mod. for me its 100% reproductible and ive discussed with others who have this too.
I can always rebind Sit G to an other keystroke but im so used to it and use it then when i wanna sit, im too used to play with it on VS.
Possible to look into? Thanks!

💬 Kwegar, Mar 8th 2023 at 12:10 AM

Hoping for a 1.18 Pre (3) currently.. update at some point.. loved this mod from forever ago.   crash to desktop on this one for now..  

💬 LadyBlakeHammer, Mar 6th 2023 at 7:47 PM

Is there a way a way to turn off automatic death markers; I use Player Corpses, that added their own Death Markers.

💬 BlackAxolotl, Feb 20th 2023 at 11:15 PM

For those wondering how to get the clock part of the mod to show up you have to press the right control button for it to show up, didn't realize that and had been looking for an answer for a while

💬 DukeArioch, Nov 13th 2022 at 1:56 PM

On my system it is very hard to read the clock hud font. Is this changeable?

💬 DukeArioch, Nov 8th 2022 at 3:03 PM

TheNiteFox - I can help with this some - I started trying different things and a previous poster helped with the suggestion to use the right ctrl button. Please add this to the instructions @Novocain.

Once that was set, .clockconfig Season false turned off the seasons. I assume this works for the rest. the [|||] is a shorthand for "select any one of these" - you don't add the [] to the command.

I was also able to use .clockconfig Offset 50 to push it over 50 pixels but could not figure a way to make the "y" portion work. 

Also despite the specified format, you cannot combine Offset with any of the other commands as far as I see.

💬 TheNiteFox, Nov 6th 2022 at 11:53 PM

How exactly am I suppose to type this command in the chatbar? 

.clockconfig [Calendar|Season|Temperature|Rainfall|WindVelocity|LocalTemporalStability|PlayerTemporalStability|TemporalStormInfo] true/false [Offset] x/y

because either my dumb brain cant figure it out :c or its not working 

I was doing .clockconfig [Calendar] true  and I bet thats not right 😅

💬 metachaos, Oct 20th 2022 at 5:00 PM

Could you add Current Rift Activity to the clock area?

💬 NovocainAuthor, Sep 4th 2022 at 1:37 AM

@Craluminum

This isn't true, several things needed to be changed to make it compatible with 1.17

💬 DanaCraluminum, Sep 1st 2022 at 7:58 PM

This is very easy to fix, the mod author just need to recompile the mod for any of 1.17 version, without chaning a line of code

💬 melodelic, Sep 1st 2022 at 5:59 PM

After the 1.17.0 patch, I am now getting the following error while loading the game with VSHUD enabled:

 

Running on 64 bit Windows with 16 GB RAM
Game Version: v1.17.1 (Stable)
9/1/2022 12:58:06 PM: Critical error occurred in the following mod: vshud@2.0.31
Loaded Mods: bettercrates@1.4.2, extrachests@1.5.2, moreminerals@1.0.3, game@1.17.1, vshud@2.0.31, zoombuttonreborn@1.3.0, carrycapacity@0.6.5, farmlanddropssoil@1.4.0, fromgoldencombs@1.3.14-pre.1, medievalexpansion@3.7.1, prospectorinfo@3.1.2, creative@1.17.1, survival@1.17.1, accessibilitytweaks@3.0.0, campaigncartographer@2.2.2
System.MissingMethodException: Method not found: 'Vintagestory.API.Client.GuiComposer Vintagestory.API.Client.GuiComposerHelpers.AddDialogBG(Vintagestory.API.Client.GuiComposer, Vintagestory.API.Client.ElementBounds, Boolean)'.
at VSHUD.GuiDialogWaypointFrontEnd.OnOwnPlayerDataReceived()
at VSHUD.WaypointUtils.<>c__DisplayClass16_0.<StartClientSide>b__1()
at System.Action.Invoke()
at Vintagestory.Client.NoObf.ClientMain.OnLevelFinalize() in VintagestoryLib\Client\ClientMain.cs:line 1044
at Vintagestory.Client.NoObf.GeneralPacketHandler.HandleLevelFinalize(Packet_Server packet) in VintagestoryLib\Client\Systems\GeneralPacketHandler.cs:line 219
at Vintagestory.Client.NoObf.ClientMain.ExecuteMainThreadTasks(Single deltaTime) in VintagestoryLib\Client\ClientMain.cs:line 1139
at Vintagestory.Client.GuiScreenConnectingToServer.RenderToDefaultFramebuffer(Single dt) in VintagestoryLib\Client\MainMenu\Screens\GuiScreenConnectingToServer.cs:line 383
at Vintagestory.Client.ScreenManager.Render(Single dt) in VintagestoryLib\Client\ScreenManager.cs:line 711
at Vintagestory.Client.ScreenManager.OnNewFrame(Single dt) in VintagestoryLib\Client\ScreenManager.cs:line 615
at Vintagestory.Client.NoObf.ClientPlatformWindows.window_RenderFrame(Object sender, FrameEventArgs e) in VintagestoryLib\Client\ClientPlatform\GameWindow.cs:line 132
at System.EventHandler`1.Invoke(Object sender, TEventArgs e)
at OpenTK.GameWindow.RaiseRenderFrame(Double elapsed, Double& timestamp) in C:\Users\Nexrem\Desktop\transfer\opentk\src\OpenTK\GameWindow.cs:line 479
at OpenTK.GameWindow.DispatchRenderFrame() in C:\Users\Nexrem\Desktop\transfer\opentk\src\OpenTK\GameWindow.cs:line 454
at OpenTK.GameWindow.Run(Double updates_per_second, Double frames_per_second) in C:\Users\Nexrem\Desktop\transfer\opentk\src\OpenTK\GameWindow.cs:line 375
at Vintagestory.Client.ClientProgram.Start(ClientProgramArgs args, String[] rawArgs)
at Vintagestory.ClientNative.CrashReporter.Start(ThreadStart start) in VintagestoryLib\Client\ClientPlatform\ClientNative\CrashReporter.cs:line 93

💬 gndrneutralnoun, Apr 10th 2022 at 8:51 PM

Opening the waypoint GUI doesn't work with immersive mouse mode; it gets stuck in the default crosshair mouse mode when I hold alt, even if I have a vanilla GUI open like my inventory. And not holding alt doesn't work either.

💬 Shoddyfrog, Feb 24th 2022 at 2:19 PM

-EDIT- Google revealed that you have to press right CTRL button, to toggle the 'clock' details. This is not listed anywhere in game, or on this site. Might be an idea to put it somewhere? Thanks. Still loving this mod.

With the clockconfig command, am I right in thinking you can have stuff like the date and temperature on the HUD permanently, and not have to press 'C' to see it?

I would like to see the temperature, so I entered:

.clockconfig temperature true

Did not get a message about unknown command, but nothing happened either. I don't understand what to type. Or does the clockconfig command not do what I think it does?

 

💬 Lash, Feb 9th 2022 at 5:10 PM

Love this thing but the reacting to keypresses when typing is driving me batty.Is there any way to make it stop doing that?

💬 NovocainAuthor, Jan 23rd 2022 at 2:07 AM

Hi, the waypoint front end (P) was made before waypoints even had icons and I haven't really updated it since.

💬 Shoddyfrog, Jan 22nd 2022 at 4:42 PM

Thanks for this, just what I was looking for, because it appears you can no longer create a waypoint while the respawn screen is open, after dying. In version 1.16. Suppose the devs considered that "cheating".

Not sure how to change the keybindings, but don't mind the default so it doesn't really matter. Says in the description you can change them in 'settings' Does that mean the in-game settings menu? Because I don't see them listed there.

oh and the 'make a waypoint menu' (Press P) You can choose the colour of the waypoint from a dropdown list. I love this feature, good job on that. Always found it bizarre that vanilla game does not have this feature. Slight issue is that it does not select the colour you click on, it selects the next colour up in the list. But of course that is not really a problem once you know this. Is there any way to choose the icon as well? Can not see a way. Wish there was one.

💬 SkettiSean, Jan 19th 2022 at 5:14 PM

Do you have on your roadmap a compat for 1.16 or can I just use a previous version 

💬 NovocainAuthor, Dec 19th 2021 at 1:25 AM

melodelic
Ok, should now be fixed, I tried to patch the new name for AddDecor in 1.15.

💬 melodelic, Dec 18th 2021 at 8:00 PM

I'm having the weirdest bug with both the 2.0.18 and the 2.0.16 version. It basically puts things down without them actually being there or actually being put down and relogging gets rid of them. I've got a short video of what is happening.

 

💬 NovocainAuthor, Dec 18th 2021 at 1:16 AM

Aledark

I think I just fixed that now, sorry for the 4 month delay.

💬 Aledark, Aug 19th 2021 at 3:56 PM

Does not currently work with 1.15.5 for either the compat or dll(did click allow) when i join a MP server for me i get following crashes:

Running on 64 bit Windows with 16 GB RAM
Version: v1.15.5 (Stable)2021-08-19 11:54:34: Critical error occurred
System.InvalidOperationException: Failed to compare two elements in the array. ---> System.NullReferenceException: Object reference not set to an instance of an object.
at VSHUD.FloatyWaypointManagement.<>c.<GetWaypointsHash>b__10_0(HudElementWaypoint a, HudElementWaypoint b)
at System.Collections.Generic.ArraySortHelper`1.SwapIfGreater(T[] keys, IComparer`1 comparer, Int32 a, Int32 b)
at System.Collections.Generic.ArraySortHelper`1.PickPivotAndPartition(T[] keys, Int32 lo, Int32 hi, IComparer`1 comparer)
at System.Collections.Generic.ArraySortHelper`1.IntroSort(T[] keys, Int32 lo, Int32 hi, Int32 depthLimit, IComparer`1 comparer)
at System.Collections.Generic.ArraySortHelper`1.IntrospectiveSort(T[] keys, Int32 left, Int32 length, IComparer`1 comparer)
at System.Collections.Generic.ArraySortHelper`1.Sort(T[] keys, Int32 index, Int32 length, IComparer`1 comparer)
--- End of inner exception stack trace ---
at System.Collections.Generic.ArraySortHelper`1.Sort(T[] keys, Int32 index, Int32 length, IComparer`1 comparer)
at System.Array.Sort[T](T[] array, Int32 index, Int32 length, IComparer`1 comparer)
at System.Array.Sort[T](T[] array, IComparer`1 comparer)
at VSHUD.FloatyWaypointManagement.GetWaypointsHash()
at VSHUD.TriggerRepopulation.Postfix(WaypointMapLayer __instance, Byte[] data)
at Vintagestory.GameContent.WorldMapManager.OnMapLayerDataReceivedClient(MapLayerUpdate msg)
at Vintagestory.Client.NoObf.NetworkChannel.<>c__DisplayClass12_0`1.<SetMessageHandler>b__0(_52t6agJnlbHQ1LXc6jY6GJzlkcZ p)
at Vintagestory.Client.NoObf.NetworkAPI.HandleCustomPacket(_K0gsRhlFmzAJ65AP27fyOAZKCbA packet)
at Vintagestory.Client.NoObf.ClientMain.ExecuteMainThreadTasks(Single deltaTime)
at _EMxDKvc7iN7J6hlNFQiKeoxg0Mm._CEmopzLEk14BSqH9plcDEDfmuwE(Single )
at _Wwq7msw90Af4XU7mxkxAUKyrS5B._iIGaTXNE8VYTpgEu9zjpAQyJSxd(Single )
at _Wwq7msw90Af4XU7mxkxAUKyrS5B._vCB99EztL7cSfmplK8tyTwrQQxC(Single )
at Vintagestory.Client.NoObf.ClientPlatformWindows.window_RenderFrame(Object sender, FrameEventArgs e)
at System.EventHandler`1.Invoke(Object sender, TEventArgs e)
at OpenTK.GameWindow.RaiseRenderFrame(Double elapsed, Double& timestamp)
at OpenTK.GameWindow.DispatchRenderFrame()
at OpenTK.GameWindow.Run(Double updates_per_second, Double frames_per_second)
at _q065sSmA3CNgGuKTGnlAjR4ljPw._WkSl7yfiyr5DwPiSMvTudNAhp6(_t3ILnyYBq5OoYhhBY3JeTWgFmJDA , String[] )
at _DBu5wiQWRAHGS5G2jiCKymvQ9yE._WkSl7yfiyr5DwPiSMvTudNAhp6(ThreadStart )
-------------------------------
System.NullReferenceException: Object reference not set to an instance of an object.
at VSHUD.FloatyWaypointManagement.<>c.<GetWaypointsHash>b__10_0(HudElementWaypoint a, HudElementWaypoint b)
at System.Collections.Generic.ArraySortHelper`1.SwapIfGreater(T[] keys, IComparer`1 comparer, Int32 a, Int32 b)
at System.Collections.Generic.ArraySortHelper`1.PickPivotAndPartition(T[] keys, Int32 lo, Int32 hi, IComparer`1 comparer)
at System.Collections.Generic.ArraySortHelper`1.IntroSort(T[] keys, Int32 lo, Int32 hi, Int32 depthLimit, IComparer`1 comparer)
at System.Collections.Generic.ArraySortHelper`1.IntrospectiveSort(T[] keys, Int32 left, Int32 length, IComparer`1 comparer)
at System.Collections.Generic.ArraySortHelper`1.Sort(T[] keys, Int32 index, Int32 length, IComparer`1 comparer)
-------------------------------

Event Log entries containing Vintagestory.exe, the latest 3
==================================
{ TimeGenerated = 2021-08-19 11:54:38, Site = , Source = Windows Error Reporting, Message = Fault bucket 1595511639881848120, type 4
Event Name: APPCRASH
Response: Not available
Cab Id: 0

Problem signature:
P1: Vintagestory.exe
P2: 1.15.5.0
P3: 61123ac1
P4: KERNELBASE.dll
P5: 10.0.19041.1151
P6: 891df6d3
P7: c000041d
P8: 0000000000034ed9
P9:
P10:

Attached files:
\\?\C:\ProgramData\Microsoft\Windows\WER\Temp\WER9F1A.tmp.dmp
\\?\C:\ProgramData\Microsoft\Windows\WER\Temp\WERA1EA.tmp.WERInternalMetadata.xml
\\?\C:\ProgramData\Microsoft\Windows\WER\Temp\WERA1FB.tmp.xml
\\?\C:\ProgramData\Microsoft\Windows\WER\Temp\WERA20A.tmp.csv
\\?\C:\ProgramData\Microsoft\Windows\WER\Temp\WERA21B.tmp.txt

These files may be available here:
\\?\C:\ProgramData\Microsoft\Windows\WER\ReportArchive\AppCrash_Vintagestory.exe_9f598ac8a93a6ee7a9b47e719e99c912ff82abf_23fa4891_bc08e980-6620-4492-a865-10b0b67e45cf

Analysis symbol:
Rechecking for solution: 0
Report Id: 162d4c93-5e99-40bd-84e8-6fcc6024492a
Report Status: 268566528
Hashed bucket: 5b6fbac911fb84519624656212289538
Cab Guid: 0 }
--------------
{ TimeGenerated = 2021-08-19 11:54:37, Site = , Source = Application Error, Message = Faulting application name: Vintagestory.exe, version: 1.15.5.0, time stamp: 0x61123ac1
Faulting module name: KERNELBASE.dll, version: 10.0.19041.1151, time stamp: 0x891df6d3
Exception code: 0xc000041d
Fault offset: 0x0000000000034ed9
Faulting process ID: 0x272c
Faulting application start time: 0x01d795126c1c3f0e
Faulting application path: C:\VSTEST\Vintagestory.exe
Faulting module path: C:\Windows\System32\KERNELBASE.dll
Report ID: 162d4c93-5e99-40bd-84e8-6fcc6024492a
Faulting package full name:
Faulting package-relative application ID: }
--------------
{ TimeGenerated = 2021-08-19 11:54:36, Site = , Source = Windows Error Reporting, Message = Fault bucket 1308234530184273593, type 4
Event Name: APPCRASH
Response: Not available
Cab Id: 0

Problem signature:
P1: Vintagestory.exe
P2: 1.15.5.0
P3: 61123ac1
P4: KERNELBASE.dll
P5: 10.0.19041.1151
P6: 891df6d3
P7: c0020001
P8: 0000000000034ed9
P9:
P10:

Attached files:
\\?\C:\ProgramData\Microsoft\Windows\WER\Temp\WER972B.tmp.dmp
\\?\C:\ProgramData\Microsoft\Windows\WER\Temp\WER9A0A.tmp.WERInternalMetadata.xml
\\?\C:\ProgramData\Microsoft\Windows\WER\Temp\WER9A2B.tmp.xml
\\?\C:\ProgramData\Microsoft\Windows\WER\Temp\WER9A38.tmp.csv
\\?\C:\ProgramData\Microsoft\Windows\WER\Temp\WER9A49.tmp.txt

These files may be available here:
\\?\C:\ProgramData\Microsoft\Windows\WER\ReportArchive\AppCrash_Vintagestory.exe_7b25d616dcc58f727aef5bd7f69ccb3052cda0a5_23fa4891_3965fc6f-daff-4c74-a6ee-348de7db7ca1

Analysis symbol:
Rechecking for solution: 0
Report Id: ed756830-50e2-4e20-a365-da3787dbcbdb
Report Status: 268566528
Hashed bucket: a9517b37b4ed682e3227c85fb6889eb9
Cab Guid: 0 }

(edit comment delete)