Jump to content

XLib and XSkills


Xandu

Recommended Posts

A keybinding for Steeplechaser would simply be amazing. I cannot stand constantly trying to step up onto railings and tables XD

Also it looks like small animal catching is coming to Vanilla so the Catcher perk may need a rework or replacement.

Edited by RogueRaiden
Link to comment
Share on other sites

Tried shift clicking some charcoal into a firepit and game crashed with a null reference

 

Running on 64 bit Windows with 15610 MB RAM
Game Version: v1.18.10 (Stable)
9/13/2023 7:35:00 PM: Critical error occurred in the following mod: xskills@0.7.5
Loaded Mods: buzzwords@1.4.0, game@1.18.10, carryon@1.5.0, farmlanddropssoil@1.4.0, hudclock@3.3.0, prospectorinfo@4.3.0, creative@1.18.10, survival@1.18.10, xlib@0.7.4, xskills@0.7.5
System.NullReferenceException: Object reference not set to an instance of an object.
   at XSkills.ItemSlotCooking.get_MaxSlotStackSize()
   at Vintagestory.API.Common.ItemSlot.GetRemainingSlotSpace(ItemStack forItemstack) in VintagestoryApi\Common\Inventory\ItemSlot.cs:line 86
   at Vintagestory.API.Common.ItemSlot.CanTakeFrom(ItemSlot sourceSlot, EnumMergePriority priority) in VintagestoryApi\Common\Inventory\ItemSlot.cs:line 104
   at Vintagestory.API.Common.InventoryBase.GetBestSuitedSlot(ItemSlot sourceSlot, List`1 skipSlots) in VintagestoryApi\Common\Inventory\InventoryBase.cs:line 355
   at Vintagestory.GameContent.InventorySmelting.GetBestSuitedSlot_Patch1(InventorySmelting this, ItemSlot sourceSlot, List`1 skipSlots)
   at Vintagestory.Common.PlayerInventoryManager.GetBestSuitedSlot(ItemSlot sourceSlot, Boolean onlyPlayerInventory, List`1 skipSlots) in VintagestoryLib\Common\GameContent\Inventory\PlayerInventoryManager.cs:line 193
   at Vintagestory.Common.PlayerInventoryManager.TryTransferAway(ItemSlot sourceSlot, ItemStackMoveOperation& op, Boolean onlyPlayerInventory, StringBuilder shiftClickDebugText, Boolean slotNotifyEffect) in VintagestoryLib\Common\GameContent\Inventory\PlayerInventoryManager.cs:line 223
   at Vintagestory.API.Common.InventoryBase.ActivateSlot(Int32 slotId, ItemSlot sourceSlot, ItemStackMoveOperation& op) in VintagestoryApi\Common\Inventory\InventoryBase.cs:line 429
   at Vintagestory.API.Client.GuiElementItemSlotGridBase.SlotClick(ICoreClientAPI api, Int32 slotId, EnumMouseButton mouseButton, Boolean shiftPressed, Boolean ctrlPressed, Boolean altPressed) in VintagestoryApi\Client\UI\Elements\Impl\Interactive\Inventory\GuiElementItemSlotGridBase.cs:line 998
   at Vintagestory.API.Client.GuiElementItemSlotGridBase.OnMouseDownOnElement(ICoreClientAPI api, MouseEvent args) in VintagestoryApi\Client\UI\Elements\Impl\Interactive\Inventory\GuiElementItemSlotGridBase.cs:line 745
   at Vintagestory.API.Client.GuiComposer.OnMouseDown(MouseEvent mouseArgs) in VintagestoryApi\Client\UI\GuiComposer.cs:line 487
   at Vintagestory.API.Client.GuiDialog.OnMouseDown(MouseEvent args) in VintagestoryApi\Client\UI\Dialog\GuiDialog.cs:line 554
   at Vintagestory.Client.NoObf.GuiManager.OnMouseDown(MouseEvent args) in VintagestoryLib\Client\Systems\Gui\GuiManager.cs:line 390
   at Vintagestory.Client.NoObf.ClientMain.OnMouseDown(MouseEvent args) in VintagestoryLib\Client\ClientMain.cs:line 1833
   at Vintagestory.Client.NoObf.ClientPlatformWindows.Mouse_ButtonDown(MouseButtonEventArgs e) in VintagestoryLib\Client\ClientPlatform\Input.cs:line 199
   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 312
   at Vintagestory.Client.ClientProgram.<>c__DisplayClass9_0.<.ctor>b__1() in VintagestoryLib\Client\ClientProgram.cs:line 129
   at Vintagestory.ClientNative.CrashReporter.Start(ThreadStart start) in VintagestoryLib\Client\ClientPlatform\ClientNative\CrashReporter.cs:line 93

Event Log entries containing Vintagestory.exe, the latest 3
==================================
{ TimeGenerated = 9/13/2023 6:34:53 PM, Site = , Source = Windows Error Reporting, Message = Fault bucket 2214170192790503688, type 4
Event Name: APPCRASH
Response: Not available
Cab Id: 0

Problem signature:
P1: Vintagestory.exe
P2: 1.18.10.0
P3: 64b07659
P4: openal32.dll
P5: 1.23.0.0
P6: 63dd31ad
P7: 40000015
P8: 00000000000df046
P9: 
P10: 

Attached files:
\\?\C:\ProgramData\Microsoft\Windows\WER\Temp\WER.6d90b858-2d58-42f0-bc83-6bd132b55421.tmp.dmp
\\?\C:\ProgramData\Microsoft\Windows\WER\Temp\WER.4cd1539e-5190-4174-a213-4914e2247643.tmp.WERInternalMetadata.xml
\\?\C:\ProgramData\Microsoft\Windows\WER\Temp\WER.278fbbe9-57e3-4f71-896e-ecf7cb470d08.tmp.csv
\\?\C:\ProgramData\Microsoft\Windows\WER\Temp\WER.d40f3613-ac6c-4371-bd1d-20ad7b82c916.tmp.txt
\\?\C:\ProgramData\Microsoft\Windows\WER\Temp\WER.1df790b7-c813-47e3-98b1-a122cdadc53b.tmp.xml

These files may be available here:
\\?\C:\ProgramData\Microsoft\Windows\WER\ReportArchive\AppCrash_Vintagestory.exe_38893ed42eb8d1a668828edf5bed1a44a4c7eb_93d687c4_2d13c6fd-c3ca-4dbc-870a-5db2e6b2bf47

Analysis symbol: 
Rechecking for solution: 0
Report Id: 16baadeb-a6d5-4a26-a2b7-0da3f46db61a
Report Status: 268566528
Hashed bucket: e045985d4f8a18ca4eba500f25894108
Cab Guid: 0 }
--------------
{ TimeGenerated = 9/13/2023 6:34:52 PM, Site = , Source = Application Error, Message = Faulting application name: Vintagestory.exe, version: 1.18.10.0, time stamp: 0x64b07659
Faulting module name: openal32.dll, version: 1.23.0.0, time stamp: 0x63dd31ad
Exception code: 0x40000015
Fault offset: 0x00000000000df046
Faulting process id: 0x0x3d2c
Faulting application start time: 0x0x1d9e69162b872b1
Faulting application path: C:\Users\Ryuuji\AppData\Roaming\Vintagestory\Vintagestory.exe
Faulting module path: C:\Users\Ryuuji\AppData\Roaming\Vintagestory\Lib\openal32.dll
Report Id: 16baadeb-a6d5-4a26-a2b7-0da3f46db61a
Faulting package full name: 
Faulting package-relative application ID:  }
--------------
{ TimeGenerated = 9/10/2023 4:48:49 PM, Site = , Source = Windows Error Reporting, Message = Fault bucket 2214170192790503688, type 4
Event Name: APPCRASH
Response: Not available
Cab Id: 0

Problem signature:
P1: Vintagestory.exe
P2: 1.18.10.0
P3: 64b07659
P4: openal32.dll
P5: 1.23.0.0
P6: 63dd31ad
P7: 40000015
P8: 00000000000df046
P9: 
P10: 

Attached files:
\\?\C:\ProgramData\Microsoft\Windows\WER\Temp\WER.661b4c37-2c4b-4d66-8964-a72c4da60781.tmp.dmp
\\?\C:\ProgramData\Microsoft\Windows\WER\Temp\WER.7ef24bf3-9b12-48be-ac9a-5a307a7355b1.tmp.WERInternalMetadata.xml
\\?\C:\ProgramData\Microsoft\Windows\WER\Temp\WER.86155e7f-cede-46c9-94a6-e07d8ba572ae.tmp.csv
\\?\C:\ProgramData\Microsoft\Windows\WER\Temp\WER.ec43e21e-a750-4ec0-8252-bb8fc0e1bb96.tmp.txt
\\?\C:\ProgramData\Microsoft\Windows\WER\Temp\WER.250cf0d2-67a0-4d72-b06b-c40b77600dff.tmp.xml

These files may be available here:
\\?\C:\ProgramData\Microsoft\Windows\WER\ReportArchive\AppCrash_Vintagestory.exe_38893ed42eb8d1a668828edf5bed1a44a4c7eb_93d687c4_076ac464-76dd-4a6a-8913-c0af59fea774

Analysis symbol: 
Rechecking for solution: 0
Report Id: df1e5656-b276-443b-9daa-fcfe3111a96a
Report Status: 268566528
Hashed bucket: e045985d4f8a18ca4eba500f25894108
Cab Guid: 0 }

Link to comment
Share on other sites

This is basically a note for developers. There is no way to get a book in survival mode at the moment. You can give yourself a skill book in creative mode and use the attack key to get a random book.

💬 Mawg, Apr 14th at 9:00 AM

-added the skill book item
     -you can set the attributes "skill" and "experience" to create a book that grants a specific amount of experience for a specific skill



(as a Server owner, how might i go about doing this? being able to spawn in books, for event rewards would be amazing~ last time i messed up commands it broke my game xD)

Link to comment
Share on other sites

Can someone explain to me what the "values": [ ] for the following means in the Farming skill? Having a bit of a time understanding 10,2,30,20,4,60. I am assuming the 10 is 10% and 2% is for every level while 30 is 30% being the max but if this is true, what are the rest for? If this is not true, I need a breakdown. Lol.

 

      "name": "orchardist",
      "id": 3,
      "maxTier": 2,
      "minLevel": 3,
      "enabled": true,
      "values": [
        10,
        2,
        30,
        20,
        4,
        60
      ]
    },

On another note, how does the Farming skill obtain EXP from Fruit Trees? I know Farming's skill level contributes to modifying the amount but what decides the amount of EXP gain (not fruit Yield) from Fruit Trees? If it does give EXP from Fruit Trees when picking apples and such, then can I be enlightened with how to target that value so I can increase the amount of EXP gained specifically from Fruit Baring fruit trees?

Link to comment
Share on other sites

The average quality of tools that are forged with the maximum metalworking skill barely reaches 8. It is very disappointing to sometimes receive tools like a chisel with a quality of 5.5. What about to make the progression of quality more stable? At the maximum level, I would like to get results in the range of 8-10, and not 5-10.

Link to comment
Share on other sites

  • 2 weeks later...

Is there any chance one can find what skills are affected by the "Machine Learning" skill, which says in the description: "You can share your smithing knowledge with helve hammers and they can profit from some your abilities." There is some debate among my friends about which abilities this one benefits from. 

Link to comment
Share on other sites

  • 2 weeks later...

Hey,

i have a problem with the Processing class on our little server

At Server startup i get following Error:

21.10.2023 04:17:55 [Server Error] [xskills] An exception was thrown when trying to start the mod:
HarmonyLib.HarmonyException: Patching exception in method System.Boolean Vintagestory.GameContent.BarrelRecipe::TryCraftNow(Vintagestory.API.Common.ICoreAPI api, System.Double nowSealedHours, Vintagestory.API.Common.ItemSlot[] inputslots)
 ---> System.NotImplementedException: The method or operation is not implemented.
   at HarmonyLib.PatchFunctions.UpdateWrapper(MethodBase original, PatchInfo patchInfo)
   at HarmonyLib.PatchClassProcessor.ProcessPatchJob(Job job)
   --- End of inner exception stack trace ---
   at HarmonyLib.PatchClassProcessor.ReportException(Exception exception, MethodBase original)
   at HarmonyLib.PatchClassProcessor.Patch()
   at HarmonyLib.Harmony.<PatchAll>b__10_0(Type type)
   at HarmonyLib.CollectionExtensions.Do[T](IEnumerable`1 sequence, Action`1 action)
   at HarmonyLib.Harmony.PatchAll(Assembly assembly)
   at XSkills.XSkills.DoHarmonyPatch(ICoreAPI api)
   at XSkills.XSkills.StartServerSide(ICoreServerAPI api)
   at Vintagestory.Common.ModLoader.TryRunModPhase(Mod mod, ModSystem system, ICoreAPI api, ModRunPhase phase) in C:\Users\Tyron\Documents\vintagestory\game\VintagestoryLib\Common\API\ModLoader.cs:line 636
21.10.2023 04:17:55 [Server Error] Failed to start system XSkills.XSkills

 

hope someone can help

Link to comment
Share on other sites

On 10/20/2023 at 11:11 AM, RogueRaiden said:

all of the skills with quality abilities need to have a hard cap on how much bonus they can apply. otherwise players will find ways to exploit it.

Currently the only known “exploit” I know of is when players spend extra time and resources to batch make stacking food to increase their quality far beyond normal means - but on a multiplayer server, this requires a lot of time and resorces to produce something viable.  I think it would be more fair to allow this but with diminishing returns - although it does seem like it diminishes from my own experimentation - so that players may actually use this as a rewarding way to hone their craft.

Link to comment
Share on other sites

On 10/21/2023 at 4:26 AM, MisterTarget said:

Hey,

i have a problem with the Processing class on our little server

At Server startup i get following Error:

21.10.2023 04:17:55 [Server Error] [xskills] An exception was thrown when trying to start the mod:
HarmonyLib.HarmonyException: Patching exception in method System.Boolean Vintagestory.GameContent.BarrelRecipe::TryCraftNow(Vintagestory.API.Common.ICoreAPI api, System.Double nowSealedHours, Vintagestory.API.Common.ItemSlot[] inputslots)
 ---> System.NotImplementedException: The method or operation is not implemented.
   at HarmonyLib.PatchFunctions.UpdateWrapper(MethodBase original, PatchInfo patchInfo)
   at HarmonyLib.PatchClassProcessor.ProcessPatchJob(Job job)
   --- End of inner exception stack trace ---
   at HarmonyLib.PatchClassProcessor.ReportException(Exception exception, MethodBase original)
   at HarmonyLib.PatchClassProcessor.Patch()
   at HarmonyLib.Harmony.<PatchAll>b__10_0(Type type)
   at HarmonyLib.CollectionExtensions.Do[T](IEnumerable`1 sequence, Action`1 action)
   at HarmonyLib.Harmony.PatchAll(Assembly assembly)
   at XSkills.XSkills.DoHarmonyPatch(ICoreAPI api)
   at XSkills.XSkills.StartServerSide(ICoreServerAPI api)
   at Vintagestory.Common.ModLoader.TryRunModPhase(Mod mod, ModSystem system, ICoreAPI api, ModRunPhase phase) in C:\Users\Tyron\Documents\vintagestory\game\VintagestoryLib\Common\API\ModLoader.cs:line 636
21.10.2023 04:17:55 [Server Error] Failed to start system XSkills.XSkills

 

hope someone can help

Solved it, .Net7 was outdated on linux.

Link to comment
Share on other sites

Hi o/

I'm not sure if this is an unreasonable ask, but would it be possible to add a toggle hotkey for the Cateyes and Steeplechaser abilities please? The Cateyes brightness seems to be glitching out in different light sources and not adjusting back when in light, making it way brighter (blinding bright) than it should be. While the Steeplechaser ability level 2 causes you to have issues with walking in 2-3 block high rooms where you constantly float towards the ceiling.

 

Link to comment
Share on other sites

On 10/21/2023 at 2:43 PM, Rivernoodl said:

Currently the only known “exploit” I know of is when players spend extra time and resources to batch make stacking food to increase their quality far beyond normal means - but on a multiplayer server, this requires a lot of time and resorces to produce something viable.  I think it would be more fair to allow this but with diminishing returns - although it does seem like it diminishes from my own experimentation - so that players may actually use this as a rewarding way to hone their craft.

you can boost food quality into the hundreds of thousands with rather little effort. I have to consider disabling the food quality skills entirely for now, cause its quite bad.

 

22 hours ago, Flamove said:

Hi o/

I'm not sure if this is an unreasonable ask, but would it be possible to add a toggle hotkey for the Cateyes and Steeplechaser abilities please? The Cateyes brightness seems to be glitching out in different light sources and not adjusting back when in light, making it way brighter (blinding bright) than it should be. While the Steeplechaser ability level 2 causes you to have issues with walking in 2-3 block high rooms where you constantly float towards the ceiling.

 

hotkeys for these abilities would be amazing. I cannot stand either ability always being enabled.

Link to comment
Share on other sites

Howdy!

Crashing on a new created world with just Xskills and Xlib installed on the 1.19 pre-5!

Spoiler
Running on 64 bit Windows with 16271 MB RAM
EMTK Version: 3.0.5
Game Version: v1.19.0-pre.5 (Unstable)
11/4/2023 4:33:21 PM: Critical error occurred in the following mod: xskills@0.7.5
Loaded Mods: game@1.19.0-pre.5, creative@1.19.0-pre.5, survival@1.19.0-pre.5, xskills@0.7.5
System.NullReferenceException: Object reference not set to an instance of an object.
   at XSkills.NightVisionRenderer.OnRenderFrame(Single deltaTime, EnumRenderStage stage)
   at Vintagestory.Client.NoObf.ClientEventManager.TriggerRenderStage(EnumRenderStage stage, Single dt) in VintagestoryLib\Client\Util\ClientEventManager.cs:line 199
   at Vintagestory.Client.NoObf.ClientMain.TriggerRenderStage(EnumRenderStage stage, Single dt) in VintagestoryLib\Client\ClientMain.cs:line 793
   at Vintagestory.Client.NoObf.ClientMain.RenderAfterFinalComposition(Single dt) in VintagestoryLib\Client\ClientMain.cs:line 935
   at Vintagestory.Client.GuiScreenRunningGame.RenderAfterFinalComposition(Single dt) in VintagestoryLib\Client\MainMenu\Screens\GuiScreenRunningGame.cs:line 219
   at Vintagestory.Client.ScreenManager.Render_Patch0(ScreenManager this, Single dt)
   at Vintagestory.Client.ScreenManager.OnNewFrame(Single dt) in VintagestoryLib\Client\ScreenManager.cs:line 643
   at Vintagestory.Client.NoObf.ClientPlatformWindows.window_RenderFrame(FrameEventArgs e) in VintagestoryLib\Client\ClientPlatform\GameWindow.cs:line 78
   at OpenTK.Windowing.Desktop.GameWindow.Run()
   at Vintagestory.Client.ClientProgram.Start(ClientProgramArgs args, String[] rawArgs) in VintagestoryLib\Client\ClientProgram.cs:line 322
   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

 

 

Link to comment
Share on other sites

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.