The type of `amount` in ItemProductPrototype is listed as `uint16`, but many of the recycling recipes in `data.raw` have floating-point values for their craft amount. For example, in `accumulator-recycling`, there is the block
amount = 1.25,
extra_count_fraction = 0.25,
name = "battery",
type = "item"
I assume what happens is that the floor is taken of `amount` when loaded - I'm not sure if this behaviour is documented (at least, I couldn't find it on the docs page). Please correct me if my understanding is wrong!
If it's integer, then yeah, fractional numbers are silently cast to integer. Best to check in prototype explorer what the game has actually read it as.
Though it should probably be mentioned somewhere, yeah. I expect on the type's page.