Mods / NDL TimeTracker

Tags:
Utility
Author:
NateDoesLife
Side:
Client
Created:
Jan 27th 2025 at 8:26 AM
Last modified:
May 19th at 4:34 PM
Downloads:
3231
Latest release (for Vintage Story 1.22.0 - 1.22.2, potentially outdated):
ndltimetracker_5.0.1.zip  1-click install

***I always recommend you write down your world times before updating versions just incase. There should be no loss of time with any updates (other then a full game reinstall) but you never know!***

About Mod:
This mod tracks your playtime on any given world (hours and minutes). I know it the game tracks for singleplayer but I wanted a mod that tracks time played on multiplayer worlds since there is no built in system for that.
     - Displays time on screen via HUD in upper right next to mini-map


Hotkey:
     - default key - num8 (8 key on the numberpad)
          - can be changed in the controls menu

 

Commands:
.playtime - type this command in chat and it will display your time!


.playtime "<hr> <min>" This command allows you to set your time (for if you have been keeping track before you added this mod like I have)
     - example: ".playtime set 1 20" This sets your playtime to 1hr 20mins
     - WARNING: If you do "/playtime <playername>" and don't put in the hours or minutes it will act like you put in 0 0 and reset your playtime.

 

Migration Instructions (4.0.0 version):

Migration Method 1 (manual)

  • Before updating to 1.21
      • Record all your world times somewhere (notepad, pen paper, where ever)
  • Update to 1.21 and update mod to 4.0.0
    • Go in each world and run the command .playtime <Username> <hrs> <mins>

 

Migration Method 2 (bulk/less manual)

  • Update to 1.21
  • Update Mod to 4.0.0
      • Load into your world
      • Your time will show 0hr 0min, this is fine
    • Go into your Vintage Story installation path
      • Copy the folder named "playtime"
    • Go to your "VintagestoryData" folder
      • Probably located in your Appdata Folder
        • Open File Explorer and type %Appdata% in the path bar
      • Look for the folder named "NDL-TimeTracker"
        • Past your "playtime" folder in there
        • Replace the one in there if there is one
  • Your time should now be restored
    • Reach out if this fails

 

Planned Workings:
- none at the moment

 

Feedback/Suggestions/Support:
I livestream on Twitch or Youtube (ad-free) monday-thursday (6pm est - 10pm est) Typically I play vintage story but on occasion might dive into a random game. I welcome suggestion and feedback on the mod in chat there or you can leave a comment below.
     - You can also join my personal discord channel via - https://discord.gg/6qQZYPU
     - Please use the channel #ndl-timetracker for any comments/chat regarding this mod! (going to be at the bottom of the channel list, in the VS-MODS Category)


Other Mods By Author:

NDL Expanded Growth Icon  NDL WoodenTorchHolders NDL ChiselPicks Mod Thumbnail Mod Thumbnail Mod Thumbnail Mod Thumbnail Mod Thumbnail Mod Thumbnail Mod Thumbnail

Mod Version Mod IdentifierFor Game version Downloads Released Changelog Download 1-click mod install*
5.0.1 ndltimetracker
1.22.0 - 1.22.2
185 May 19th at 4:34 PM ndltimetracker_5.0.1.zip 1-click install

New Features:
- None

 

Updates:
- None

 

Bug Fixes:
- Cleared out a "spammy" logger notification
     - Unsure if this was causing any issues in and of itself but it was a bit spammy in the log files

5.0.0 ndltimetracker 215 Mar 9th at 5:58 PM ndltimetracker_5.0.0.zip 1-click install

Updated to 1.22
     - I tested everything quite a bit but bugs might of slipped through, please let me know if you stumble across anything
Recompiled in .net10

New Features:
- None

 

Updates:
- None

Bug Fixes:
- None

4.0.1 ndltimetracker 647 Oct 31st 2025 at 5:07 AM ndltimetracker_4.0.1.zip 1-click install

New Features:
- None

 

Updates:
- adjusted the updating of the GUI

 

Bug Fixes:
- Fixed the .playtime set command not working

4.0.0 ndltimetracker
1.21.2 - 1.21.4
425 Aug 26th 2025 at 4:03 PM ndltimetracker_4.0.0.zip 1-click install

New Features:
- 1.21 Support

 

Updates:
- Updated storage of "Playtime Data"
     - Following instructions on Mod Home Page for how to migrate your data
          - Your old data will not migrate over automatically, you will need to move it yourself via the migration instructions!!!!!!!

 

Bug Fixes:
- Fixed GUI loading Crash

3.2.0 ndltimetracker
1.20.0 - 1.20.3 1.20.5 - 1.20.7 1.20.8 - 1.20.10 1.20.11 - 1.20.12
556 Feb 28th 2025 at 5:43 PM ndltimetracker_3.2.0.zip 1-click install

New Features:
- Tracker is now moveable on screen
- Tracker can be closed now
- Hotkey added to open/close Tracker
     - Default is "8" on the numberpad
     - You can change in the controls menu


Updates:
- GUI Redesign


Bug Fixes:
- None

***I always recommend you write down your world times before updating just incase. There should be no loss of time with any updates but you never know!***

