dfhack icon indicating copy to clipboard operation
dfhack copied to clipboard

Script: rejuvenate - 'all' filter misses those granted permanent residency, but who are not a 'citizen'

Open TheBloke opened this issue 3 years ago • 0 comments

Issue: The script rejuvenate includes an --all option to select every dwarf.

The code for this is:

       for _, u in ipairs(df.global.world.units.all) do
            if dfhack.units.isCitizen(u) then
                table.insert(units, u)
            end
        end

In practice this is missing residents that the user would expect to be included. For example in my fort, it missed Gimerib who is not a member of my civilisation, but who was granted permanent residency 35 years ago: image image image

Is there another search that would include all residents, even if they're not techically a 'citizen'? I would definitely consider Gimerib a full member of my fort, as so far as I can tell he is functionally identical to every citizen dwarf. The only visible difference is he's not listed as a member of my civilisation. So it's a surprise to have such people missed from 'all' filters.

TheBloke avatar Jan 14 '23 13:01 TheBloke