AtomsChosen Posted December 15, 2023 Share Posted December 15, 2023 So for some reason no matter what I try to do I can't get the script compiler on my CK to work. I've tried reinstalling my entire fallout 4 folder outside of program files, adjusting the script numerous times, I've confirmed from outside sources that a script I was trying to make does work. Everything has failed so far. So I wanted to know if there is any other up to date script compiling that can compile scripts into Pex files. Link to comment Share on other sites More sharing options...
SKKmods Posted December 15, 2023 Share Posted December 15, 2023 If you cant get the paths correct for the default compiler (which is 99.9% of problems) no other compiler will work around that. (1) Save this as SCRIPTCOMPILE.CMD in the same folder as PapyrusCompiler.exe (2) Edit the paths to match your setup. if you dont know what paths to use ... that is your problem ! PapyrusCompiler.exe works totally standalone, needs NOTHING from creation kit except the decompiled base game scripts to IMPORT. The alternative Caprica.exe compiler needs exactly the same thing. @echo off set SCRIPTNAME=MyScriptName.psc set SCRIPTPATH=C:\Program Files (x86)\Steam\steamapps\common\Fallout 4\Data\Scripts\Source\User set COMPILERPATH=C:\Program Files (x86)\Steam\steamapps\common\Fallout 4\Papyrus Compiler set FLAGS=C:\Program Files (x86)\Steam\steamapps\common\Fallout 4\Data\Scripts\Source\Base\Institute_Papyrus_Flags.flg set IMPORT=C:\Program Files (x86)\Steam\steamapps\common\Fallout 4\Data\Scripts\Source\Base set OUTPUT=C:\Program Files (x86)\Steam\steamapps\common\Fallout 4\Data\Scripts "%COMPILERPATH%\PapyrusCompiler.exe" "%SCRIPTPATH%\%SCRIPTNAME%" -f="%FLAGS%" -i="%SCRIPTPATH%;%IMPORT%" -o="%OUTPUT%" pause You can then get all fancy and add command line scriptname capture, recursive path keyword compiles, Notepad ++ integrations 'n sh1t .... just master a single file compile first. 2 Link to comment Share on other sites More sharing options...
DlinnyLag Posted December 15, 2023 Share Posted December 15, 2023 (edited) Another option to configure building of multiple files - project file. Project files has .ppj extension. Just create .ppj file with following structure and run PapyrusCompiler.exe "path\to\your\project.ppj": Unfortunately, I can't insert code block (it is blocked by Cloudflire), so screenshot and gist: Edited December 15, 2023 by DlinnyLag Link to comment Share on other sites More sharing options...
RaidersClamoring Posted December 15, 2023 Share Posted December 15, 2023 Did you unzip all script packages and move the FO4SE source files into the Data/Scripts/Source folder? Link to comment Share on other sites More sharing options...
AtomsChosen Posted December 15, 2023 Author Share Posted December 15, 2023 6 hours ago, SKK50 said: If you cant get the paths correct for the default compiler (which is 99.9% of problems) no other compiler will work around that. (1) Save this as SCRIPTCOMPILE.CMD in the same folder as PapyrusCompiler.exe (2) Edit the paths to match your setup. if you dont know what paths to use ... that is your problem ! PapyrusCompiler.exe works totally standalone, needs NOTHING from creation kit except the decompiled base game scripts to IMPORT. The alternative Caprica.exe compiler needs exactly the same thing. @echo off set SCRIPTNAME=MyScriptName.psc set SCRIPTPATH=C:\Program Files (x86)\Steam\steamapps\common\Fallout 4\Data\Scripts\Source\User set COMPILERPATH=C:\Program Files (x86)\Steam\steamapps\common\Fallout 4\Papyrus Compiler set FLAGS=C:\Program Files (x86)\Steam\steamapps\common\Fallout 4\Data\Scripts\Source\Base\Institute_Papyrus_Flags.flg set IMPORT=C:\Program Files (x86)\Steam\steamapps\common\Fallout 4\Data\Scripts\Source\Base set OUTPUT=C:\Program Files (x86)\Steam\steamapps\common\Fallout 4\Data\Scripts "%COMPILERPATH%\PapyrusCompiler.exe" "%SCRIPTPATH%\%SCRIPTNAME%" -f="%FLAGS%" -i="%SCRIPTPATH%;%IMPORT%" -o="%OUTPUT%" pause You can then get all fancy and add command line scriptname capture, recursive path keyword compiles, Notepad ++ integrations 'n sh1t .... just master a single file compile first. By default these file paths seem to match the ones I currently have (See attached). I posted that script you posted and saved it as SCRIPTCOMPILE.CMD. Still failing. It feels like script compiling should be working, but weirdly it isn't. 3 hours ago, DlinnyLag said: Another option to configure building of multiple files - project file. Project files has .ppj extension. Just create .ppj file with following structure and run PapyrusCompiler.exe "path\to\your\project.ppj": Unfortunately, I can't insert code block (it is blocked by Cloudflire), so screenshot and gist: Going to give this a try. 3 hours ago, RaidersClamoring said: Did you unzip all script packages and move the FO4SE source files into the Data/Scripts/Source folder? The script I am trying to compile was created in the CK and I have it placed in C:\Program Files (x86)\Steam\steamapps\common\Fallout 4\Data\Scripts\Source\User Scripts outside of that folder simply don't show up at all. Link to comment Share on other sites More sharing options...
Fantafaust Posted December 16, 2023 Share Posted December 16, 2023 If the script was made in the CK, why would you need to manually relocate it? Link to comment Share on other sites More sharing options...
AtomsChosen Posted December 16, 2023 Author Share Posted December 16, 2023 When I create the script by Default it always ends up under "MyMod01". However when I try to find scripts from that folder they simply don't appear as options in the CK. Maybe this is the issue? How do I get scripts to show up from that folder? Link to comment Share on other sites More sharing options...
RaidersClamoring Posted December 16, 2023 Share Posted December 16, 2023 If you create scripts in subfolder, which you should and it looks like you are doing, the script name will be "foldername:scriptname" rather than "scriptname". So there's a thing to double-check, whether it was created correctly or not (it probably was). What I meant earlier by "unzip source files" is the vanilla script source files must be unzipped and placed under Data/Scripts/Source/base. This is also done when accepting the prompt to do so once you open the CK for the first time, or whenever you open it and it can't find the unzipped files. However, like anything on a computer, it can fail to work for whatever reason, so there's a thing to check. You can unzip it yourself manually too if it has failed. By "move the FO4SE source files to..." what I meant was, if you use any of the functions provided by FO4SE, you will need to not just put FO4SE in your load order, but also move the source files manually to a location where the CK can detect them. Personally I will just move them to base and let them overwrite the vanilla scripts. It's the easiest way. Be aware though that if you plan on producing for XBOX, you outright cannot use any of the FO4SE functions, so don't overwrite the vanilla files if you do. You can also keep them directly in Source. The FOSE4 source files can be found by navigating to the FO4SE folder where it was placed in "Fallout 4" and looking in "\Data\Scripts\Source" within the FOSE4 directory (it mirrors the structure of "Fallout 4"). The CK paths to the script sources is set in File > Preferences > Scripts > [Source folders] , it should be set by default or you can do it manually. You can also set this in CreationKit.ini, like this: [Papyrus] sScriptSourceFolder = ".\Data\Scripts\Source" ... If you need a walkthrough, this one is great (though it does not include the FO4SE part): Link to comment Share on other sites More sharing options...
Recommended Posts