# Webgame2 **Repository Path**: osby/Webgame2 ## Basic Information - **Project Name**: Webgame2 - **Description**: No description available - **Primary Language**: Go - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2020-01-31 - **Last Updated**: 2020-12-19 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # WebGame ## 打包&部署 【环境】 >系统环境:`WIndows10 64bit` >开发IDE:`JetBrains GoLand 2019.2.3 x64` >启动文件:`main/main.go` >NodeJs Version:`v12.14.1` >npm Version: `6.13.4` >Angular-cli Version:`8.3.24` 【打包】 - angular 8:生成打包文件目录 `%Project%/static/` - Go:生成可执行文件 `%Project%/bin/WebGame.exe` - 拷贝 `static/` 到 `bin/` 目录 - 拷贝 `db/WebGame.db` 到 `bin/db/WebGame.db` 文件 最终目录: ``` +--- 游戏根目录 // 需要手动创建 |---- WebGame.exe // 建议使用管理员权限运行 |---- /db |---- /upload // 上传目录 |---- /yyyyMD // 日志目录 -----WebGame.db // Sqlite数据库文件 |---- /static |---- /assets // 页面资源目录 ----- index.html // 首页 ----- *.* // 其他页面资源文件 ``` 【启动】 - 执行`WebGame.exe` - 自动创建日志文件:`./db/[yyyyMD]/WebGame.log` - 自动创建上传目录:`./db/upload/` 【注意】:`github.com/mattn/go-sqlite3`需要本地`GCC`支持 ## 配置文件 配置文件`{ProjectRoot}/WebGame.int`参数说明: ```ini ; Sqlite3数据库配置 [db] ; 是否全新数据文件(暂未使用, 需要配合数据库初始化文件) newly = false ; 数据文件目录 dir = ./db ; 数据文件名称 name = WebGame ; 日志配置 [log] ; 日志文件目录 dir = ./db ; 日志文件名 name = WebGame ; 开启日志级别: TRACE|DEBUG|INFO|WARN level = TRACE|DEBUG|INFO|WARN ; WebSocket配置 [ws] ; 端口 port = 42200 ; 基于根路径的访问子路径 ; new WebSocket('ws://localhost/ws') url = /ws ; HTTP网页配置 [http] ; 监听端口 port = 42200 ; 公网域名, 用于邮件中点击打开 host = http://cn-hk-alilight.sakurafrp.com:42200 ; 系统邮件 [mail] name = jinlong_8023@163.com pwd = **** smtp = smtp.163.com port = 25 ; 邮箱验证有效期 ; h-小时, m-分钟, s-秒 expiration = 15m ; 游戏配置 [game] ; 初始游戏豆 initScore = 10000 ; 连接心跳(秒), 指定时间内可以断线重连 headBeat = 10 ; 上传文件目录 uploadDir = /db/upload/ ; 默认头像 defAccPic = /assets/hall/def-head.png ; 五子棋 [wzqGame] ; 每把输赢积分 swapScore = 10 ``` ## 开发进度 ### 账户相关 - [x] 注册, 注册成功同时执行登录操作 - [x] 登录, 同时记录连接CID - [x] 异地登录, 强制下线 - [x] 邮箱校验 - [x] 找回密码, 需要邮箱校验通过 - [x] 修改密码 ### 游戏相关 #### 五子棋 - [x] 创建房间 - [x] 加入房间, 推送给房间创建连接 - [x] 准备就绪, 推送给房间中所有连接 - [x] 落子并计算输赢 - [x] 游戏结束, 清理落子缓存 - [x] 清理后提示: 房间ID无效 - [x] 游戏结束后, 自动重新开始