Mods / Enhanced Handbook
Author: Interzoneism
Side: Client
Created: Sep 30th at 1:46 PM
Last modified: Oct 21st at 8:22 PM
Downloads: 3687
Follow Unfollow 185
Recommended download (for Vintage Story 1.21.0, 1.21.1 and 1.21.2 - 1.21.5):
Enhanced Handbook_1.7.1_VS1.21.zip
1-click install
This mod attempts to improve the survival handbook with better search tools, bookmarks and custom categories.
Even if you just want bookmarks or better search, try it! I've tried to make it as non-intrusive and user friendly as possible.
Features:
- Handbook search is faster and smarter (Allegedly)
- Bookmark pages with drag and drop
- Create your own tabs/categories easily
Bookmarks
- Just drag and drop the handbook page to the Bookmarks tab
-
You can drag either from the search box, or from the handbook page top left icon.
- To remove something from Bookmarks, just drag them outside the handbook.
Custom Categories
- Press the "Create Category" button in the handbook and choose a name.
- Drag and drop the items you want to add
- To delete a category, hold ctrl and click the "Delete Category" button.
- To rename a category, hold shift and click the "Rename Category" button.
-
A more efficent way to add items to a category is to use the search box. Type your #Categoryname and then search for items.
Any items in the search box will be added to your category when you press "Create Category". For example, try:#Weapons spear sword falx !mold !head
#PrimitiveSurvival %primitivesurvival
#StorageMods %foodshelves %purposeful
Improved Search
- Now only searches titles by default
-
Finds results with partial words - typing
mmerwill still show Hammer. - Search for mods (or code names) with %: %foodshelves %ingot-copper %primitivesurv
- Use ? to search page descriptions and trait requirements: ?tinkerer
- Use ! to exclude words from the result:
!Helveremoves any page with “Helve” from the search results. -
Use quotes to search for an exact phrase:
"Helve Hammer". - Word order doesn’t matter -
Hammer HelveorHelve Hammergives the same results. - Use double quotes to only search for an exact title: ""Meteoric Iron Helve Hammer""
-
Want only recipes? Click the "Recipes Only" toggle at the top.
Toggle Vanilla Tabs and other Useful Stuff
- If you want more room for your own categories, you can hide the default tabs (Guides, Blocks and Items, Tutorial) in the config file
EnhancedHandbook.json. - To quickly get some premade categories, type .categorymoddefault in the chat. Delete the ones you don't want.
The categories are built using the new search functions. Every category has matching words and forbidden words, all stored in the config.
To share a category, open the chat and type .categorymodsave Weapons and a command for adding the category is copied to your clipboard. You can also copy them from the config file.
If you experience problems with the drag and drop (its new, who knows!) you can disable it in the config.
You can enable an "Orig. Search" button if you want easy access to bypass the new search functionalites and use vanilla search only. Categories will still work!
When the tabs are rebuilt (on launch and when adding or deleting categories) it searches in almost the same way a user would and adds the relevant pages.
You can color your tabs by changing the values in the config, using strings like "blue", "red, "orange" etc. However sometimes the colors would not be rendered when other handbook mods where loaded so I left them off as default.
There is obviously a max for the amount of categories, but I haven't put a cap on it so if you add too many they will go below the handbook boundaries and won't be clickable.
| Mod Version | For Game version | Downloads | Released | Changelog | Download | 1-click mod install* |
|---|---|---|---|---|---|---|
| 1.7.1 | 1157 | Oct 21st at 8:21 PM | Enhanced Handbook_1.7.1_VS1.21.zip | 1-click install | ||
|
- Removed some old tick profiling code that would cause a crash if tick profiler was activated... my apologies to all tick profilers out there! | ||||||
| 1.7.0 | 994 | Oct 5th at 3:22 PM | Enhanced Handbook_1.7.0_VS1.21.zip | 1-click install | ||
|
- Ability to rename a category by holding shift and clicking the button | ||||||
| 1.6.0 | 250 | Oct 4th at 9:41 PM | Enhanced Handbook_1.6.0_VS1.21.zip | 1-click install | ||
|
- Removed the default categories, added default category "Bookmarks" | ||||||
| 1.5.0 | 374 | Oct 3rd at 1:59 PM | Enhanced Handbook_1.5.0_VS1.21.zip | 1-click install | ||
| ||||||
| 1.4.0 | 236 | Oct 2nd at 3:20 PM | Enhanced Handbook_1.4.0_VS1.21.zip | 1-click install | ||
| ||||||
| 1.3.0 | 174 | Oct 1st at 10:20 PM | Enhanced Handbook_1.3.0_VS1.21.zip | 1-click install | ||
| ||||||
| 1.2.0 | 113 | Oct 1st at 2:42 PM | Enhanced Handbook_1.2.0_VS1.21.zip | 1-click install | ||
| ||||||
| 1.1.0 | 39 | Sep 30th at 8:54 PM | Enhanced Handbook_1.1.0_VS1.21.zip | 1-click install | ||
| ||||||
| 1.0.0 | 23 | Sep 30th at 2:10 PM | Enhanced Handbook_1.0.0_VS1.21.zip | 1-click install | ||
|
Release | ||||||
Great mod, I really love the improved search!
I'm having a problem with creating certain tabs. Searching for '?tier) ?two-handed: ?one-handed:' works great, and I find all the melee weapons. But it seems that adding #CategoryName changes the search, bringing up a bunch of results that wasn't there before.
Creating a category with this search then gets me a category with no results. This is what it looks like in the .json:
"name": "MeleeWeapons",
"matchWords": [
"?tier)",
"?two-handed:",
"?one-handed:"
],
"matchTitleWords": [],
"forbiddenWords": [],
"forbiddenTitleWords": [],
"tabBackgroundColor": "default"
}
Any idea what could cause this? #CategoryName shouldn't affect the results, should it?
Interzoneism that was it! thanks!
BreadGuard it's client side only, so it must be in the normal mod folder for each player. If that's already the case could you send me your logs? client-debug.log and client-main.log, you can put it in spoiler tags here
I placed this on my multiplayer server, and it doesn't seem to load. It's the only mod not loading.
I don't see any new create category button, i'm on 1.21.5
Interzoneism Wow that looks like a great concept for sorting by colours/types. looking forward to it :-)
Interzoneism Sorry, only just noticd your reply - Uh, nothing. Happens on SP and MP. SP a lot more frequently. Last thing in logs on SP is usually always an autosave near same time. But, if that was the problem, MP wouldn't do it too. And it started relatively recently/ No real commonality of what I'm doing when it happens. Regardless. With that fix, I can use the handbook mod while trying to figureit out. Just a long process because can play five minutes or five hours lol
DigitalHare Hope you figure it out, sorry for the trouble along the way! What about the game logs, nothing in there?
Oh cool thanks, lol. It was driving me mad to figure it out. As I said my game was hard-locking every so often and trying to figure out what it was. Someone in the discord gave me a couple wiki links and it kept dying and blaming a windows .dll so I had to sort through everything to figure out what one was crashing it so I could start debugging. Thanks for the very quick response!
DigitalHare removed the old tick profiler code, should work now :)
DigitalHare Oops, forgot some old debug code in there... Sorry about that, thanks for reporting! Will update right away
So, looking for what is giving my client a total lockup, I was pointed to and tried to use the tick profiler on ctrl+F10 - With only the enhanced handbook mod added, it crashes the client entirely.
Crashlog as follows:
sandvich54 Boundish I'm working on a system where all Wood Variants, Stone Variants and Ceramic Variants are grouped together and then stored in Wood, Stone and Ceramic tabs. Could that be useful? Check out the screenshots here!
Interzoneism
sandvich54
Second that. would be great if that was possible. and then maybe show colour varations only in the recepie page for an item.
Great mod anyway though :-)
Heyo!Interzoneism
I have an idea for how the guide could be improved: Perhaps you could make it so that the search list shows craftable items without all their color and material variations?
That would greatly speed up the time spent searching for the items needed for crafting, instead of scrolling through all the different types of wooden crates, for example? :)
If this works with modded items, that would be absolutely awesome! (The alchemy mod has dozens of colorful herb drying racks...)
IILordTempestII awesome, happy to hear it!
sandvich54 thanks for the heads up! Yeah honestly I'm mostly making it for myself as I find most managers/launchers to be too complex. But will upload in case anyone else wants to try.
Interzoneism
Almost 2000 downloads!
Regarding the mod manager: keep in mind that there are already one or 2 such applications, so check them out and see if it makes sense for you to make your own so as not to waste your time.
Here's the last one I remember: https://news.kalataka.ru/vslauncher
Interzoneism Thanks for adding renaming. It will be much more convinent to rename a folder (eg: From "Breads" to "Food") than to leave the game then open the config then delete a catagory :D
eerino IILordTempestII Sorry, that must have got lost in the description - hold CTRL and click the Create Category button! Renaming is only possible in the config for now
- Will look into the crash, thank you for posting the report!
- I don't know if its compatible with the Survival Handbook Bookmark, will look into it
EDIT: Renaming is now possible by holding shift. I tried it with SHB and the only conflict is that SHB will simply override this mods "Bookmarks" tab, so it works if you just want to use that mods bookmark system for the Bookmarks tab!
like IILordTempestII How do I delete a bookmark catagory I made?
How do I delete a catagory or rename it?
Also I got the following error when I removed the last item that a catagory had in it
Running on 64 bit Windows 10.0.26100.0 with 65405 MB RAM
Game Version: v1.21.1 (Stable)
10/5/2025 1:07:20 AM: Critical error occurred in the following mod: enhancedhandbook@1.6.0
Loaded Mods: advancedsmithing@1.4.0, americanfrontiersman@1.8.4, ancientarmory@1.1.6, brazilpiratefoods@1.1.3, canadianwinterclothes@1.1.0, canoemode@1.0.4, catchledge@0.5.6, cbr@1.0.0, chiseltools@1.15.2, crawlanddive@0.2.1, darcesdriftersredone@1.2.4, floralzonescaperegion@1.0.24, floralzonescaribbeanregion@1.0.19, floralzonescentralaustralianregion@1.0.16, floralzonescosmopolitanregion@1.0.6, floralzoneseastasiaticregion@1.0.14, floralzonesmediterraneanregion@1.0.15, floralzonesneozeylandicregion@1.0.15, flora@1.0.7, fadynasties@1.1.1, fagothic@1.2.1, fagreenwich@1.3.2, fahussar@1.0.0, falandsknecht@1.2.1, fatemplar@1.3.2, bovinae@0.3.1, casuariidae@1.1.5, chelonioidea@1.0.4, elephantidae@1.0.15, iniidae@0.1.4, meiolaniidae@0.1.7, pantherinae@1.2.2, rhinocerotidae@1.0.21, sirenia@1.0.24, spheniscidae@1.0.13, viverridae@1.0.6, geoaddons@1.4.3, hangingoillamps@1.0.5, leaflanternliningcontinued@1.1.2, longtermfood@0.3.6, millwright@1.2.8, mycodiversity@1.0.4, nightskydelights@1.21.0, nightlight@1.3.6, primitivesurvival@3.9.6, prospecttogether@2.1.1, shelfobsessed@1.6.2, storagecontroller@1.2.1, temporalsymphony@2.2.2, thatchexpanded@1.2.1, unchisel@1.1.3, unstablethrone@1.1.1, vaultandroll@0.1.1, vintageengineering@0.4.0, game@1.21.1, vsimgui@1.1.12, wildfarmingrevival@1.4.0, adaptivegraphics@0.0.1, aemonsessentials@0.0.3, altmapiconrenderercontinued@1.5.0, animalcages@4.0.1, apebeams@1.1.1, apeflowerpots@1.3.1, apegrapes@1.3.1, apelanterns@1.3.5, apewindows@1.4.0, arrowbarrels@1.2.1, egocaribautomapmarkers@4.0.3, betterfirepit@1.1.6, betterruins@0.5.0, bradycrudebuilding@1.4.3, butchering@1.10.5, carryon@1.10.9, cartwrightscaravan@1.7.2, chiselwiz@1.0.1, clayformer@1.1.0, commonlib@2.8.0, composter@1.2.1, configlib@1.10.3, configureeverything@2.2.0, coolergreens@1.0.0, cooperativecombatrework@1.0.0, corduroyroads@1.0.3, danatweaks@3.6.0, enhancedhandbook@1.6.0, extrainfo@1.10.1, farmlanddropssoil@1.4.0, fixenfontmod@0.1.0, foodshelves@2.3.0, fromgoldencombs@1.9.4, gloomeclasses@1.0.10, herbarium@1.4.0, hudclockpatch@1.1.1, knapster@3.0.0, lathemod@1.0.3, metalunittooltip@1.1.0, mobsradar@2.1.9, moreanimals@1.6.2, morepiles@2.2.0, naturalfertilizer@1.0.0, ndlwoodentorchholder@2.0.3, noscreenshotmessagemod@0.1.1, nemi@1.1.0, noticeboard@1.1.2, oneroof@1.11.0, petai@4.0.0, playerlist@2.1.5, playermodellib@1.0.11, claywheel@1.1.3, purposefulstorage@1.4.1, RdisHomeExpanded@1.0.0, rivers@4.7.3, rpvoicechat@2.3.22, simpleemotemenu@2.0.0, slowtox@3.0.1, smithingplus@1.7.4, sonitotrashslot@1.0.0, speedboat@1.0.0, statushudcont@4.0.1, stepfixelk@0.0.2, stepupcontinued@0.0.1, stonebakeoven@1.2.0, temporalstormtimer@1.1.1, terraprety@7.0.8, th3dungeon@0.4.4, thecritterpack@1.3.3, todolist@2.2.2, toolsmith@1.2.10, usefulstuff17@1.5.0, valrossensmapfilterscontinued@1.21.0, vinconomy@5.0.2, vintagescarecrow@0.0.7, discordrichpresence@1.1.1, creative@1.21.1, survival@1.21.1, vsvillage@3.0.1, mapwaypointcolors@1.1.2, windchimes@1.3.2, animalears@1.0.0, antlershorns@1.3.2, cats@4.0.0, em@3.3.0, fseraph@0.4.4, goblinears@2.3.2, playercorpse@1.11.1, racialequality@0.1.23, reforgedtools@1.2.51, stonequarry@3.5.1, vsvillageaged@0.0.6, vsvillageindustrial@0.0.6, vsvillagetowers@0.0.6, wildcrafttree@1.3.2, xinvtweaks@1.8.1
Involved Harmony IDs: handbookcategories.core
System.NullReferenceException: Object reference not set to an instance of an object.
at Vintagestory.GameContent.ModSystemSurvivalHandbook.onComposePage(GuiHandbookPage page, GuiComposer detailViewGui, ElementBounds textBounds, ActionConsumable`1 openDetailPageFor) in VSSurvivalMod\Systems\Handbook\SurvivalHandbook.cs:line 128
at Vintagestory.GameContent.GuiDialogHandbook.initDetailGui_Patch1(GuiDialogHandbook this)
at Vintagestory.GameContent.GuiDialogHandbook.ReloadPage() in VSSurvivalMod\Systems\Handbook\Gui\GuiDialogHandbook.cs:line 201
at Enhanced_Handbook.HandbookCategoryPatches.RebuildTabs(GuiDialogSurvivalHandbook instance)
at Enhanced_Handbook.HandbookPageDragManager.<>c__DisplayClass79_0.<TryHandleRemoval>b__0()
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 113
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
Event Log entries for Vintagestory.exe, the latest 2
==================================
{ TimeGenerated = 9/10/2025 11:28:07 PM, Site = , Source = Application Error, Message = Faulting application name: Vintagestory.exe, version: 1.21.1.0, time stamp: 0x67fe0000
Faulting module name: openal32.dll, version: 1.23.0.0, time stamp: 0x63dd31ad
Exception code: 0x40000015
Fault offset: 0x00000000000df046
Faulting process id: 0x6458
Faulting application start time: 0x1dc22cb2b800f40
Faulting application path: D:\VintageStory\1.20.0-Stable\1.20\Vintagestory.exe
Faulting module path: D:\VintageStory\1.20.0-Stable\1.20\Lib\openal32.dll
Report Id: 1acad559-6909-484a-ab1b-790b9d6d12b8
Faulting package full name:
Faulting package-relative application ID: }
--------------
{ TimeGenerated = 9/10/2025 11:21:26 PM, Site = , Source = Application Error, Message = Faulting application name: Vintagestory.exe, version: 1.21.1.0, time stamp: 0x67fe0000
Faulting module name: openal32.dll, version: 1.23.0.0, time stamp: 0x63dd31ad
Exception code: 0x40000015
Fault offset: 0x00000000000df046
Faulting process id: 0x5f88
Faulting application start time: 0x1dc22ca080a4f0d
Faulting application path: D:\VintageStory\1.20.0-Stable\1.20\Vintagestory.exe
Faulting module path: D:\VintageStory\1.20.0-Stable\1.20\Lib\openal32.dll
Report Id: faf9c586-2977-4e2a-9cd8-d835e01a6777
Faulting package full name:
Faulting package-relative application ID: }
will this work with survival handbook bookmark
sandvich54 thanks, really appreciate it! Yes, but I could not modify the actual mod menu in game, so it will be an external app, portable and easy to use with a nice GUI.
This is a really cool mod, I'm glad you're developing it! Have you started a mod for the mods window?Finally a fix for the search feature! Thank you!
Thanks!
neobit download the latest version and use ?clothier for example
Interzoneism seems to be a nice idea.
What about searching by trait required for the recipe?
MRGOOSE Yes it's actually a feature, weird as it sounds. But if you set "disableOriginalSearchButton" to false in the config you get a button that allows you to use the vanilla search. The categories will still work!
Would it be useful to have a way of searching in the page descriptions using a prefix? Maybe using a question mark, like ?WordImLookingFor
i cant seem to search for text in an item's description anymore
DigitalHare Really strange! I think, and I could be wrong (it happens a lot), that this is a game issue when removing mods from just the server side. Try running the command ".reload texture" with the mod only on client.
Interzoneism Removing the mod from server side and having it on client causes all tools hung up on racks to show up with missing textures. Put it back on the server and all tools were properly textured, again.
bringitonwimps Sounds handy! I'll look into it
Chumber thanks for the feedback! Changed Side to Client here on the mod page. Will look into the button, thanks a lot!
This is really cool, I would like to suggest something. There used to be a mod that recognized when 2 mods conflicted and had the same recipe. It let you skip between them in the handbook and pick which one to make. That would be a useful and cool add, especially with there being SOOOO many mods these days.
Took me a minute to figure out why the mod suddenly wasn't working after updating. Might want to update the mod page to reflect that it's no longer required on the server.
Also, mine looks kinda goofy with the new button (tried to paste in a screenshot but it won't post with it. The recipes only button extends off the UI and takes the title bar with it). Minor flaw, will definitely continue use and urge everyone I play with to do the same because this is still awesome.
https://imgur.com/a/Fn7Q2Sq
sandvich54 The issue is probably solved with the latest update, if you are using a language other than English. Delete your config file!
Interzoneism holy smokes, you work fast! Thank you! This is gonna be a new addition in the list of things I can't play without.
STK2008 Glad you like it! It should actually be a little bit faster because it only searches page titles, instead of all the text on every page. But will have to wait and see what people think :)
hmmm I dont see
EnhancedHandbook.jsonbeing created on dedi server.NM I see it on clinet which makes sense.
IGNORE :)
Great stuff as usual , i'll be sure to try it
sandvich54 Hm that sounds strange, try installing the latest version if you havent, and delete the config file so the mod can generate a new one - that's probably the main issue.
InterzoneismLook: I click on the Clothing tab. It only shows modded clothing, and far from all of it. However, modded armor is also there. In the Tools tab, there are modded arrows, accessories for them, and even a piece of furniture. Well, this happens in other places too... Is this somehow related to the game's category definition, or am I missing something? :)A wonderful QoL addition; I'd like to see these changes incorporated into the base game.
This mod seems to really speed up the handbook.
I used to see a fair few spikes when searching and hovering over items in handbook but this mod has removed and at the least lowered it a lot.
Great mod thanks
Chumber Tahvohck Added a % prefix so you can search for code names, so for example %ingot-copper %clothes or mod names %Primitive %Purposeful
This is great, but it seems like it removed the ability to search via the mod that provides an item. Can you add a prefix for that, maybe "@mod"?
Chumber unfortunately they cant be used to create or edit the Show Craftable tabs, it works in a different way. So I meant they do not conflict - will change the description thanks!
Will look into making the Show Craftable tabs configurable.
Code names are a great idea! I think I can make that happen :)
This looks awesome! Definitely gonna check it out when I get the chance, but I have two questions:
When you say "Works with Show Craftable", does that mean this can be used to sort the menus from that mod? I know it's also yours, just wondering if this means they truly work together or just don't conflict.
Second is, since it's server and client-side, where is the config saved? Like, will other players in my server see categories that I create, or are the categories stored locally? Got a chance to look myself, it's local!
Edit: Also, quick idea, any chance you could allow searching by code names? E.g. ingot-copper, etc. This could open up a lot more category options and additionally allow players to create categories for entire mods like item-maltiezcrossbows, etc.
SnakeChat awesome, glad to hear it!
some reason with this mod installed, my game crashed over and over. Idk man I will try to see if I can reproduce the crash again and send you the log.
*Edit: the update fixed that issue! GREAT JOB!
sandvich54 thank you for the idea and encouragement! The crash is fixed in the latest version, thanks for the feedback :)
bubbanubo thank you for your kind comment, warms a modders heart!
InterzoneismOoooh, you actually did it! This is so cool! Even more than I could have imagined. The only thing I've noticed now is that when you enable local network mode, the game can crash when you press the reference button (sometimes not immediately, but after the reference loads).I hope your pillow is always cool and you no longer know the pain of stubbed toes. Awesome mod and awesomer modder :)
DanaCraluminum I'm not sure what you mean? If you mean my default categories you can just delete those and add categories for any language and any modded items.
You can also share your category with others by using the command .categorymodsave [categoryname] and you will get the command to add that category copied to your clipboard.
I looked at the code and it looks like it doesn't support other languages and modded backpacks?