[A16] Maarx's QoL\UI Mod Thread

Started by maarx1337, April 12, 2017, 03:11:16 PM

Previous topic - Next topic

maarx1337

Maarx's QoL\UI Mod Thread



I have suddenly developed an unexpected hobby of writing my own RimWorld mods for my own enjoyment. After several weeks of development, I have developed an entire collection of such mods. With some hesitation, I am ready to share my mods with the rest of the community.

These mods are not "content" mods, they are "QoL" / "UI" mods, and are "vanilla friendly". That is to say, you will not find shiny new laser beam weapons, or tanks, or helicopters, or aliens. Rather, you will find basic enhancements to the user interface in order to make playing RimWorld more convenient and enjoyable, with less time spent redundantly clicking, and more time spent making exciting and intelligent decisions.

Also, these mods are not comprehensive or standalone, but are rather intended to plug very specific gaps in the existing mod scene. If a feature was already available in another QoL/UI mod, these mods do not duplicate that work, but are rather intended to complement that work, and stand alongside it.

I manage my mods in public GitHub repositories, and have written detailed README files in those locations, with complete Introductions and Explanations, Specific Additional Features, How to Install, How to Update, how to preview the beta, how to report bugs, and how to request or suggest new features.

With your forgiveness, I will not copy/paste those entire descriptions into this forum, I will simply link you to them. This is because I will continue to regularly update those README files, but will probably not remember to come back here and regularly update these forum descriptions.

For each mod, I'll provide just a single sentence summary. If the mod sounds interesting, please click the link (and then scroll down a bit) to find all of the detail and instructions you could want.

Without further ado, the list.



PrioritizedHauling:

Allows you to specify certain types of objects to be hauled at higher priority, in a customizable order.

https://github.com/maarxx/PrioritizedHauling


BulkDesignator:

Provides some functions for bulk manipulation of designators, such as Cut Plants & Hunt, and bulk Medical Operations across multiple humanoids and mechanoids.

https://github.com/maarxx/BulkDesignator


BulkAssigner:

Provides some functions for bulk manipulation of assign functions, such as Hostility Reponse Mode, Outfit, Drug Policy, and Allowed Areas.

https://github.com/maarxx/BulkAssigner


MoreAlerts:

Offers more Alerts in the righthand sidebar that players might be interested in. There are many here, please see the link for a complete list, but the most interesting include hunting animals, mechanoids, rocket launchers, pawns which might die from disease, doors which are blocked open, and escaping prisoners.

https://github.com/maarxx/MoreAlerts


AccuraSight:

Updates the labels on weapons to show Accuracy% for ranged weapons and DPS for melee weapons.

Enhances sorting options in Merchant windows, and in mods like Moody and Numbers.

https://github.com/maarxx/AccuraSight


InjuryNotifier:

Notifies you when a Pawn suffers a permanent Injury.

https://github.com/maarxx/InjuryNotifier


UberMicro:

Provides button in-game to toggle mode on and off. When mode is on, then it pauses game and gives letter notification whenever a prioritized job is complete. Useful in emergency situations.

https://github.com/maarxx/UberMicro


SmarterScheduling:

Automatically manages your Pawn's Sleep, Joy, and Work cycles.

https://github.com/maarxx/SmarterScheduling


ToxicFalloutManager:

Automatically manages Allowed Area in response to Toxic Fallout.

https://github.com/maarxx/ToxicFalloutManager


ExtraClothes:

Provides additional duplicate Clothing items, identical to Vanilla, intended for managing Devilstrand.

https://github.com/maarxx/ExtraClothes


LimitlessSelection:

Removes the limit of only selecting 80 things at a time.

https://github.com/maarxx/LimitlessSelection


UdderlyImpractical:

Stops your pawns from drinking the milk.

https://github.com/maarxx/UdderlyImpractical


Licensing:

  • Can modpack makers include your mod in their modpack? Yes, feel free.
  • Can other modders make derivative mods based on yours? Yes, feel free.

