Difference between revisions of "Talk:CreateBoolArray - Utility"

m
(→‎Bool array fill bug: checked CommonLibSSE)
 
Line 12: Line 12:
This bug prevents the ''fill'' parameter in <code>Utility.CreateBoolArray</code> from working properly. However, it also has a much further-reaching effect: SKSE DLLs that use SKSE's codebase cannot create any Papyrus APIs that return <code>Bool[]</code>. Any such APIs will have their return values corrupted en route to the game, resulting in them returning arrays that have the correct length but are filled with nonsensical (usually <code>True</code>) values. [[User:DavidJCobb|DavidJCobb]] ([[User talk:DavidJCobb|talk]]) 20:06, 31 August 2022 (EDT)
This bug prevents the ''fill'' parameter in <code>Utility.CreateBoolArray</code> from working properly. However, it also has a much further-reaching effect: SKSE DLLs that use SKSE's codebase cannot create any Papyrus APIs that return <code>Bool[]</code>. Any such APIs will have their return values corrupted en route to the game, resulting in them returning arrays that have the correct length but are filled with nonsensical (usually <code>True</code>) values. [[User:DavidJCobb|DavidJCobb]] ([[User talk:DavidJCobb|talk]]) 20:06, 31 August 2022 (EDT)


: CommonLibSSE specifically handles the vector-of-bool case in its code for packing arrays ([https://github.com/Ryan-rsm-McKenzie/CommonLibSSE/blob/dceb680092f65191b24843751aa63a0c9a4be425/include/RE/P/PackUnpackImpl.h#L16 Github] / [https://github.com/powerof3/CommonLibSSE/blob/dev/include/RE/P/PackUnpackImpl.h#L16 backup]), so DLLs built with it should be able to add Papyrus APIs that return <code>Bool[]</code> properly. [[User:DavidJCobb|DavidJCobb]] ([[User talk:DavidJCobb|talk]]) 20:15, 31 August 2022 (EDT)
: CommonLibSSE specifically handles the vector-of-bool case in its code for packing arrays ([https://github.com/Ryan-rsm-McKenzie/CommonLibSSE/blob/dceb680092f65191b24843751aa63a0c9a4be425/include/RE/P/PackUnpackImpl.h#L16 Github] / [https://github.com/powerof3/CommonLibSSE/blob/71aae374e727d027a2600f6417f361bbeab654f7/include/RE/P/PackUnpackImpl.h#L16 backup]), so DLLs built with it should be able to add Papyrus APIs that return <code>Bool[]</code> properly. [[User:DavidJCobb|DavidJCobb]] ([[User talk:DavidJCobb|talk]]) 20:15, 31 August 2022 (EDT)
53

edits