Skip to content

Hidden Error: ODE joint setup failure for lim_physic_object_0016 #365

@ProfLander

Description

@ProfLander

If compiled without the dNODEBUG define, entering Limansk throws an exception here while spawning lim_physic_object_0016 - a skeleton physics object with a 'full control' joint.

This does not appear fatal, as Limansk has been operating stably in releases for some time, but should ideally be fixed rather than allowing ODE to skip failing checks and setup potentially-broken state.

Unfortunately the object in question seems to live in all.spawn (i.e. has no references in gamedata,) so the solution would have to to be code-level; the failing condition appears to check for node validity (it is non-null in the debugger) along with some kind of flag compatibility condition involving reverse joints and the rel parameter (Relative? Probably an enum.)

Since the node is valid, the issue presumably lies in the flags / rel param, so could be prevented by detecting misconfigurations on the X-Ray side and amending them before handoff to ODE.

From Chocohex, the affected object in-editor:

Image Image

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions