A simple extension to both develop and compile V-Slice mods in a more comfortable environment than a notepad.
·
Report Bug or Request Feature
·
Create Pull Request
It's more or less implementation of this suggestion.
You can put your chars into a special fnfc_files folder and they'll be automatically included with your mod when compiled.
-
-
Lets you format your haxe code using
Ctr + Alt + Lshortcut. -
-
-
- You can click with Ctr key on a field to go to it's definition. Works for both Haxe and FNF classes.
-
If you know the exact type of a generic variable (like the type of state from ev.targetState) you may cast it using
cast (<field>,<type>)eg.cast (ev.targetState,OptionsState).DO NOT USE
cast <field>(cast ev.targetState) -
Attempts to fix Polymod issues with importing nested types:
This means that:
- import funkin.modding.events.ScriptEvent.StateChangeScriptEvent;
turns into
- import funkin.modding.events.StateChangeScriptEvent;
-
Allows you to use a documented
Module.polymodExecFunc()function instead of the missing one. It will be converted to theModule.scriptCall()once compiled.
- Install both Haxe and Git
- Install the extension.
- Run
Funkin compiler: Setup haxelibcommand to install necessary dependencies (You will be asked to select a folder to install haxelibs into).
- Run
Funkin compiler: Make new projectto scaffold template for your mod. - Once done, you can customise some settings from
funk.cfgfile.
Note: filepaths are based on your project's root dorectory
mod_content_folderPoints to your mod's base folder. All the files here will copied first when compiling your mod.mod_hx_folderPoint to your code managed, and then compiled by the program. This is where you write your code.mod_fnfc_folderPoints to the FNFC files of your mod. Those get properly integrated into your mod when compiling. This lets you easily edit the songs from the game itself.
Just launch any V-Slice mod directory. There should be a special message about activation of this mode.
NOTE: You need to change the extension of scripts to .hx to access autocompletion.
Make sure to change it back after!
If you get the "Startup warning" about Funkin compiler not being configured correctly:
- Click
Yes - Select folder you chose when running the
Funkin: Setup Funkin compilercommand - Click
Cancelwhen asked about non-clean haxelib folder.
To create a new project, run the Funkin compiler: Make new project command in a empty folder.
The extension adds the new task type: funk,
new debugger type funkin-run-game
and the following settings (apply as default settings for the compile task):
funkinCompiler.modNameIs the name of your mod in the game instance available from the "mods" folder.funkinCompiler.gamePathPath to the game folder.funkinCompiler.haxelibPathPath to your haxelib folder. This should be set when running theFunkin compiler: Setup haxelibcommand.
-
Open the newly created project in VSCode or a fork based on it.
-
Head over to the extensions tab and install all of the recommended extensions.
-
Run
Funkin compiler: Set haxelibto set Funkin Compiler's haxelib folder. -
Initialise a new git repo and add at least one commit and add all files to it (I recommend to use VSCode for that)
Here is a TTW file documenting the project's structure
Mase sure to install both vscode and vscode-debugadapter haxelibs.
As for node, run npm install vscode-debugadapter to install dependencies for the debugger.
