paalgyula/summit
GitHub: paalgyula/summit
一款纯 Go 编写的《魔兽世界 3.3.5a》服务器模拟器,旨在提供可学习、可扩展的娱乐与研究平台。
Stars: 32 | Forks: 3
# 🏔 Summit
### World of Warcraft _3.3.5a_ 服务器模拟器 - 纯 GO 编写
"攀登者在 **漫长而艰难的旅程** 后到达了山顶。"






## 模块:
- 认证/真实列表服务器 [[**summit-auth**](docs/authserver.md)]
- 世界服务器 [summit-world]
- WoW 数据库转换器 [datagen]
- 代理(实际上是一个蠕虫)[[**serworm**](docs/serworm.md)]
- 数据包转储器
### 仅供娱乐/教育用途
这个项目只是一个微小的娱乐项目,是我使用 GO 和 Ghidra 的业余爱好。我真的很喜欢这门编程语言,并决定重写我大约 15 年前用 C++ 编写的那个被遗弃的项目(那是原始 summit 燃烧远征模拟器,后来成为 [Ascent](https://github.com/SkyFire/ascent_classic) -> ArcEmu ☠ -> [AscEmu](https://github.com/AscEmu/AscEmu))。
这个项目将是纯粹的娱乐,从头开始编写模拟器 +15 年经验 😈 目标:无论何时你想玩/继续玩,或者只是想尝试一些底层的东西,都可以运行魔兽世界模拟器。
## 如何运行/开发
该项目包含一个 Makefile,用于使用 go 1.21+ 构建项目,生成的二进制文件将放置在 `bin/` 文件夹中。稍后我计划为 GitHub Actions 创建一个 **goreleaser** 管道,以提供一些即时二进制文件。
关于 DBC?嗯……我有一个想法,以不同于以前的方式加载 DBC。如果你检查这个包:
### 为什么要用 Wotlk?
因为我有点变态。我离开了魔兽世界社区,所以我决定回到过去,作为一个 Linux 爱好者:玩得开心 🐧
## 计划/想法
- 易于实现/可插拔的数据包(处理程序)系统
- 脚本接口(可能是 JS)来脚本化地下城
- 可导出的指标
- 集群(基于网格的世界)
- 带 gRPC 连接的管理界面,托管在 https://buf.build(计划中)
- 联邦认证服务器(一个认证服务器,任何人都可以加入并使用 `custom` 服务器)
- 基于二进制文件的数据库,无需第三方 SQL(计划)
如果你有任何问题,请随时联系我:
paalgyula@pm.me | gophers.slack.com/#wow | https://fb.me/nev3rkn0wn | ig: @nev3rkn0wn
# 欢迎提交 PR!
用心制作,由 @paalgyula ❤️
标签:3.3.5a, C++重写, DNS解析, EVTX分析, Ghidra, Goreleaser, Go语言, Makefile构建, Python工具, WotLK怀旧服, 世界服务器, 云资产清单, 开源项目, 教育用途, 数据库转换器, 日志审计, 服务器仿真, 游戏服务器, 程序破解, 网络协议模拟, 认证服务器, 逆向工程, 魔兽世界模拟器