ZaneYork
d0586b7d2f
2. 微调参数 |
||
---|---|---|
.idea | ||
baselines | ||
douzero | ||
pics | ||
.gitattributes | ||
.gitignore | ||
BidModel.py | ||
FarmerModel.py | ||
GameHelper.py | ||
LICENSE | ||
LandlordModel.py | ||
MainWindow.py | ||
MainWindow.ui | ||
MainWindowUI.py | ||
README.md | ||
bid_weights.pkl | ||
debug.bat | ||
debug_screenshot.py | ||
landlord_down_weights.pkl | ||
landlord_up_weights.pkl | ||
landlord_weights.pkl | ||
main.py | ||
requirements.txt | ||
start.bat | ||
安装(请右键以管理员身份运行).bat | ||
窗口监视器.exe |
README.md
DouZero_For_HLDDZ_FullAuto: 将DouZero用于欢乐斗地主自动化
-
环境配置请移步项目DouZero
-
模型默认为ADP,更换模型请修改main.py中的模型路径,如果需要加载Resnet新模型,请保证游戏路径或文件名中存在关键词 "resnet"
self.card_play_model_path_dict = { 'landlord': "baselines/resnet_landlord.ckpt", 'landlord_up': "baselines/resnet_landlord_up.ckpt", 'landlord_down': "baselines/resnet_landlord_down.ckpt" }
-
运行main.py即可
-
在原 DouZero_For_Happy_DouDiZhu 的基础上加入了自动出牌,基于手牌自动叫牌,加倍,同时修改截屏方式为窗口区域截屏,游戏原窗口遮挡不影响游戏进行。
-
请勿把游戏界面最小化,否则无法使用
说明
- 欢乐斗地主使用 窗口 模式运行
- 如果觉得这个项目有用,请给一个Star谢谢!
- 本项目仅供学习以及技术交流,请勿用于其它目的,否则后果自负。
使用步骤
-
先使用
debug_screenshot.py
确认自己的屏幕缩放比 -
修改
main.py
中屏幕缩放比为自己屏幕的缩放比 -
点击游戏中开始游戏后点击程序的
自动开始
-
如果需要自动继续下一把,点击单局按钮,使其变为自动
自动叫牌/加倍原理
用DouZero自我博弈N局,对于随机到的每种手牌,随机生成若干种对手手牌,把该牌型和赢的局数扔进一个简单的全连接网络进行训练,得到手牌与胜率之间的关系,最后根据预期胜率,以一定阈值进行叫牌和加倍。
潜在Bug
- 有较低几率把王炸识别为不出
鸣谢
其他
欢迎加入QQ群交流自动化相关:565142377 密码 douzero
也可以在原作者DouZero_For_Happy_DouDiZhu 的QQ群交流