游戏源码
点击放大



<img src="
<img src="
<img src="
<img src="
<img src="
<img src="
> High-performance 麻将 winning-hand detection & AI discard algorithm based on lookup tables, supporting multiple wildcard tiles (jokers). One algorithm, three implementations — Java / Go / C++ — kept beha by shared cross-language tests.
中文文档
---
data/; 2000+ fixed-seed deals are replayed by every CI to pin identical behavior (including bit-exact scores)---
Both implementations load the same table files under data/ and are kept beha in sync by tests:
the algorithm unit tests are ported 1:1 between JUnit, go test and C++ tests, and
data/parity_cases.txt holds 2000+ fixed-seed deals whose
hu/ting/AI results are replayed and asserted by every language
(java/.../ParityFixtureTest.java, go/parity_test.go and cpp/test/parity_test.cpp).
---
Run the Go test suite (from go/, replays the same cases as the Ja):
To regenerate the lookup tables with either implementation, run from the output directory:
---
> 🌐 Live Demo Online: 👉 (now powered by the Go build)
An interactive web platform and algorithm laboratory modeled after Tencent 麻将:
1. 4-Player 麻将 Battle (1 Human vs 3 AI / 4 AI Spectator):
- Green felt table, 3D tiles, and full tile set (Wan, Tong, Tiao, Winds, Dragons).
- Wildcard (界面 / laizi) support: Random flip indicator, specified wildcard, or clean hand.
- Draw, Discard, Chow (Chi), Pong (Peng), Kong (Gang), and Winning Hand (Hu).
2. Real-time Ready-Hand (Ting) Detection:
- Shows winning tiles and remaining count in the 游戏 whenever you are in Ting.
- Hover over hand tiles during discard to preview winning targets if discarded.
3. 💡 AI Recommendation:
- One-click best discard recommendation using AIUtil.outAI with expected score.
- 4-AI auto-play spectator mode with speeds (1x ~ 10x).
4. 🧪 Algorithm Playground:
- Test any hand (1-14 tiles) with wildcards.
- Measures isHu, isTing, and outAI execution times in microseconds (µs).
The same web platform also ships as the Go build (single static binary, frontend embedded) — this is what the live demo runs as a systemd service (deploy/gq/):
Visit in your browser: 👉
| Document | Content |
|----------|---------|
| Win Detection Algorithm | Wildcard encoding, table structure, full win-detection & waiting-hand flow |
| AI Algorithm | Hand scoring model, discard / pong / kong decision logic |
---
| Project | Description |
|---------|-------------|
| texas_algorithm | Texas Hold'em algorithm |
| teenpatti_algorithm | Teen Patti algorithm |
开发语言:Java
项目类型:高性能麻将胡牌算法(Java)
Star 数:481
这是一套高性能麻将胡牌算法(Java),代码结构清晰,适合开发者学习游戏的客户端渲染、服务端逻辑、场景管理与资源加载。项目涵盖了游戏的核心玩法、界面交互、地图与角色系统等模块,对理解游戏开发的完整流程具有较高的参考价值。
从技术实现角度看,游戏项目的难点在于:游戏循环与状态管理、资源加载与渲染优化、客户端与服务端的协议同步、以及多平台适配。本项目在这些方面提供了可运行的实现,开发者可以在此基础上进行二次开发或学习研究。
1. 下载源码压缩包,解压到本地开发环境。
2. 根据项目类型准备对应的运行环境(Node.js / Go / C# / Unity / Godot 等)。
3. 按照 README 中的步骤配置依赖、数据库和配置文件。
4. 先启动服务端,再运行客户端,即可进入游戏进行测试。
注意:本项目仅供学习研究使用,请勿用于商业或非法用途。
对于想进入游戏开发领域的开发者来说,这套源码是一个很好的入门参考。通过阅读代码,可以学习到游戏的核心玩法实现、场景与资源管理、网络协议设计、以及渲染优化等关键技术点。
同时,项目中的代码组织方式和模块划分,也展示了游戏项目在工程化方面的实践经验,值得开发者深入研究和借鉴。理解一个完整游戏项目的架构,对后续开发其他类型游戏也很有帮助。
本资源来源于开源社区,仅供学习研究和技术交流使用,请勿用于任何商业或违法违规用途。使用本项目产生的一切后果由使用者自行承担。若涉及第三方权益,请联系删除。
| 资源标题 | majiang_algorithm - 高性能麻将胡牌算法(Java) |
| 所属分类 | 游戏源码 |
| 发布作者 | admin |
| 发布时间 | 2026-10-05 21:43:02 |
| 下载权限 | 免费下载 |
| 附件数量 | 2 个下载链接 |
| 浏览次数 | 150 |
| 讨论数量 | 0 |
| 主题状态 | 正常讨论中 |