Porting from Psych Engine - SlightlySimple/FNF-Restructure-Engine GitHub Wiki

Restructure Engine has several tools in place to help with porting mods from Psych Engine.

Characters

Restructure can load character JSONs from Psych both in-game and in the Character Editor. Copy the character JSON to the data/characters folder of your mod, copy the character's sprite sheet to the images/characters folder of your mod, and copy the character's icon to the images/icons folder of your mod.

If your mod has a subfolder, for example called mymod, you would copy the JSON to the data/characters/mymod folder, the sprite sheet to the images/mymod/characters folder, and the icon to the images/mymod/icons folder.

If a character was originally intended to be playable or go in Boyfriend's place, their animation offsets will likely be broken. To fix this, open the character in the Character Editor, go to the "Properties" tab, and change "Facing" to "left".

In general, it is recommended to open all ported characters in the Character Editor to ensure that the porting worked properly and to clean anything up.

Stages

While stage JSONs in Psych have very limited information, Restructure can still read them. Copy the stage JSON to the data/stages folder of your mod, putting it in a subfolder if your mod has one.

From there, you will need to make a folder for the stage's images and rebuild it like you would build a normal stage in Restructure.

Songs

Porting songs from Psych Engine can be done by putting the chart folders in the appropriate folder inside data/songs, and the music files in the appropriate folder inside songs. Optionally, the music files can be placed in the folders with the charts in data/songs.

Events

Restructure supports loading events from Psych in the Chart Editor, and can convert most events found in base Psych Engine. Click the Load button beneath the Events label and select either events.json, or the chart file if events.json does not exist. The Editor will convert every event it knows how to convert, and show you a message if there are events it was unable to convert.

If the Psych mod you're porting has any custom events, these will likely show up in this message. In order to tell Restructure how to convert them, you need to create a folder in your mod's data folder called "psychEvents" and write a script in that folder that tells the engine how to convert events from your mod. This is somewhat advanced, and it's recommended to look at the base script file in the base engine's "psychEvents" folder as a starting point.

Alternatively, you can click "Make Custom" which will turn all the unrecognized events into "custom" events with the right names and parameters.