Mods / Improved Handbook Recipes

Category: #QoL
Author: Kathanon
Side: Client
Created: Oct 2nd at 6:23 AM
Last modified: Dec 13th at 4:34 AM
Downloads: 2930
Follow Unfollow 126

Latest file for v1.20.0-rc.1:
ImprovedHandbookRecipes_1.0.5.zip 1-click install


Adds the following to item pages in the handbook:

  • Using the scroll wheel while hovering over a recipe or item with several variants lets you flip between them freely.
  • If crafting grid is also open, adds buttons to automatically add the required ingredients to the crafting grid (add one craft and add max).
  • Displays a small wrench icon on ingredients that are not consumed by the recipe. Also adds how much durability will be used to the tooltip.

Auto fill also uses items from any opened chests unless shift is held.

Any suggestions or bug reports are welcome.

Version For Game version Downloads Release date Changelog Download 1-click mod install*
v1.0.5 477 Dec 13th at 4:34 AM Show ImprovedHandbookRecipes_1.0.5.zip Install now
v1.0.4 403 Dec 7th at 6:48 PM Show ImprovedHandbookRecipes_1.0.4.zip Install now
v1.0.3 292 Dec 4th at 3:00 PM Show ImprovedHandbookRecipes_1.0.3.zip Install now
v1.0.2 604 Nov 12th at 6:55 AM Show ImprovedHandbookRecipes_1.0.2.zip Install now
v1.0.1 247 Nov 8th at 2:05 AM Show ImprovedHandbookRecipes_1.0.1.zip Install now
v1.0.0 907 Oct 2nd at 6:25 AM Show ImprovedHandbookRecipes_1.0.0.zip Install now

37 Comments (oldest first | newest first)

💬 tankmissile, 1 day ago

Hello again, I notice in version 1.0.5 I am unable to add the materials for more than two instances of a recipe at a time.  The + and * buttons both cap at 2 recipes, even if I have the mats for a lot more and the item stacks higher than two.  I made 40 axles but had to do them 4 at a time.  Thanks for your continued support of this handy mod.

💬 KathanonAuthor, 6 days ago

@Ithildae: Great, thanks for letting me know.

@Arroz126: I hadn't even seen that rc3 was released. It does work for rc1, I suggest you try it with rc3 and see.

💬 Arroz126, 6 days ago

Is it compatible with version v1.20.0-rc.3?

💬 Ithildae, 6 days ago

I am unable to reproduce crashing with the * or + buttons using more than one type of eligible material after updating to v1.0.5 on game version 1.19.8

Thanks a lot for the update Kathanon, and thank you for developing this mod!

💬 KathanonAuthor, Dec 13th at 4:39 AM

Update:

  • Fixed bug causing freeze or possibly crash when using * or + buttons with several eligible ingredients in inventory.

I could not reproduce the crash, but that may be a difference between running a local game and connecting to a server.
I did reproduce the freeze on * using Ithildae's description (thanks for that), and this fixes that one. I expect there is a good chance it will fix all of your issues.
Please do let me know if it helped.

💬 LunaGore, Dec 11th at 3:49 AM

I'm not having issues with the + but the * is crashing my game but I can repeatedly hit + as a workaround.

💬 Ithildae, Dec 10th at 11:35 PM

This mod crashes if I use the + or * buttons in the handbook whilst having more than one item in an open inventory that is eligable for crafting.

If I am crafting say barrels and have some maple planks and some oak planks, the mod crashes when using * or +

Where I to close the inventory with maple planks and just have oak planks accessible, the * or + buttons do work.

I am using a lot of mods and this may not be reproducable outside of my environment, but this rule has prevented client crashes so far in my group.

💬 SpacemanSpliff, Dec 8th at 6:41 PM

pressing the * button completely froze my game, was not able to get a crash report unfortunatley. Other than that, this is a super useful mod. Thank you.

💬 tankmissile, Dec 7th at 10:43 PM

Scrolling issue is fixed as far as I can tell.  I was also able to use the + and * buttons without crashing, but that's not my report.  Thanks!

💬 KathanonAuthor, Dec 7th at 6:50 PM

Update:

I think I fixed both of your issues. Please let me know if it worked.

💬 Juicebox_TM, Dec 6th at 4:08 PM

Update:
V1.0.2 has similar issue. It froze up completely when trying the * button to add materials for recipe.

