Open xhsu opened 6 days ago
Thank you :) has_trait_xp
is a weird case because it has the trait|track
format that needs to be parsed specially.
Hi amtep:
I highly suspect this is the case for 'invoking with multi-argument functions' in CK3 script. A long-term solution might be worth investing in.
Which means I suspect this is under the hood:
"fn(arg1|arg2|...)"
were explained as
return std::invoke(fn, arg1, arg2, ...);
(as in CPP)
Hi there,
There seem to be some issues with edging cases when
compare_complex_value
is used in CK3. It's hard to describe, as I have absolutely no idea what this is officially called.Consider this example: In
script_values/example.txt
we have:In order to get the XP value of a specific track from a specific trait.
This "evaluating string" weird thingy was called
compare_complex_value
in dumpedlogs/event_target.log
. It will causes ck3 tiger to have errors all over the place, in our example it was:Hopefully, this won't get messy to fix. Can't come with a PR, as I have no idea what rust is doing, as I am a c++er. lol
Sincerely, HYDROGEN
PS: Here is the dumped official info for
compare_complex_value
, and I have to say the official example is bullish!t, they have no idea what they were writing and providing.