《仕途浮沉·职场晋升全真模拟》单文件HTML文字游戏|真实数据后台+完整源码+部署教程

《仕途浮沉 · 职场晋升全真模拟》是一款 100% 纯虚构的休闲文字游戏:从一名“实习干事”起步,历经 24 道虚构职场关卡,靠一次次四选一抉择改变四维数值、人际好感与风险隐患,最终走向六种不同人生结局。

前端是单个 HTML 文件、原生 JS、零框架;另附一个零第三方依赖的 Python + SQLite 真实数据后端,可统计真实在线、身份/结局分布、实时抉择事件流与全服双榜单。本文提供完整源码下载与一步步部署教程

仕途浮沉游戏截图
开场页:进入前需勾选“纯虚构娱乐”确认

一、游戏特色

  • 四大开局身份:实干派(林默)、圆滑派(周扬)、佛系派(吴凯)、野心派(赵峰),各有不同的四维初始值、天赋与缺陷。
  • 四维数值系统:实力、本心、情商、变通(0–100,带阈值效果)。能力决定下限,情商决定上限,底线决定结局,站位决定发展。
  • 24 个剧情事件:新人报到、紧急攻坚、成果被统筹、年度评优、甩锅栽赃、立场抉择、晋升公示被举报……每关都是“实干 / 圆滑 / 佛系 / 野心”四种倾向的四选一,且没有绝对正确选项,每个选择都标好了代价
  • 5 位 NPC 好感系统:部门一把手、分管领导、直属主管、资深老职场、办公室消息枢纽,好感分六档并被长期记忆。
  • 正统职级线:实习干事 → 四级专员 → 科室副主管 → 科室主管 → 部门分管负责人 → 部门一把手(玩家封顶正处)。
  • 六大结局:隐藏结局「初心不负」与 S/A/B/C/D 五档,由四维、隐患、硬伤等共同判定。
  • 双榜单 + 隐藏后台:在职最高榜、老虎翻车榜;后台路径 /admin,前台无任何入口。
  • 真实数据:在线人数、身份/结局占比、实时事件流、全服对局记录全部来自服务器真实采集,没有任何机器人、随机数或假数据
仕途浮沉游戏截图
四大开局身份,天赋与缺陷各不相同
仕途浮沉游戏截图
对局面板:晋升进度 + 第 N/24 关的四选一抉择

二、在线试玩

已部署的演示地址(手机端体验最佳):

▶ 点击开始游戏(https://a.ooj.me)

隐藏数据后台:https://a.ooj.me/admin(需管理口令,前台不显示入口)。

三、源码与下载

完整源码已打包(约 46 KB,解压后 3 个文件):

  • index.html:游戏前端,单文件、原生 HTML/CSS/JS,无框架、无构建。
  • server.py:真实数据后端,仅用 Python3 标准库 + SQLite,零第三方依赖
  • 使用说明.txt:图文版部署说明与常见问题。

下载完整源码包 shitufu-career-game.zip(约46KB,含前端 index.html + 后端 server.py + 使用说明)

四、部署教程

环境要求

一台 Linux 服务器(演示环境为 CentOS 7 + 宝塔 Nginx),Python 3.6 及以上即可(sqlite3、http.server 均为标准库自带),Nginx 用于反向代理。只想单机玩的话,直接双击打开 index.html 即可,后端不是游戏通关的必需品。

第 1 步:放置前端

index.html 上传到站点根目录,例如 /www/wwwroot/你的域名/index.html,属主设为运行 Nginx 的用户(如 www)。

第 2 步:安装后端

mkdir -p /www/server/backend/shitufu
# 把 server.py 上传到 /www/server/backend/shitufu/server.py

第 3 步:配置 systemd 守护(开机自启、崩溃自动重启)

新建 /etc/systemd/system/shitufu.service,内容如下:

[Unit]
Description=Shitufu Game Real Data Backend
After=network.target

[Service]
Type=simple
WorkingDirectory=/www/server/backend/shitufu
ExecStart=/usr/bin/python3 /www/server/backend/shitufu/server.py
Restart=always
RestartSec=3

[Install]
WantedBy=multi-user.target

然后启用并启动:

systemctl daemon-reload
systemctl enable --now shitufu
systemctl status shitufu   # 显示 active(running) 即成功

后端只监听 127.0.0.1:8791不对公网暴露。数据库文件 data.db 会在首次运行时自动创建。

第 4 步:Nginx 反向代理 /api 与隐藏后台

在站点的 server 配置中加入:

location /api/ {
    proxy_pass http://127.0.0.1:8791;
    proxy_set_header Host $host;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header X-Forwarded-Proto $scheme;
    client_max_body_size 32k;
}
# 隐藏后台入口(前端按路径 /admin 渲染后台)
location = /admin  { try_files /index.html =404; }
location = /admin/ { try_files /index.html =404; }
location / { try_files $uri $uri/ /index.html; }

测试配置并重载:

nginx -t && systemctl reload nginx

第 5 步:验证

curl https://你的域名/api/ping
# 返回 {"ok": true, "ts": ...} 即后端联通
# 游戏首页 https://你的域名/
# 隐藏后台 https://你的域名/admin

修改后台口令 / 清空数据

默认后台口令为 admin(用户名 admin)。改口令:编辑 server.py 顶部的 ADMIN_PASS 后执行 systemctl restart shitufu(也可用环境变量 SHITUFU_ADMIN_PASS 覆盖),上线后建议立即改成强口令。

清空全部统计数据(SQLite 单文件,直接备份/删除即可):

systemctl stop shitufu
rm -f /www/server/backend/shitufu/data.db
systemctl start shitufu

五、真实数据是怎么统计的

  • 玩家开局上报 /api/start,每关抉择上报 /api/choice,游戏中每 25 秒发一次心跳 /api/ping,通关上报 /api/finish
  • 当前在线 = 近 180 秒内有心跳或操作的去重会话数,后台每 6 秒刷新一次。
  • 通关默认匿名计入在线、对局数、身份/结局分布等统计;只有玩家自己点「留名上榜(公开)」,才会以名号进入公开双榜单。
  • 后台统计接口使用 HTTP Basic 口令校验,错误口令无法进入;服务端对入参做了范围校验、请求体大小限制,且仅监听本机。
仕途浮沉游戏截图
通关结算:四维、最终职级、人际终局、成就与结局
仕途浮沉游戏截图
在职最高榜(仅显示主动公开留名的真实成绩)
仕途浮沉游戏截图
隐藏数据后台:真实在线、身份/结局占比、实时抉择事件流、全服记录

六、免责声明

本程序 100% 为虚构休闲文字游戏。

所有岗位层级、职场博弈、剧情设定均为艺术虚构创作,不对应现实工作、不指导现实行为、无任何现实导向;仅用于个人休闲娱乐与剧情推演,严禁对标现实、严禁现实借鉴。文中所有职场取舍与人际博弈均为游戏剧情效果,不代表真实社会规则与处事准则。

技术栈:单文件 HTML + 原生 JavaScript|后端 Python3 标准库 + SQLite|systemd 守护 + Nginx 反代。源码仅供学习交流。

© 版权声明
THE END
喜欢就支持一下吧
点赞13 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容