Hello, just wanted to let you know about the crashing issue I seem to have whilst trying your mod. It happens (crashes) when I try to click on the * or + while in the handbook, to add 'one' or the 'max' of anything for a recipe. I have the latest file version(v1.0.3) installed, I have not tried just using v1.0.2 to see if that remedies the problem yet. But I will, and I shall let you know if it resolves itself or not. I do hope so as this mod seems to be great, and would enjoy the use of it tremendously. Thank you for making it.
Below is the report, hopefully that is helpful. Should I put it in the tracker as well or will this suffice?
Again, Thank you.

 

 

 

 

Running on 64 bit Windows 10.0.19045.0 with 16314 MB RAM
Game Version: v1.19.8 (Stable)
12/6/2024 8:48:11 AM: Critical error occurred in the following mod: improvedhandbookrecipes@1.0.3
Loaded Mods: aculinaryartillery@1.2.1, backpackpackplus@1.0.3, chiseltools@1.12.10, justmoreruins@0.9.8, nailsmold@1.0.2, noisybears@1.1.0, she1fish@1.2.1, spyglass@0.5.1, temporal_gears_stack@1.0.0, game@1.19.8, wlts@1.0.0, zoombuttonreborn@2.0.0, betterfirepit@1.1.4, betterruins@0.3.7, carryon@1.7.4, commonlib@2.5.0-rc.2, Crateful@1.2.8, expandedfoods@1.7.2, extrainfo@1.8.1, hudclock@3.4.0, improvedhandbookrecipes@1.0.3, medievalexpansion@3.13.1, morepiles@1.5.0, claywheel@1.1.1, prospecttogether@1.4.0-rc.2, scythemold@1.0.1, th3dungeon@0.2.1, creative@1.19.8, survival@1.19.8, workbenchexpansion@1.8.0, slanted_display_cases@1.3.2, stonequarry@3.3.1, tavernadditions@1.1.0, th3dungeontopentrance@0.1.1, vanity@2.2.0
System.MissingMethodException: Method not found: 'System.String Vintagestory.API.Common.AssetLocation.op_Implicit(Vintagestory.API.Common.AssetLocation)'.
at ImprovedHandbookRecipes.FillGridButton.IngredientCode.MakeKey()
at ImprovedHandbookRecipes.FillGridButton.IngredientCode.get_Key() in E:\Programmering\VintageStory\ImprovedHandbookRecipes\ImprovedHandbookRecipes\ImprovedHandbookRecipes\FillGridButton.cs:line 285
at ImprovedHandbookRecipes.FillGridButton.<>c.b__5_9(IngredientCode x) in E:\Programmering\VintageStory\ImprovedHandbookRecipes\ImprovedHandbookRecipes\ImprovedHandbookRecipes\FillGridButton.cs:line 67
at System.Linq.Enumerable.DistinctByIterator[TSource,TKey](IEnumerable`1 source, Func`2 keySelector, IEqualityComparer`1 comparer)+MoveNext()
at System.Linq.Enumerable.ToDictionary[TSource,TKey,TElement](IEnumerable`1 source, Func`2 keySelector, Func`2 elementSelector, IEqualityComparer`1 comparer)
at System.Linq.Enumerable.ToDictionary[TSource,TKey,TElement](IEnumerable`1 source, Func`2 keySelector, Func`2 elementSelector)
at ImprovedHandbookRecipes.FillGridButton.TryFillGrid() in E:\Programmering\VintageStory\ImprovedHandbookRecipes\ImprovedHandbookRecipes\ImprovedHandbookRecipes\FillGridButton.cs:line 63
at ImprovedHandbookRecipes.FillGridButton.OnClick() in E:\Programmering\VintageStory\ImprovedHandbookRecipes\ImprovedHandbookRecipes\ImprovedHandbookRecipes\FillGridButton.cs:line 30
at ImprovedHandbookRecipes.ButtonRTC.Click() in E:\Programmering\VintageStory\ImprovedHandbookRecipes\ImprovedHandbookRecipes\ImprovedHandbookRecipes\ButtonRTC.cs:line 65
at Vintagestory.API.Client.GuiElementTextButton.OnMouseUpOnElement(ICoreClientAPI api, MouseEvent args) in VintagestoryApi\Client\UI\Elements\Impl\Interactive\Controls\GuiElementTextButton.cs:line 317
at Vintagestory.API.Client.GuiElementTextButton.OnMouseUp(ICoreClientAPI api, MouseEvent args) in VintagestoryApi\Client\UI\Elements\Impl\Interactive\Controls\GuiElementTextButton.cs:line 307
at ImprovedHandbookRecipes.ButtonRTC.OnMouseUp(MouseEvent args) in E:\Programmering\VintageStory\ImprovedHandbookRecipes\ImprovedHandbookRecipes\ImprovedHandbookRecipes\ButtonRTC.cs:line 125
at Vintagestory.API.Client.GuiElementRichtext.OnMouseUp(ICoreClientAPI api, MouseEvent args) in VintagestoryApi\Client\UI\Elements\Impl\Interactive\Text\GuiElementRichtext.cs:line 540
at Vintagestory.API.Client.GuiComposer.OnMouseUp(MouseEvent mouse) in VintagestoryApi\Client\UI\GuiComposer.cs:line 449
at Vintagestory.API.Client.GuiDialog.OnMouseUp(MouseEvent args) in VintagestoryApi\Client\UI\Dialog\GuiDialog.cs:line 584
at Vintagestory.Client.NoObf.GuiManager.OnMouseUp(MouseEvent args) in VintagestoryLib\Client\Systems\Gui\GuiManager.cs:line 412
at Vintagestory.Client.NoObf.ClientMain.UpdateMouseButtonState(EnumMouseButton button, Boolean down) in VintagestoryLib\Client\ClientMain.cs:line 1919
at Vintagestory.Client.HotkeyManager.TriggerHotKey(KeyEvent keyEventargs, IWorldAccessor world, IPlayer player, Boolean allowCharacterControls, Boolean isGlobal, Boolean fallBack, Boolean keyup) in VintagestoryLib\Client\HotkeyManager.cs:line 431
at Vintagestory.Client.HotkeyManager.OnMouseButton(ClientMain game, EnumMouseButton button, Int32 modifiers, Boolean buttonDown) in VintagestoryLib\Client\HotkeyManager.cs:line 576
at Vintagestory.Client.NoObf.ClientMain.OnMouseUpRaw(MouseEvent args) in VintagestoryLib\Client\ClientMain.cs:line 1949
at Vintagestory.Client.GuiScreenRunningGame.OnMouseUp(MouseEvent args) in VintagestoryLib\Client\MainMenu\Screens\GuiScreenRunningGame.cs:line 349
at Vintagestory.Client.NoObf.ClientPlatformWindows.Mouse_ButtonUp(MouseButtonEventArgs e) in VintagestoryLib\Client\ClientPlatform\Input.cs:line 208
at OpenTK.Windowing.Desktop.NativeWindow.MouseButtonCallback(Window* window, MouseButton button, InputAction action, KeyModifiers mods)
--- End of stack trace from previous location ---
at OpenTK.Windowing.Desktop.NativeWindow.RethrowCallbackExceptionsIfNeeded()
at OpenTK.Windowing.Desktop.NativeWindow.ProcessWindowEvents(Boolean waitForEvents)
at OpenTK.Windowing.Desktop.GameWindow.Run()
at Vintagestory.Client.ClientProgram.Start(ClientProgramArgs args, String[] rawArgs) in VintagestoryLib\Client\ClientProgram.cs:line 324
at Vintagestory.Client.ClientProgram.<>c__DisplayClass9_0.<.ctor>b__1() in VintagestoryLib\Client\ClientProgram.cs:line 128
at Vintagestory.ClientNative.CrashReporter.Start(ThreadStart start) in VintagestoryLib\Client\ClientPlatform\ClientNative\CrashReporter.cs:line 93

💬 tankmissile, Dec 6th at 6:57 AM

Just had a full crash when using mouse wheel on a recipe item that didn't have any alternatives in v1.0.3 (game version 1.19.8)

 

Looking at the logs, seems it was an index out of bounds error:

Game Version: v1.19.8 (Stable)
12/6/2024 12:54:32 AM: Critical error occurred in the following mod: improvedhandbookrecipes@1.0.3
Loaded Mods: barkbeetle@1.0.0, chiseltools@1.12.11, dinornithidae@0.9.0, manidae@1.0.2, rhinocerotidae@1.0.3, sirenia@1.0.5, spheniscidae@0.9.1, lessigneousrocksplease@1.0.0, cbetterfertilizer@1.2.0, viescraftmachines@2.3.2, game@1.19.8, egocaribautomapmarkers@3.1.0, beehivekiln@1.6.1, betterfirepit@1.1.4, brutalstory@1.0.0, carryon@1.7.4, improvedhandbookrecipes@1.0.3, manualquenching@1.0.1, mif@1.0.1, claywheel@1.1.1, rivers@3.1.0, sailboat@1.3.1, trailmod@1.0.8, versionchecker@1.0.0, creative@1.19.8, survival@1.19.8, wgmt@1.0.2, doffanddonagain@4.0.0
System.IndexOutOfRangeException: Index was outside the bounds of the array.
at ImprovedHandbookRecipes.Handbook_Patch.UpdateSecondCounter(Int32 index, Int32& counter, GridRecipeAndUnnamedIngredients[] list) in E:\Programmering\VintageStory\ImprovedHandbookRecipes\ImprovedHandbookRecipes\ImprovedHandbookRecipes\Handbook_Patch.cs:line 103
at ImprovedHandbookRecipes.Handbook_Patch.UpdateIndex(Boolean mouseOver, Int32& index, Int32& counter, ItemstackComponentBase component) in E:\Programmering\VintageStory\ImprovedHandbookRecipes\ImprovedHandbookRecipes\ImprovedHandbookRecipes\Handbook_Patch.cs:line 100
at Vintagestory.API.Client.SlideshowGridRecipeTextComponent.RenderInteractiveElements_Patch0(SlideshowGridRecipeTextComponent this, Single deltaTime, Double renderX, Double renderY, Double renderZ)
at Vintagestory.API.Client.GuiElementRichtext.RenderInteractiveElements(Single deltaTime) in VintagestoryApi\Client\UI\Elements\Impl\Interactive\Text\GuiElementRichtext.cs:line 484
at Vintagestory.API.Client.GuiComposer.Render(Single deltaTime) in VintagestoryApi\Client\UI\GuiComposer.cs:line 716
at Vintagestory.API.Client.GuiDialog.OnRenderGUI(Single deltaTime) in VintagestoryApi\Client\UI\Dialog\GuiDialog.cs:line 385
at Vintagestory.GameContent.GuiDialogHandbook.OnRenderGUI_Patch3(GuiDialogHandbook this, Single deltaTime)
at Vintagestory.Client.NoObf.GuiManager.OnRenderFrameGUI(Single deltaTime) in VintagestoryLib\Client\Systems\Gui\GuiManager.cs:line 318
at Vintagestory.Client.NoObf.ClientEventManager.TriggerRenderStage(EnumRenderStage stage, Single dt) in VintagestoryLib\Client\Util\ClientEventManager.cs:line 186
at Vintagestory.Client.NoObf.ClientMain.TriggerRenderStage(EnumRenderStage stage, Single dt) in VintagestoryLib\Client\ClientMain.cs:line 809
at Vintagestory.Client.NoObf.ClientMain.RenderToDefaultFramebuffer(Single dt) in VintagestoryLib\Client\ClientMain.cs:line 1013
at Vintagestory.Client.ScreenManager.Render(Single dt) in VintagestoryLib\Client\ScreenManager.cs:line 676
at Vintagestory.Client.ScreenManager.OnNewFrame(Single dt) in VintagestoryLib\Client\ScreenManager.cs:line 651
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 324
at Vintagestory.Client.ClientProgram.<>c__DisplayClass9_0.<.ctor>b__1() in VintagestoryLib\Client\ClientProgram.cs:line 128
at Vintagestory.ClientNative.CrashReporter.Start(ThreadStart start) in VintagestoryLib\Client\ClientPlatform\ClientNative\CrashReporter.cs:line 93

