Recent and upcoming engine changes

Thanks for the work on improving things!
A few queries on the changes:

@azath0th said in Recent and upcoming engine changes:

ForkThread crashes with cfunction, so we forbid this

Does this mean it no longer crashes, or that ForkThread itself is forbidden? (The latter would mean all my mods would break)

Unit:GetCommandQueue returns a list of commands of a given unit

Will this still be in the format of a table, with 1 entry for each command/order, and with a sequential numerical index (i.e. 1, 2....x) such taht table.getn will work on the result?

GetFractionComplete returns float from 0 to 1

Sometimes when dealing with what I presume are floats in other contexts with FAF I've noted FAF can fail to round things - will a complete unit always return 1 when complete, rather htan e.g. 0.9999999 or 1.00000001/similar?

@maudlin27
Forkthread works as before except it doesn’t accept cfunction anymore.

You can see the way @Jip used GetCommandQueue for distribute orders, I wasn’t the one who made this change.

Once unit reaches complete state (that means it received enough build time) this value must become 1.

My UI Mods

Interesting fact: all launchers are loading based on integer progress value. Due to this progress never advances when you stall resources. I think I can fix it at some point, but I may break something eventually:D

My UI Mods

@Azath0th I don't believe it is purely integer. Past effort to identify what goes one with building missiles can be found here. https://github.com/FAForever/fa/issues/711#issuecomment-303080789

And it was determined to be intentional so might want to discuss with others before changing it

@sheikah it is, it checks for enough income and increments counter.

My UI Mods

@sheikah I know, might require separate thread and minds of other people patching engine

My UI Mods

Added some pictures

My UI Mods

added info about CopyToClipboard.
https://github.com/FAForever/FA-Binary-Patches/pull/50

My UI Mods