DFHack / dfhack

Memory hacking library for Dwarf Fortress and a set of tools that use it
Other
1.87k stars 475 forks source link

gui/unit-info-viewer: size displaying wrong values #1844

Closed lethosor closed 3 years ago

lethosor commented 3 years ago

This script displays Strength:Agility instead of size. TBD how to calculate size in cubic decimeters (is this just body_size_info.size_cur?)

Relevant line: https://github.com/DFHack/scripts/blob/275930f1cba1ee7067792810b5c5191f4024a9fc/gui/unit-info-viewer.lua#L741 Appears to date back to https://github.com/DFHack/scripts/commit/9ded4ff9210150370c4c6c2e7ef791ed965c66df when the script was imported - haven't tracked down the source beyond that.

Reported by @jecowa at http://www.bay12forums.com/smf/index.php?topic=164123.msg8275078#msg8275078

jecowa commented 3 years ago

Based on the current version of gui/unit-info-viewer's size line giving the values of two variables, I think the intention might have been to give the result as "body_size_info.size_cur:body_size_info.size_base".

And yes, these two variables report the size in cubic decimeters, which is unusual because size is normally given in cubic centimeters from what I've seen in other places.

I'm not sure what size_base is, but it's always 100-120 lower than than the size_cur in my testing of Bat Man.

jecowa commented 3 years ago

It probably used to report the size in cubic decimeters, but someone decided that they'd rather see the strength and agility. Maybe it'd be useful to include both?

jecowa commented 3 years ago

Yeah, actually, it was only supposed to give body_size_info.size_cur and not body_size_info.size_base based on that "appears to be about" part of the message.

lethosor commented 3 years ago

I think that, to be consistent with the rest of this script, we shouldn't have single lines like X:Y in any case; they should be split into their own lines. As for strength/agility, those could probably just be left out. Most other things displayed by this script aren't raw numeric values, and I believe gui/gm-unit shows those if anyone wants to see them.

Should be an easy fix in any case.