Jump to content

Errors when compiling


vfushion

Recommended Posts

So I am trying to create a follower mod that is built into Nethers Follower Framework. When I compile Dialogue Follower script from the vanilla game I get hundreds of errors in Nether's scripts. They are just function calls that are missing parameters. The functions are coming from SKI_ConfigBase.psc and the missing param is a_noUpdate. There are others as well for other functions from ConfigBase. How do I get around this? I don't know how NFF works if his scripts don't compile. I don't think I am missing any of the Util mods either. I have ConsoleUtil, SSE fixes, PapyrusUtil. Any information would be much appreciated.

Link to comment
Share on other sites

I have it. Let me try this... One of the functions throwing an error is this guy:

function SetToggleOptionValue(Int a_option, Bool a_checked, Bool a_noUpdate) (From SKI_ConfigBase)

 

In Nether's Script that is causing an error is this line:

 

mcmScr.SetToggleOptionValue(mcmScr.IDOptActions[1], True) (From Nether's MCMExScript)

 

This line is missing one of the input parameters: a_noUpdate. Without this on a few hundred functions it doesn't compile. So how did he get it to compile without these.

Link to comment
Share on other sites

-- STOP --
You wrote: "This line is missing one of the input parameters: a_noUpdate."

function SetToggleOptionValue(Int a_option, Bool a_checked, Bool a_noUpdate)

but the original SKI script function looks as follow:

 

Scriptname SKI_ConfigBase extends SKI_QuestBase

; @interface
FUNCTION SetToggleOptionValue(Int a_option, Bool a_checked, Bool a_noUpdate = false)
    int index = a_option % 0x100
    int type = _optionFlagsBuf[index] % 0x100

    if (type != OPTION_TYPE_TOGGLE)
        int pageIdx = ((a_option / 0x100) as int) - 1
        if (pageIdx != -1)
            Error("Option type mismatch. Expected toggle option, page \"" + Pages[pageIdx] + "\", index " + index)
        else
            Error("Option type mismatch. Expected toggle option, page \"\", index " + index)
        endIf
        return
    endIf

    SetOptionNumValue(index, a_checked as int, a_noUpdate)
ENDFUNCTION

 


That means the last function parameter "a_noUpdate" is not missing, because its predefined as false.

If you do not give us the compiling error output with lines and used source scripts, what can we do? Nothing..
I only assume there is a script with name "MCMExScript.psc" that has a property like this:

    SKI_ConfigBase PROPERTY mcmScr auto
Edited by ReDragon2013
Link to comment
Share on other sites

Thanks for the reply ReDragon. No my original function is different.

 

function SetToggleOptionValue(Int a_option, Bool a_checked, Bool a_noUpdate)
Int index = a_option % 256
Int type = _optionFlagsBuf[index] % 256
if type != self.OPTION_TYPE_TOGGLE
Int pageIdx = a_option / 256 - 1
if pageIdx != -1
self.Error("Option type mismatch. Expected toggle option, page \"" + Pages[pageIdx] + "\", index " + index as String)
else
self.Error("Option type mismatch. Expected toggle option, page \"\", index " + index as String)
endIf
return
endIf
self.SetOptionNumValue(index, (a_checked as Int) as Float, a_noUpdate)
endFunction
I have 5.2, I extracted these from SKYUI using Champollion, should I downgrade to 5.1 SDK? I had 5.1 installed at one point but was getting this same error so I got the 5.2 psc's. And no the script MCMExScript.psc does not have
SKI_ConfigBase property mcmScr auto,
it has
MCMScript property mcmScr auto.
Going to MCMScript.psc I see:
MCMScript extends SKI_ConfigBase
thats it. Nothing else referring to the line you said.
These are the first 3 lines of error when compiling and it just keeps going:
F:\Steam\steamapps\common\Skyrim Special Edition\Data\Source\Scripts\nwsFollowerMCMExScript.psc(675,9): argument a_noupdate is not specified and has no default value
F:\Steam\steamapps\common\Skyrim Special Edition\Data\Source\Scripts\nwsFollowerMCMExScript.psc(679,9): argument a_noupdate is not specified and has no default value
F:\Steam\steamapps\common\Skyrim Special Edition\Data\Source\Scripts\nwsFollowerMCMExScript.psc(685,9): argument a_noupdate is not specified and has no default value
Link to comment
Share on other sites

So I went ahead and reverted back to SKYUI 5.1 SDK instead of 5.2. I am still getting the same errors. This is the beginning of MCMExScript:

Scriptname nwsFollowerMCMExScript extends Quest
nwsFollowerMCMScript Property mcmScr Auto
nwsFollowerVariableScript Property varScript Auto
nwsFollowerControllerScript Property controlScript Auto
nwsFollowerSandboxScript Property boxScript Auto
nwsFollowerCheckScript Property checkScript Auto
nwsFollowerHomeScript Property homeScript Auto ; follower home script
nwsFollowerHistoryScript Property historyScript Auto
nwsFollowerSetsScript Property setsScript Auto
dlc1_npcmentalmodelscript Property seranaScript Auto
Armor Property DLC1SeranaHood Auto
Armor Property nwsFF_hoodieBlocker Auto
Armor Property DLC1ArmorVampireArmorRoyalRed Auto
Actor Property myPlayer Auto
Quest Property nwsFollowerController Auto
Quest Property DialogueFollower Auto
Quest Property nwsFollowerSettings Auto
Perk Property nwsNoTeamDamagePerk Auto
Bool Property classMsgShown Auto Hidden
And this is the beginning of MCMScript:
scriptname nwsFollowerMCMScript extends SKI_ConfigBase
; script properties
nwsFollowerControllerScript Property controlScript Auto
nwsFollowerSandboxScript Property boxScript Auto
nwsFollowerCheckScript Property checkScript Auto
nwsFollowerPerkScript Property perkScript Auto
nwsFollowerSetsScript Property setsScript Auto
nwsFollowerAutoSetsScript Property autoSets Auto
nwsFollowerHistoryScript Property historyScript Auto
nwsFollowerCraftingScript Property craftScript Auto
nwsFollowerUILIBScript Property uiLIBScript Auto
nwsFollowerMountsScript Property mountScript Auto
nwsFollowerStorageScript Property storageScript Auto
dlc1_npcmentalmodelscript Property seranaScript Auto
Armor Property nwsFF_hoodieBlocker Auto
; variable storage script
nwsFollowerVariableScript Property varScript Auto
nwsFollowerHomeScript Property homeScript Auto ; follower home script
nwsFollowerMCMExScript Property mcmExScr Auto
I have no changed, removed or added anything that didn't come with Nether's mod.

 

Link to comment
Share on other sites

At first do not blame a mod author for things you didn't really understand. Why?

 

You took assets from mod "Nethers Follower Framework" (as you wrote on top) and got "hundreds of errors in Nether's scripts". "They are just function calls that are missing parameters."

Well.. I explained you why compiling should work or not.

Your post: "I don't know how NFF works if his scripts don't compile."
This is an absolutely NO-GO, because you did not show respect for others work.

You are wrong here. The scripts are compiled inside the mod archive. But your try to compile the sources goes fail.
The source code for the sample function I posted was from version 4.1 of SkyUI.
You'll find links to SkyUI SDK here: https://github.com/schlangster/skyui/wiki but download does not work anymore.

--- For Understanding --

Skyrim or Skyrim LE (32-bit)
F:\Steam\steamapps\common\Skyrim\Data\Scripts\Source\

nwsFollowerMCMExScript.psc
nwsFollowerMCMScript.psc

Skyrim SE (64-bit)
F:\Steam\steamapps\common\Skyrim Special Edition\Data\Source\Scripts\

    nwsFollowerMCMExScript.psc  ( -> Quest.psc)          ; this is Nethers MCMExScript
         nwsFollowerMCMScript Property mcmScr Auto

    nwsFollowerMCMScript.psc ( -> SKI_ConfigBase.psc)    ; this is Nethers MCMScript
        nwsFollowerMCMExScript Property mcmExScr Auto

--- My suggestion: Probably you have SkyUI for Skyrim SE installed by wrong way --

Please read this: https://www.reddit.com/r/skyrimmods/comments/gfo5xb/skyui_2020_source/

How to extract "scripts.zip" https://forums.nexusmods.com/index.php?/topic/5825367-how-to-extract-the-scripts-rar-file-i-want-to-make-sure/

IsharaMeradin wrote: here
"Make sure that the SKSE files like *.psc are in the proper location.
SKSE64 ships with the source files following the Skyrim LE directory structure.
Thus you may need to manually move them to the correct SSE directory structure."

Please read also this thread: https://forums.nexusmods.com/index.php?/topic/7470041-creation-kit-script-error-the-extends-script-does-not-exist-please-pick-one-that-does/

 

Good luck..

 

PS: It could be possible you have installed all fine, but the original SkyUI (made by schlangster) converted to SkyUI for Skyrim SE was made wrong or different by someone.

You could adjust the functions in source-files like "SKI_ConfigBase.psc", which spit out compiler errors for "Nethers Follower Framework" scripts.

How to? add the predefined value as I posted above

Edited by ReDragon2013
Link to comment
Share on other sites

Again, thank you for your response. My intent was to not bash on Nether's work at all. I had already followed those links and had all of those files in the proper location, I did my research for hours before posting this topic.

 

So I did the only other thing I could think of: a fresh install and redownloaded and set everything back up.

 

Now when I compile I am only getting 3 errors.

 

F:\Steam\steamapps\common\Skyrim Special Edition\Data\Source\Scripts\nwsFollowerControllerScript.psc(540,14): cannot convert to unknown type sethirelingrehire3dnpc
F:\Steam\steamapps\common\Skyrim Special Edition\Data\Source\Scripts\nwsFollowerControllerScript.psc(540,14): cannot cast a quest to a sethirelingrehire3dnpc, types are incompatible
F:\Steam\steamapps\common\Skyrim Special Edition\Data\Source\Scripts\nwsFollowerControllerScript.psc(540,41): sethirelingrehire3dnpc is not a known user-defined type
I still need to look into these, I just finished with the fresh install.
Link to comment
Share on other sites

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...