New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[469b] Crash on failed to find global function #835
Comments
This could be somehow related: https://www.oldunreal.com/phpBB3/viewtopic.php?f=42&t=4499&p=42862#p42862 That example taken from package "EXU.u". Bugged script from that package called non-existing function, but the 'context' was not the same as in your case - it called non-existing function from non-existing parent class... There is also one map ("MH-MHF-ADV_Assault[RMD]") where crash happens always, either on "PickDestination" or on "FindBestPathToward". It was mentioned in issue 422. |
|
MushMatch being this: https://github.com/wallabra/MushMatch |
Smells like a bug related to how the actor states are handled. Maybe the part of native code which directly uses actor states / state machines needs fixed? |
If you able reproduce it on regular basis - be very good if you attach steps for reproduce it. In fact this situation must never happen, because places, where call state function exactly in specific state. But somehow state changed, but code still run inside ol state. So this lead to attempt call function which not exists in new state. This as intended fallback to global function., Which not exists. So this produce crash. But by simple logic it must produce warning in log, not a crash. |
Reproduce:
Expected result: No crash.
Used code: class MyActor expands Actor;
auto state A {
function Foo() {
Log("Foo: start" @ GetStateName());
ChangeState();
Log("Foo: continue" @ GetStateName());
Bar();
}
function Bar() {
Log("Bar" @ GetStateName());
}
Begin:
Sleep(1);
Foo();
Sleep(1);
Goto 'begin';
}
function ChangeState() {
Log("ChangeState: start" @ GetStateName());
GotoState('B');
Log("ChangeState: end" @ GetStateName());
}
state B {
Begin:
Sleep(1);
Goto 'begin';
} log:
Issue reproduced on v469d RC2. |
And this crash again.
prev one
|
Spots in bot code for trigger bug:
|
Sometimes server crash with message like that:
Failed to find function PickDestination in Velociraptor MH-AOV-Tomb-Raider+Lost-Valley.Velociraptor141 Global 0
I think this caused call state-only function when Actor is in state which not have state function and not has global version function either.
For this exactly message this caused by this code:
jurassic.zip
All calls to
PickDestination
same as function itself located in stateHiding
. One call even in state code. Possible there is cause.Not sure what really happen there and how, but other players report same behavior for other code. So possible there some bug about it.
Maybe good idea on try call unexists Global function do nothing, instead of crash server.
The text was updated successfully, but these errors were encountered: