Framerate and Performance

From Vintage Story Wiki
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.
This page contains changes which are not marked for translation.
Other languages:
UnderCon icon.png

This page is under construction.
This page is being created, or is in the process of extensive expansion or major restructuring. Until this notice is removed, please do not translate this page. Expect the content of this page to change significantly.


Vintage Story aims to be a high-performance game even on non-gaming hardware, such as laptops. For high-end gaming hardware, it should be possible to achieve high framerates (100fps or more) even with all graphics settings maximized.

Generally, each new major version of Vintage Story should have better performance. Also, from mid version 1.18, Vintage Story switched from using .NET 4 to .NET 7, which resulted in drastically better performance for clients and servers alike. Be sure to run the most recent version to ensure you are running with the best performance possible.

Basic performance tips - if the game runs slow

With appropriate settings, most players should be able to achieve high framerates and smooth gameplay. Modern gaming machines should have well over 72fps, often 120fps or more, even with all settings maximised. At medium settings, good framerates such as 60fps can be achieved even on older hardware.

First, make sure to read through the Game Runs Slow Guide .

In general, experiment with different Graphics settings until you have the right balance, for you, between image quality and smooth fast framerates.

  • If you have only integrated graphics (e.g. Intel Core with Iris), use graphics settings Medium or Low, or even lower, to start with. If that works OK, then gradually increase graphics settings to find the right balance for you.
  • For mid-range graphics cards, we suggest use Low quality or Medium quality shadows, and keep SSAO off or on a low setting.
  • If you have a high-resolution monitor (1440p, 3k, 4k, UHD) try setting in-game Resolution to 75% or even 50%, that makes a big difference to framerates, with only a small difference in sharpness, some people even prefer not to have razor-sharp lines.
  • If you have a high-powered graphics card and the game still stutters sometimes when moving, try increasing the Chunk Upload Rate Limiter, a mid-range setting like 3 or 4 seems to be best for most people but the optimum is different on every setup, it may need to be higher.

Try also adjusting Max FPS and VSync settings. It's best first to check performance with Max FPS set to Unlimited and VSync off. But please do also try MaxFPS set to a number around the framerate you are seeking to achieve: things may actually work better if it is set to 72 or 120fps (for example) compared with Unlimited.

For any unexplained issue (especially if you're new to Vintage Story, or you just upgraded your PC or graphics card), try updating or fully re-installing your graphics drivers. Unexplained issues sometimes are due to subtly broken or out-dated graphics drivers or some weird setting made by another game, re-installing should reset everything properly.

For issues still not resolved, especially if it's an occasional stutter issue like once every few seconds, look at possible causes outside Vintage Story - in particular, if you are using the Discord app while playing - as a lot of people like to do - look at that as a possible cause, try shutting it down completely and see if that solves the issue. (More precisely it's the "Hardware Acceleration" feature in the Discord app, which is on by default; depending on hardware, this feature is known to cause problems for Vintage Story and many other games, it is a topical debate.)

Do bear in mind also that some mods can increase the load on your system. For testing and solving framerate issues it is best to test in the vanilla (unmodded) game and get things working properly in that first. Then introduce mods one by one and see if things are still good.

Advanced Tips for Maximizing Performance

1. If, in Single Player, you run into large lag spikes after some time playing you could be bottlenecked by lack of system memory (in extreme cases it can also crash with OutOfMemory exceptions, including graphics OutOfMemory issues). On Medium settings, Vintage Story needs about 4GB-6GB of free RAM to run smoothly, plus approximately 2GB of headroom for your graphics drivers. While the game is playable if you have 8 GB or less system RAM, that may not be enough for totally smooth performance; 16 GB of system memory is recommended, or even more than that for large modpacks. To help smoothness with low amounts of memory, in the game settings, try reducing view distance to 192 blocks or less and then you should be able to run the game on most systems with low RAM: it is also wise to close your web browser and all other running programs. If it's your own computer it is well worth considering purchasing more RAM, upgrading to 16GB or even 32GB or more. Buying more RAM can be a cost-effective upgrade in comparison to a new graphics card or CPU.

Another option is to try playing the same game in multiplayer. You can run a dedicated server on another computer on your local network (copy the save file over to it, run VintagestoryServer.exe, and connect to it using its IP address) or you can rent an online server (for example, the VintageHosting service) or join an existing multiplayer server. A multiplayer game has reduced RAM usage and reduced % CPU usage on your gaming computer.

2. It may help to play the game in Full Screen mode, not Windowed mode or Borderless.

3. Vintage Story has a wide range of graphics settings. In the Settings menu, Graphics tab, click "Show all available settings" to see them all. Adjusting these up or down, and switching on or off the fancier elements, can have a huge effect on performance, especially on older or mid-range graphics cards (GPUs). The tooltips on each control on the Graphics settings page should give you some pointers. Switching off Shadows, SSAO and Bloom will have the biggest effect on framerate for most people. Even dropping your Shadows and SSAO from the highest settings down a notch should grant a significant gain in framerate. Some people find that toggling Occlusion Culling helps.

Also check that you didn't limit framerate accidentally in the Graphics settings page by setting "Max FPS" to too low a figure - while tweaking framerate performance it's probably best to set that to Unlimited.

Large view distances or unusually high world heights have an effect not only on the framerate (fps) on screen, but also performance throughout the game. If everything is sluggish or there are frequent lag spikes, try turning down the view distance. The game is balanced to be smooth and playable on most modern PCs at view distances around 256 blocks to 512 blocks, depending on your hardware. Playing at above 512 blocks is possible on many PCs, though it depends on the amount of video memory (VRAM) available. Long-term play at large view distances with max graphics settings is best left only for high-end gaming rigs...

4. The game supports 4k screens. Even so, the size of that screen places higher demands on the GPU and so framerates may be lower. On ultra-HD monitors, you can experiment with turning down the desktop resolution to a lower HD setting like 1920x1080. You can also keep an ultra-HD desktop resolution but use the in-game Graphics settings option for Resolution scaling, for example 50% or 75% resolution will still look good on a 4k screen, but with much less burden on the GPU - effectively it scales down the resolution of the scene for drawing purposes but keeps edges sharp to maintain a crisp appearance at 4k resolution.

5. Make sure your CPU is not overheating and therefore "thermally throttling". If you run Vintage Story with no VSync and unlimited frame rate, your GPU and perhaps also one CPU core might be being pushed to 100% permanently. That in turn will cause the CPU and GPU internal temperatures to rise. You can monitor temperatures using a free 'Hardware Monitor' tool, or just listen to the fan noise ramping up! If the CPU internal temperature is approaching maximum allowed levels (90-100 °C on a modern CPU, that's hot enough to boil water) then the CPU will automatically switch to running slower than its maximum speed, this is "thermal throttling". A GPU acts similarly. Thermal throttling of either one will slow down the game's performance. To prevent this thermal issue, use VSync or a sensible max frame rate limit, or both, to prevent your CPU and GPU reaching maximum temperature - limiting the max frame rate to something sensible like 60fps or 75fps allows the system to rest for a short while between frames, and therefore reduces the chance of overheating. At unlimited frame rates, GPUs can also overheat and thermally throttle, again the solution is a combination of proper cooling of the GPU, and not pushing graphics settings to their max limit.

Tip: on a multi-core PC, the overall CPU usage percentage shown by Windows can look small even if one core is maxed out. For example, with 8 cores, one core maxed out at 100% would only be 12.5% CPU usage overall. To see what's really going on, you need to use a third-party tool like Hardware Monitor.

(Note that VintageStory does use multithreading for efficient performance. But not all cores are used equally, the main thread runs on a single core. Windows Task Manager can show the main rendering thread as busy when it is not really busy, on normal game settings the CPU is spending some time each frame just waiting for the GPU to catch up. A third-party tool like Open Hardware Monitor can give you a better picture of how the hardware is really being used.)

Tip: Always make sure your PC is properly cooled (and if it's a laptop, don't rest it on a bed or couch!) Ask yourself this: if I opened the PC case and directed a powerful desk fan into it, would I have better frame rates? If the answer is "Yes" then you need to resolve the cooling issues before looking at other causes.

6. If you experience lag spikes with no obvious cause in the game (you have a good GPU, reasonable graphics settings not too high, and plenty of RAM free) the cause could be outside Vintage Story. For example, Discord hardware acceleration features have been known to cause occasional lag spikes on some systems.

Tip: You can troubleshoot the possible causes of lag spikes yourself by running the command .debug logticks 40 and then afterwards examining the `client-main.txt` log file in VintagestoryData/Logs. You can ask a more experienced player or a team member for help interpreting the output.

7. If your settings seem well adjusted most of the time but you still experience occasional short, stuttering lag spikes especially when moving larger distances across the world, try increasing the Chunk upload rate limiter setting in Settings, Graphics manu - it's the last setting if "Show all available settings" is clicked. First try increasing it to its maximum setting, fly around the world some distance, and if that has fixed the lag spike problem, in slow steps bring the slider back down to a level which still does not produce lag spikes, on most systems somewhere in the middle is best. (The game cannot automatically adjust this setting, the correct value depends on the unique combination of your graphics hardware's capabilities, overall system speed, and other adjustable graphics settings such as view distance.)