How to Download and Install:

  • Click the GitHub link for the mod, and then, on the right-hand-side, click "Clone or Download" and then "Download ZIP".
  • Unzip the contents and place them in your RimWorld/Mods folder.
  • Activate the mod in the mod menu in the game.

faltonico

Would Prioritized Hauling be compatible with Refactored Work Priorities or Hand me that Brick?
Thank you for the mods!.

maarx1337

Quote from: faltonico on April 12, 2017, 04:33:21 PM
Would Prioritized Hauling be compatible with Refactored Work Priorities or Hand me that Brick?
Thank you for the mods!.

I think it should be compatible. Prioritized Hauling doesn't change any of the existing WorkGivers, it just adds a new WorkGiver.

Give it a whirl! If there's an issue, let me know. :)

Dr_Zhivago

#3
Will read through and try out some of them.


Edit: Question answered through reading heh heh. Also...

I put quotes around things I percieved as errors. Just pointing them out b/c I know editing is a pain in the ass and typos cause unwanted confusion.

Grammar/Spelling:
SmarterScheduling - When they wake, they will probably be critically hungry, so the "pawn" will set them to Anything for a moment while they eat.


Finally.... Would it be possible for you to consolidate your mods' added tabs? I already have far too many and my UI is pretty cluttered with these additions.

[attachment deleted by admin due to age]

faltonico

I had a small error with Prioritized Hauling, in the sense i could fix it easily but it was preventing it from working:

Exception filling window for PrioritizedHauling.MainTabWindow_PrioritizedHauling: System.IO.DirectoryNotFoundException: Directory 'C:\RimWorld1393Win\SaveData\PrioritizedHauling\PrioritySets' not found.
  at System.IO.Directory.GetFileSystemEntries (System.String path, System.String searchPattern, FileAttributes mask, FileAttributes attrs) [0x00000] in <filename unknown>:0
  at System.IO.Directory.GetFiles (System.String path, System.String searchPattern) [0x00000] in <filename unknown>:0
  at System.IO.DirectoryInfo.GetFiles (System.String searchPattern) [0x00000] in <filename unknown>:0
  at System.IO.DirectoryInfo.GetFiles (System.String searchPattern, SearchOption searchOption) [0x00000] in <filename unknown>:0
  at (wrapper remoting-invoke-with-check) System.IO.DirectoryInfo:GetFiles (string,System.IO.SearchOption)
  at PrioritizedHauling.SaveLoad_PrioritizedHauling.getAllFiles () [0x00000] in <filename unknown>:0
  at PrioritizedHauling.MainTabWindow_PrioritizedHauling.DoWindowContents (Rect canvas) [0x00000] in <filename unknown>:0
  at HugsLib.GuiInject.WindowDetour+<>c__DisplayClass1.<_WindowOnGUI>b__0 (Int32 x) [0x00000] in <filename unknown>:0
Verse.Log:Error(String)
HugsLib.GuiInject.<>c__DisplayClass1:<_WindowOnGUI>b__0(Int32)
UnityEngine.GUI:CallWindowDelegate(WindowFunction, Int32, GUISkin, Int32, Single, Single, GUIStyle)

Image attached.
Apparently because it couldn't find the PrioritizedHauling\PrioritySets folder. Restarting the game didn't automatically created the folders.
The moment i created the directory, the error stopped in game.

I'm overriding the savedata folder with -savedatafolder=SaveData.

On a side note, a suggestion, can you make the menu for the prioritized hauling float? so it doesn't hide when you click on something?

[attachment deleted by admin due to age]

maarx1337

Quote from: faltonico on April 13, 2017, 02:48:38 AM
I had a small error with Prioritized Hauling, in the sense i could fix it easily but it was preventing it from working:

