基于 Cosmic 的C#版。 截至 Commit: a5b572023b8bab68ab5f4ce1478cf2fcdb969770
大量内容未经测试,可能出现大量BUG,不建议搭建游玩。
- .Net10
- Mysql8(可选)
- Application.Host 主服务器入口
- Application.Host.Channel 频道服务器入口
- Application.Core 频道服务器功能
- Application.Core.EF EF
- Application.Core.EF.MySQL MySQL驱动,及迁移文件、初始化脚本
- Application.Core.EF.Sqlite Sqlite驱动,及迁移文件、初始化脚本
- Application.Core.Channel.InProgress 进程内同时运行主服务器 + 频道服务器的实现 (Application.Modules.XXX.Channel.InProgress)
- Application.Core.Login 登录服务器、主服务器实现
- Application.Proto proto文件
- Application.Utility 工具类
- Application.Resource 资源:yaml配置文件(后期逐步移除)、script、wz
- Application.Shared 一些公用数据结构、类型
- XmlWzReader xml格式的wz读取工具
- Application.Templates wz数据模板,附Template.md
- Application.Templates.XmlWzReader wz数据模板数据绑定 wz/xml读取实现
- Application.Scripting 脚本引擎
- Application.Scripting.JS js脚本引擎
- Application.Scripting.Lua lua脚本引擎(未投入使用)
- Application.Benchmark 重构代码时,在该项目测试新代码的性能是否优于旧代码
当前使用的scripts来自 BeiDou。
如果有其他java项目的脚本资源,也可以参考CodeMigration.MD对js进行处理(不能保证全覆盖)
当前项目使用的wz来自 BeiDou 。
- CodeMigration:转换代码的迁移工具
- ReplaceJsContent类:用于替换js脚本中的Java代码
- ServiceTest 测试
- XmlWzReader.SouceGenerator 代码生成,辅助生成Template赋值代码
- Sqlite (默认)
- Mysql 8
修改appsettings.json中的ChannelServerConfig.ServerHost
修改Application.Host.appsettings.json中的ConnectionStrings
Application.Host的设置:解除Kestrel:Endpoints:grpc节的注释Application.Host.Channel的设置Services:ruams-master:grpc
- 运行
Application.Host.exe
解除Kestrel:Endpoints:grpc节的注释
- 运行
Application.Host.exe - 运行
Application.Host.Channel.exe
docker run -itd \
-p 8080:8080 \
-p 8484:8484 \
-p 7575-7600:7575-7600 \
-v ./logs:/app/logs \
--name ruams-standalone \
sigeer/ruams-standalone
# 环境变量中使用 RUA_MS_ 前缀即可覆盖相应配置文件的值
# 使用Mysql需要设置数据库类型及连接字符串
-e "RUA_MS_Database=MySql" \
-e "RUA_MS_ConnectionStrings__MySql=" \
# 公网运行运行需要修改`ChannelServerConfig.ServerHost`
-e "RUA_MS_ChannelServerConfig__ServerHost=" \
# 允许接入其他频道服务器
-p 7878:7878 \
-e "RUA_MS_Kestrel__Endpoints__grpc__Url=http://0.0.0.0:7878" \
-e "RUA_MS_Kestrel__Endpoints__grpc__Protocols=Http2" \