I'm trying to configure autobutcher with dfhack, do someone knows the tag for Boozebelly Goats ?
Up to now I discovered this ones: BIRD_GOOSE BEETLE_CAVE PEKYT
Alright, this is a really late reply but better late than never and it might be helpful for others. First of all I apologize that I was too lazy to add a way to add creatures to the watchlist (other than using autowatch) without knowing their race tag from the RAWs, but back then it seemed the safest way to implement it. Race tags are simpler to parse because they have underscores instead of spaces and they are less likely to be duplicate in case sombody adds new variants of this race which still show the same name in the UI. In this specific case I can't help without looking at Meph's RAW files, "Boozebelly Goats" are not in the vanilla raws and right now I don't have a current version of Masterworks installed.
If you have the particular creature on your map then it's relatively easy:- select it with your cursor
- switch to the dfhack console and type "lua". This will invoke the lua interface.
- then type the following:
unit = dfhack.gui.getSelectedUnit()
raw = df.global.world.raws.creatures.all[unit.race]
print(raw.creature_id)
- alternatively, if you don't mind convoluted code:
print(df.global.world.raws.creatures.all[dfhack.gui.getSelectedUnit().race].creature_id)
- to exit the lua console type 'quit'
If you want to add races which are not on your map right now you can use the following script:local racename = 'turkey'
local racetag = 'UNKNOWN'
local found = false
for i, race in ipairs(df.global.world.raws.creatures.all) do
if string.match(race.name[0], racename) then
racetag = race.creature_id
print('match found: '..race.name[0]..' - '..racetag)
found = true
end
end
if not found then print('Race not found in the RAWs, check spelling.') end
You obviously would have to modify this so that racename = 'turkey' is looking for the race you want, like racename = 'boozebelly'. Paste it into a textfile and save it into your DwarfFortress/hack/scripts subfolder with a name like findrace.lua and then you can call 'findrace' from the dfhack console (without needing to enter the lua interface).
I'm planning to make it more convenient to add specific animal races which are not already inside your fort for a future version of autobutcher but autowatch just werks and I'm lazy and you know how it is.