上班划水神器:一个可以在控制台玩斗地主的项目
这是什么?
这是Ratel,它可以在命令行内进行简单的斗地主游戏,来张图体验一下:
怎么开始玩?
Ratel分客户端和服务端,你可以在本地启动一个客户端让小伙伴们的客户端都连接你的服务器进行游戏,又或者可以直接连接作者公网服务器进行游戏,IP 39.105.65.8 Port 1024,不过作为玩家,我们最看重的还是客户端的使用!
你可以将Ratel项目Clone到本地并导入你的IDE中进行游戏!
git clone https://github.com/ainilili/ratel.git
之后打开landlords-client模块中的SimpleClient类启动运行。
你可以使用jar包启动,下载Release版本
https://github.com/ainilili/ratel/releases
之后进入下载目录中执行一下指令
java -jar landlords-server/target/landlords-server-#{version}.jar -p 1024
java -jar landlords-client/target/landlords-client-#{version}.jar -p 1024 -h 127.0.0.1
上述#{version}为当前Release版本,-p 指定端口,-h 执行Host,这里可以切换为39.105.65.8。一百期Java面试题汇总
开始玩?
Ratel客户端采用命令行输入指令的方式与服务端进行交互,连接服务器之后要做的第一件事就是设置昵称
Connection to server successful, welcome to ratel !!
Please set your nickname
[ratel@nickname]$ Nico
我将昵称设置为Nico,之后将会进入选项板
Options:
1. Create Room
2. Room List
3. Join Room
Please enter the number of options
[ratel@options]$
这时我们可以创建房间、查看房间列表和加入房间, 不废话,先创建一个再说!
[ratel@options]$ 1
You has been create room with id 2
Please wait for other players to join !
好了,耐心等待吧~
当满三人之后,游戏将会开始,这时就要讲解一下选牌的规则了!
┌──┐──┐──┐──┐──┐──┐──┐──┐──┐──┐──┐──┐──┐──┐──┐
│3 |4 |5 |6 |7 |8 |9 |10|J |Q |K |A |2 |S |X |
│♦ |♦ |♦ |♦ |♦ |♦ |♦ |♦ |♦ |♦ |♦ |♦ |♦ | | |
└──┘──┘──┘──┘──┘──┘──┘──┘──┘──┘──┘──┘──┘──┘──┘
这是按照从小打大的规则将3到大王排序后的结果
如果你想出顺子
┌──┐──┐──┐──┐──┐
│7 |8 |9 |10|J |
│♦ |♦ |♦ |♦ |♦ |
└──┘──┘──┘──┘──┘
你可以输入 7890j or 789tj
如果你想出王炸
┌──┐──┐
│S |X |
│ | |
└──┘──┘
你可以输入 sx
这是所有牌的别名映射规则
poker-> │3 |4 |5 |6 |7 |8 |9 |10 |J |Q |K |A |2 |S |X |
alias-> │3 |4 |5 |6 |7 |8 |9 |T t 0|J j|Q q|K k|A a 1|2 |S s|X x|
- 如果本回合内你不想出牌,可以输入 pass
- 如果本回合内你想退出游戏,可以输入 exit
上班不忙的时候,玩玩Ratel划划水放松一下也不错。
最后,附上项目地址
https://github.com/ainilili/ratel