Live data from Hacker News

Aztec monks with 1/55 HP no longer die when picking up or dropping a relic

reddit.com

131–140 of 267 posts

Re: Aztec monks with 1/55 HP no longer die when picking up or dropping a relic

#131
post #3

This is a fantastic out of context change log. For even more abstract ones I cannot recommend enough the Dwarf Fortress Bugs Twitter account[0] The last of which is > Flying creatures keep exploding into pieces and dying: Are they crashing into trees? [0]sadly no Mastodon, https://twitter.com/DwarfFortBugs

There was a bug fix in Nethack a few years ago to make eating parchment spellbooks break vegetarian conduct. Which at one level makes perfect sense: of course parchment is an animal product. But the fact that it comes from the intersection of several kind of weird systems in the game made it such a great Nethack bug. First, that the game tracks vegetarianism at all. Then, the randomized unidentified item descriptions that are mostly flavor text but occasionally have gameplay properties. And finally, why are you eating spellbooks in the first place?

Re: Aztec monks with 1/55 HP no longer die when picking up or dropping a relic

#132
post #125

Earlier quoted context omitted.

> Seems all that could have been avoided by using rationals in general It's 2023: I'm still surprised that so many new languages/platforms still only provide only basic integer and IEEE-754 types for numerics: Rust, C#, Java, Swift and others still lack built-in, runtime-provided, nor even standard-library-provided rational types, which I assume really should be the preferred type for most business/domain/application…

> On a related note, can we agree that an application-programming language today should also include signed-and-unsigned "money-safe" decimal types I’m willing to bet that this has to do with how we historically have handled monetary values which is storing and computing it in the respective currency’s fractional unit. The advantage is that you can still do math operations directly on this value (as opposed to an obj…

> Because we cannot represent fractional units of the already smallest unit of currency, we have to choose a value anyway to charge or dispense. Unlike, say, if we stored it in dollars as a floating point and we can start compounding errors from the floating point type.

I've spent 20 years mostly working in finance. You'd be surprised at the prevalence of floating points used to represent currency. I cringe every time I see it, but it's surprisingly common (and wrong).

More correctly, pricing of securities (from exchanges) is done with integers and a scaling factor. The factor is typically static and doesn't need to be transmitted on every tick. The factor tells you effectively how many fractional digits are present (e.g. the actual price is multiplied by 10^-factor). Factors of 4 or even 6 are somewhat common, but some securities have to go with less precision. I remember in particular Berkshire Hathaway causing issues with overflow using 32-bit ints in the last decade (because they never split their shares, the share price is quite large).

Re: Aztec monks with 1/55 HP no longer die when picking up or dropping a relic

#133

Earlier quoted context omitted.

> The formula was probably `return new_maxhp * (old_hp / old_maxhp);` ... > Due to floating point rounding errors, convert_hp(1, 55, 55) equals 0.999999940395355224609375, which is less than 1, which means the unit dies. Ahh. The old "Multiplying and dividing is associative... for the set of reals, not for the subset that you can actually afford to compute with." So it should have been `(new_maxhp * old_hp) / old_max…

Seems all that could have been avoided by using rationals in general and the condition for living being >0 instead of dying The more I write code, the more I notice how rarely one truly should want floats in most kinds of programs and how they almost always carry a whole bag of problems with them.

In terms of hp without decimal in gaming and related with max hp changing, the best solution should be to rounding down (or nearest zero rounding) the result, and keep minimum hp to 1 when max hp changes. In case for minimum hp unit (1 in this case) to have changed into lower max hp then they'll die too, hence why minimum 1 hp as the result is logical.

This is exactly why heroes won't die in Dota2 when toggling off armlet while having 1 hp

Re: Aztec monks with 1/55 HP no longer die when picking up or dropping a relic

#134

Earlier quoted context omitted.

Note that the April 2023 patch is live, and perhaps one of the biggest changes to the meta ever. I don't think anyone really knows how the new meta will shake out. Build orders will absolutely change this patch. Though I guess that only matters if you were hoping to get to a competitive level. Definitive Edition does have a very good tutorial mode for people interested in online combat, and "Extreme" AI is 100% legit…

What’s new? Seems kind of crazy to introduce a meta changing past to an old game like this that has managed to stay popular.

In addition to the infantry gradual bufs, full-walling in Feudal using a mix of palisades and houses became ubiquitous. Pallisades, buildings-as-walls etc were gradually nerfed. Still popular, but now there's a higher associated cost. I wonder if they're done with those nerfs, or if there's another coming. (Since this technique is still very strong... Or maybe it's that scout rushes are strong!)

Re: Aztec monks with 1/55 HP no longer die when picking up or dropping a relic

#135
This game is still amazing. I never played it as a kid, but bought the Definitive Edition last year on steam. Already have > 600 hours on it.

Beat RTS ever in my opinion.

Check out big tournament to get an idea of the current scene: https://youtu.be/6krbA4jTUqE

Also I didn't play multiplayer until last month, most of that 600 hours was spent in the many many excellent single player campaigns

Re: Aztec monks with 1/55 HP no longer die when picking up or dropping a relic

#136
post #82

Earlier quoted context omitted.

It's actually worse, they pulled the legacy version from the users and forced the (effectively) downgraded version to everyone. Even the owners of the legacy version were shafted as they forced a update which removed much of the functionality of the legacy version. To this date still the best version was the pre-patch one for everyone who has the original installers and the latest pre-upgrade patch

I'm surprised this isn't illegal.

I would imagine that in certain countries with strong consumer rights (e.g. Australia or Germany) it may well be, just understandably no one bothers with the expensive legal fight it would take.

Re: Aztec monks with 1/55 HP no longer die when picking up or dropping a relic

#137
post #3

This is a fantastic out of context change log. For even more abstract ones I cannot recommend enough the Dwarf Fortress Bugs Twitter account[0] The last of which is > Flying creatures keep exploding into pieces and dying: Are they crashing into trees? [0]sadly no Mastodon, https://twitter.com/DwarfFortBugs

There was a bug fix in Nethack a few years ago to make eating parchment spellbooks break vegetarian conduct. Which at one level makes perfect sense: of course parchment is an animal product. But the fact that it comes from the intersection of several kind of weird systems in the game made it such a great Nethack bug. First, that the game tracks vegetarianism at all. Then, the randomized unidentified item descriptions…

As opposed to eating rings, which can permanently give you the associated magical intrinsics (without having to wear the ring). This, in turn, means that which specific intrinsics you can get that way various from game to game (because you can temporarily polymorph into a metal-eating monster, but some rings are metal and others aren't).

https://nethackwiki.com/wiki/Eating_jewelry

Re: Aztec monks with 1/55 HP no longer die when picking up or dropping a relic

#139

Earlier quoted context omitted.

What’s new? Seems kind of crazy to introduce a meta changing past to an old game like this that has managed to stay popular.

In addition to the infantry gradual bufs, full-walling in Feudal using a mix of palisades and houses became ubiquitous. Pallisades, buildings-as-walls etc were gradually nerfed. Still popular, but now there's a higher associated cost. I wonder if they're done with those nerfs, or if there's another coming. (Since this technique is still very strong... Or maybe it's that scout rushes are strong!)

How was walling with housing nerfed? I remember doing that a lot.

Re: Aztec monks with 1/55 HP no longer die when picking up or dropping a relic

#140
post #90
post #70

Earlier quoted context omitted.

>That is, suppose a unit is sitting there at full health, and you research a tech that increases that unit’s max hp? Should the unit now be at less than full health, as if it had been in combat? Users probably don’t like that. >Suppose it is at full health, and then it gets downgraded to a type with less maximum health. Does it stay at it’s current HP? Users probably won’t like being attacked with supercharged units…

Not exactly complex, but you posted too quickly to have found the best solution. A better solution is to kill the unit when it drops below zero HP, not when it drops below 1.0; scaling will never move the current HP past zero in either direction. Having 0.9999994 HP instead of 1.0 HP would not cause any problems then; the unit is still one hit away from death in either case. The best solution is probably to store the…

> A better solution is to kill the unit when it drops below zero HP

Then you have the situation where units are displayed as having 0 HP but are still alive.

Post reply on HN