你画我猜游戏 (Pictionary Game)
本文最后更新于88 天前,其中的信息可能已经过时,如有错误请发送邮件到2778680280@qq.com

一个基于 Node.js 和 Socket.io 开发的多人在线绘画游戏,支持实时绘画、猜测、聊天和得分排名。

🎯 功能特性

核心游戏功能

  • 10轮游戏模式:每轮随机选择画家,轮流绘画
  • 实时绘画:HTML5 Canvas 实现流畅绘画体验
  • 智能猜测:实时判断猜测是否正确
  • 倒计时系统:每轮60秒倒计时
  • 词汇提示:游戏过程中提供词汇提示
  • 防止重复词汇:10轮游戏中词汇不重复
  • 结束游戏功能:支持中途结束游戏并结算得分

界面与用户体验

  • 响应式设计:适配不同设备屏幕
  • 渐变风格:现代化的渐变色彩设计
  • 实时聊天:游戏前后支持玩家聊天
  • 游戏结束结算:显示详细得分排名和获胜者
  • 一键复制游戏ID:方便分享游戏房间
  • 在线状态检测:实时显示玩家在线状态

技术特性

  • Socket.io实时通信:低延迟的实时数据传输
  • 多房间支持:同时支持多个游戏房间
  • 完善的错误处理:友好的错误提示
  • 详细的日志系统:便于问题排查
  • 保活机制:支持后台运行和自动重启

🛠️ 技术栈

技术版本用途
Node.js14.0+运行环境
Express^4.18.2Web服务器
Socket.io^4.7.2实时通信
HTML5 Canvas绘画功能
Tailwind CSS响应式样式

📦 安装与部署

方法一:直接部署

1. 克隆项目

git clone https://github.com/LIUQiu111/pictionary-game.git
cd pictionary-game

2. 安装依赖

npm install

3. 启动服务器

# 开发模式
npm run dev

# 生产模式
npm start

方法二:使用启动脚本(Linux)

1. 克隆项目

git clone https://github.com/LIUQiu111/pictionary-game.git
cd pictionary-game

2. 运行启动脚本

# 添加执行权限
chmod +x start.sh

# 运行脚本
./start.sh

方法三:宝塔面板部署

1. 上传项目

  • 在宝塔面板中创建网站目录
  • 上传项目文件到目录

2. 安装依赖

# 使用宝塔的Node.js
/www/server/nodejs/v14/bin/npm install

3. 启动服务器

# 进入项目目录
cd /www/wwwroot/你画我猜/你画我猜

# 运行启动脚本
./start.sh

🚀 使用方法

1. 创建游戏

  1. 打开 http://your-server-ip:3000
  2. 输入用户名
  3. 点击”创建游戏”
  4. 复制生成的游戏ID

2. 加入游戏

  1. 打开 http://your-server-ip:3000
  2. 输入用户名和游戏ID
  3. 点击”加入游戏”

3. 开始游戏

  • 等待其他玩家加入
  • 点击”开始游戏”按钮
  • 轮流担任画家,其他玩家猜测

4. 游戏操作

  • 画家:选择词汇并在画板上绘画
  • 猜词者:在猜测框中输入猜测的词汇
  • 聊天:游戏前后可以在聊天框交流
  • 结束游戏:点击”结束游戏”按钮可中途结束

🔒 保活脚本使用(推荐)

为了确保游戏服务器稳定运行,我提供了一个简易的保活脚本,可以自动检测并重启服务器进程。

步骤1:启动保活脚本

# 进入项目目录
cd /www/wwwroot/你画我猜/你画我猜

# 添加执行权限
chmod +x keep_alive.sh
chmod +x start.sh

# 后台启动保活脚本
nohup ./keep_alive.sh > /dev/null 2>&1 &

步骤2:验证保活效果

# 查看运行状态
ps -ef | grep keep_alive.sh
ps -ef | grep server.js

# 测试自动重启
kill -9 $(ps -ef | grep "node server.js" | grep -v grep | awk '{print $2}')
sleep 10
ps -ef | grep server.js  # 应该能看到新的进程

步骤3:查看保活日志

# 查看保活日志
cat keep_alive.log

# 实时查看日志
tail -f keep_alive.log

步骤4:设置开机自启

# 编辑自启文件
nano /etc/rc.local

# 添加以下内容(在exit 0之前)
cd /www/wwwroot/你画我猜/你画我猜 && nohup ./keep_alive.sh > /dev/null 2>&1 &

# 添加执行权限
chmod +x /etc/rc.local

不多说了去GitHub吧

https://github.com/LIUQiu111/pictionary-game
文末附加内容
暂无评论

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇
下一篇