洗料系列-杂谈篇-麻将自动化---第一章、麻将基础入门
本文针对麻将的基础入门和常见术语做简单入门科普,为麻将自动化做准备
第一章、麻将基础入门
// TODO 后续章节
1、麻将入门
1.1 麻将组成
北方麻将(共136张)
饼子牌x4 |
一饼俗称汤圆 二饼俗称眼镜 |
|
条子牌x4 |
一条俗称幺鸡 二条俗称棒槌 |
|
万子牌x4 | ||
风牌x4 | ||
三元牌x4 | ||
骰子x2 |
南方麻将(共144张)=北方麻将(共136张)+ 春、夏、秋、冬、梅、兰、竹、菊各一张
1.2 玩家的一手牌是多少张
- 一手牌的数量13张
- 和牌后的基本牌型=一组两张相同的将牌(对子)+4个基本组合(也称4砍牌)
基本组合分为两种情况:三张牌相连的顺子;三张牌相同的刻子
玩牌时如果有杠,4个相同的牌算一个基本组合;每杠一次,玩家手中的牌数量增加1
下叫牌:手牌以外自摸或者其他玩家出的牌能让自己和牌的最后一张牌
2、定位与定庄
定位,指定四位玩家的座次位置;定庄,指定四位玩家的一人为庄家,部分关键操作由庄家执行。
2.1 开局时定位的方法
玩麻将时需要先确定各自的作为,即定位,也叫做搬庄
从东一次逆时针方向(右手边)为南、西、北
方法 | 内容 | 其他说明 |
---|---|---|
点数法:点数总和排序 |
1.两枚骰子,每人掷一次 2.最大数为“东”,可任意选择座位, 3.按点数大小逆时针排座次,分别为东南西北 |
如果点数相同 则后掷出该点数的人重新再掷一次 |
骰点法:点数所在位置 |
1.用两个骰子,每人掷一次 2.点数总和为5、9的为东,原位不动 3.点数总和为2、6、10的为南 4.点数总和为3、7、11的为西 5.点数总和为4、8、12的为北 |
如果投掷的结果代表相同方位 则后掷出该点数的重新投掷一次 |
摸风法:用东西南北四张牌摸出方位 |
取东南西北四种牌各一张,搅乱洗开 每人随意摸一张,东的位置不变 南、西、北逆时针坐定 |
2.2 开局时定庄的方法
4个玩家确定位置后,需要确定开局时谁是庄家
方法 | 内容 | 其他说明 |
---|---|---|
通过点数大小定庄 |
1.两个骰子,每个玩家投掷一次 2.点数最大的玩家为开局的庄家 |
如果前两名点数相同,则各自再投掷一次 点数大的为庄家 |
通过点数确定的位置定庄 |
1.两个骰子,由坐东的人投掷一次 2.从坐东位置开始逆时针数点数之和次的位置为庄家 |
tips:
1、亲朋好友随便坐,老者尊长优先坐庄
2、庄家和牌接着坐庄;其他和牌则轮换南家坐庄
3、四家均做一次庄为一圈,四圈为一局
3、准备和拿牌
3.1 麻将的洗牌和砌牌
砌牌,又称码牌,两张牌码在一起为一墩,每人砌17墩
3.2 用骰子确定开始拿牌的位置
庄家需要第一个拿牌,拿牌的方位和具体位置通过投掷骰子确定,常见方法如下
确定数据 | 内容 |
---|---|
1.使用两个骰子,由庄家同时在桌子中间投掷 2.计算两个骰子的点数总和 |
|
确定开始拿牌的方位 |
点数总和为5、9时,从庄家的方位开始拿牌 点数总和为2、6、10时,从庄家的下家方位(右手方)开始拿牌 点数总和为3、7、11时,从庄家的对家方位开始拿牌 点数总和为4、8、12时,从庄家的上家方位(左手方)开始拿牌 |
确定开始拿牌的位置 |
根据点数最小的一个骰子的点数 在确定方位中从右边开始数相同数量的墩数 并从下一墩开始拿牌 |
3.3 开局时拿牌的顺序和数量
拿牌的顺序 |
从庄家开始拿牌 玩家按照逆时针方向一次拿牌 |
|
拿牌的数量 |
前3轮,每次拿4张牌 第4轮,庄家拿2张,其余玩家拿1张 (庄家14张,其他玩家13张) |
3.4 拿牌后怎样理牌
按照类别和顺序进行整理,避免看错牌或漏吃、漏碰
1、相同类别的牌整理在一起
2、相同类别的牌按照顺序排列在一起
3、各类别的牌数量多少,组合情况一目了然
4、出牌和摸牌
4.1 麻将常见的组合方法
换牌 |
从牌墩上摸一张牌回来 将手中难以组合的牌打出去 |
|
吃牌 |
当【上家】舍出的牌与自己的牌可以组成一个顺子时,可以吃牌 其余玩家打出的牌不能吃 |
|
碰牌 |
自己手中有对子牌 当其余玩家的舍牌和对子牌相同时,就可以碰牌 组成一砍牌 |
|
杠牌 |
自己手中已有3张相同的牌 当自己摸的牌或其他玩家的舍牌相同时,就可以杠牌 杠牌后的4张牌组成一砍,且需要摸进一张再舍出一张 |
1、通过吃、碰和杠组合的牌需要正面朝上放到牌桌前面。
2、杠牌后摸排的位置因地域有差异
- 有的地方通过投掷骰子从最后的牌墙冲确定位置
- 有的地方直接按顺序摸牌
4.2 怎样确定要舍的牌
- 尽量不让下家持牌后组成顺子
- 将自己没用的、上下都不靠张优先舍出去,使自己及早组成顺子
4.3 出牌和摸牌的顺序
出牌和摸牌的顺序与开局时拿牌一样,从庄家开始第一个出牌
开局时 | 庄家第一个出牌;接着按逆时针方向一次轮流出牌 |
过程中 |
如果有玩家碰牌或杠牌,碰牌或杠牌的玩家出牌后,接下来摸牌的是该玩家的下家 然后逆时针一次顺序出牌 |
4.4 怎样出牌和摸牌
时期 | 解释 | 详细说明 |
---|---|---|
开局时庄家 | 庄家出第一张牌 | 开局时14张牌,不摸牌直接出牌 |
正常逆时针轮换 | 其余玩家轮流出牌 | 先摸一张,再出一张 |
碰牌时的出牌和摸牌 | 碰牌后直接出一张牌 |
碰牌后不用摸牌,将所碰的牌正面朝上放在桌面 并从已有的牌中出一张不要的牌 |
杠牌时的出牌和摸牌 | 杠牌后摸一张牌再出 |
杠牌后需要将所杠的牌正面朝上放在桌面 然后依次摸一张牌后再出一张牌 |
开杠后的4张牌组成一砍牌,每增加一个杠,宗派数增加1张
部分地区通过投掷骰子通过点数确定摸牌的位置
4.5 什么是明杠和暗杠
类型 | 说明 | |
---|---|---|
明杠 | 大明杠(也称直杠) | 当玩家打出一张牌时,自己手中有3张相同的牌而开的杠称为大明杠 |
加杠(也称弯杠、小明杠) | 自己以前碰了牌,如果摸到相同的那1张牌后可以开杠 | |
暗杠 | 自己摸到4张完全一样的牌时可以杠牌 |
有些地方暗杠后不用亮牌;有些地方是开杠后就要将牌亮出来让其余玩家知道杠的什么牌
计分小tips:
在成都麻将中,开杠要下雨
洗料系列-杂谈篇-麻将自动化---第一章、麻将基础入门相关推荐
- p3.第一章 Python基础入门 -- Python编程基本概念 (三)
1.2.2 Python语言 1.2.2.1 Python发展 1989年圣诞节期间,为了打发无聊的时间,荷兰人Guido van Rossum(吉多·范罗苏姆)(数学.计算机双硕士,2005年加入G ...
- p2.第一章 Python基础入门 -- 冯诺依曼体系和计算机基础 (二)
1.2 核心基础 1.2.1 计算机基础知识 艾伦·麦席森·图灵(Alan Mathison Turing,1912年6月23日-1954年6月7日),英国数学家.逻辑学家,被称为计算机科学之父,人工 ...
- 第一章-----Java基础入门(项目名称使用小驼峰命名)
一.java简介 1.1 前言 Java语言是美国Sun公司(stanford University Network),在1995年推出的高级编程语言.所谓编程语言是计算机的语言,人们可以使用编程语言 ...
- 第一章 Vue基础入门
文章目录 引言 1.快速入门 1.1.创建项目 1.2.模型和视图 1.3.双向数据绑定 2.{{ }} - 插值 2.1.语法 2.2.案例 3.v-text.v-html(内容绑定) 3.1 语法 ...
- python爬取小说章节_python之如何爬取一篇小说的第一章内容
现在网上有很多小说网站,但其实,有一些小说网站是没有自己的资源的,那么这些资源是从哪里来的呢?当然是"偷取"别人的数据咯.现在的问题就是,该怎么去爬取别人的资源呢,这里便从简单的开 ...
- 第一章:Django入门篇
文章目录 第一章:Django入门篇 一. web应用 二.HTTP协议(重要) 请求协议 响应协议 响应状态码 URL简介 三.django简介 3.2 目录介绍 3.3 启动项目 3.4 简单示例 ...
- 跟着王进老师学开发之Python篇第一季:基础入门篇-王进-专题视频课程
跟着王进老师学开发之Python篇第一季:基础入门篇-2859人已学习 课程介绍 本季课程首先对Python简要介绍,然后演示如何搭建Python的开发环境,以及如何在IDE中调试Py ...
- 视频教程-跟着王进老师学开发之Python篇第一季:基础入门篇-Python
跟着王进老师学开发之Python篇第一季:基础入门篇 教学风格独特,以学员视角出发设计课程,难易适度,重点突出,架构清晰,将实战经验融合到教学中.讲授技术同时传递方法.得到广大学员的高度认可. 王进 ...
- 《零成本实现Web自动化测试--基于Selenium》第一章 自动化测试基础
第一篇 Selenium 和WebDriver工具篇 第一章 自动化测试基础 1.1 初识自动化测试 自动化测试有两种常见方式 1.1.1 代码驱动测试,又叫测试驱动开发(TDD) 1.1.2 ...
最新文章
- 上交张伟楠副教授:基于模型的强化学习算法,基本原理以及前沿进展(附视频)
- 高校招聘!事业编制,年薪高达150万,提供安家费及购房补贴,硕士研究生及以上学历...
- 既有“基本盘”又有“增长盘”,宝盛集团的营销“生意经”
- SAP Commerce的Site列表
- c调用c++ qt_【C/C++】qt库结构及示例
- functor_纯Java中的Functor和Monad示例
- 前端学习(2254)team怎么接受到pr
- php怎么上传函数,php上传函数怎么封装
- js split参数为无效字符_互联网前端开发技术JavaScript字符串类型详解
- K/3 WISE期初余额调整和出库异常调整的差别
- 09. ajax跨域问题,同源策略
- Python爬虫之(三)urllib库
- S变化广义s变化和时频域特征-matlab
- 伪原创工具及伪原创工具的使用技巧
- 分析Windows二进制文件和嵌入式资源
- Dubbo metrics学习总结
- android simplelistitem1,6.3.1 在列表中显示简单数据(2)
- [GridView]在 RowCommand事件中,自订的Button 如何取出某一列的索引值(RowIndex)
- css画横线箭头_css 画带边框的箭头的问题
- 离线数仓搭建_11_DWD层用户行为日志创建
热门文章