I have the Heroic Fantasy Handbook only in .pdf for now (POD is waiting on a COVID-related pay-correction), and in looking at p.161, I have to wonder if there's a bit of a glitch in the 'size' calculation for cacodemons, or if I missed an errata-file somewhere.
> A cacodemon’s mass (in pounds) is determined by its HD and its body mass exponent, according to the formula mass = (HD x 10)BME. The cacodemon’s weight then determines its carrying capacity and size category.
The following table covers cases of cacodemons that can weigh more than 32,000lb... except that cacodemons can't exceed 20 HD, and the maximum possible BME (for Monadine types) is a mere 2.08. If that's meant to be a simple multiplication, there is no mathematical way a cacodemon can weigh more than 416lb!
Now, on closer reading, placing 'BME' at the end of the order-of-operations implies the equation is actually (HD x 10)BME - that is, multiply the cacodemon's HD by 10, then raise it to the power of BME. Is this meant to be the case? Certainly it would allow for cacodemons of sizes to match the table - topping out at 61,114lb for a 20HD Monadine - but if so, the lack of super-scripting in the .pdf makes that distressingly unclear.
Of course, it's not the worst case of misformatting in the HFH, merely the most mathematically glaring. The following is taken directly from the second paragraph of p.162:
> In addition, all cacodemons have at least two other special
> abilities, one of them often derived from their body form. Highranking
> RefertotheSecondaryCacodemon Attributes tableforthenumber
> ofspecial abilities the cacodemon should receive. Winged
> cacodemons loseone special ability to compensate for flight.
> The Judge may roll or select powers for the cacodemon from
> the list below, or make up his own.
One suspects the writer typed this particular section on a computer with a dodgy space-bar. ;-)