Exception filling window for PrioritizedHauling.MainTabWindow_PrioritizedHauling: System.IO.DirectoryNotFoundException: Directory 'C:\RimWorld1393Win\SaveData\PrioritizedHauling\PrioritySets' not found.
  at System.IO.Directory.GetFileSystemEntries (System.String path, System.String searchPattern, FileAttributes mask, FileAttributes attrs) [0x00000] in <filename unknown>:0
  at System.IO.Directory.GetFiles (System.String path, System.String searchPattern) [0x00000] in <filename unknown>:0
  at System.IO.DirectoryInfo.GetFiles (System.String searchPattern) [0x00000] in <filename unknown>:0
  at System.IO.DirectoryInfo.GetFiles (System.String searchPattern, SearchOption searchOption) [0x00000] in <filename unknown>:0
  at (wrapper remoting-invoke-with-check) System.IO.DirectoryInfo:GetFiles (string,System.IO.SearchOption)
  at PrioritizedHauling.SaveLoad_PrioritizedHauling.getAllFiles () [0x00000] in <filename unknown>:0
  at PrioritizedHauling.MainTabWindow_PrioritizedHauling.DoWindowContents (Rect canvas) [0x00000] in <filename unknown>:0
  at HugsLib.GuiInject.WindowDetour+<>c__DisplayClass1.<_WindowOnGUI>b__0 (Int32 x) [0x00000] in <filename unknown>:0
Verse.Log:Error(String)
HugsLib.GuiInject.<>c__DisplayClass1:<_WindowOnGUI>b__0(Int32)
UnityEngine.GUI:CallWindowDelegate(WindowFunction, Int32, GUISkin, Int32, Single, Single, GUIStyle)

Image attached.
Apparently because it couldn't find the PrioritizedHauling\PrioritySets folder. Restarting the game didn't automatically created the folders.
The moment i created the directory, the error stopped in game.

I'm overriding the savedata folder with -savedatafolder=SaveData.

Thanks for the report! I replicated the bug and fixed it. This one fast-tracked the beta-testing and earned a quick release to production, so it is fixed now in the master download.

maarx1337

Quote from: faltonico on April 13, 2017, 02:48:38 AMOn a side note, a suggestion, can you make the menu for the prioritized hauling float? so it doesn't hide when you click on something?

I think this is in the definition of a MainTab (those buttons along the very bottom), I think all MainTabs behave this way, collapsing when you click out of them.

I could consider it, but it wouldn't be a simple change. Do you have an example of another mod's MainTab that behaves the way you're describing?

SpaceDorf

Cool .. some of those Notifications I never thought of, and I now wonder why :)

I will try out all of them.
Maxim 1   : Pillage, then burn
Maxim 37 : There is no overkill. There is only open fire and reload.
Rule 34 of Rimworld :There is a mod for that.
Avatar Made by Chickenplucker

faltonico

Quote from: maarx1337 on April 14, 2017, 10:05:35 AM
Quote from: faltonico on April 13, 2017, 02:48:38 AMOn a side note, a suggestion, can you make the menu for the prioritized hauling float? so it doesn't hide when you click on something?

I think this is in the definition of a MainTab (those buttons along the very bottom), I think all MainTabs behave this way, collapsing when you click out of them.

I could consider it, but it wouldn't be a simple change. Do you have an example of another mod's MainTab that behaves the way you're describing?
I was thinking about Moody, that has a floating window for what i can see from the previews (i haven't used it), i don't really know if that is a MainTab, it probably isn't.
Thank you for even consider it :)

Canute

SmarterScheduling:
First at all, a very nice idea, but need a bit fine tuning.
At example a pawn will take another meal and eat it, because he is at 0.99 and not full.
I think you should lower the threshold to 0.9.

And the schedule is allways disabled after a loading.

SpaceDorf

Moody is a good example for a constructive change ..
The other option would be a HugsLib Menu.

The Number of additional Tabs is a bit annoying . And placing them on the right side of the menu Tab even more so .. please leave the games Menu on the right.

I like the additional Clothes, but I suggest a additional Clothing Submenu ..

The Hauling Priorities did not work for me .. I don't know if any of the additions to the list actually worked, because the mod gave me no feedback ...

More Alerts and Injury Notifier on the other Hand are a great Idea and have a place in my collection now.

Maxim 1   : Pillage, then burn
Maxim 37 : There is no overkill. There is only open fire and reload.
Rule 34 of Rimworld :There is a mod for that.
Avatar Made by Chickenplucker

maarx1337

#11
Quote from: Canute on April 16, 2017, 05:23:52 AMSmarterScheduling:
First at all, a very nice idea, but need a bit fine tuning.
At example a pawn will take another meal and eat it, because he is at 0.99 and not full.
I think you should lower the threshold to 0.9.

Thanks for the report.

I opened a ticket for pawns eating excessively: https://github.com/maarxx/SmarterScheduling/issues/79

However, I haven't seen this behavior myself and haven't been able to replicate it.

If you (or anyone else) could provide any more detail (here or in the github ticket) that would be great.

Quote from: Canute on April 16, 2017, 05:23:52 AMSmarterScheduling:
And the schedule is allways disabled after a loading.

The fact that it is currently always disabled after Save/Load is Working as Designed at the moment. I suppose it is not perfect, but thus far we have avoided adding anything unnecessary into a save file. It is only a couple clicks each Load to re-enable it.

maarx1337

#12
Quote from: SpaceDorf on April 16, 2017, 06:42:21 AMI like the additional Clothes, but I suggest a additional Clothing Submenu ..

That is an interesting thought. You mean like in the Stockpile menu / the Outfit menu? A nested category? Inside of "Apparel"?

The default/vanilla clothing doesn't have a subcategory. Would it be a subcategory for just the mod clothing, or would you suggest we move the default/vanilla clothing into another subcategory as wel?

Quote from: SpaceDorf on April 16, 2017, 06:42:21 AM
The Hauling Priorities did not work for me .. I don't know if any of the additions to the list actually worked, because the mod gave me no feedback ...

Could you provide a little more detail? It is easier to see for sure if you are using something like Fluffy's WorkTab. Are you using that? Can you expand it out into Detailed mode, to see the individual WorkGivers? Can you see "Haul Prioritized Things" just to the left of "Haul General Things"?

You can see the list, as it is currently defined, in order, by clicking "Increment" or "Decrement" or "Remove", and then just move your cursor away from the menu without clicking to close it without making any changes. Do you see items in the list?

If you put "Haul Prioritized Things" as a higher numeric priority, and if you see items in the list, do the pawns haul those items accordingly? They should.

If you are not using something like Fluffy's Work Tab, it might be a little harder to intuitively understand, but there are still other WorkGivers ahead of this one within Hauling, such as "Haul corpses" and "Refuel fuelable buildings" and "Rearm traps" and "Do cremation bills" and "Do bills at campfire".

We don't put ourselves above any of those in priority, just above "Haul general things".

Quote from: SpaceDorf on April 16, 2017, 06:42:21 AM
More Alerts and Injury Notifier on the other Hand are a great Idea and have a place in my collection now.

Thanks. :)

SpaceDorf

I suggest a single categorie for your added clothes.

Apparel allready has the sub-category "headgear"
but it would be easier to oversee if you added a sub-category for your apparel.

Some mods allready do this ( like the Modular Power Armor, or the Rimsenal Weapons ) some really should ..

Moving Vanilla gear is a bad Idea, it would make your mod incompatible with everything else.

I will recheck that stuff with the workgivers next time, but I could not see a list generated by your haul-priority mod
Maxim 1   : Pillage, then burn
Maxim 37 : There is no overkill. There is only open fire and reload.
Rule 34 of Rimworld :There is a mod for that.
Avatar Made by Chickenplucker

deshara218

i hate that I only just now got these into my directory >:(