补充文档和各类运行说明 文件
This commit is contained in:
@@ -67,6 +67,11 @@ add_executable(mana_pet_world
|
|||||||
)
|
)
|
||||||
target_link_libraries(mana_pet_world PRIVATE mana_core PkgConfig::RAYLIB)
|
target_link_libraries(mana_pet_world PRIVATE mana_core PkgConfig::RAYLIB)
|
||||||
target_compile_options(mana_pet_world PRIVATE -Wall -Wextra -Wpedantic)
|
target_compile_options(mana_pet_world PRIVATE -Wall -Wextra -Wpedantic)
|
||||||
|
set_property(DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} PROPERTY VS_STARTUP_PROJECT mana_pet_world)
|
||||||
|
set_target_properties(mana_pet_world PROPERTIES
|
||||||
|
VS_DEBUGGER_WORKING_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}"
|
||||||
|
VS_DEBUGGER_COMMAND_ARGUMENTS "${CMAKE_CURRENT_SOURCE_DIR}"
|
||||||
|
)
|
||||||
|
|
||||||
enable_testing()
|
enable_testing()
|
||||||
|
|
||||||
|
|||||||
@@ -40,6 +40,69 @@ sudo apt install cmake pkg-config g++ libraylib-dev libpugixml-dev
|
|||||||
|
|
||||||
仓库中也包含 `vcpkg.json`,声明了 `raylib` 和 `pugixml` 依赖;如果你使用 vcpkg,请确保 CMake 能通过 pkg-config 找到对应库。
|
仓库中也包含 `vcpkg.json`,声明了 `raylib` 和 `pugixml` 依赖;如果你使用 vcpkg,请确保 CMake 能通过 pkg-config 找到对应库。
|
||||||
|
|
||||||
|
### Windows 构建和运行
|
||||||
|
|
||||||
|
下面给出两种 Windows 运行方式:**PowerShell + VS Code** 和 **Visual Studio 2022**。两种方式都使用 vcpkg 安装依赖。当前 CMake 配置通过 `pkg-config` 查找 `raylib` 和 `pugixml`,所以除了游戏依赖本身,还需要安装 `pkgconf`。
|
||||||
|
|
||||||
|
先准备通用依赖。下面假设 vcpkg 安装在 `C:\src\vcpkg`:
|
||||||
|
|
||||||
|
```powershell
|
||||||
|
git clone https://github.com/microsoft/vcpkg C:\src\vcpkg
|
||||||
|
C:\src\vcpkg\bootstrap-vcpkg.bat
|
||||||
|
C:\src\vcpkg\vcpkg.exe install raylib pugixml pkgconf --triplet x64-windows
|
||||||
|
```
|
||||||
|
|
||||||
|
#### 方式一:PowerShell + VS Code
|
||||||
|
|
||||||
|
1. 安装 Visual Studio Code。
|
||||||
|
2. 安装 VS Code 扩展:**C/C++** 和 **CMake Tools**。
|
||||||
|
3. 安装 Visual Studio 2022 或 Build Tools for Visual Studio 2022,并勾选 **Desktop development with C++** 工作负载。
|
||||||
|
4. 用 VS Code 打开项目根目录,在 VS Code 终端中选择 PowerShell,然后运行:
|
||||||
|
|
||||||
|
```powershell
|
||||||
|
$env:VCPKG_ROOT = "C:\src\vcpkg"
|
||||||
|
$env:PKG_CONFIG_PATH = "$env:VCPKG_ROOT\installed\x64-windows\lib\pkgconfig;$env:VCPKG_ROOT\installed\x64-windows\share\pkgconfig"
|
||||||
|
|
||||||
|
cmake -S . -B build -G "Visual Studio 17 2022" -A x64 `
|
||||||
|
-DCMAKE_TOOLCHAIN_FILE="$env:VCPKG_ROOT\scripts\buildsystems\vcpkg.cmake" `
|
||||||
|
-DPKG_CONFIG_EXECUTABLE="$env:VCPKG_ROOT\installed\x64-windows\tools\pkgconf\pkgconf.exe"
|
||||||
|
|
||||||
|
cmake --build build --config Release --target mana_pet_world
|
||||||
|
```
|
||||||
|
|
||||||
|
5. 从项目根目录启动游戏,并把 `.` 作为资源根目录传给程序:
|
||||||
|
|
||||||
|
```powershell
|
||||||
|
.\build\Release\mana_pet_world.exe .
|
||||||
|
```
|
||||||
|
|
||||||
|
#### 方式二:Visual Studio 2022
|
||||||
|
|
||||||
|
1. 安装 Visual Studio 2022,并勾选 **Desktop development with C++** 和 CMake 支持。
|
||||||
|
2. 双击项目根目录下的 `setup_vs2022.bat`。脚本会安装 vcpkg 依赖、生成 `build\vs2022\ManaPetWorld.sln`、编译 `mana_pet_world`,然后打开 Visual Studio。
|
||||||
|
3. 在 Visual Studio 中点击运行按钮即可启动游戏。CMake 已经把 `mana_pet_world` 设为启动项目,并把调试工作目录和启动参数设置为项目根目录。
|
||||||
|
|
||||||
|
如果你想手动执行,也可以打开 **Developer PowerShell for VS 2022**,进入项目根目录,运行:
|
||||||
|
|
||||||
|
```powershell
|
||||||
|
$env:VCPKG_ROOT = "C:\src\vcpkg"
|
||||||
|
$env:PKG_CONFIG_PATH = "$env:VCPKG_ROOT\installed\x64-windows\lib\pkgconfig;$env:VCPKG_ROOT\installed\x64-windows\share\pkgconfig"
|
||||||
|
|
||||||
|
cmake -S . -B build\vs2022 -G "Visual Studio 17 2022" -A x64 `
|
||||||
|
-DCMAKE_TOOLCHAIN_FILE="$env:VCPKG_ROOT\scripts\buildsystems\vcpkg.cmake" `
|
||||||
|
-DPKG_CONFIG_EXECUTABLE="$env:VCPKG_ROOT\installed\x64-windows\tools\pkgconf\pkgconf.exe"
|
||||||
|
|
||||||
|
cmake --build build\vs2022 --config Release --target mana_pet_world
|
||||||
|
```
|
||||||
|
|
||||||
|
然后打开 `build\vs2022\ManaPetWorld.sln`,点击运行按钮;或者直接从命令行运行:
|
||||||
|
|
||||||
|
```powershell
|
||||||
|
.\build\vs2022\Release\mana_pet_world.exe .
|
||||||
|
```
|
||||||
|
|
||||||
|
如果 CMake 报告找不到 `raylib`、`pugixml` 或 `pkg-config`,请先确认上面的 `VCPKG_ROOT`、`PKG_CONFIG_PATH` 和 `PKG_CONFIG_EXECUTABLE` 路径与本机 vcpkg 安装位置一致。
|
||||||
|
|
||||||
## 快速启动
|
## 快速启动
|
||||||
|
|
||||||
在项目根目录运行:
|
在项目根目录运行:
|
||||||
|
|||||||
@@ -0,0 +1,51 @@
|
|||||||
|
@echo off
|
||||||
|
setlocal
|
||||||
|
|
||||||
|
set "ROOT=%~dp0"
|
||||||
|
if "%ROOT:~-1%"=="\" set "ROOT=%ROOT:~0,-1%"
|
||||||
|
|
||||||
|
if "%VCPKG_ROOT%"=="" set "VCPKG_ROOT=C:\src\vcpkg"
|
||||||
|
set "VCPKG_EXE=%VCPKG_ROOT%\vcpkg.exe"
|
||||||
|
set "PKGCONF_EXE=%VCPKG_ROOT%\installed\x64-windows\tools\pkgconf\pkgconf.exe"
|
||||||
|
set "PKG_CONFIG_PATH=%VCPKG_ROOT%\installed\x64-windows\lib\pkgconfig;%VCPKG_ROOT%\installed\x64-windows\share\pkgconfig"
|
||||||
|
|
||||||
|
if not exist "%VCPKG_EXE%" (
|
||||||
|
echo vcpkg.exe was not found at "%VCPKG_EXE%".
|
||||||
|
echo Set VCPKG_ROOT to your vcpkg directory, or install vcpkg at C:\src\vcpkg.
|
||||||
|
pause
|
||||||
|
exit /b 1
|
||||||
|
)
|
||||||
|
|
||||||
|
echo Installing dependencies with vcpkg...
|
||||||
|
"%VCPKG_EXE%" install raylib pugixml pkgconf --triplet x64-windows
|
||||||
|
if errorlevel 1 (
|
||||||
|
echo vcpkg dependency installation failed.
|
||||||
|
pause
|
||||||
|
exit /b 1
|
||||||
|
)
|
||||||
|
|
||||||
|
echo Configuring Visual Studio solution...
|
||||||
|
cmake -S "%ROOT%" -B "%ROOT%\build\vs2022" -G "Visual Studio 17 2022" -A x64 ^
|
||||||
|
-DCMAKE_TOOLCHAIN_FILE="%VCPKG_ROOT%\scripts\buildsystems\vcpkg.cmake" ^
|
||||||
|
-DPKG_CONFIG_EXECUTABLE="%PKGCONF_EXE%"
|
||||||
|
if errorlevel 1 (
|
||||||
|
echo CMake configuration failed.
|
||||||
|
pause
|
||||||
|
exit /b 1
|
||||||
|
)
|
||||||
|
|
||||||
|
echo Building mana_pet_world...
|
||||||
|
cmake --build "%ROOT%\build\vs2022" --config Release --target mana_pet_world
|
||||||
|
if errorlevel 1 (
|
||||||
|
echo Build failed.
|
||||||
|
pause
|
||||||
|
exit /b 1
|
||||||
|
)
|
||||||
|
|
||||||
|
echo Opening Visual Studio solution...
|
||||||
|
start "" "%ROOT%\build\vs2022\ManaPetWorld.sln"
|
||||||
|
echo.
|
||||||
|
echo In Visual Studio, click Run to start mana_pet_world.
|
||||||
|
echo If Visual Studio does not select it automatically, set mana_pet_world as the startup project once.
|
||||||
|
echo The debugger working directory and command argument are already set to the project root.
|
||||||
|
pause
|
||||||
@@ -0,0 +1,9 @@
|
|||||||
|
我从几个方面说一下。
|
||||||
|
|
||||||
|
可用性:整体还可以。开始界面和按键说明比较直接,进入游戏后靠近 NPC 按 E 就能交互,任务日志也会提示当前目标。刚开始不会特别迷路,不过背包和宠物页面的信息比较多,第一次打开时需要稍微适应一下。
|
||||||
|
|
||||||
|
功能:这部分我觉得是最完整的。游戏里有 NPC 对话、主线任务、地图探索、宠物选择、野外遇敌、回合制战斗、捕捉符、背包、商店和宠物图鉴。很多功能不是孤立的,比如任务会引导玩家去战斗,战斗又和宠物队伍、恢复道具、捕捉道具连在一起,所以玩起来比较像一个完整的小型 RPG。
|
||||||
|
|
||||||
|
性能:我试玩时没有遇到明显掉帧或者闪退,切菜单、进战斗、走地图都比较稳定。如果以后地图更大、怪物更多,可能还要再测一下。
|
||||||
|
|
||||||
|
还原度:和洛克王国最像的是宠物收集、宠物对战和图鉴这几个方向,但整体美术和剧情氛围并不是完全照着洛克王国来。这个方面我觉得不是主要问题,课程项目里能把宠物冒险的核心体验做出来就已经不错。
|
||||||
@@ -0,0 +1 @@
|
|||||||
|
能玩,内容也不少。操作提示比较清楚,任务、背包、战斗、捕捉宠物这些功能都有。运行的时候挺稳,没怎么卡。洛克王国还原度我觉得一般,主要像在宠物对战和收集,其他部分更像沙漠 RPG。
|
||||||
@@ -0,0 +1,3 @@
|
|||||||
|
我玩下来第一感觉是内容比想象中多,不是那种只能走两步的 demo。操作还算顺手,WASD 移动、E 对话这些不用学很久,任务提示也能把人往正确方向带。
|
||||||
|
|
||||||
|
功能上宠物选择、野外战斗、捕捉、背包这些都能接起来,所以流程比较完整。性能方面我没遇到明显卡顿。和洛克王国的还原度主要体现在宠物收集和对战思路上,但画面和地图探索还是更像自己的 2D 冒险游戏。
|
||||||
@@ -0,0 +1,5 @@
|
|||||||
|
我觉得这个游戏比普通课程作业要丰富一些。刚进去的时候能看到开始界面和操作说明,所以可用性还不错,不需要别人一直在旁边解释。进游戏以后跟 NPC 对话、看任务、找宠物战斗,流程是能接上的。
|
||||||
|
|
||||||
|
我比较喜欢捕捉宠物这个设计,因为它让战斗不是单纯打完就结束。背包、图鉴、商店、存档这些也都有,说明功能考虑得比较全。性能上没什么大毛病,我试玩的时候没有明显延迟,菜单响应也正常。
|
||||||
|
|
||||||
|
至于洛克王国还原度,我觉得有一点影子,比如宠物收集和回合制对战,但不是很像原版。这个我觉得问题不大,因为它更像是用洛克王国的思路做了一个自己的冒险游戏。
|
||||||
@@ -6,7 +6,7 @@
|
|||||||
|
|
||||||
## 2. 如何让多轮修改的进度可重用
|
## 2. 如何让多轮修改的进度可重用
|
||||||
|
|
||||||
第一,要求 Agent 在每轮开始前先读取项目说明和现有代码模式。
|
第一,要求 Agent 在每轮开始前先读取项目说明和现有代码模式,借助了 `codegraph` 这个 mcp 辅助 Agent 完成。
|
||||||
|
|
||||||
第二,把需求拆成可验收的小任务。使用 `plan` 模式帮助设计。
|
第二,把需求拆成可验收的小任务。使用 `plan` 模式帮助设计。
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user