如何快速上手FNF-PsychEngine:打造个性化节奏游戏的完整指南 🎵
FNF-PsychEngine 是一款专为《Friday Night Funkin'》(FNF) 设计的开源引擎,最初用于热门模组《Mind Games》。它不仅修复了原版游戏的诸多问题,还通过简化代码结构让新手开发者能轻松定制游戏内容,是制作个性化节奏游戏的终极选择!

图1:FNF-PsychEngine官方标志,展现引擎的动感与创意
🚀 1分钟了解核心优势
FNF-PsychEngine凭借以下特性成为开发者的首选:
- 模组友好:支持Lua脚本和外部模组,无需修改源码即可创建新关卡
- 可视化编辑:内置角色编辑器、谱面编辑器等工具链
- 丰富功能:成就系统、动态对话框、自定义光影效果一应俱全
- 轻量高效:优化的性能让低配设备也能流畅运行
📂 项目结构速览
FNF-PsychEngine/
├── assets/ # 游戏资源(音乐、图像、字体等)
├── docs/ # 官方文档和教程
├── source/ # 核心源代码
│ ├── backend/ # 游戏逻辑(Conductor.hx节奏控制、Mods.hx模组管理)
│ ├── states/ # 场景状态(PlayState.hx游戏主逻辑、MenuState.hx菜单界面)
│ └── editors/ # 编辑器功能(ChartingState.hx谱面编辑)
└── setup/ # 编译脚本(windows.bat、unix.sh)
关键目录详解
- 资源存放:assets/songs/ 存放自定义歌曲,assets/shared/images/ 管理UI素材
- 核心逻辑:source/backend/ 包含节奏控制、输入处理等引擎核心
- 官方文档:docs/BUILDING.md 提供详细编译指南
⚡ 三步安装指南
1️⃣ 获取源码
git clone https://gitcode.com/gh_mirrors/fn/FNF-PsychEngine
cd FNF-PsychEngine
2️⃣ 环境配置
根据系统选择对应脚本:
- Windows:双击 setup/windows.bat
- Linux/macOS:终端执行
sh setup/unix.sh
3️⃣ 编译运行
# 编译游戏
lime build windows -release # Windows
lime build linux -release # Linux
# 运行游戏
cd export/release/windows/bin
FNF-PsychEngine.exe
✨ 必学功能解析
🎭 角色编辑器:轻松创建个性化角色

图2:FNF-PsychEngine角色编辑器,支持骨骼动画与表情定制
通过 states/editors/CharacterEditorState.hx 源码可扩展更多编辑功能,比如添加自定义动作帧。
🎼 谱面编辑:制作你的节奏大师

图3:可视化谱面编辑器,支持BPM微调与事件触发
编辑器支持:
- decimal BPM(如120.5)精准控制节奏
- 事件标记(Event Notes)触发灯光/镜头效果
- 五音符类型(Hey动画、GF演唱等特殊交互)
📱 模组管理:一键启用/禁用功能

图4:模组管理界面,支持第三方内容快速集成
将自制模组放入 mods/ 目录,即可在游戏内通过模组菜单管理,无需复杂配置!
🛠️ 个性化配置技巧
基础配置:Project.xml
修改根目录 Project.xml 可开启/关闭核心功能:
<!-- 禁用视频过场动画 -->
<!-- <haxedef name="VIDEOS_ALLOWED" /> -->
<!-- 启用Lua脚本支持 -->
<haxedef name="LUA_ALLOWED" />
高级设置:Options菜单
- 下落谱面/中置谱面切换
- 音符颜色自定义
- 抗锯齿、帧率限制等性能选项
🎮 游戏特色功能展示
动态对话系统

图6:带有动画效果的对话框,提升剧情表现力
通过 source/cutscenes/DialogueBoxPsych.hx 可自定义对话样式与动画。
成就系统

图7:内置16种成就模板,支持自定义解锁条件
参考 source/backend/Achievements.hx 源码添加新成就,如"全连击通关"、"隐藏歌曲解锁"等。
📚 学习资源
- 官方教程:docs/scripts/TemplateScript.hx
- 模组示例:example_mods/modTemplate.zip
- 社区支持:FNF Modding Wiki(外部链接仅供参考)
💡 新手常见问题
Q:如何添加自定义歌曲?
A:将音频文件(.mp3/.ogg)放入 assets/songs/自定义歌曲名/,并创建 song.json 配置谱面路径
Q:编译时报错缺少库?
A:参考 setup/read_this_if_you_cant_compile.html 安装依赖
Q:如何修改按键映射?
A:在游戏选项→Controls中自定义,配置文件位于 source/backend/Controls.hx
FNF-PsychEngine让节奏游戏开发变得简单有趣!无论是制作个人模组还是学习游戏开发,这款引擎都能满足你的需求。立即下载源码,开启你的创意之旅吧!
本文基于FNF-PsychEngine最新稳定版编写,适配Windows/macOS/Linux系统 🌟
atomcodeClaude Code 的开源替代方案。连接任意大模型,编辑代码,运行命令,自动验证 — 全自动执行。用 Rust 构建,极致性能。 | An open-source alternative to Claude Code. Connect any LLM, edit code, run commands, and verify changes — autonomously. Built in Rust for speed. Get StartedRust0176
cann-learning-hubCANN 学习中心仓,支持在线互动运行、边学边练,提供教程、示例与优化方案,一站式助力昇腾开发者快速上手。Jupyter Notebook0104
Step-3.7-FlashStep-3.7-Flash是一个拥有 1980 亿参数的稀疏混合专家(MoE)视觉语言模型,由 1960 亿参数的语言主干网络和 18 亿参数的视觉编码器组合而成,具备原生图像理解能力。Python00
BitCPM-CANN-8BBitCPM-CANN 是首个基于华为昇腾 NPU 原生构建的端到端 1.58 位(三值化)大语言模型训练系统。该系统将量化感知训练(QAT)集成到 Megatron-LM 框架中,并结合 MindSpeed 加速,覆盖了从自定义三值算子到基于昇腾 910B 的分布式并行训练的完整训练栈。Python00
llm-universe本项目是一个面向小白开发者的大模型应用开发教程,在线阅读地址:https://datawhalechina.github.io/llm-universe/Jupyter Notebook06
inference通过更改一行代码,您可以在应用程序中用另一个大型语言模型(LLM)替换OpenAI GPT。Xinference赋予您使用任何所需LLM的自由。借助Xinference,您能够在云端、本地、甚至笔记本电脑上运行任何开源语言模型、语音识别模型和多模态模型的推理。Python02
