[1.5] Allow Tool (3.13.0) - The Rimworld Multitool

Started by UnlimitedHugs, January 01, 2016, 04:46:25 AM

Previous topic - Next topic

LuminaryXion

I keep getting an error :(


QuoteMod RimworldAllowTool-3.2.3 has incorrectly formatted target version 'Unknown'. For the current version, write: <targetVersion>0.17.1557</targetVersion>
Verse.Log:Error(String)
Verse.Log:ErrorOnce(String, Int32)
Verse.ModMetaData:Init()
Verse.ModMetaData:.ctor(String)
Verse.ModLister:RebuildModList()
Verse.ModLister:.cctor()
Verse.<>c__Iterator212:MoveNext()
Verse.<>c__Iterator212:MoveNext()
System.Collections.Generic.List`1:AddEnumerable(IEnumerable`1)
System.Collections.Generic.List`1:.ctor(IEnumerable`1)
System.Linq.Enumerable:ToList(IEnumerable`1)
Verse.LoadedModManager:LoadAllActiveMods()
Verse.PlayDataLoader:DoPlayLoad()
Verse.PlayDataLoader:LoadAllPlayData(Boolean)
Verse.Root:<Start>m__84E()
Verse.LongEventHandler:RunEventFromAnotherThread(Action)
Verse.LongEventHandler:<UpdateCurrentAsynchronousEvent>m__84C()

SpaceDorf

#166
Quote from: Little Hell on July 19, 2017, 01:53:59 PM
Quote from: UnlimitedHugs on July 19, 2017, 12:54:33 PMYou're in luck- this can already be done with the "Select similar" tool. Select a healroot, then use the right-click menu action on Select similar. Bam, all healroot selected. Now just click "Harvest", and you're good to go.
Another great combination is select similiar for ores if you are looking for specific ores on your map .. and then mark them with the planning tool,

or on small encounter maps select similiar then mine adjectent ores ..

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

UnlimitedHugs

Quote from: LuminaryXion on July 26, 2017, 07:45:08 AM
I keep getting an error :(

Make sure you installed the mod correctly. Your folder structure should look something like: Rimworld/Mods/AllowTool/About/About.xml
HugsLib - AllowTool - Remote Tech - Map Reroll - Defensive Positions: Github, Steam

LuminaryXion

Quote from: UnlimitedHugs on July 26, 2017, 10:18:39 AM
Your folder structure should look something like: Rimworld/Mods/AllowTool/About/About.xml

That was it! The zip folder had an extra 2 layers of weird stuff in it. All better now, thank you!

faltonico

The lag when selecting several items is massive, like "omg my pc is a bout to explode" kind of lag, it doesn't even have to be many items... Is there a way to reduce that on my side other than not using the select similar tool?

UnlimitedHugs

Quote from: faltonico on August 12, 2017, 02:01:02 AM
The lag when selecting several items is massive, like "omg my pc is a bout to explode" kind of lag, it doesn't even have to be many items... Is there a way to reduce that on my side other than not using the select similar tool?

Indeed there is! I have included a setting for that in the usual Mod Options menu.
I think the vanilla limit is around 60 items, for reference.
HugsLib - AllowTool - Remote Tech - Map Reroll - Defensive Positions: Github, Steam

faltonico

Quote from: UnlimitedHugs on August 12, 2017, 03:10:02 PM
Quote from: faltonico on August 12, 2017, 02:01:02 AM
The lag when selecting several items is massive, like "omg my pc is a bout to explode" kind of lag, it doesn't even have to be many items... Is there a way to reduce that on my side other than not using the select similar tool?

Indeed there is! I have included a setting for that in the usual Mod Options menu.
I think the vanilla limit is around 60 items, for reference.
Thank you for pointing that out!
Question though... why 60? and why the lag in the first place? there was a mod in A16 that removed the 80 selection limit and you could select everything on screen: https://ludeon.com/forums/index.php?topic=31716.msg327902#msg327902 i didn't have any trouble with that.

faltonico

new post for new issue.
I got this one after generating a new map via huglibs generate map feature on start:
[AllowTool][ERR] Exception during PrepareContextMenus: System.InvalidOperationException: Collection was modified; enumeration operation may not execute.
  at System.Collections.Generic.List`1+Enumerator[Verse.Designator].VerifyState () [0x00000] in <filename unknown>:0
  at System.Collections.Generic.List`1+Enumerator[Verse.Designator].MoveNext () [0x00000] in <filename unknown>:0
  at System.Linq.Enumerable+<CreateSelectManyIterator>c__Iterator12`2[Verse.DesignationCategoryDef,Verse.Designator].MoveNext () [0x00000] in <filename unknown>:0
  at AllowTool.Context.DesignatorContextMenuController.PrepareContextMenus () [0x00000] in <filename unknown>:0
Verse.Log:Error(String)
HugsLib.Utils.ModLogger:ReportException(Exception, String, Boolean, String)
AllowTool.Context.DesignatorContextMenuController:PrepareContextMenus()
AllowTool.AllowToolController:WorldLoaded()
HugsLib.HugsLibController:OnPlayingStateEntered()
HugsLib.Patches.Game_FinalizeInit_Patch:WorldLoadedHook()
Verse.Game:FinalizeInit_Patch1(Object)
Verse.Game:InitNewGame()
Verse.Root_Play:<Start>m__850()
Verse.LongEventHandler:RunEventFromAnotherThread(Action)
Verse.LongEventHandler:<UpdateCurrentAsynchronousEvent>m__84C()

UnlimitedHugs

Quote from: faltonico on August 12, 2017, 09:51:09 PM
Question though... why 60? and why the lag in the first place? there was a mod in A16 that removed the 80 selection limit and you could select everything on screen: https://ludeon.com/forums/index.php?topic=31716.msg327902#msg327902 i didn't have any trouble with that.

The limit is due to how selection and command buttons (the ones that appear for select items) are implemented in Rimworld. At some point someone said "Eh, good enough" and moved on to other things- which is generally a smart move.
As for the mod, I'll have to take that apart sometime.

Quote from: faltonico on August 13, 2017, 02:17:10 AM
new post for new issue.
I got this one after generating a new map via huglibs generate map feature on start:

Yep, known issue- its safe to ignore for now. Fix still pending.
HugsLib - AllowTool - Remote Tech - Map Reroll - Defensive Positions: Github, Steam

faltonico

I checked the code of that other mod, it has a detour that is no longer supported by hugslib, you said how to make the translation to harmony patch, but i really didn't get how to do it (i got lost in the prefix or postfix part xDD).

IWannaChaos

I like this mod even more after I replaced the Finish Off audio with the "Finish Him!" line from Mortal Kombat :D

maculator

Just wanted to say thanks for the haul+ part. Was looking for that kind of thing for a long time. I disabled everything but the haul urgently part of the mod, so I cant say how the other stuff plays (exept a few mintes seeing what it does), but the haul+ part is the best thing in the world.

I was thinking about a "Everything+"-Zone. Like you set the zone and everything in it wich gives work will be priority number 1.
But even while I have no idea bout modding I can asume this would be problematic because it essentially doubles the amount of things the game has to sort and determine wich to handle when.
Well thinking and asking is free, so concider this my free thoughts.
And this my free asking:
At some point would you concider pushing just the haul+ as a mod?

Cheers and thanks again for this awsome mod and the lib of course!

UnlimitedHugs

#177
Quote from: maculator on September 21, 2017, 01:55:51 PM
Just wanted to say thanks for the haul+ part. Was looking for that kind of thing for a long time. I disabled everything but the haul urgently part of the mod, so I cant say how the other stuff plays (exept a few mintes seeing what it does), but the haul+ part is the best thing in the world.

I was thinking about a "Everything+"-Zone. Like you set the zone and everything in it wich gives work will be priority number 1.
But even while I have no idea bout modding I can asume this would be problematic because it essentially doubles the amount of things the game has to sort and determine wich to handle when.
Well thinking and asking is free, so concider this my free thoughts.
And this my free asking:
At some point would you concider pushing just the haul+ as a mod?

Cheers and thanks again for this awsome mod and the lib of course!

A generic high-priority tool is a good idea- something I considered myself, as well. Unfortunately, due to the way jobs are currently assigned, it would come at a significant performance cost. Every marked tile would have to constantly be checked for every work type... by each colonist. There are ways of optimizing this, but it would require a fair amount of work.
Also, there is the issue of detecting when work has been done and the mark can be removed. Simple for mining or hauling items, but problematic for, say, a workbench.

Splitting off priority hauling into a separate mod is not worth it, in my opinion. There is a good deal of overheard associated with maintaining a mod, including cover art, steam and forum page management, publishing releases- the works. Making features optional is an easier way of going about it, I find.

I appreciate your comment.
HugsLib - AllowTool - Remote Tech - Map Reroll - Defensive Positions: Github, Steam

maculator

#178
Aww thats sad. But since I'm a huge Kerbal Spaceprogram addict I know the struggle with only using one CPU-Core, and constant mod breaking updates aswell^^ Well micromanaging my hauling with haul+ and dedicated zones works pretty well, just would've been nice to have a zone that does this by itself.
One last question:
How does haul+ interact with other mods that alter hauling? Like "Cooks can refuel", "Hand me that brick", "Refactored Workpriorities", etc..
Since I'm not a coder I'm always scared that I screw stuff up if I put in to many mods of that kind because they could interference with each other.
A "Workpriorities Master Mod" would be great to have, all those mods put in one pack with options.
Edit: To specify whats going on in my mind:
In my mind, the one of a non-modder/coder, haul+ is a worktype and the tool provides the orders for the workers. So one could patch the "refuel stove", "haul perishables", "haul material to blueprints", etc. to be a "haul+ worktype" so its only one worktype for all and less drama for everyone.
A set of options to toggle functions and BAM my dream mod is done!

UnlimitedHugs

Quote from: maculator on September 21, 2017, 04:26:47 PM
Aww thats sad. But since I'm a huge Kerbal Spaceprogram addict I know the struggle with only using one CPU-Core, and constant mod breaking updates aswell^^ Well micromanaging my hauling with haul+ and dedicated zones works pretty well, just would've been nice to have a zone that does this by itself.
One last question:
How does haul+ interact with other mods that alter hauling? Like "Cooks can refuel", "Hand me that brick", "Refactored Workpriorities", etc..
Since I'm not a coder I'm always scared that I screw stuff up if I put in to many mods of that kind because they could interference with each other.
A "Workpriorities Master Mod" would be great to have, all those mods put in one pack with options.
Edit: To specify whats going on in my mind:
In my mind, the one of a non-modder/coder, haul+ is a worktype and the tool provides the orders for the workers. So one could patch the "refuel stove", "haul perishables", "haul material to blueprints", etc. to be a "haul+ worktype" so its only one worktype for all and less drama for everyone.
A set of options to toggle functions and BAM my dream mod is done!

As far as I know, there are no conflicts with any other mods. Rimworld is fairly modular internally, so it's generally not difficult to stay out of each others way.

A catch-all mod sounds nice conceptually, but it's still a lot of work. Authors would have to agree to surrender their work or cooperate, and I don't know which one of the two is worse :D
There is always room for improvement, but with hundreds of man-hours required to produce good work it's essential to know how to pick your battles.
HugsLib - AllowTool - Remote Tech - Map Reroll - Defensive Positions: Github, Steam