3.1.2 ndltimetracker 281 Feb 4th 2025 at 10:26 PM ndltimetracker_3.1.2.zip 1-click install

New Features:
- None


Updates:
- Overhauled the HUD Display
     - Now has a box around it to help view the time better
     - Font should be a slightly bit larger now


Bug Fixes:
- None

3.0.2 ndltimetracker 130 Feb 3rd 2025 at 4:39 PM ndltimetracker_3.0.2.zip 1-click install

New Features:
- None


Updates:
- Removed the chat notification for the 1 minute save function (Thanks PandaPants200)
     - the 30min chat notification should still appear


Bug Fixes:
- None

3.0.1 ndltimetracker 116 Feb 3rd 2025 at 4:14 AM ndltimetracker_3.0.1.zip 1-click install

New Features:
- None


Updates:
- None


Bug Fixes:
- Fix for crash when saving player data for the first time (hopefully)

3.0.0 ndltimetracker 133 Feb 2nd 2025 at 11:46 PM ndltimetracker_3.0.0.zip 1-click install

New Features:
- None


Updates:
- Mod is now completely CLIENT SIDE.
     - You no longer need this on a server to run


Bug Fixes:
- Black 50% of screen when on server with more then 1 person (thanks PandaPants for reporting)

2.0.0 ndltimetracker 152 Jan 30th 2025 at 10:26 PM ndltimetracker_2.0.0.zip 1-click install

New Features:
- HUD display shows your current playtime on screen so you no longer have to use the command to view it
     - This feature does not work for multiplayer servers at the moment, I am working on a fix
     - I am working on a better HUD but this one works for now.


Updates:
- TimeTracker now saves every minute so avoid time loss gradually over time
     - I tested it a good bit and never noticed any lag/hiccuping. If you happen to please let me know/provide logs
- Add a chat notificiation every 30mins so that you know the mod is actually saving within the hour


Bug Fixes:
- None

1.1.0 ndltimetracker 189 Jan 28th 2025 at 7:12 PM ndltimetracker_1.1.0.zip 1-click install

v1.1.0 update

New Features:
- You get a join message that will also show you current playtime on said world


Updates:
- TimeTracker now saves every 5 mins
     - you will get a chat notification when it does this with the time it last saved at


Bug Fixes:
- Time not saving when you leave a world
     - for some reason the onplayerleave event is not triggering properly/saving updated playtime
     - I changed the mod to just save every 5mins for the time being until I can investigate this further

1.0.0 ndltimetracker 202 Jan 27th 2025 at 8:27 AM ndltimetracker_1.0.0.zip 1-click install

v1.0.0
First release of NDL TimeTracker


42 Comments (oldest first | newest first) (threaded | flat)

NoizMakyr, May 23rd at 11:23 PM (modified May 23rd at 11:23 PM)

Sadly I cannot figure out why but I'm getting repeat crashes from this mod (5.0.1) on 1.22.2 specifically according to the crash logs.  No other major mods loaded and it's on a fresh install/server.  Will see if I can get another crash log for it before removing.

NateDoesLife , May 23rd at 11:39 PM
@NoizMakyr: Sadly I cannot figure out why but I'm getting repeat crashes from this mod (5.0.1) on 1.22.2 specifically according to the crash logs. No other major mods loaded and it's on a fresh install/server. Will see if I can get another crash log for it before rem

It should only need to be on the client side, also test it out with no other mods.
- Post a code snip of your crash log or a link to a pastebin or something so I can see what the issue is

NoizMakyr, May 23rd at 11:59 PM (modified May 23rd at 11:59 PM)
@NateDoesLife: It should only need to be on the client side, also test it out with no other mods.- Post a code snip of your crash log or a link to a pastebin or something so I can see what the issue is

Yeah I only had it client-side.  Just ran with no other mods for about triple the time it took to crash before and no issues.  Will keep testing with other mods one by one.  Sorry about this!  Not meaning to be vague, it may just take a while to hunt this down.

NateDoesLife , May 24th at 12:12 AM
@NoizMakyr: Yeah I only had it client-side. Just ran with no other mods for about triple the time it took to crash before and no issues. Will keep testing with other mods one by one. Sorry about this! Not meaning to be vague, it may just take a while to hunt this dow

Gottcha, if you want to post the crash I can take a look.

Also I do know this mod crashes with Optitine (or whatever its called). Not sure what that mod changes about the game but its on them to fix that conflict

Not sure of any others. 

NateDoesLife , Apr 3rd at 4:08 PM

Dragostes Glad you were able to get it fixed up and running! Enjoy!

Dragostes, Apr 3rd at 12:59 PM

NateDoesLife I can confirm the issues I was having were from an improperly installed local server/client setup.  After correcting mod install paths for the server and reinstalling the mod it now works without issues :D

NateDoesLife , Mar 28th at 10:59 PM (modified Mar 28th at 10:59 PM)

Dragostes Does it happen when you have no other mods installed?, also assuming you tried on a fresh new sp world as well?

Dragostes, Mar 28th at 1:31 PM

Well the issue in my previous comment was easy enough to fix I had grabbed the wrong version when reinstalling, now I'm back to crashing after a moment of gameplay.

Crash Report
Running on 64 bit Windows 10.0.26200.0 with 65478 MB RAM
Game Version: v1.21.6 (Stable)
3/28/2026 9:29:57 AM: Critical error occurred in the following mod: ndltimetracker@4.0.1
Loaded Mods: walkingstick@2.0.1, aviswindmills@1.0.0, bettercrates@1.9.1, bettersticks@1.2.0, Bluesky@1.1.0, bricksup@0.8.0, bronzemeteoricmining@1.2.0, candidsimplements@1.0.2, catchlivestock@0.2.2, chickenfeed@1.1.10, cbr@2.0.1, chiseltools@1.16.2, cindersandembers@1.0.2, clayfromshale@1.0.3, clinkerchimneybrick@1.0.0, rlldtco0001@1.4.1, darcesdriftersredone@1.2.81, darkvision@1.2.0, diversediets@1.0.3, hqzlights@1.1.2, enemiesinundergrounddarknessonly@1.0.1, elivory@1.0.3, fastpackeddirtpaths@1.0.0, felk4sale@0.5.0, finallylinenbackpacksredux@1.0.9, forestsymphony@1.0.6, bovinae@0.3.5, capreolinae@2.0.7, fuelbriquettes@1.0.1, goatfeed@1.0.0, hangingvessels@1.0.0, hit@2.4.3, immersivelanterns@0.3.2, immortaltrees@1.67.1, dolabra@1.0.9, ithaniabackpacks@0.5.5, lettherebelight@0.0.8, m00ngrass@1.0.7, manualdishes@0.1.1, millwright@1.3.1, mistsofstability@0.2.0, mofirewood@1.1.1, molds@0.2.7, moremeadoptions@2.0.2, nightskydelights@1.21.6, overhaullib@1.21.0, panformetals@1.0.2, particlesplus@2.3.1, pigfeed@1.0.9, pipeleaf@2.5.1, playermodellib@1.10.11, primitivesurvival@4.0.3, prospecttogether@2.1.2, purpleblackbronze@1.0.0, sand@0.3.2, scalingscythes@2.0.0, shelfobsessed@1.9.5, shelvabletools@1.1.0, skeletonhornspatch@1.0.1, stepstools@1.1.1, stickstepsounds@1.0.0, sustainableforestry@1.1.0, terratag@0.4.3, toolbelt@0.3.4, vanillapanestorage@1.5.45, game@1.21.6, vshexmod@1.0.0, vsimgui@1.1.16, arthursjournal@1.0.4, waypoint@0.2.0, willsfogmod@0.9.3, zoombuttonreborn@2.0.1, ancienttools@1.6.1, antiqueharmony@1.5.1, antlershorns@1.3.6, beararmorrepair@1.0.3, bedspawnv2@1.6.4, betterfirepitexploitfit@1.1.6, betterloot@2.0.1, blacksmithenhancements@1.1.6, bloodtrail@1.1.8, bloomerytiers@1.0.4, brightermoonlight@1.0.0, butchering@1.12.0, chickensitreloaded@1.1.0, chuteablequernv2@1.0.1, chuteblockplacer@1.0.5, clothierheirloomsmod@1.0.2, compostingredux@1.0.4, configlib@1.10.14, configurableroomsize@1.3.1, coriaendershaders@1.1.4, crbutterfly@1.1.0, groundpounder@1.0.2, cropseedstage@1.0.4, debarkmod@1.1.4, dirtup@2.0.0, electricalprogressivecore@2.6.6, farseer@1.3.3, fasterbreedingforked@0.2.0, fattweaks@1.0.0, fendragonbg@0.0.4, fillmybloomery@1.0.2, footprints@1.1.3, forgesstaywarm@1.0.0, gimap@1.6.0, herbalistpots@0.21.3, hidegear@1.3.0, highfert@1.21.6, humans@0.3.8, inventoryunifier@1.1.0, ithaniacannedgoods@1.2.2, knapster@3.0.2, knitting@1.3.1, layeredarmors@1.0.0, longburningfirewood@1.0.2, lunchbox@1.2.2, maltiezcrossbows@1.8.2, maltiezfirearms@1.8.1, manifest@1.2.0, medievalexpansionpatch@1.3.4, metalpots@1.6.3, metaltongs@1.2.4, naturalfoliage@0.0.3, nbcartographer@2.2.1, ndltimetracker@4.0.1, onebedsleeping@3.0.1, opineuponpine@1.0.7, orekiwoofsbeehives@2.0.0-dev.6, panningmachine@1.0.6, pitkilnclinker@0.1.1, purposefulstorage@1.5.1, quickstack@1.0.1, realsmoke@1.1.16, rebuildablebloomery@1.0.6, roamingbees@2.0.0-dev.5, scaffolding@1.2.6, scarecrow@1.7.1, signals@0.2.7, simplerockcrafting@1.3.0, skeletons@0.5.4, smithingplus@1.8.4, sprinklersmod@1.0.3, statushudcont@4.1.1, steadygreenhouses@1.0.2, stonebakeoven@1.2.0, storagetweaks@1.0.3, brilliantbismuth@1.0.1, thecritterpack@1.3.4, torchholdersmithingplus@1.0.3, tradernotes@1.0.5, treetapredux@1.2.3, valrossensmapfilters@1.1.4, creative@1.21.6, vsroofing@1.4.9, survival@1.21.6, wenvironmentalstabilitypatch@1.0.3, windchimes@1.4.1, wbonfires@1.4.2, woodencooling@1.0.0, ancienttoolspaper@0.0.3, bloomerytiersrebuildablebloomerypatch@1.0.5, electricalprogressivebasics@2.6.7, mannyextrafirearms@0.9.1, functionalminerbeltandlantern@1.0.3, grindstones@1.1.5, lowerfirearmscost@0.3.0, medievalexpansiontweaked@0.1.1, nf3ttranslocatorfindercmd@1.0.10, realsmokeforancienttools@1.0.0, realsmokeforbraziers@1.1.1, seraphleveling@1.12.0, signalslink@0.1.6, tradernotestogether@0.0.7, wwaymarkers@1.0.4, zombpspatch@1.9.0, butcheringseraphlevelingcompatibility@1.1.0, electricalprogressiveqol@2.6.10, signalslinkep@0.1.3
System.NullReferenceException: Object reference not set to an instance of an object.
at ndltimetracker.ndltimetrackerModSystem.<>c__DisplayClass14_0.<SavePlaytimeData>b__0() in P:\NDL Mods VS\NDL-TimeTracker\ndltimetracker\ndltimetracker\ndltimetrackerModSystem.cs:line 172
at Vintagestory.Client.NoObf.ClientMain.ExecuteMainThreadTasks(Single deltaTime) in VintagestoryLib\Client\ClientMain.cs:line 786
at Vintagestory.Client.GuiScreenRunningGame.RenderToPrimary(Single dt) in VintagestoryLib\Client\MainMenu\Screens\GuiScreenRunningGame.cs:line 172
at Vintagestory.Client.ScreenManager.Render(Single dt) in VintagestoryLib\Client\ScreenManager.cs:line 719
at Vintagestory.Client.ScreenManager.OnNewFrame(Single dt) in VintagestoryLib\Client\ScreenManager.cs:line 663
at Vintagestory.Client.NoObf.ClientPlatformWindows.window_RenderFrame(FrameEventArgs e) in VintagestoryLib\Client\ClientPlatform\GameWindow.cs:line 112
at OpenTK.Windowing.Desktop.GameWindow.Run()
at Vintagestory.Client.ClientProgram.Start(ClientProgramArgs args, String[] rawArgs) in VintagestoryLib\Client\ClientProgram.cs:line 347
at Vintagestory.Client.ClientProgram.<>c__DisplayClass10_0.<.ctor>b__1() in VintagestoryLib\Client\ClientProgram.cs:line 131
at Vintagestory.ClientNative.CrashReporter.Start(ThreadStart start) in VintagestoryLib\Client\ClientPlatform\ClientNative\CrashReporter.cs:line 95
Dragostes, Mar 28th at 1:26 PM

NateDoesLife I have verified the server is running a seperate installation of mods and that time tracker isn't on the server side.  However at this time I'm getting a different error(?) and it's likely caused by incompatibility with another mod and I'll have to post back here when I find more.  

Error:

Spoiler!
28.3.2026 07:46:47 [Error] [ndltimetracker] Exception: Could not load file or assembly 'System.Runtime, Version=10.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a'. The system cannot find the file specified.
at System.ModuleHandle.ResolveType(QCallModule module, Int32 typeToken, IntPtr* typeInstArgs, Int32 typeInstCount, IntPtr* methodInstArgs, Int32 methodInstCount, ObjectHandleOnStack type)
at System.ModuleHandle.ResolveTypeHandle(Int32 typeToken, RuntimeTypeHandle[] typeInstantiationContext, RuntimeTypeHandle[] methodInstantiationContext)
at System.Reflection.RuntimeModule.ResolveType(Int32 metadataToken, Type[] genericTypeArguments, Type[] genericMethodArguments)
at System.Reflection.CustomAttribute.FilterCustomAttributeRecord(MetadataToken caCtorToken, MetadataImport& scope, RuntimeModule decoratedModule, MetadataToken decoratedToken, RuntimeType attributeFilterType, Boolean mustBeInheritable, ListBuilder`1& derivedAttributes, RuntimeType& attributeType, IRuntimeMethodInfo& ctorWithParameters, Boolean& isVarArg)
at System.Reflection.CustomAttribute.AddCustomAttributes(ListBuilder`1& attributes, RuntimeModule decoratedModule, Int32 decoratedMetadataToken, RuntimeType attributeFilterType, Boolean mustBeInheritable, ListBuilder`1 derivedAttributes)
at System.Reflection.CustomAttribute.GetCustomAttributes(RuntimeModule decoratedModule, Int32 decoratedMetadataToken, Int32 pcaCount, RuntimeType attributeFilterType)
at System.Reflection.CustomAttributeExtensions.GetCustomAttribute[T](Assembly element)
at Vintagestory.Common.ModContainer.<>c__DisplayClass37_0.<LoadAssembly>b__1(Assembly ass) in VintagestoryLib\Common\API\ModContainer.cs:line 546
at System.Linq.Enumerable.WhereEnumerableIterator`1.ToList()
at Vintagestory.Common.ModContainer.LoadAssembly(ModCompilationContext compilationContext, ModAssemblyLoader loader) in VintagestoryLib\Common\API\ModContainer.cs:line 543
NateDoesLife , Mar 27th at 8:12 PM

Dragostes Interesting, yeah that could be. I am not sure why it would be doing that though. You don't have the mod on the server do you? Just installed for your client right?

Dragostes, Mar 27th at 7:04 PM

NateDoesLife I believe the problem is probably caused from my running a dedicated server from the same place as the "singleplayer server" files, probably something about trying to change a file on the server side it shouldn't have access to in client mode.   

Running Windows 11, and the crash happens after being on the server for a few moments as far as I can tell I was the only person having the issue as well.

I can attempt to go through my modlist but that will take some time I'll get back with you if I can figure anything out.

NateDoesLife , Mar 26th at 9:05 PM

Dragostes Interesting crash, I run the same version (game and mod) as you with no issue at the moment.

I need a bit of information to further help you out here
1 - Is YOUR OS system Linux or Windows?
2 - Is this happening on a sever you are joining or singleplayer?


I also need you to try some stuff for me as well
1 - clear out your mods except this one, load up a fresh world and see if it works
1a - if this works, slowly add your mods back until it crashes, then figure out which mod you added back that is causing it and let me know (might be able to do something, might not).


Dragostes, Mar 26th at 8:16 PM

Love the idea and really want a time tracker for gameplay, this however crashes my game when active.  I have a relatively large modlist so it may be due to incompatiblity with one of them.  

Below is the crash report in full;

https://pastebin.com/9vmHKE7s

 

NateDoesLife , Jan 30th at 3:46 PM

Systamatic Try doing .playtime set x x (for the x's use your time)

I belive I updated the command when 1.21 hit I need to update the mod page (will do that now)

Systamatic, Jan 30th at 12:50 PM

I can't use the command to change my playtime?image

NateDoesLife , Jan 24th at 1:44 AM (modified Jan 24th at 2:10 AM)

FlyingPenguin03 Ok give me a little to go through and try to figure out whats going on with it! 

edit: So I believe the issue boils down to you using linux as your OS. The mod for some reason isn't liking that.

If you want I have a possible solution to fixing this but would want to drop it to you for testing before pushing out live. You can reach me on discord.

Also you mentioned its tracking other players as well, you say your server is self-hosted....what do you mean by this like your opening your world up to LAN or you are launching the serverclient and launching an actual server.
- Actual server, make sure the mod is not installed on the server (it shouldn't be as its client side only)
- Lan Server, honestly not sure how the mod works with this part, it could be that depending on how it opens your world up to multiplayer that the mod sees them as having it installed and running as well.

FlyingPenguin03, Jan 23rd at 10:53 PM

NateDoesLife

Crash Report
Running on 64 bit Linux (Freedesktop SDK 23.08 (Flatpak runtime)) [Kernel 6.14.0.37] with 31919 MB RAM
Game Version: v1.21.5 (Stable)
1/23/2026 5:50:27 PM: Critical error occurred in the following mod: ndltimetracker@4.0.1
Loaded Mods: moreicons@1.1.1, game@1.21.5, ndltimetracker@4.0.1, creative@1.21.5, survival@1.21.5
System.NullReferenceException: Object reference not set to an instance of an object.
at ndltimetracker.ndltimetrackerModSystem.<>c__DisplayClass14_0.<SavePlaytimeData>b__0() in P:\NDL Mods VS\NDL-TimeTracker\ndltimetracker\ndltimetracker\ndltimetrackerModSystem.cs:line 172
at Vintagestory.Client.NoObf.ClientMain.ExecuteMainThreadTasks(Single deltaTime) in VintagestoryLib\Client\ClientMain.cs:line 786
at Vintagestory.Client.GuiScreenRunningGame.RenderToPrimary(Single dt) in VintagestoryLib\Client\MainMenu\Screens\GuiScreenRunningGame.cs:line 172
at Vintagestory.Client.ScreenManager.Render(Single dt) in VintagestoryLib\Client\ScreenManager.cs:line 719
at Vintagestory.Client.ScreenManager.OnNewFrame(Single dt) in VintagestoryLib\Client\ScreenManager.cs:line 663
at Vintagestory.Client.NoObf.ClientPlatformWindows.window_RenderFrame(FrameEventArgs e) in VintagestoryLib\Client\ClientPlatform\GameWindow.cs:line 112
at OpenTK.Windowing.Desktop.GameWindow.Run()
at Vintagestory.Client.ClientProgram.Start(ClientProgramArgs args, String[] rawArgs) in VintagestoryLib\Client\ClientProgram.cs:line 338
at Vintagestory.Client.ClientProgram.<>c__DisplayClass10_0.<.ctor>b__1() in VintagestoryLib\Client\ClientProgram.cs:line 133
at Vintagestory.ClientNative.CrashReporter.Start(ThreadStart start) in VintagestoryLib\Client\ClientPlatform\ClientNative\CrashReporter.cs:line 95
NateDoesLife , Jan 23rd at 3:02 AM

FlyingPenguin03 Interesting, yeah send me the crash log when you get a chance. I could of sworn I ported the whole mod to client side but maybe something is still ticking server side.

FlyingPenguin03, Jan 23rd at 2:35 AM

Crash Report: Hello! I really like this mod. I play on a self-hosted server. I've noticed the time tracker is trying to track times for other players when we are on concurrently. What is troubling though, is that I crash every time another player disconnects. I don't have another player on for a while to get the crash log, but I can post it as soon as I get it again if need be. 

NateDoesLife , Dec 20th 2025 at 6:55 PM

Snorella hmmm interesting.

I would try the following
1 - Make sure you are using the latest version
2 - Delete your cache file (should be around the same place as your mods folder)
3 - Delete your mod data file (should be around the same place as your mods folder)

Let me know if that helps at all

Snorella, Dec 20th 2025 at 1:11 PM

Hey Nate, I keep getting the following critial error. This doesn't make any sense to me, but not sure if anything screams out to you? Thanks for the help :)

Crash Report
Running on 64 bit Windows 10.0.26100.0 with 31997 MB RAM
Game Version: v1.21.6 (Stable)
20/12/2025 13:09:39: Critical error occurred in the following mod: ndltimetracker@4.0.1
Loaded Mods: bettercrates@1.9.0, canoemode@1.0.4, canoemodcircuitspatch@2.0.0, cavesymphony@1.2.1, chargedjump@1.1.2, chiseltools@1.15.6, clothierheirloomsmod@1.0.2, combatrebalance@1.4.5, craftablecompanion@1.4.1, decraftabletrunks@1.0.0, extrachests@1.10.0, floralzonescaperegion@1.0.28, floralzonescaribbeanregion@1.0.23, floralzonescentralaustralianregion@1.0.20, floralzonescosmopolitanregion@1.0.11, floralzoneseastasiaticregion@1.0.19, foodcrate@2.2.1, capreolinae@2.0.4, chelonioidea@1.0.4, elephantidae@1.0.16, iniidae@0.1.4, rhinocerotidae@1.0.22, sirenia@1.0.25, spheniscidae@1.0.14, swfreqsharks@1.2.1, grasstoropes@1.2.1, horsetailtea@1.1.0, icecutterrw@1.0.1, icyexc@1.0.0, lanternsarelighters@1.0.0, manualquenching@1.0.9, millwright@1.2.8, moreicons@1.1.1, moredrygrass@0.2.0, MoveLikeKaji@0.0.7, nacatfish@2.0.2, nadarters@3.0.0, ornamentalfish@5.0.1, particlesplus@2.3.1, plainwallpapers@1.0.1, primitivesurvival@4.0.2, prospecttogether@2.1.1, repairablelocust@1.5.0, scrollrackable@1.4.0, fseasonedfirewood@1.2.5, sonitorecipepin@1.0.1, spyglass@0.6.0, stoneharvesting@1.2.1, temporalsymphony@2.2.2, translocatorengineeringredux@1.6.2, unchisel@1.1.6, game@1.21.6, vsimgui@1.1.12, waysearchpoint@1.0.2, wildfarmingrevival@1.4.2, abcsredux@2.0.5, abyssaldepths@1.0.7, airthermomod@0.3.0, alarmclock@1.0.5, alchemy@1.8.0-rc.4, offhandpenalty@1.2.3, animalcages@4.0.2, apeflowerpots@1.3.1, apelanterns@1.3.5, egocaribautomapmarkers@4.0.3, batchmolds@1.0.1, betterfirepit@1.2.0, betterloot@2.0.1, betterruins@0.5.4, bloodtrail@1.1.8, boatspeedtweakz@1.0.5, butterflycases@1.0.2, carryon@1.12.1, chuteblockplacer@1.0.5, clayformer@1.1.0, commonlib@2.8.0, configlib@1.10.2, extrainfo@1.10.1, farmlanddropswithnutrients@1.2.2, firepitsheatovens@1.0.0, foodshelves@2.3.3, footprints@1.1.2, forgesstaywarm@1.0.0, fromgoldencombs@1.9.3, geologymap@1.0.1, hardcorewater@1.3.5, hitfixed@2.3.1, hudclockpatch@1.1.1, improvedhandbookrecipes@1.1.3, insanitylib@1.1.0, itempickuphighlighter@1.2.2, itempickupnotifier@1.7.3, mashtubs@1.0.1, medievalexpansionpatch@1.3.4, ndltimetracker@4.0.1, ndlwoodentorchholder@2.1.1, nohands@0.1.1, noholdfruitpress@0.1.3, noindoorfog@1.0.0, novelty@1.0.18, pelaguswinds@1.2.2, petai@4.0.2, realsmoke@1.1.10, rebalancedfuel@1.4.0, recyclingtools@1.4.4, removeprimitivesurvivalstairs@1.0.0, resinrelief@1.0.1, saltandsands@1.1.6, scaffolding@1.2.5, schematica@1.0.1, simpleentityhealthbar@0.0.5, smithingplus@1.8.3, somethinginthewater@1.2.7, stickydirt@0.1.2, stillnecessaries@1.3.0, stonebakeoven@1.2.0, tanningredux@1.0.2, tentbagreworked@3.1.1, traitacquirerreborn@0.9.91, vhfp@1.3.1, vmetp@1.1.1, creative@1.21.6, vsquest@3.0.0, vsroofing@1.0.15, survival@1.21.6, vsvillage@4.0.0-pre.4, windchimes@1.4.0, xlib@0.9.0-pre.2, xvshaders@0.1.1, beamtools@1.0.2, foxtaming@1.7.2, immersiveinventoryspoilage@1.2.3, playercorpse@1.12.0, vsvillageaged@0.0.7, vsvillagetowers@0.0.7, xinvtweaks@1.8.1, xskills@0.9.0-pre.2, xskillsgilded@1.3.5
System.NullReferenceException: Object reference not set to an instance of an object.
NateDoesLife , Dec 2nd 2025 at 10:55 PM

eerino Hmmmmm I dont know of another mod that does this and sadly I don't know that all that would really fit within the idea of this mod.

I can take it onto my board of ideas and such but I've been on a bit of a break from core modding at the moment (unless something needs fixing obviously) and not really looking to start/build new projects that are out of scope of my current ones.

Sorry for that.

I would recommend maybe asking in the VS discord in the #mods-general chat. Someone might be able to help or make a mod that does that. 

eerino, Dec 2nd 2025 at 7:43 PM

Hey again Nate, I don't expect you to add this feature but I'm searching for a mod that allowes me to track real time in game and can be started/paused/resumed/recorded. For example if chiseling was your job and you needed to record your hours only chiseling. (timer wouldnt start stop based on activity but maybe could include a reminder in chat every so often asking if you want to continue tracking time)

 

Do you know if anything like this exists or is it possible to use your mod and add commands that would let me start/pause and see current amount of time?  

Thanks :p

NateDoesLife , Oct 6th 2025 at 4:09 PM

El_Neuman Maybe, I can look into it, thats not a bad idea I'd just be weary that if they update that menu in anyway it would break my mod. My mod concept is going with the least likely way that will break in the future. 

El_Neuman, Oct 6th 2025 at 8:37 AM

It's possible to add playtime in menu C ?

NateDoesLife , Feb 13th 2025 at 2:38 PM

So the triple message could be you have more then one saved time session for that world.

One possible way to fix that is to write down your time (for any worlds you want the time for)
- go to your base installation folder for vintage story
- you should see a "playtime" folder in there
- clear all the entires and then when you go into the world do the .playtime


(.playtime NateDoesLife 5 25) and just set your playtime that way.
- This might also fix your crash as it looks like your crashing when its trying to save your playtimedata.

For a followup question, does this crash everyone on the server at the same time or just yourself?

If its easier you can message me on discord, my tag is NateDoesLife with a crown emoji in front of it. You should be able to search it in the VS discord and I should come up easily. 

DanceOfBlood

DanceOfBlood, Feb 13th 2025 at 2:06 PM

Here's a new one

Crash: https://pastebin.com/37tL7vkv

Client Main: https://pastebin.com/SspGCeCQ

 

Another one

Crash: https://pastebin.com/vE2rQcYu

Client Main: https://pastebin.com/NTuCBGDS

 

Here's the the triple message I meant:

DanceOfBlood, Feb 11th 2025 at 3:17 PM

For that error, there were only two of us in the server and weirdly enough it crashed both of us.

I'll let you know if I managed to get it happen again

NateDoesLife , Feb 11th 2025 at 2:17 PM

Awesome! Thank you for the error, I will take a look at that method that gets flagged and see if I can find out whats causing it. Just out of curiousity did someone leave the server at the time of the crash?

Also if it happens again, could you send me a pastebin of your client-main log as well? Sorry it just helps me pinpoint exactly whats causing the crash instead of trying to guess. 

DanceOfBlood

DanceOfBlood, Feb 11th 2025 at 12:23 PM

Somehow I got a crash again, I was just waiting for my tools to cool off.

https://pastebin.com/C3Ch1Zfk

DanceOfBlood, Feb 11th 2025 at 12:10 AM

I'll get back to you on it when I play with my friends to recreate the situation.
Just tried to replicate now but the triple welcome message didn't happen.

Wish I had the crash log saved for it.

NateDoesLife , Feb 10th 2025 at 4:53 PM

Hmmm interesting, I will see what I can do to adjust that from happening.

Any chance you can send me a copy of the log file from when you join the server along with the crash your getting.

Can use Pastebin.com - #1 paste tool since 2002! to send them.

DanceOfBlood

DanceOfBlood, Feb 10th 2025 at 2:24 PM

Hey! Great mod.

I found myself getting three "welcome your current playtime is x" when joining my server.
I'm guessing this is because the server had gone through three different versions.

I remember reverting back to 1.1.0 after testing out one of the 3.0 versions (cant remember which)
and now I went to 3.1.2, it works but perhaps because of multiple versions that was used this came up.

Just saying it in case you could find some sort of fix to this. Also, I currently get some crashes in 3.1.2.
Could be the problem of multiple time saving

PandaPants200, Feb 3rd 2025 at 3:18 PM

Looks like it fixed it and I was able to use the .playtime command as well.

NateDoesLife , Feb 3rd 2025 at 4:16 AM

Ok, I just put up a new release with what I hope is a fix for that.

I believe it was happening when new players data was trying to be saved for the first time.

If it happens to keep happening or another error happens you can always shoot me a message on discord (NateDoesLife with a crown emoji in the front of it, if you search NateDoesLife in the VS discord you should find me easily). Then I can work with you a bit easier then uploading fresh releases each time. If you would like.

PandaPants200

PandaPants200, Feb 3rd 2025 at 2:40 AM

Well my screen didn't go black but...

Running on 64 bit Windows 10.0.26100.0 with 16282 MB RAM
Game Version: v1.20.3 (Stable)
2/2/2025 9:39:22 PM: Critical error occurred in the following mod: ndltimetracker@3.0.0
Loaded Mods: aculinaryartillery@1.2.3, chiseltools@1.14.11, nailsmold@1.0.2, TA_plainsandvalleys@1.0.9, sustainableforestry@1.1.0, game@1.20.3, weaponpackalphaunoff@1.6.0, apegrapes@1.2.3, egocaribautomapmarkers@4.0.1, betterfirepit@1.1.5, carryon@1.8.0-pre.1, commonlib@2.6.1, expandedfoods@1.7.3, fromgoldencombs@1.8.6, ndltimetracker@3.0.0, prospecttogether@2.0.0, stonebakeoven@1.1.5, trailmodcupdate@1.2.1, creative@1.20.3, survival@1.20.3, stonequarry@3.4.3
System.Collections.Generic.KeyNotFoundException: The given key 'PandaPants200' was not present in the dictionary.
at System.Collections.Generic.Dictionary`2.get_Item(TKey key)
at ndltimetracker.ndltimetrackerModSystem.<>c__DisplayClass12_0.<SavePlaytimeData>b__0() in P:\NDL Mods VS\NDL-TimeTracker\ndltimetracker\ndltimetracker\ndltimetrackerModSystem.cs:line 149
at Vintagestory.Client.NoObf.ClientMain.ExecuteMainThreadTasks(Single deltaTime) in VintagestoryLib\Client\ClientMain.cs:line 786
at Vintagestory.Client.GuiScreenConnectingToServer.RenderToDefaultFramebuffer(Single dt) in VintagestoryLib\Client\MainMenu\Screens\GuiScreenConnectingToServer.cs:line 254
at Vintagestory.Client.ScreenManager.Render(Single dt) in VintagestoryLib\Client\ScreenManager.cs:line 695
at Vintagestory.Client.ScreenManager.OnNewFrame(Single dt) in VintagestoryLib\Client\ScreenManager.cs:line 670
at Vintagestory.Client.NoObf.ClientPlatformWindows.window_RenderFrame(FrameEventArgs e) in VintagestoryLib\Client\ClientPlatform\GameWindow.cs:line 88
at OpenTK.Windowing.Desktop.GameWindow.Run()
at Vintagestory.Client.ClientProgram.Start(ClientProgramArgs args, String[] rawArgs) in VintagestoryLib\Client\ClientProgram.cs:line 334
at Vintagestory.Client.ClientProgram.<>c__DisplayClass10_0.<.ctor>b__1() in VintagestoryLib\Client\ClientProgram.cs:line 130
at Vintagestory.ClientNative.CrashReporter.Start(ThreadStart start) in VintagestoryLib\Client\ClientPlatform\ClientNative\CrashReporter.cs:line 93

NateDoesLife

NateDoesLife , Feb 2nd 2025 at 11:48 PM

Everything should be good to go in v3.0.0
- I converted it to a 100% client side mod so you shouldn't need it loaded on the server anymore.
- Let me know if for some reason the black screen issue comes back up and I will investigate further, could be the HUD creation method I am using. 

PandaPants200

PandaPants200, Feb 2nd 2025 at 9:19 PM

I was using v2 but it didn't crash or show up in the logs. I will try with v1.1 later. NateDoesLife

NateDoesLife , Feb 2nd 2025 at 1:38 AM

Any log errors, crashes or anything. What version are yall using.

Also if you could try using v1.1.0 and let me know if that happens as well that would be great. I added a HUD to v2.0.0 and I think that might be the cause of that.

PandaPants200

PandaPants200, Feb 2nd 2025 at 1:19 AM

I just tried to us this on a LAN server and when another player joined the right half of our screens would go black.

NateDoesLife , Jan 27th 2025 at 2:14 PM

I did not see any performance decreases so far while testing this.

MRGOOSE

MRGOOSE, Jan 27th 2025 at 9:31 AM

does this affect performance?