Skip to content
plain1740Public

About

sHaDow 是一款基于 Python 开发的文本类心理恐怖 RPG。在随机生成的黑暗迷宫中摸索前行,管理你的理智,寻找最终的真相。

Resources

Stars

0 stars

Watchers

0 watching

Forks

Repository files navigation

🌑 sHaDow

“在黑暗中摸索前行,理智是你唯一的筹码。”

sHaDow 是一款基于 Python 开发的文本类心理恐怖 RPG 游戏。游戏结合了终端控制台(Terminal)的字符渲染与轻量级的 Tkinter 图形界面,玩家将在随机生成的迷宫中探索,收集碎片化的线索,管理自己的理智(Sanity),并在黑夜与白昼的交替中寻找最终的真相。


📖 游戏简介

在 sHaDow 中,你将深入多层地下迷宫(Floor 0 - 7)。每一步的移动都会消耗时间,随着“深夜”的降临,未知的恐惧将侵蚀你的理智。你需要收集各式各样的奇特道具,这些道具会动态改变你的生命值、视野、战斗力和理智上限。你的最终结局,取决于你口袋中留存的物品与你的选择。

✨ 核心特性

  • 动态迷宫生成:每一层的地图结构由算法随机生成,保证每次游玩的探索体验。

  • 多维属性系统:不仅有常规的生命(HP)与力量(Power),还引入了 San(理智值)、Chaos(混乱) 和 Sight(视野) 系统。当 San 值归零时,你将被恐惧吞噬。

  • 丰富的道具与剧情:几十种独特的道具,每种不仅提供属性加成/减益,还承载着碎片化的背景故事。

  • 昼夜交替系统:游戏内包含真实的时间流逝计算,步数与时间将直接影响“午后”、“傍晚”与“深夜”的事件触发。

  • 多结局设定:根据关键剧情道具(如“布满刮痕的公交车卡”或“沾染泥土的书签”),解锁普通通关或隐藏的 A/B 结局。

ScreenShot_2026-04-28_092141_544

🛠️ 安装与运行指南

环境要求

  • Python 版本:Python 3.x 及以上

  • 系统环境:Windows / Linux (需要支持最小 80x40 字符大小的终端窗口)

  • 依赖库:本项目仅使用了 Python 标准库(os, random, time, json, sys, tkinter),无需额外 pip install。

运行步骤

  1. 克隆此仓库到本地:

    Bash

    git clone https://github.com/plain1740/sHaDow.git
    
  2. 进入项目目录:

    Bash

    cd sHaDow
    
  3. 运行游戏主程序:

    Bash

    python main.py
    

    (注:运行前请确保将终端窗口放大或全屏,以满足 80x40 的分辨率要求,否则游戏会提示按回车检验。)


🎮 游戏操作

游戏采用 键盘监听(Tkinter Canvas) + 终端输出 的混合模式。

按键 / 指令 对应操作
W 向上移动
S 向下移动
A 向左移动
D 向右移动
Q 驻留 / 跳过当前回合

UI 面板操作:

游戏启动后会弹出一个 250x200 像素的悬浮控制台,你可以点击按钮来执行高级指令:

  • bag:查看背包与道具状态

  • self:查看个人属性面板

  • diary:查阅收集到的日记与线索

  • back:返回主视图


📁 项目结构说明

如果你希望参与贡献或进行二次开发,请参考以下模块说明:

文件/目录 功能描述
main.py 游戏主程序,包含存档管理(Save 类)、UI 绑定与游戏主循环。
DO_MOD.py 地图与移动模块,负责迷宫的深度优先生成(DFS)算法及坐标判定。
AW_MOD.py 实体与战斗模块,包含实体(Object)类定义及遇敌计算逻辑。
SH_MOD.py 剧情与物品模块,管理道具字典、日记文本输出、属性运算逻辑。
txt/ 文本资源文件夹,存放所有剧情日志、谜底文本和操作提示。

📜 许可证 (License)

本项目采用 MIT License 开源。欢迎任何人自由游玩、修改或分享,但在分发修改版时请保留原作者信息。

About

sHaDow 是一款基于 Python 开发的文本类心理恐怖 RPG。在随机生成的黑暗迷宫中摸索前行,管理你的理智,寻找最终的真相。

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages