I'd love for a optional version with just the name on the items. Everything else I'm fine with vanilla inventory so I don't need full download (and the possible incompatibilities), but the name on the icons would be such a better thing.
I do not use the Extended HUD mod so please take my answer with caution.
Judging from the archive I just downloaded now, both mods should be able to run together.
Yet, you _will have to_ run Script Merger to merge the inventoryMenu.ws files.
I am almost sure there will be at least one conflict around line #118. Depending on your mod configuration, things may be different. Make sure to pick logic from both ExtendedHUD mod and SIT mod. The order will not matter as long as all the following lines are in the final file:
Hey ! Could you add additional file of current version that is compatible with Friendly HUD ? I just downloaded the newest one and tried to merge the scripts myself but unfortunately I was unsuccessful. I have really little expierience with those matters and I would love to use yours mod. An explanation on the order of choosing the right scripts in conflicts(6) could work instead as well.
I just came back from holidays. I'll try to update files with latest Friendly HUD files in the upcoming days. Since I do not use Friendly HUD myself, I cannot guide you really well in merging until I try myself.
The overall guidelines would be:
The first conflict is often in the file header due to my files being encoded in UTF-8 (Witcher team encoded in UTF-16, but UTF-16 is not recognized as text file when using git, so I changed the encoding) --> Pick any side, it will not matter.
Then, for other conflict, usually, you want both sides: you need Friendly HUD _and_ SIT. Exceptions to this rule are related to shared logic in both mods. To my current knowledge, only the default tab is handled by both mods, you have to choose either the Friendly HUD logic, or SIT logic regarding this feature. You cannot have both.
Again, if this is not very clear, please wait few days, I'll update files.
2. Run ScriptMerger. Select inventoryMenu.ws (the only conflicting file usually) and trigger merge
3. Use the double down/up arrows in the icon bar to navigate to next/previous conflict
4. For each conflict, in the bottom window, select lines from B (one mod) or C (the other one). A is the default file, not really needed. Usually, on conflicts, you cannot have B and C logic. At least with FriendlyHUD and SIT, it is not possible since both mod compete to do equivalent things: sorting menus tabs.
5. No more conflict, but to make sure that the default tab opens on quest when new quest items are picked up, I have to remove the 'reset new flag item' logic from FriendlyHUD as well. There is no conflict, yet again both mods compete against each other. Use the single down/up arrow to navigate to next/previous difference, and any time you see FriendlyHUD logic related to 'reset new flag', undo the automatic merge and keep only SIT logic.
6. Quit, when prompted choose to save and you are done.
Thanks ! Everything seems to work like a charm now.
It took me few tries to get the merge correctly but I guess it will be easier for me the more I do it. There were 6 conflicts total, and what worked for me was chosing SIT logic in first 3 where command "set new item flag" was concerned and for the other 3 I used FHUD logic. It was the only combination that allowed me to run the game and like I said all features seem to work correctly.
Error [modsortedinventorytabs]game\gui\_old\components\guiplayerinventorycomponent.ws(461): Could not find function 'CreateSortableForFlashObject' Error [modsortedinventorytabs]game\gui\menus\mod_sit\shop\shoppotionsorter.ws(13): Could not find function 'ExtractRegenEffect' Error [modsortedinventorytabs]game\gui\menus\mod_sit\potionsorter.ws(117): Could not find function 'ExtractRegenEffect'
Sorry about the (very) late answer. These errors are often - if not always - related to mod incompatibilities.
When you install two mods that alter the same files, you need to merge the files. Unfortunately, this limitation comes from the game engine itself. If you forget to merge or if make an error, the mod compilation will throw this kind of error. Should you happen to still encounter issues, let me know which mod you are trying to install. I'll try my best to help with the merge.
Sorry for the late answer. You can alter yourself the order, while not being very user friendly (yet?) it should be very quick to achieve the desired result.
First you need a decent text editor. With decent, I mean a developer editor. There are a lot of tools (most often free, as in free software and free pricing). I personally use Scite on Windows because it is very light, you do not even need to install it. You also have Notepad++ which is quite renowned. In short, pick the editor of your choice. The only rule: do not use Word or Notepad (without + sign) or any default editor installed with Windows.
Ok, now that the editor is launched, open a file (if there is a filter dropdown list, select "All files"). Navigate to: <Witcher Install Dir>/mods/modSortedInventoryTabs/content/scripts/game/gui/menus/mod_sit
Open potionSorter.ws
On the top of the file, there are some comments enclosed with the symbols /* */. Everything between these symbols is ignored by the game. It is there to give you guidance about editing the file.
Just after, there is an enumeration of categories. For each category, there is an index associated indicating the global position in the tab. By modifying index, you will alter the sort order.
To obtain the desired output (steel oils > silver oils > potions > BOMBS > decoctions > other items), you simply have to swap mutagens (a.k.a decoctions) and bombs index such as :
/* Change order of elements in the tab by modifying the indexes Make sure to use unique continuous positive integers starting at 0 Categories are sorted by these index (first, items of the category 0, then items of the category 1, and so on...) */ enum SitPotionCategory { SITPC_steel_oil = 0, SITPC_silver_oil = 1, SITPC_potion = 2, SITPC_mutagen = 4, SITPC_bomb = 3, SITPC_other= 5, SITPC_quest= 6, }
Save the file, restart the game, let it recompile the mod, open your inventory, and voila.
Hi When I merge sortedinventoryTabs, I have this message: Error [mod0000_merged files] game \ gui \ menus \ inventorymenu.ws (183): I dont know any 'm_fxStashBg' Error [mod0000_mergedfiles] game \ gui \ menus \ inventorymenu.ws (802): I dont know any 'm_fxStashBg' Hoping that you have the solution, thank you in advance.
Apparently the variable m_fxStashBg comes from another mod. It is not from the legacy game scripts. I think that when merging, you forgot to pick some part from the other mod and the merged script is now incomplete.
I may be able to help you merging providing you give me the other mod name and the expected result: do you want SIT and that other mod to be both active, or do you want one mod to override the other mod logic?
The merged mods are: Better Marchand, Enhanced Menu, Friendly Hud Never Emcombred; no problem. If I add your mod, Error! 'm_fxStashBg' just Enhanced Menu.
Found the issue. In fact, you overwrote 2 lines from Enhanced Menus with lines coming from SIT. This happens when two mod authors change the same lines (or close enough to be considered as "same" by the diff tool).
In this particular type of merge, you do not want one mod to replace another, you want both mods logic to be enabled: so you must make sure that the final version of the file contains the following lines:
// < Mod Enhanced Menus > private var m_fxStashBg = CScriptedFlashObjecct;
// ++ modSortedInventoryTabs ++ private var _sitListener = ....; private var .... // -- modSortedInventoryTabs --
I did the merge operation (using the latest version of Enhanced Menus and SIT only, since I already provide a merged version with FriendlyHUD I let it out of the equation). I made few screenshots. Check the images tab to see them.
I'll gladly listen to any improvement or request. By consumables, do you mean edibles (water, chicken, ham, berries ...) only or every kind of usable items ? Depending on the answer, it could change a lot of things ;-)
Edibles only => very simple mod update, easily done All consumables => changes a lot of things, I'll need to think how I can do it with minimal impact.
Feature is on its way. It will take longer than I thought at first: I can obtain durations for some items (everluce wine ...) but other food and drink items hide their statistics somewhere. Need to find where.
1.3.1 out. Sort food by vitality regen: longest and highest potential of vitality recovered first. Order is reversed when dealing with a NPC (tavern innkeeper) to quickly unclutter the inventory.
Did minimal tests, I am not certain the comparison algorithm will be valid when playing the DLC hearts of stone though.
Have you considered any sorting on the completed quests? I find the vanilla version of the completed quests tab absolutely intractable. Even sorting alphabetically by quest name would be enough for me.
This is an interesting request. And, at first glance, quite simple. It seems to require a modification in one game legacy script only: journalQuestMenu. Unfortunately, I will not be able to release anything until November the 14th at least. I promised my wife I'd stay away from modding during holidays ;-)
Hi, the default tab is correctly set to potions when I open the inventory, but the oils, potions and bombs aren't sorted as in your image, they are still in their default position. Script merger doesn't show any conflict with other mod so I have no idea why it doesn't work, unless I'm doing something wrong.
Do you use a gamepad? If so the game engine is overriding this mod output and automatically perform a quick sort action before displaying the items. You can check this by switching on keyboard/mouse: try to quick sort items, they'll be in same order as gamepad.
Yes I'm using a gamepad and the potions switch to your order when using keyboard/mouse, but they reverse to their default order when switching to gamepad again. Is there a way to fix it?
I'm working on it. Unfortunately, it involves manipulating binary files of a proprietary format currently unsupported by official mod kit tools. Currently, I can restore the SIT logic, but the inventory is no longer correctly displayed (no icons, no background images ...).
Unless some official tool lands shortly after the DLC release, I think that it will take a while before I can publish something.
No problem then, thanks for the reply. I will just have to make a habit of opening the inventory with the keybord when I want to quickly apply an oil or drink a potion. It can work this way
Maybe you'll find this more interesting: install antimicro. That's a great, and lightweight, open source software allowing to remap your controller keys to anything (keyboard/mouse ...): https://github.com/Ryochan7/antimicro/releases (the win64 zip is perfect).
Remap the button pausing the game to 'I' to open the inventory. That way, you still keep the keyboard near you, but instead of needing it each time you need to access the inventory, you only need it when accessing the game menu (which in my case happens much more rarely).
Take care though that navigating between tabs inside the inventory will again shuffle all items. It works only for the first tab opened.
55 comments
Everything else I'm fine with vanilla inventory so I don't need full download (and the possible incompatibilities), but the name on the icons would be such a better thing.
It is compatible with the extended HUD, too?
I do not use the Extended HUD mod so please take my answer with caution.
Judging from the archive I just downloaded now, both mods should be able to run together.
Yet, you _will have to_ run Script Merger to merge the inventoryMenu.ws files.
I am almost sure there will be at least one conflict around line #118. Depending on your mod configuration, things may be different.
Make sure to pick logic from both ExtendedHUD mod and SIT mod. The order will not matter as long as all the following lines are in the final file:
// ----- modExtendedHUD ----- //
private var inGameConfig : CInGameConfigWrapper;
// ----- modExtendedHUD ----- //
// ++ modSortedInventoryTabs ++
private var _sitListener : SitListener;
private var _sitHasNewQuestItem: bool;
// -- modSortedInventoryTabs --
Any feedback would be appreciated so that I can update the mod installation guideline if need be.
Regards.
KUDOS for the mod.
sorry bad english
An explanation on the order of choosing the right scripts in conflicts(6) could work instead as well.
I just came back from holidays. I'll try to update files with latest Friendly HUD files in the upcoming days.
Since I do not use Friendly HUD myself, I cannot guide you really well in merging until I try myself.
The overall guidelines would be:
The first conflict is often in the file header due to my files being encoded in UTF-8 (Witcher team encoded in UTF-16, but UTF-16 is not recognized as text file when using git, so I changed the encoding) --> Pick any side, it will not matter.
Then, for other conflict, usually, you want both sides: you need Friendly HUD _and_ SIT. Exceptions to this rule are related to shared logic in both mods. To my current knowledge, only the default tab is handled by both mods, you have to choose either the Friendly HUD logic, or SIT logic regarding this feature. You cannot have both.
Again, if this is not very clear, please wait few days, I'll update files.
Regards.
Done. Here is how I perform this task.
1. Install both mods
2. Run ScriptMerger. Select inventoryMenu.ws (the only conflicting file usually) and trigger merge
3. Use the double down/up arrows in the icon bar to navigate to next/previous conflict
4. For each conflict, in the bottom window, select lines from B (one mod) or C (the other one). A is the default file, not really needed. Usually, on conflicts, you cannot have B and C logic. At least with FriendlyHUD and SIT, it is not possible since both mod compete to do equivalent things: sorting menus tabs.
5. No more conflict, but to make sure that the default tab opens on quest when new quest items are picked up, I have to remove the 'reset new flag item' logic from FriendlyHUD as well. There is no conflict, yet again both mods compete against each other. Use the single down/up arrow to navigate to next/previous difference, and any time you see FriendlyHUD logic related to 'reset new flag', undo the automatic merge and keep only SIT logic.
6. Quit, when prompted choose to save and you are done.
Regards
It took me few tries to get the merge correctly but I guess it will be easier for me the more I do it. There were 6 conflicts total, and what worked for me was chosing SIT logic in first 3 where command "set new item flag" was concerned and for the other 3 I used FHUD logic. It was the only combination that allowed me to run the game and like I said all features seem to work correctly.
Error [modsortedinventorytabs]game\gui\_old\components\guiplayerinventorycomponent.ws(461): Could not find function 'CreateSortableForFlashObject'
Error [modsortedinventorytabs]game\gui\menus\mod_sit\shop\shoppotionsorter.ws(13): Could not find function 'ExtractRegenEffect'
Error [modsortedinventorytabs]game\gui\menus\mod_sit\potionsorter.ws(117): Could not find function 'ExtractRegenEffect'
Please provide fix.
Sorry about the (very) late answer.
These errors are often - if not always - related to mod incompatibilities.
When you install two mods that alter the same files, you need to merge the files. Unfortunately, this limitation comes from the game engine itself. If you forget to merge or if make an error, the mod compilation will throw this kind of error. Should you happen to still encounter issues, let me know which mod you are trying to install. I'll try my best to help with the merge.
Regards.
Sorry for the late answer. You can alter yourself the order, while not being very user friendly (yet?) it should be very quick to achieve the desired result.
First you need a decent text editor. With decent, I mean a developer editor. There are a lot of tools (most often free, as in free software and free pricing). I personally use Scite on Windows because it is very light, you do not even need to install it. You also have Notepad++ which is quite renowned. In short, pick the editor of your choice. The only rule: do not use Word or Notepad (without + sign) or any default editor installed with Windows.
Ok, now that the editor is launched, open a file (if there is a filter dropdown list, select "All files"). Navigate to:
<Witcher Install Dir>/mods/modSortedInventoryTabs/content/scripts/game/gui/menus/mod_sit
Open potionSorter.ws
On the top of the file, there are some comments enclosed with the symbols /* */. Everything between these symbols is ignored by the game. It is there to give you guidance about editing the file.
Just after, there is an enumeration of categories. For each category, there is an index associated indicating the global position in the tab. By modifying index, you will alter the sort order.
To obtain the desired output (steel oils > silver oils > potions > BOMBS > decoctions > other items), you simply have to swap mutagens (a.k.a decoctions) and bombs index such as :
/*
Change order of elements in the tab by modifying the indexes
Make sure to use unique continuous positive integers starting at 0
Categories are sorted by these index (first, items of the category 0, then items of the category 1, and so on...)
*/
enum SitPotionCategory
{
SITPC_steel_oil = 0,
SITPC_silver_oil = 1,
SITPC_potion = 2,
SITPC_mutagen = 4,
SITPC_bomb = 3,
SITPC_other= 5,
SITPC_quest= 6,
}
Save the file, restart the game, let it recompile the mod, open your inventory, and voila.
Regards.
When I merge sortedinventoryTabs, I have this message:
Error [mod0000_merged files] game \ gui \ menus \ inventorymenu.ws (183): I dont know any 'm_fxStashBg'
Error [mod0000_mergedfiles] game \ gui \ menus \ inventorymenu.ws (802): I dont know any 'm_fxStashBg'
Hoping that you have the solution, thank you in advance.
Apparently the variable m_fxStashBg comes from another mod. It is not from the legacy game scripts.
I think that when merging, you forgot to pick some part from the other mod and the merged script is now incomplete.
I may be able to help you merging providing you give me the other mod name and the expected result: do you want SIT and that other mod to be both active, or do you want one mod to override the other mod logic?
Regards.
If I add your mod, Error!
'm_fxStashBg' just Enhanced Menu.
Found the issue. In fact, you overwrote 2 lines from Enhanced Menus with lines coming from SIT. This happens when two mod authors change the same lines (or close enough to be considered as "same" by the diff tool).
In this particular type of merge, you do not want one mod to replace another, you want both mods logic to be enabled: so you must make sure that the final version of the file contains the following lines:
// < Mod Enhanced Menus >
private var m_fxStashBg = CScriptedFlashObjecct;
// ++ modSortedInventoryTabs ++
private var _sitListener = ....;
private var ....
// -- modSortedInventoryTabs --
I did the merge operation (using the latest version of Enhanced Menus and SIT only, since I already provide a merged version with FriendlyHUD I let it out of the equation). I made few screenshots. Check the images tab to see them.
Question (suggestion) if possible: sort consumables by duration of effects; 10s and 5s
You're welcome. Glad it works.
I'll gladly listen to any improvement or request. By consumables, do you mean edibles (water, chicken, ham, berries ...) only or every kind of usable items ? Depending on the answer, it could change a lot of things ;-)
Edibles only => very simple mod update, easily done
All consumables => changes a lot of things, I'll need to think how I can do it with minimal impact.
Regards.
Only: beer, milk, ham, mushroom, etc
1.3.1 out. Sort food by vitality regen: longest and highest potential of vitality recovered first. Order is reversed when dealing with a NPC (tavern innkeeper) to quickly unclutter the inventory.
Did minimal tests, I am not certain the comparison algorithm will be valid when playing the DLC hearts of stone though.
Regards.
Thank you. This is what I expected.
Hearts of Stone installed, but I have not started this DLC quest.
Good holidays
I find the vanilla version of the completed quests tab absolutely intractable.
Even sorting alphabetically by quest name would be enough for me.
This is an interesting request. And, at first glance, quite simple. It seems to require a modification in one game legacy script only: journalQuestMenu.
Unfortunately, I will not be able to release anything until November the 14th at least. I promised my wife I'd stay away from modding during holidays ;-)
Do you use a gamepad?
If so the game engine is overriding this mod output and automatically perform a quick sort action before displaying the items. You can check this by switching on keyboard/mouse: try to quick sort items, they'll be in same order as gamepad.
I'm working on it. Unfortunately, it involves manipulating binary files of a proprietary format currently unsupported by official mod kit tools. Currently, I can restore the SIT logic, but the inventory is no longer correctly displayed (no icons, no background images ...).
Unless some official tool lands shortly after the DLC release, I think that it will take a while before I can publish something.
Remap the button pausing the game to 'I' to open the inventory. That way, you still keep the keyboard near you, but instead of needing it each time you need to access the inventory, you only need it when accessing the game menu (which in my case happens much more rarely).
Take care though that navigating between tabs inside the inventory will again shuffle all items. It works only for the first tab opened.