FNFのMod作った
Friday Night Funkin'というゲームのmodを作りました。
曲とアニメとコーディング一人でやったのでプレイしてくれると嬉しいです。
本家のゲーム
https://ninja-muffin24.itch.io/funkin
Mod作り手順など
日本人のmod制作者の方がmodビルドに必要な手順を公開してくれているので見ていただければ大体分かるかと思います。
今回自分が作ったmodはpsych engineを使用しています。
コーディングあまりしなくていいので良い。以下に書いてるものはpsych engine用のコードです。
キャラクターの手前にオブジェクトを置きたい
この手前の霧とか。
ステージを構成してるPlayState.hx開きます
手前の霧以外のステージのコード。頑張って書こう(元々あるステージのコードコピーして改造すれば簡単です)
ステージ名はidFogStageとなっています。
後々確認したらステージカメラを近づけるか遠ざけるかってところは別ファイルに書いてあったのでdefaultCamZoomいらなかった。
(FNF-PsychEngine-main\FNF-PsychEngine-main\assets\preload\stagesにステージごとにキャラの立ち位置を決めたりするデータが入ってる)
boyfriendGroup.add(boyfriend)って書いてあるところで(ctrl+fで調べよう)bfが追加されるのでその後に霧の画像を追加するようなコード書いてあげるとキャラの手前に追加されます。
gfとdad(相手キャラ)とbf(プレイヤー)が追加されている様子。
if (curStage == 'idFogStage')
{
var idFog:FlxSprite = new FlxSprite(-312, 600);
idFog.frames = Paths.getSparrowAtlas('idfog');
idFog.setGraphicSize(Std.int(idFog.width * 1.4));
idFog.alpha = 0.7;
idFog.animation.addByPrefix('idfog', "idfog", 20);
idFog.animation.play('idfog');
idFog.scrollFactor.set(0.4, 0.4);
add(idFog);
}
ステージの名前をidFogStageにしているので
if (curStage == 'idFogStage')とします。
idFog.alpha = 0.7;は透明度。数字がデカいと不透明になる。多分。
特定のキャラを選んだ時にGFを非表示にしたい
PlayState.hx開こう。
if(dad.curCharacter.startsWith('gf')) {
dad.setPosition(GF_X, GF_Y);
gf.visible = false;
}
こういうコードがあるかと思います。
if(dad.curCharacter.startsWith('gf'))っていうのはdad(相手キャラ)がgf(キャラ名)だった時に実行されるコードです。gfの部分を自分の作ったキャラ名に変えよう。
dad.setPosition(GF_X, GF_Y);
dad(相手キャラ)をgfの位置に置く。dadの位置がそのままでいいなら消してもいいと思います。
gf.visible = false;
gfを非表示にします。
ええ感じや。
Mod作りに役立つもの
Spritesheet and XML generator
adobe animate持ってなくてもXMLファイル作ってくれるツール
BFのサウンドフォント
https://gamebanana.com/tools/7009
プレイヤーキャラの声を作れるやつです。Boyfriend Soundfontなどで調べれば出てきます。
midiをチャートにしてくれるもの
psych engineとkade engineでも使えた。おすすめ。
ソースコードのガイド
全部英語だけど頑張って読みましょう。大体やりたいこと載ってるけどpsych engine使うならあまり必要ないかも。
psych engineのコードガイドもあります。
カスタムシーンのソースコードガイド
日本人向けのmod制作サーバー
情報とか流したり進捗を出したりしています(主に私が…)
最後
mod作り日本でも活発になってほしいなと思ってます。
質問等あればお気軽に聞いてください。enjoy!
modの共同制作のお話なども歓迎です。ヨロシク。
曲、絵、コード大体できます。
この記事が気に入ったらサポートをしてみませんか?