8. In Single player or if using your own server (see #1 above), you can tweak server performance by adjusting the "servermagicnumbers.json". The magic numbers default values are aimed at a typical Vintage Story multiplayer server with let's say 3 or 4 players, playing over the internet, so some of them can be increased if it's only 1 player on your own machine.

9. There's a known issue on Radeon graphics cards - including high end Radeon cards - about GPU availability, more like memory lock contention. The issue is normally only seen on max graphics settings (with shadows enabled) and is most obvious when moving across the map so that a lot of new map loads, there can be noticeable frame rate drops and stutter. Game version 1.15.7 and above has a change that slightly improves this, Chunk Upload Rate Limiter setting at higher levels might also help, but ultimately it is a hardware/GPU issue. For anyone bothered by the issue, a solution is to ease the pressure on the GPU by turning down some of the top end settings (SSAO and Shadows or reduce the MaxFPS) so that the GPU has some idle time each frame.

10. The Occlusion Culling graphics setting is recommended on any modern multi-core CPU (4 cores or more) - it uses one additional CPU thread but leads to less work for the GPU. This can drastically increase performance while playing with high render distances. However, try toggling it - on a few systems things might be smoother if it is switched off.

11. For very low end hardware, it can help to play on worlds that are only 192 or 128 blocks tall.

12. Some game scenes are more complex and will lead to FPS drops for most players, this is only to be expected. Examples are deep forests with many leaves, towns with many chiselled blocks, and the Resonance Archives.

13. OptimizeRamMode: If you are having issues with stuttering, and have RAM to spare, such as 16gb+ of RAM in your system, try this.

You cannot do this in game, so you’ll need to

  1. navigate to %appdata% in your file explorer, and locate your VintageStoryData folder (or right-click on your Vintage Story shortcut icon and select "Open file location" and then go back up one folder where you'll see both VintageStory and VintageStoryData).
  2. Find clientsettings.json and open the file for editing
  3. Find the line that includes OptimizeRamMode and check to see what value it is set to. It should be set by default to either 1 or 2. If you set this to 0 and save the file, it will disable the setting the next time you start your game. When in game you can ensure that it is disabled by looking at the Optimize Ram graphics setting and it will have a blank entry. This may improve your issues with stuttering or microstuttering.

14. Fullscreen Optimizations: In order to turn off Fullscreen optimizations, try the below

  1. Right click the VintageStory.exe and click Properties
  2. Click Compatibility Tab
  3. Click Change settings for all users
  4. Checkmark the "Disable Fullscreen Optimizations"
  5. Click Apply
  6. Start the game again
See also: Troubleshooting Guide

Nvidia graphics

Some Nvidia graphics cards (but not all) can experience stutters or micro-stutters in the game when everything else is set up correctly and it should be smooth. It is worth experimenting with different VSync settings, and also different Nvidia Control Panel settings (especially relating to VSync or framerates).

For a fuller guide to Nvidia Control Panel settings, see [forum thread].

For Linux users

A simple method to increase performance may be to enable mesa_glthread by running the game with: mesa_glthread=true mono Vintagestory.exe

There is a beginners guide on this on the forums. One user on the forums suggests running the game with strangle 60 mono ./Vintagestory.exe to fix issues with input lag.

Linux Server Performance

Utilizing the method listed above, enabling mesa_glthread by using mesa_glthread=true mono VintagestoryServer will allow you to hypothetically enable multithreading on your Linux server.

Balancing performance, temperature and power consumption

  • For the reasons given in #5 above, it is recommended not to run with Unlimited FPS, but instead to limit the FPS. The main reason to do this is so that your CPU will not be maxed out with one core at 100% all the time, which can lead to overheating or even (in the long term) a shorter lifetime for your CPU. If FPS is limited in any of the ways on offer, it allows the CPU to "rest" in between frames, and that in turn means the CPU takes less power and runs cooler, so that system fans can be quieter, etc, etc.
  • FPS can be limited through the graphics settings. This can be done either by using the MaxFPS slider, or using VSync, or the third VSync option is a combination of both. You can also limit FPS on some GPUs from the driver level, such as Nvidia's control panel.
  • Most modern graphics cards - even internal graphics on laptops - have a VSync feature. If VSync is on, then the game engine will not render frames more quickly than they can be drawn on the actual connected display. This allows the CPU to rest sometimes, waiting until the display is ready to render the next frame, so the CPU will not be at 100%. But sometimes graphics drivers behave strangely with VSync, for example there can be global overrides to switch it off - in this case, Vintage Story's VSync setting will seem not to have any effect, it will be like having framerate unlimited.
  • VSync may help with graphical "tearing" issues, although these do not occur on all systems - they are more common on specialised low-latency gaming monitors so if you have one of those (lucky you!) then VSync is your best option.
  • Generally, we recommend first trying the game with VSync switched on.
  • The alternative recommendation is to play with VSync switched off and MaxFPS set to a figure slightly higher than the frame rate you want to see (remember it's the maximum, not the average). For example, if you want to play at average 60fps then set MaxFPS to somewhere around 70-75fps.
  • On a Windows PC (but not Linux or Mac) there is an issue where if you are using MaxFPS alone (not VSync) to control the framerate, the Windows timer is not very precise. In practice, in the frame rate meter, what this looks like is the frame rate seems to stick at specific step levels like 48fps or 32fps instead of the 60fps you want. This issue is caused by the Windows system interval timer and there's not much the Vintage Story dev team can do about it: even if we take it by the scruff of the neck, other Windows applications running on your PC can change that timer at any time. Therefore, on a Windows PC with a display refresh rate of 60 fps, you may need to experiment a little - it also depends what other applications are running on your system. For some people it works best to set MaxFPS higher than the level you want. So, if you want 60fps, set MaxFPS somewhere in the range 70-75fps (you can experiment!), and if all is going well then, the Windows system interval timer will drop that down to its next step level which might be 64fps. 64fps is good, it's close to 60fps which the display requires.
  • On a Windows PC another option is to embrace 32fps, so set your MaxFPS slightly higher than 32fps (say around 40 fps) and you should find that Windows effect drops it down and locks it at 32fps. The reason for doing this is to have a steady constant FPS, no matter what is happening on screen. A constant 32fps should look smooth, as long as it's steady. That's better than TV shows and sports (30fps) or movies (24fps).
  • Some players want lag (latency) to be as low as possible, in that case you can try setting MaxFPS at a much higher number like 100 or 120fps. Even a high number like that will have cooling benefits on a high -powered gaming PC which can reach framerates of 150 or more in Vintage Story.

Thinking about what is on-screen

  • Vintage Story framerates can change a lot depending on the complexity of what is on screen.
  • To see this, with unlimited MaxFPS, try looking straight up into the sky - you should see the frame rate increase dramatically
  • Normally the most complex scenes, causing the lowest FPS, are thick, deep forests. It's because of all the leaves, and each leaf block is slightly transparent, so everything behind leaf blocks also has to be drawn - the depth of field is huge.

CPU or GPU runs too hot

  • The main way to control CPU and GPU usage is using the Vsync and Max FPS settings in the graphics settings as described above.
  • One path to optimize both: pick a framerate you want e.g. 60 fps. Now with VSync off and Max FPS unlimited, adjust the graphics settings that heavily affect framerate (view distance, godrays & bloom, shadows, SSAO) to hit a framerate that's about 15%-20% better than you want, e.g. 70 fps or 80 fps. When the game can comfortably hit that, now set Max FPS to 60fps and VSync to 'On + Sleep'. This should produce a stable 60fps, a smooth game with no lag spikes, and less than 100% CPU and GPU usage so that your fans run quietly.

Server Performance

If you are a server owner and suffer from lag issues on the server.

  • Make sure it's not 3rd party mods causing it
  • If you have more than a couple of players, make sure your hardware is strong enough to support your player base. Virtual Servers have a tendency to perform rather badly at 10+ players. Bare metal works best.
  • You can run /debug logticks 100 to see where most time is spent on, feel free to open an issue on Discord to interpret the results or ask others in Discord if they are familiar with the issues.

Causes outside Vintage Story

Other software on your computer, including things installed when the computer was new, can take control of your computer periodically in a way which causes Vintage Story performance to suffer. Look at this possibility if the game performance is 'normally' good, but there is a short lag spike or stutter every few seconds, or freezes (1-2 seconds or longer).

Especially look out for this type of thing on a new Windows 10 or Windows 11 PC. Windows is notorious for installing apps and processes which you don't actually need, but take up resources, and your PC manufacturer may have added even more of that (maybe they even were paid to do so?)

In general, to achieve its normal high performance, Vintage Story makes intensive use of all parts of your system while playing: GPU, CPU, RAM, network in multiplayer. If something is wrong in your system set-up or some other software or app is also using resources, you will likely see that in the form of lag spikes.

For testing and troubleshooting game performance, you should try closing down all other software and apps while playing the game. If that solves the performance problem, then add things back and see if it's still OK!

  • Start by closing your browser, all tabs especially YouTube or other video players. If you need internet access to look things up or to read this page (!), it is suggested to use your phone or a different PC
  • Close any music player
  • Close down Discord completely (note: by default, Discord remains running but dormant, see miniaturized icons in the collection to the right of your Windows taskbar, sometimes called the Overflow area): Discord has been known to produce severe (but uncommon) lag spikes while playing Vintage Story on some systems, so shut it down, see if that fixes the problem. If Discord is the problem, as above you can perhaps use Discord instead on your phone if you need it while playing - or you can try going into Discord's settings, the "Voice and Video" and "Advanced Settings" and switching off Hardware Acceleration in both places.
  • Prevent Windows (or your other operating system) from doing heavy tasks while you are playing, including virus scans, disk indexing service, Windows Update etc. etc. - switch off all of that, at least while testing. For Windows, OOSU10 offers several satisfying settings to take more control of your own PC, and is free.
  • On Windows, check the Task Manager, Start-up tab, disable everything which is not essential (probably only one or two things there are truly essential, such as audio and mouse software), and re-start Windows for a clean start
  • On Windows, now check the Task Manager, Processes. Ideally you want to see that steadily at 0.1% CPU, 0% Disk, 0% Network when the game is not running, the main thing using CPU should be Task Manager itself. Click on the CPU heading, to order tasks by which one is using the most CPU. Any process more than 0.1% CPU, consider shutting it down now (right-click and choose End Task), unless it is System or some other essential part of Windows: if using Task Manager like this is new to you, proceed with caution, look up online guides to the processes or ask a knowledgeable friend for help
  • If you want to go deeper down this rabbit-hole on Windows, open the Task Scheduler, typically there can be 50-100 or more tasks listed under various tabs there which various software has added. These tasks run sometimes, can include when you are in the middle of a game. In most cases you don't need any of that, or very little of it: take care over any task added by the Windows system itself. Again, if using Task Scheduler is new to you, proceed with caution!

Other ideas:

  • hard drive (SSD) performance can be affected heavily if it has BitLocker enabled, this is normally enabled on a new Windows 11 PC. If you do not use your PC for anything confidential or work related, consider disabling BitLocker (can be disabled for an entire drive using Windows Powershell commands, look up online guides; it needs approximately 2 hours to complete disabling it on a drive which already had it enabled)
  • a networked PC can suffer performance hits if other PCs on the network are accessing its resources
  • advanced audio drivers etc can maybe affect things

In general, as with any troubleshooting process on a PC: simplify, simplify, simplify and test, see if you can reproduce the problem on the minimum possible setup. If a simple minimum setup has no problem, then gradually re-enable the components which you normally have active, and look for when the problem starts.


Wiki Navigation
Vintage Story Guides[[::Category:Guides| ]]Frequently Asked Questions Soundtrack Versions Controls
Game systems Crafting Knapping Clay forming Smithing Cooking Temperature Hunger Mining Temporal stability Mechanical power Trading Farming Animal husbandry
World World generation Biomes Weather Temporal storms
Items Tools Weapons Armor Clothing Bags Materials Food
Blocks Terrain Plants Decorative Lighting Functional Ore
Entities Hostile entities Animals NPCs Players
Miscellaneous List of client commands List of server commands Creative Starter Guide Bot System WorldEdit Cinematic Camera Adjustable FPS Video Recording ServerBlockTicking