# how do you enter small floats in BP?

I am baffled. I want to multiply a large number* by a very small number (let’s say 2e-7). But I can’t enter such a small multiplier, I tried 2e-7 and 0.0000002 and they are both converted to just 0.0. I can use two multiplication nodes 0.001*0.0002 to get the result I need, but I feel like this is just a stupid and unncessary hack.

Can’t find anything in documentation, can someone point me in the right direction?

Or does it qualify as a bug?

*not that it matters, but it is just OnComponentHit.NormalImpulse------>VectorLength, huge object so the impulse is huge, in the several millions range

Not an answer, but if you require that degree of precision in a game, then perhaps you should rethink the way you doing whatever you’re doing.

This is not a bug. It is a floating point precision problem. Single-precision floating-point format - Wikipedia

Sorry, but neither of your answers makes any sense to me and they look technically incorrect. First, small number doesn’t mean high precision, these are completely separate concepts. Second, 32 bit floats have range of at least 1e-38 to 1e38 (even more for formats allowing non-normalized singnificands, at a loss of precision). 2e-7 could be too small for a fixed point 32 bit number (assuming 16 bit split for wholes and fraction, which is not the only possible one), but not for the 32 bit float.

Due to older bugs reported caused by float imprecision Epic added a minimal range to all float UProperty in Blueprints some years ago.

If that is a problem you can still use C++.

OK, so it is limited by design.

Not what I wanted to hear, but at least I know what I am dealing with.

Thanks

Grab and use this:

Last post is actually mine and had a fixed up (somewhat dated but still working in 4.22 since it’s integral part of my most worked on project atm) integration with a few extra functions to get Stringy doubles.

As for the guy telling you to rethink what you are doing…
Yo, ever consider that maybe he’s actually making a Math game?

Yes I did. That’s why I wrote: “Not an answer …” and “perhaps”.