You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: assets/content/cookbook/Advanced/02.ScriptedClasses.md
+7-7Lines changed: 7 additions & 7 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -24,9 +24,9 @@ class BallisticSong extends Song {
24
24
25
25
There is a predefined list of classes which the game has set up to be scriptable, and will automatically load and execute when relevant. More of these will be added in the future.
26
26
27
-
-`funkin.play.song.Song` for providing unique behavior to custom songs, including playing cutscenes and other stuff. See [Scripted Songs](3.ScriptedSongs.md).
28
-
- See also [Video Cutscenes](6.VideoCutscenes.md), [Ingame Cutscenes](21-scripted-classes/21-04-ingame-cutscenes.md), and [Dialogue Cutscenes](7.DialogueCutscenes.md)
29
-
-`funkin.play.character.BaseCharacter` for providing unique behavior to custom characters (such as playing custom animations in certain circumstances). See [Scripted Characters](4.ScriptedCharacters.md).
27
+
-`funkin.play.song.Song` for providing unique behavior to custom songs, including playing cutscenes and other stuff. See [Scripted Songs](03.ScriptedSongs.md).
28
+
- See also [Video Cutscenes](09.VideoCutscenes.md), [Ingame Cutscenes](21-scripted-classes/21-04-ingame-cutscenes.md), and [Dialogue Cutscenes](08.DialogueCutscenes.md)
29
+
-`funkin.play.character.BaseCharacter` for providing unique behavior to custom characters (such as playing custom animations in certain circumstances). See [Scripted Characters](04.ScriptedCharacters.md).
30
30
31
31
- Note that you need to choose the correct subclass of this class for the animation type of your character!
32
32
@@ -42,12 +42,12 @@ There is a predefined list of classes which the game has set up to be scriptable
42
42
-`funkin.ui.freeplay.charselect.PlayableCharacter` for providing unique behavior to custom playable characters. See [Scripted Playable Characters](5.ScriptedPlayableCharacters.md)
43
43
-`funkin.ui.freeplay.FreeplayStyle` for defining the sprites and colors used by the Freeplay menu when a given character is selected. See [WIP]
44
44
-`funkin.play.notes.notestyle.NoteStyle` for modifying the behavior of custom note styles. See [WIP]
45
-
-`funkin.play.cutscene.dialogue.Conversation` for providing unique behavior to custom dialogue conversations. See [Dialogue Cutscenes](7.DialogueCutscenes.md)
46
-
-`funkin.play.cutscene.dialogue.DialogueBox` for providing unique behavior to custom dialogue boxes used in conversations. See [Dialogue Cutscenes](7.DialogueCutscenes.md)
47
-
-`funkin.play.cutscene.dialogue.Speaker` for providing unique behavior to custom speakers used in conversations. See [Dialogue Cutscenes](7.DialogueCutscenes.md)
45
+
-`funkin.play.cutscene.dialogue.Conversation` for providing unique behavior to custom dialogue conversations. See [Dialogue Cutscenes](08.DialogueCutscenes.md)
46
+
-`funkin.play.cutscene.dialogue.DialogueBox` for providing unique behavior to custom dialogue boxes used in conversations. See [Dialogue Cutscenes](08.DialogueCutscenes.md)
47
+
-`funkin.play.cutscene.dialogue.Speaker` for providing unique behavior to custom speakers used in conversations. See [Dialogue Cutscenes](08.DialogueCutscenes.md)
48
48
-`funkin.ui.freeplay.Album` for defining custom behavior for Freeplay Albums. See [WIP]
49
49
50
-
There is also `funkin.modding.module.Module` for custom scripted Modules, which are scripts which receive events everywhere, rather than only in a specific context. See [Scripted Modules](30-scripted-modules/30-00-scripted-modules.md) for more information on how these work.
50
+
There is also `funkin.modding.module.Module` for custom scripted Modules, which are scripts which receive events everywhere, rather than only in a specific context. See [Scripted Modules](../Expert/01.ScriptedModules.md) for more information on how these work.
51
51
52
52
There are also scripted classes are also set up to be scriptable, but will only be useful if they're accessed from another script. Expect more of these to be added in the future.
Copy file name to clipboardExpand all lines: assets/content/cookbook/Expert/01.ScriptedModules.md
+1-1Lines changed: 1 addition & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -50,6 +50,6 @@ Modules have all the events most scripts have, but the difference is. You also h
50
50
51
51
Modules also have a priority system for compatibility with other mods, in your construction method, `new()`, you can set the `priority` property (which defaults to `1000`). 1 is processed before anything else.
52
52
53
-
You can view a detailed list of script events and their callbacks in [here](../Advanced/6.ScriptEventCallbacks.md)
53
+
You can view a detailed list of script events and their callbacks in [here](../Advanced/06.ScriptEventCallbacks.md)
Copy file name to clipboardExpand all lines: assets/content/cookbook/Intermediate/01.CustomPlayableCharacters.md
+4-4Lines changed: 4 additions & 4 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -10,10 +10,10 @@ This chapter goes over adding new playable characters to the game, ensuring that
10
10
11
11
In order to make a fleshed out custom character that can be used from Character Select in Friday Night Funkin', you need a large number of textures, animations, and audio tracks:
12
12
13
-
- A [custom character](../Introduction/3.CustomCharacters.md).
13
+
- A [custom character](../Introduction/03.CustomCharacters.md).
14
14
15
15
- This requires a set of singing animations for the character.
16
-
- At least one custom song that uses that character; this can be either [a new song](../Introduction/2.CustomSongs.md#adding-the-custom-song) or a [variation added to an existing song](../Introduction/2.CustomSongs.md#adding-variations-to-existing-songs).
16
+
- At least one custom song that uses that character; this can be either [a new song](../Introduction/02.CustomSongs.md#adding-the-custom-song) or a [variation added to an existing song](../Introduction/02.CustomSongs.md#adding-variations-to-existing-songs).
17
17
18
18
- This requires an instrumental and split vocal tracks.
19
19
- A pixel icon asset to use for that character's icon in the Character Select grid.
@@ -208,13 +208,13 @@ The available fields are:
208
208
209
209
-`version`: The version number for the Playable Character data file format. Leave this at `1.0.0`.
210
210
-`name`: The readable name for the character, used internally.
211
-
-`ownedCharacters`: The list of [Characters](../Introduction/3.CustomCharacters.md) this character owns.
211
+
-`ownedCharacters`: The list of [Characters](../Introduction/03.CustomCharacters.md) this character owns.
212
212
213
213
- When determining which songs to display in Freeplay, the game checks for any songs where the player character is in this list and displays those. Songs where the player character is in another array are not displayed.
214
214
-`showUnownedChars`: If this value is `true`, then songs whose player character is not in any `ownedCharacters` list will be displayed for this character.
215
215
-`unlocked`: Whether the character is unlocked.
216
216
217
-
- Create a scripted class for this playable character and override `isUnlocked():Bool` to make this conditional. See [Scripted Playable Characters](../Advanced/5.ScriptedPlayableCharacters.md)
217
+
- Create a scripted class for this playable character and override `isUnlocked():Bool` to make this conditional. See [Scripted Playable Characters](../Advanced/05.ScriptedPlayableCharacters.md)
218
218
-`freeplayStyle`: The ID for a Freeplay style to display.
219
219
220
220
- You can use `"bf"` here to use Boyfriend's Freeplay style as a default, or create a new JSON file in the `data/ui/freeplay/styles` folder (copy the Pico one and edit that).
Copy file name to clipboardExpand all lines: assets/content/cookbook/Intermediate/03.CustomStickerPacks.md
+1-1Lines changed: 1 addition & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -58,7 +58,7 @@ For example, to add to Boyfriend's standard sticker pack, you can use the follow
58
58
59
59
There are two ways the game defines a given sticker pack to be used:
60
60
61
-
- Each [Playable Character](1.CustomPlayableCharacters.md) defines the `stickerPack` variable, which specifies the sticker pack to be used by songs containing that character. For example, `bf` uses the `standard-bf` sticker pack. You can define a sticker pack to be used for your custom playable character by setting the `stickerPack` value, or modify which sticker pack is used by other playable characters by using [JSONPatch](../Introduction/5.AppendingAndMerge.md#merging) to modify the `stickerPack` value of that character.
61
+
- Each [Playable Character](01.CustomPlayableCharacters.md) defines the `stickerPack` variable, which specifies the sticker pack to be used by songs containing that character. For example, `bf` uses the `standard-bf` sticker pack. You can define a sticker pack to be used for your custom playable character by setting the `stickerPack` value, or modify which sticker pack is used by other playable characters by using [JSONPatch](../Introduction/05.AppendingAndMerge.md#merging) to modify the `stickerPack` value of that character.
62
62
- Each song has a value in its metadata to define which sticker pack is used. Set the `playData.stickerPack` on a song (or use JSONPatch to modify metadata of an existing song) to override which sticker pack it uses.
63
63
64
64
The game checks and uses sticker packs in this order:
Copy file name to clipboardExpand all lines: assets/content/cookbook/Intermediate/04.CustomAlbums.md
+1-1Lines changed: 1 addition & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -61,7 +61,7 @@ Animation data is structured like so:
61
61
62
62
# Using the Album
63
63
64
-
Albums are defined on a per-song basis, so you have to set the album ID for each song. In order to do this, you first have to make the song the itself. See [Custom Songs and Custom Levels](../Introduction/2.CustomSongs.md).
64
+
Albums are defined on a per-song basis, so you have to set the album ID for each song. In order to do this, you first have to make the song the itself. See [Custom Songs and Custom Levels](../Introduction/02.CustomSongs.md).
65
65
66
66
When you are done creating the song, head over to the `metadata.json` of the song where you want to album to appear and check in `playData` for the `album` key.
Copy file name to clipboardExpand all lines: assets/content/cookbook/Intermediate/05.Migration.md
+1-1Lines changed: 1 addition & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -138,6 +138,6 @@ if (Std.isOfType(currentState, OptionsState)) {
138
138
139
139
v0.6.0 rewrote how stickers get used by the game (and v0.6.3 rewrote it again but better this time). Any existing mods that provided stickers will probably break.
140
140
141
-
New or updating mods looking to add, remove, or replace stickers should consult the [custom Sticker Packs documentation](3.CustomStickerPacks.md)
141
+
New or updating mods looking to add, remove, or replace stickers should consult the [custom Sticker Packs documentation](03.CustomStickerPacks.md)
Copy file name to clipboardExpand all lines: assets/content/cookbook/Introduction/03.CustomCharacters.md
+1-1Lines changed: 1 addition & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -242,6 +242,6 @@ Once you are happy with your result, simply press `ESC` on your keyboard to save
242
242
> [!NOTE]
243
243
> In case you want to save the offsets of your character, you are able to do so by pressing `CTRL+ESC` on your keyboard to save the offsets.
244
244
245
-
From the beginning of this chapter you will know, that you have to place this character data JSON file in `data/characters`. Then, you can simply use [Hot Reloading](../Introduction/1.Introduction.md#hot-reloading) to check the offsets without restarting the game.
245
+
From the beginning of this chapter you will know, that you have to place this character data JSON file in `data/characters`. Then, you can simply use [Hot Reloading](../Introduction/01.Introduction.md#hot-reloading) to check the offsets without restarting the game.
0 commit comments