💬 KathanonAuthor, Dec 4th at 3:00 PM

Update:

  • Support for v1.20.0-pre.13.
💬 Aimli, Dec 3rd at 11:18 AM
  • Using the scroll wheel while hovering over a recipe or item with several variants lets you flip between them freely.
  • If crafting grid is also open, adds buttons to automatically add the required ingredients to the crafting grid (add one craft and add max).
  • Displays a small wrench icon on ingredients that are not consumed by the recipe. Also adds how much durability will be used to the tooltip.

They're all null and void.

Kathanon

💬 KathanonAuthor, Dec 2nd at 12:06 PM

Aimli What is it that isn't working with 1.20-pre.13?

💬 Aimli, Nov 25th at 8:39 AM

Please adapt to 1.20-pre.13

💬 KathanonAuthor, Nov 18th at 1:27 PM

If you post a crash log with the latest version, I can look into it. The log you posted looks exactly like the bug that 1.0.2 fixes.

💬 Shinji170981, Nov 17th at 7:03 PM

Currently using your 1.0.1 version on 1.19.8 and when i click on the *, the client crashes to desktop. Had the same issue on 1.0.2 before, so i went back to 1.0.1.

I did have the items required in my inventory.
Crash report

💬 OniLynx69, Nov 14th at 8:28 PM

Kathanon Yay! Thank you so much for fixing this up so quickly! ^^

💬 KathanonAuthor, Nov 13th at 2:28 AM

The dll *is* in the root folder, and it is a client-side only mod. I think you should bring it up with them.

💬 Shinji170981, Nov 12th at 1:14 PM

Kathanon Getting an error with the latest version.
12.11.2024 14:12:25 [Server Error] [workbenchexpansion] File 'ImprovedHandbookRecipes.dll' is not in the mod's root folder. Won't load this mod. If you need to ship unmanaged dlls, put them in the native/ folder.
Not sure if you have to fix this or workbench.

💬 KathanonAuthor, Nov 12th at 6:58 AM

OniLynx69: Turns out there were two separate bugs, one affecting all of the refractory bricks, but only the * button, and one affecting both buttons, but only the tier 2 version of the recipe.

ShikiTochi: The buttons are not shown unless the crafting grid is also open. That may be the reason.

💬 KathanonAuthor, Nov 12th at 6:56 AM

Update:

  • Fixed crash when using + or * buttons for a shapeless recipe with empty spots (e.g. refractory bricks tier 2).
💬 OniLynx69, Nov 10th at 9:59 PM

Kathanon: I downloaded the latest update, but am still experiencing issues with the mod crashing the game when attempting to pull refractory brick items to the crafting grid. I tried using both, the "+" and the "*", and both produced the same result. I attempted it several times, and even disabled all other mods (with the exception of the default game mods).

 

Below is the last attempt's crash log:

11/10/2024 1:48:47 PM: Critical error occurred in the following mod: improvedhandbookrecipes@1.0.1
Loaded Mods: game@1.19.8, improvedhandbookrecipes@1.0.1, creative@1.19.8, survival@1.19.8
System.NullReferenceException: Object reference not set to an instance of an object.
at ImprovedHandbookRecipes.FillGridButton.<>c__DisplayClass6_1.<AddIngredients>b__9(ItemSlot y) in E:\Programmering\VintageStory\ImprovedHandbookRecipes\ImprovedHandbookRecipes\ImprovedHandbookRecipes\FillGridButton.cs:line 127
at ImprovedHandbookRecipes.FillGridButton.<AddIngredients>g__PullFirst|6_3[T](T[] arr, Func`2 test) in E:\Programmering\VintageStory\ImprovedHandbookRecipes\ImprovedHandbookRecipes\ImprovedHandbookRecipes\FillGridButton.cs:line 219
at ImprovedHandbookRecipes.FillGridButton.<>c__DisplayClass6_0.<AddIngredients>b__7(GridRecipeIngredient x) in E:\Programmering\VintageStory\ImprovedHandbookRecipes\ImprovedHandbookRecipes\ImprovedHandbookRecipes\FillGridButton.cs:line 127
at System.Linq.Enumerable.SelectArrayIterator`2.ToArray()
at ImprovedHandbookRecipes.FillGridButton.AddIngredients(ItemSlot[] input, GridRecipe recipe, List`1 available) in E:\Programmering\VintageStory\ImprovedHandbookRecipes\ImprovedHandbookRecipes\ImprovedHandbookRecipes\FillGridButton.cs:line 126
at ImprovedHandbookRecipes.FillGridButton.TryFillGrid() in E:\Programmering\VintageStory\ImprovedHandbookRecipes\ImprovedHandbookRecipes\ImprovedHandbookRecipes\FillGridButton.cs:line 80
at ImprovedHandbookRecipes.FillGridButton.OnClick() in E:\Programmering\VintageStory\ImprovedHandbookRecipes\ImprovedHandbookRecipes\ImprovedHandbookRecipes\FillGridButton.cs:line 30
at ImprovedHandbookRecipes.ButtonRTC.Click() in E:\Programmering\VintageStory\ImprovedHandbookRecipes\ImprovedHandbookRecipes\ImprovedHandbookRecipes\ButtonRTC.cs:line 65
at Vintagestory.API.Client.GuiElementTextButton.OnMouseUpOnElement(ICoreClientAPI api, MouseEvent args) in VintagestoryApi\Client\UI\Elements\Impl\Interactive\Controls\GuiElementTextButton.cs:line 317
at Vintagestory.API.Client.GuiElementTextButton.OnMouseUp(ICoreClientAPI api, MouseEvent args) in VintagestoryApi\Client\UI\Elements\Impl\Interactive\Controls\GuiElementTextButton.cs:line 307
at ImprovedHandbookRecipes.ButtonRTC.OnMouseUp(MouseEvent args) in E:\Programmering\VintageStory\ImprovedHandbookRecipes\ImprovedHandbookRecipes\ImprovedHandbookRecipes\ButtonRTC.cs:line 125
at Vintagestory.API.Client.GuiElementRichtext.OnMouseUp(ICoreClientAPI api, MouseEvent args) in VintagestoryApi\Client\UI\Elements\Impl\Interactive\Text\GuiElementRichtext.cs:line 540
at Vintagestory.API.Client.GuiComposer.OnMouseUp(MouseEvent mouse) in VintagestoryApi\Client\UI\GuiComposer.cs:line 449
at Vintagestory.API.Client.GuiDialog.OnMouseUp(MouseEvent args) in VintagestoryApi\Client\UI\Dialog\GuiDialog.cs:line 584
at Vintagestory.Client.NoObf.GuiManager.OnMouseUp(MouseEvent args) in VintagestoryLib\Client\Systems\Gui\GuiManager.cs:line 415
at Vintagestory.Client.NoObf.ClientMain.UpdateMouseButtonState(EnumMouseButton button, Boolean down) in VintagestoryLib\Client\ClientMain.cs:line 1919
at Vintagestory.Client.SystemHotkeys.OnPrimaryMouseButton(KeyCombination mb) in VintagestoryLib\Client\Systems\Player\Hotkeys.cs:line 50
at Vintagestory.Client.HotkeyManager.TriggerHotKey(KeyEvent keyEventargs, IWorldAccessor world, IPlayer player, Boolean allowCharacterControls, Boolean isGlobal, Boolean fallBack, Boolean keyup) in VintagestoryLib\Client\HotkeyManager.cs:line 431
at Vintagestory.Client.HotkeyManager.TriggerHotKey(KeyEvent keyEventargs, IWorldAccessor world, IPlayer player, Boolean allowCharacterControls, Boolean keyUp) in VintagestoryLib\Client\HotkeyManager.cs:line 395
at Vintagestory.Client.HotkeyManager.OnMouseButton(ClientMain game, EnumMouseButton button, Int32 modifiers, Boolean buttonDown) in VintagestoryLib\Client\HotkeyManager.cs:line 574
at Vintagestory.Client.NoObf.ClientMain.OnMouseUpRaw(MouseEvent args) in VintagestoryLib\Client\ClientMain.cs:line 1949
at Vintagestory.Client.GuiScreenRunningGame.OnMouseUp(MouseEvent args) in VintagestoryLib\Client\MainMenu\Screens\GuiScreenRunningGame.cs:line 349
at Vintagestory.Client.ScreenManager.OnMouseUp(MouseEvent e) in VintagestoryLib\Client\ScreenManager.cs:line 890
at Vintagestory.Client.NoObf.ClientPlatformWindows.Mouse_ButtonUp(MouseButtonEventArgs e) in VintagestoryLib\Client\ClientPlatform\Input.cs:line 211
at OpenTK.Windowing.Desktop.NativeWindow.OnMouseUp(MouseButtonEventArgs e)
at OpenTK.Windowing.Desktop.NativeWindow.MouseButtonCallback(Window* window, MouseButton button, InputAction action, KeyModifiers mods)
--- End of stack trace from previous location ---
at OpenTK.Windowing.Desktop.NativeWindow.RethrowCallbackExceptionsIfNeeded()
at OpenTK.Windowing.Desktop.GameWindow.Run()
at Vintagestory.Client.ClientProgram.Start(ClientProgramArgs args, String[] rawArgs) in VintagestoryLib\Client\ClientProgram.cs:line 324
at Vintagestory.Client.ClientProgram.<>c__DisplayClass9_0.<.ctor>b__1() in VintagestoryLib\Client\ClientProgram.cs:line 128
at Vintagestory.ClientNative.CrashReporter.Start(ThreadStart start) in VintagestoryLib\Client\ClientPlatform\ClientNative\CrashReporter.cs:line 93

💬 ShikiTochi, Nov 10th at 2:50 AM

The crafting buttons for 1.0.1 Seem to be missing, its the only mod installed on a fresh world- 1.19.8

Edit- Its seemed to fix itself, I dont know why the buttons just vanished.

💬 KathanonAuthor, Nov 10th at 2:39 AM

You mean the 1.20 pre-releases? No, I've been meaning to make a version for 1.20, but haven't yet.

💬 Krougal, Nov 9th at 12:09 AM

Does this new version work for the PR releases? (started crashing hard a couple versions ago).

This is one of those mods that should be vanilla, hate playing without it.

💬 KathanonAuthor, Nov 8th at 2:07 AM

Update:

  • Fixed bug where using the * button for a shapeless recipe causes crash.

 

OniLynx69: I couldn't reproduce the tooltip issue, but I do recognize it from development, so I may just have managed to do the initial release before it was fixed. Please do let me know if this fixes that issue as well for you.

💬 KathanonAuthor, Nov 7th at 9:01 PM

I'll look into it.

💬 OniLynx69, Nov 7th at 8:20 PM

I absolutely love this mod! A godsend for making things a lot quicker! I have encountered a minor issue, and 1 major issue resulting in a game crash (reproducable).

Minor issue:
Text for tooltips, viewable when hovering over "*" [astrisk] or "+" icons, is off center from the tooltip itself. ie, appears above and to the left of the tooltip.

https://onilynx69.live/vintagestory_error_images/tooltip_bug.png

 

Major issue:
When attempting to set the crafting grid to craft refractory bricks, regardless of tier, the game will crash.

https://onilynx69.live/vintagestory_error_images/game_crash.png

Crash Log:

Game Version: v1.19.8 (Stable)
11/7/2024 12:08:45 PM: Critical error occurred in the following mod: improvedhandbookrecipes@1.0.0
Loaded Mods: HumanSkinTones@0.0.3, temperaturescales@1.0.2, game@1.19.8, bodyheatbar@1.0.1, chestorganizer@1.0.0, commonlib@2.5.0-rc.2, extendedhudinfo@1.1.0, hudclock@3.4.0, improvedhandbookrecipes@1.0.0, statushud@1.4.3, creative@1.19.8, survival@1.19.8
System.NullReferenceException: Object reference not set to an instance of an object.
at ImprovedHandbookRecipes.FillGridButton.<>c__DisplayClass6_1.b__9(ItemSlot y) in E:\Programmering\VintageStory\ImprovedHandbookRecipes\ImprovedHandbookRecipes\ImprovedHandbookRecipes\FillGridButton.cs:line 126
at ImprovedHandbookRecipes.FillGridButton.g__PullFirst|6_3[T](T[] arr, Func`2 test) in E:\Programmering\VintageStory\ImprovedHandbookRecipes\ImprovedHandbookRecipes\ImprovedHandbookRecipes\FillGridButton.cs:line 218
at ImprovedHandbookRecipes.FillGridButton.<>c__DisplayClass6_0.b__7(GridRecipeIngredient x) in E:\Programmering\VintageStory\ImprovedHandbookRecipes\ImprovedHandbookRecipes\ImprovedHandbookRecipes\FillGridButton.cs:line 126
at System.Linq.Enumerable.SelectArrayIterator`2.ToArray()
at ImprovedHandbookRecipes.FillGridButton.AddIngredients(ItemSlot[] input, GridRecipe recipe, List`1 available) in E:\Programmering\VintageStory\ImprovedHandbookRecipes\ImprovedHandbookRecipes\ImprovedHandbookRecipes\FillGridButton.cs:line 125
at ImprovedHandbookRecipes.FillGridButton.TryFillGrid() in E:\Programmering\VintageStory\ImprovedHandbookRecipes\ImprovedHandbookRecipes\ImprovedHandbookRecipes\FillGridButton.cs:line 80
at ImprovedHandbookRecipes.FillGridButton.OnClick() in E:\Programmering\VintageStory\ImprovedHandbookRecipes\ImprovedHandbookRecipes\ImprovedHandbookRecipes\FillGridButton.cs:line 30
at ImprovedHandbookRecipes.ButtonRTC.Click() in E:\Programmering\VintageStory\ImprovedHandbookRecipes\ImprovedHandbookRecipes\ImprovedHandbookRecipes\ButtonRTC.cs:line 63
at Vintagestory.API.Client.GuiElementTextButton.OnMouseUpOnElement(ICoreClientAPI api, MouseEvent args) in VintagestoryApi\Client\UI\Elements\Impl\Interactive\Controls\GuiElementTextButton.cs:line 317
at Vintagestory.API.Client.GuiElementTextButton.OnMouseUp(ICoreClientAPI api, MouseEvent args) in VintagestoryApi\Client\UI\Elements\Impl\Interactive\Controls\GuiElementTextButton.cs:line 310
at ImprovedHandbookRecipes.ButtonRTC.OnMouseUp(MouseEvent args) in E:\Programmering\VintageStory\ImprovedHandbookRecipes\ImprovedHandbookRecipes\ImprovedHandbookRecipes\ButtonRTC.cs:line 113
at Vintagestory.API.Client.GuiElementRichtext.OnMouseUp(ICoreClientAPI api, MouseEvent args) in VintagestoryApi\Client\UI\Elements\Impl\Interactive\Text\GuiElementRichtext.cs:line 540
at Vintagestory.API.Client.GuiComposer.OnMouseUp(MouseEvent mouse) in VintagestoryApi\Client\UI\GuiComposer.cs:line 445
at Vintagestory.API.Client.GuiDialog.OnMouseUp(MouseEvent args) in VintagestoryApi\Client\UI\Dialog\GuiDialog.cs:line 570
at Vintagestory.Client.NoObf.GuiManager.OnMouseUp(MouseEvent args) in VintagestoryLib\Client\Systems\Gui\GuiManager.cs:line 415
at Vintagestory.Client.NoObf.ClientMain.UpdateMouseButtonState(EnumMouseButton button, Boolean down) in VintagestoryLib\Client\ClientMain.cs:line 1919
at Vintagestory.Client.SystemHotkeys.OnPrimaryMouseButton(KeyCombination mb) in VintagestoryLib\Client\Systems\Player\Hotkeys.cs:line 50
at Vintagestory.Client.HotkeyManager.TriggerHotKey(KeyEvent keyEventargs, IWorldAccessor world, IPlayer player, Boolean allowCharacterControls, Boolean isGlobal, Boolean fallBack, Boolean keyup) in VintagestoryLib\Client\HotkeyManager.cs:line 431
at Vintagestory.Client.HotkeyManager.TriggerHotKey(KeyEvent keyEventargs, IWorldAccessor world, IPlayer player, Boolean allowCharacterControls, Boolean keyUp) in VintagestoryLib\Client\HotkeyManager.cs:line 392
at Vintagestory.Client.HotkeyManager.OnMouseButton(ClientMain game, EnumMouseButton button, Int32 modifiers, Boolean buttonDown) in VintagestoryLib\Client\HotkeyManager.cs:line 574
at Vintagestory.Client.NoObf.ClientMain.OnMouseUpRaw(MouseEvent args) in VintagestoryLib\Client\ClientMain.cs:line 1949
at Vintagestory.Client.GuiScreenRunningGame.OnMouseUp(MouseEvent args) in VintagestoryLib\Client\MainMenu\Screens\GuiScreenRunningGame.cs:line 349
at Vintagestory.Client.ScreenManager.OnMouseUp(MouseEvent e) in VintagestoryLib\Client\ScreenManager.cs:line 890
at Vintagestory.Client.NoObf.ClientPlatformWindows.Mouse_ButtonUp(MouseButtonEventArgs e) in VintagestoryLib\Client\ClientPlatform\Input.cs:line 211
at OpenTK.Windowing.Desktop.NativeWindow.OnMouseUp(MouseButtonEventArgs e)
at OpenTK.Windowing.Desktop.NativeWindow.MouseButtonCallback(Window* window, MouseButton button, InputAction action, KeyModifiers mods)
--- End of stack trace from previous location ---
at OpenTK.Windowing.Desktop.NativeWindow.RethrowCallbackExceptionsIfNeeded()
at OpenTK.Windowing.Desktop.GameWindow.Run()
at Vintagestory.Client.ClientProgram.Start(ClientProgramArgs args, String[] rawArgs) in VintagestoryLib\Client\ClientProgram.cs:line 324
at Vintagestory.Client.ClientProgram.<>c__DisplayClass9_0.<.ctor>b__1() in VintagestoryLib\Client\ClientProgram.cs:line 128
at Vintagestory.ClientNative.CrashReporter.Start(ThreadStart start) in VintagestoryLib\Client\ClientPlatform\ClientNative\CrashReporter.cs:line 93

💬 FluffyCucumber, Nov 6th at 2:38 AM

been looking for this mod for quite some time now! Thanks!

💬 KathanonAuthor, Oct 27th at 3:28 PM

Cuddly_Khan: I think that would have the potential to confuse users. Maybe I can make something similar, I'll give it some thought.

jayu: Please do. If it is repeatable, it's likely to be for the same recipe. Include what recipe it was when you post the log, please.

💬 jayu, Oct 15th at 9:45 PM

Hey so my game freezes (doesn't crash) when I press the add max button. Will try to save the client-main log when it happens again.

💬 Cuddly_Khan, Oct 8th at 10:01 AM

I have a suggestion:
If the crafting grid has already been filled using the add max, then pressing it again will take the result out of the output and fill the grid again. Would make crafting tedious stuff a bit faster such as firewood and path blocks. :D

💬 SaltyWater, Oct 4th at 12:33 PM

Amazing mod thank you so much!

💬 jayu, Oct 2nd at 10:35 PM

More people need to know about this! It should be in vanilla lol. Please if you can put a nicer thumbnail so more people discover this very useful mod. Thanks!

💬 MAKAKO, Oct 2nd at 12:06 PM

Funciona perfectamente, gracias por hacerme la vida mas facil

😄

(edit comment delete)