Skip to content

Latest commit

 

History

1 Commit

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ProjectRPG

English version: README_EN.md

ProjectRPG 是一个基于 Unity 6 的 2D RPG 项目,重点在于把剧情演出与任务推进流程做成可视化、低代码、可复用的制作管线。

项目定位

  • 剧情驱动:以剧情演出、分支选择、阵营路线和结局变化为主线。
  • 策划友好:将大量流程沉淀为 NodeCanvas 对话树和可配置节点。
  • 低代码工作流:文本剧本 + 可视化图编排 + 少量定制节点联动战斗与镜头。

核心能力

  • 可视化剧情编排(NodeCanvas DialogueTree)
    • 场景中使用 DialogueTreeController 驱动流程。
    • 支持条件分支、动作节点、批量对白节点、任务状态判断。
  • 批量对白节点(BatchSayNode)
    • 支持直接读取 TextAsset(TXT)并逐行播放。
    • 支持 //角色名 语法切换说话者。
    • 支持按阵营状态自动切换多版本对白(Executor / Controller 分支)。
  • 自定义剧情节点(Assets/ParadoxNotion/Scripts/RPGDialogue)
    • StartBattleNode:从剧情树直接拉起战斗并配置奖励。
    • JoinFunctionNode / CheckFunctionCondition:控制阵营加入与条件判断。
    • CompleteTaskNode / CheckTaskCondition:任务推进标记与检测。
    • SetPlayerMove、SetCameraUpdate、ChangeCharacter、AddPartyMemberNode:演出控制节点。
  • 文本转资产工具(Unity Editor)
    • Tools/Dialog Importer(DialogImporterWindow):将 TXT 转为 Dialog ScriptableObject,支持头像和 closing message。
  • 构建辅助工具
    • Tools/Generate Level List(BuildSceneListGenerator):自动从 Build Settings 生成关卡列表资源。
  • RPG 基础系统
    • 任务/事件系统(Quest/Event)
    • 战斗、道具、队伍、商店、存档(多槽位)等基础循环

内容规模(当前仓库)

  • 场景:Assets/Scenes 下 20 个 .unity 场景
  • 对话文本:Assets/Data/Dialogs/TXT 下 78 个 .txt 文件
  • 自定义 RPG 对话节点:Assets/ParadoxNotion/Scripts/RPGDialogue 下 14 个 C# 文件

目录结构

Assets/
  Data/
    Dialogs/TXT/                 # 剧情文本(按任务与路线划分)
    Tree/BB/@GlobalBlackboard.prefab
  ParadoxNotion/Scripts/RPGDialogue/
                                # NodeCanvas 自定义对话任务/条件/节点
  Scripts/
    Core/                        # GameManager/BattleManager 等核心管理器
    Gameplay/                    # 相机、场景对象、RPG Kit 逻辑
    Editor/                      # 对话导入、构建辅助工具
  Scenes/                        # 关卡与剧情场景
Packages/
ProjectSettings/

开发环境

  • Unity:6000.2.8f1
  • Render Pipeline:URP (com.unity.render-pipelines.universal)
  • 关键依赖:NodeCanvas(ParadoxNotion)、2D RPG Kit 资产、Unity Input System

快速开始

  1. 使用 Unity Hub 安装并打开 6000.2.8f1。
  2. 打开本项目根目录。
  3. 从 Assets/Scenes/TitleScreen.unity 启动 Play Mode。
  4. 如需构建,检查 ProjectSettings/EditorBuildSettings.asset 场景顺序。

策划工作流(低代码)

  1. 在 Assets/Data/Dialogs/TXT 编写剧情文本,使用 //角色名 标记说话者。
  2. 二选一:
    • 直接在 BatchSayNode 里引用 TXT TextAsset。
    • 或通过 Tools/Dialog Importer 生成 Dialog 资产用于 NPC 对话系统。
  3. 在场景的 DialogueTreeController 中拖拽节点拼接流程。
  4. 用 CheckTaskCondition / CheckFunctionCondition 做分支。
  5. 用 StartBattleNode、镜头和角色控制节点衔接演出和玩法。
  6. 在 @GlobalBlackboard 维护全局剧情变量。

提交到 Git 的建议

  • 应提交:Assets/、Packages/、ProjectSettings/
  • 不应提交:Library/、Logs/、Temp/、Build/ 等生成目录(已由 .gitignore 处理)

版权与资源说明

本项目包含第三方插件与美术/代码资源(如 NodeCanvas、HeroEditor4D 等)。对外发布或商用前,请先确认各资源许可证与授权范围。

About

一款侧重于剧情演出和剧情配置工具链的RPG游戏项目

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages