ElDewrito / ElDorito

A Halo Online modification
725 stars 142 forks source link

Support player scaling to 90% #396

Open dylanede opened 6 years ago

dylanede commented 6 years ago

Currently, the configurable player scales are as below:

https://github.com/ElDewrito/ElDorito/blob/9ebe7a7f7a1b193a3cd26a88a6d8bea099947a07/ElDorito/Source/Patches/PlayerScale.cpp#L22-L41

I would really appreciate it if an entry for 0.9f was added to this list. I'm not aware of whether the list is at the maximum possible size (so adding 0.9 would require another entry to be removed), but there is a large benefit to adding support for 90% scaling:

Forge units are 90% of game units, so remakes of maps from older Halo titles, which often have geometry sizes and distances snapped to 0.1 game unit intervals, would either be 10% too small, or getting accurate sizes would be next to impossible (e.g. 0.3 game units, a common barrier thickness in Halo 2, would equate to 0.3333 Forge units, a difficult size to achieve accurately in Forge). A 90% player scaling option would solve this problem entirely by making the relative size of remake maps correct.

After the release of 0.6 it would probably be difficult to change this list of scales without breaking custom game modes, so I would really appreciate serious consideration of including 90% player scaling before release. @unk-1 , thoughts?

NoShotz commented 6 years ago

The reforge blocks do not follow the forge unit size. No where can you see the forge units in game. The reforge blocks are based on the size of the crate multi, so the 1x1 block is the same size as the crate multi, and a 20x20 is 20 crate multi's long and wide.

dylanede commented 6 years ago

Yeah, I should have said reforge instead of forge. Those are the units I meant. From what I've gathered on Discord talking to some of you, the Reforge units (i.e. the 1 in "1x1") are 90% of game units (so the 1x1 block is 0.9 by 0.9 game units).

dylanede commented 6 years ago

@unk-1 changing the player scales is probably backwards incompatible, so any change if made should be made before the 0.6 release. It's a really minor change that would help remakes so much.