Skip to content
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

Starfield decompile error with script compiled with Caprica #29

Open
ForsakenShell opened this issue Oct 26, 2023 · 1 comment
Open

Comments

@ForsakenShell
Copy link

Script compiled with Caprica v0.3.0
Papryrus VM error: warning: Assigning None to a non-object variable named "::temp1"
Attempted decompiled with Champollion v1.3.2 but got error Orphaned nodes in GetActionControl from instruction 14 to 14

Line (568) in question from the script is: lkItem.Activate( akLooter, False )

Not sure what other information I can provide.

Attached zip contains the script (source and compiled).
LootFunctions.zip

@leppie
Copy link

leppie commented Dec 13, 2023

It seems to be related to using an if after there was a nested if.

Here are 2 small repro's

ScriptName Test Extends ScriptObject

Function Test(Int i)
    if i == 0
        if i != 1
          i = 2
        endif
    endif
    if i == 4
    endif    
EndFunction

Function Test2(Int i)
    if i == 0
        if i != 1
          i = 2
        endif
    else
       if i == 4
       endif
    endif    
EndFunction

You will also note some weird decompiling for the nested if if you remove the following if.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants