rimworld-workgroups's People
Forkers
hawnhanrimworld-workgroups's Issues
Consider learning speed when selecting best pawn
Change Stat logic to ignore environmental issues
Right now when checking stats like "Animal Gather Speed" (perhaps most speed stats are effected?) it takes into consideration the light level of the cell the pawn is currently in. This leads to two pawns who are close being flip flopped depending on where they are when the task fires.
Instead of relying on GetStatValue
we can simply inspect the StatDef manually and perform our own calculations.
Consider work speed when selecting best pawn
Do a check before setting work assignment to insure it’s changed
This will prevent canceling jobs that shouldn't have been canceled
Need new strings localized to Simplified Chinese!
[Feat] Support *minimum* skill/stat/passion, and maximum-number-of-pawns in role
This was previously mentioned on the Steam comments by sergiocut and myself.
I think these are all basically the same feature, possibly with a couple different interfaces/tweakables.
At the moment, the mod likes to assign multiple people to, say, the Doctoring role. For several sorts of roles, you want to make sure certain pawns are never assigned to that role (as is currently the case with particular traits), based on their skills or stats:
-
You don't want low-Doctoring-skill pawns doing any tending jobs, because they "use up" a tend-opportunity that really, really needed to be preformed by a highly-skilled Doctor. This would best be achievable by a minimum of skill/stat: "[DoctorGroup] don't assign pawns who aren't within
X
skill-points of the best Doctoring skill" or "[DoctorGroup] don't assign pawns who aren't withinY%
of the bestMedicalTendQuality
" -
You don't want anybody except your single very-best Handler attempting to tame creatures; this would best be achieved by having a maximum number of pawns: "[HandlerGroup] Stop once you've assigned
1
pawn" -
Sometimes you want someone who's good at one thing SkillA, but passionate at another SkillB, to focus on the thing they're passionate about - i.e. you want to 'play the long game', and lose out on SkillA productivity in exchange for having SkillB productivity later in the game. This might best be achieved by having two WorkGroups for a skill, for instance; you may already have a [ConstructorGroup] with some constraints that's allowed alongside other groups, but you should be able to set up a [ConstructorApprenticeGroup] that doesn't allow them to do other jobs, and is higher-priority overall, and configure it to "only contain pawns with a double passion for Construct."
I hope all that made sense; happy to explain with further clarification if I'm not getting my plan across!
[BUG] Non working invites are considered as working colonists
Add “Save Preset” and "Load Preset" options
Stats Rework
Ok soooo the plan - Stats will be broken into two sections. High stats and Low stats. This way you’ll be able to correctly min/max stats. I’m going to change the weighting of stats so that the highest value for a pawn for a high stat will be 100%, while any lower value will decrease the score of that pawn for that stat. This way stats will be more of a .. modifier and less of a huge multiplier. Similar for Low stats, except the lowest will be 100% (just order flipped).
Scheduling settings
Full time anything
Bi-phasic sleep
Bi-phasic sleep w aligned recreation
Auto night owl checkbox
[Improvement] Crib from, or integrate into, Fluffy's WorkTab
At the moment, the UI is pretty bare-bones. Cool! It's a new idea, and I think you totally focused your efforts in the right place.
Eventually, however, it'd be nice to have a UI that involves a lot less repeated clicking, redundant drop-downs, and plain-text. In particular, I think this mod shares a lot of the interface problem-space with the existing WorkTab.
It'd really, really ease the user's life if a lot of this functionality worked exactly like the WorkTab, but showing (reorderable) WorkGroups instead of individual pawns; with the ability to then adjust the priority of individual work-types or jobs for a given WorkGroup exactly as one does for an individual pawn.
Personally, I think it'd be awesome if this just directly hooked into the WorkTab, and dropped the standalone hotbar-button entirely; but that's probably a matter of taste - perhaps some players want to play without WorkTab, I don't know. WorkTab is MIT License, though, so maybe the best route forward is actually just to straight-up crib a lot of the interface-style from WorkTab, so that the separate WorkGroups tab shares a lot of the same functionality without quite so much duplicated effort. ¯\_(ツ)_/¯
Localization support
Do a check *after* setting priority for a work type
Log a warning if it didn't succeed
[Feat] Support for more granular, individual worktypes
At the moment, you lose a lot of configurability when switching from "normal" gameplay with Fluffy's WorkTabo, to "automated" gameplay with WorkGroups.
In particular, there's a lot of poorly- or annoyingly-categorized jobs, that you really want to assign to different people (or just generally have different rules for); with the WorkTab, you can set this up fairly easily, but it'll immediately be overwritten by WorkGroups. A couple examples:
-
You really want a WG with multiple high-Handle colonists to spread the load of Shear, Milk, Train, etc; but you only want your very best single Handle-er assigned to Tame. Ideally, I could create separate [TamerGroup] and [HandlerGroup], with their own separate rules and filters.
-
You probably want your high-social [WardenGroup] to also do VisitSickPawn, instead of wasting your [DoctorGroup]'s time. Or maybe you want a [NurseGroup] to spread the load of FeedPatient, freeing up your Doctor pawns to do other things.
Addition of toggleable “wipe every priority” setting
User on workshop wants to keep existing priorities and only set priorities of selected jobs.
[Improvement] Needs more documentation
The current UI is rather difficult to get into
There seems to be a lot of things in this mod but there is no explanation whatsoever of what does what, both ingame and in the mod description, some visual step by step use case examples could help a lot with this
"And" button shouldn't vomit if no other WorkGroups
Traits support
Traits will be added, and I’m thinking of 3 lists for traits - must have, want to have, and can’t have. If there’s any in the must have list then every pawn must have those traits to be eligible. If any in want to have, pawns with 1+ of those will be selected first. If a pawn has any of the can’t have ones then .. they’re not eligible.
[Feat, Minor] Show traits' skill/stat bonuses *inline* in the Trait Assignment interface
A lot of traits from various mods, as well as vanilla ones, look relevant to a given WorkGroup based on their description (currently, all that's shown in the interface); but don't actually need to be selected as "preferred" or "required":
- They only add additional skill-point bonuses (and thus are already accounted-for in the core assignment-algorithm),
- or they only modify pawn-stats (and thus are better accounted-for by adjusting the "stat" field instead of adding them to the "wanted traits.")
When selecting traits for your jobs, it'd be nice to see inline traits that are 'redundant' in this way - i.e. if VTE_Academian
from Vanilla Traits Expanded had an asterisk next to its name in the trait-selection menu when adding traits to a WorkGroup including Intellectual skills, because that trait adds +4
to Intellectual of affected pawns.
Ditto when a trait applies a statOffset
to a stat that's already been added to the current WorkGroup.
[BUG] Changing the name of a work group doesn't update other work groups (AND...) label
Do a safe check if a work type is in a group but can’t be found in the defdatabase on load
This should protect against removing mods that add work types midsave
Consider minor/major passions when calculating best pawn for a task
Forming a caravan wipes out WorkGroups
Has to do with how a new map is generated and that generates a new WorkGroupMapComponent. Oopsie
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.