1. 博餅(Bo Bing / 中秋博餅)とは
- 福建・台湾や金門などで、中秋節の伝統行事として行われるサイコロ遊び。6個のサイコロを用いて出目の組み合わせで賞を得る。 (ウィキペディア)
- 賞品は通常、月餅(餅)またはそれに準じる物品。 (ウィキペディア)
- ゲームは、出目が示す組合せ(役=彩名)に応じて、賞品を順次配布していく形式。 (goldcup.games)
- 「状元餅」「夺状元」「博状元餅」などと呼ばれることもあり、科挙制度の称号に見立てた階級付けが行われる。 (ウィキペディア)
2. 基本ルールの流れ
-
準備
・6個のサイコロと大きな碗(または鉢)を用意。 (ウィキペディア)
・賞品を “餅” の等級別に分類(通常 6 段階など)して配置。 (goldcup.games) -
順番決定・開始
・最初のプレイヤーは、年長者やくじ引き等で決定。 (ウィキペディア)
・プレイヤーは順番にサイコロを碗の中に振る。サイコロが碗の外にはみ出したり傾くとその投擲は無効とされ、次の順番に移ることがある。 (ウィキペディア) -
判定
・投げられた6個のサイコロの出目パターンを見て、予め定められた“役(彩名)”に一致するかどうかを判定する。 (ウィキペディア)
・最も優れた役を出した人に、対応する等級の餅(賞品)が与えられる。順位が下の人も、残りの餅を順に取る。 (ウィキペディア) -
終了条件・追餅(追奪)
・すべての餅が配られたらゲーム終了。 (ウィキペディア)
・伝統ルールでは、「六紅(すべて赤目)」を出すと最上位賞を獲得でき、他の賞も一括して奪うというルールが適用されることがある。 (ウィキペディア)
・また、すでに取られた賞品を“追奪(追餅)”できるルールを採る場合もあり、判定を重ねて高位の役を出した者が既取賞を奪えることがある。 (ウィキペディア)
3. 代表的な役(彩名 / ややく)と出目例
金門など地域の博餅文化でよく見られる役名と出目の分類例(中国語文献に記載)を以下に示す。 (jincheng.kinmen.gov.tw)
| 彩名 | 読み(漢語/閩南語) | 出目条件/特徴 | 所属する順位帯・説明 |
|---|---|---|---|
| 狀元 / 红六博 / 六紅 | zhuàngyuán / hóng liù bó / la̍k-hông | すべてが “紅点(赤目)” の目、6つすべて赤 | 最上位賞。6個すべて赤目の組合せ。 (ウィキペディア) |
| 榜眼 / 對堂 | bǎngyǎn / duìtáng | 出目がすべて異なる(1〜6 各1つ) | 次点賞。すべて異なる数字を出す。 (ウィキペディア) |
| 探花 / 三紅 | tànhuā / sānhóng | 3つが赤目(特定赤目) | 中間賞の一つ。三紅とも呼ばれる。 (ウィキペディア) |
| 進士 / 四進 | jìnshì / sìjìn | 4つが同じ目(4個揃い) | 中等賞。4個揃った組合せ。 (ウィキペディア) |
| 舉人 / 二舉 | jǔrén / èrjǔ | 2つが赤目 | 下位賞の一つ。二舉(2つ赤目)。 (ウィキペディア) |
| 秀才 / 一秀 | xiùcái / yīxiù | 1つが赤目 | 最下位賞。赤目が1個のみ。 (ウィキペディア) |
備考:赤目(紅点 / 紅眼 / 紅点)は「4点」が一般的
- 多くの博餅規則では、「4」が赤点(紅点)として特別に扱われ、出目の “4” の数が役判定に大きく関わる。 (vagabondjourney.com)
- 参加者は、サイコロにおける「4」の数を多く出すほど高位の役を得る可能性が高くなる。 (ウィキペディア)
4. 例:英語版 “Bo Bing” の賞体系例
英語版の Bo Bing 解説サイトには、6個サイコロを振って得られる賞組み合わせと“餅の数(prizes)”を対応させた例が掲載されている。 (goldcup.games)
- 6個すべて“4”を出す → 最上位賞(1個分の大餅)
- 1〜5個の “4” を出す → 「一秀」「二舉」「探花」「进士」「榜眼」などの等級に分類
- すべて異なる目(1,2,3,4,5,6)を出す → 榜眼(対堂)等級
- 各等級に対して、あらかじめ決められた“餅数”を割り当て、配当の順序を制御する (goldcup.games)
5. 注意点・地域差・変則ルール
- 博餅のルール・役名・賞品構成は、地域(福建、金門、台湾など)や時代・世代により大きく異なる。 (ウィキペディア)
- すべて赤目の “六紅” を出した者が即座にゲームを終了し、残りの餅を一括取得するルールが存在する場合がある。 (ウィキペディア)
- “追餅(追奪)” ルール:既に取られた賞を、後の高位役の出目で奪う方式を許す場合がある。 (ウィキペディア)
- 役の名称と配置階級(何が第1賞・第2賞か)を、ゲーム開始前に参加者で合意する必要がある。
import numpy as np
# ================================
# パラメータ設定 / Parameters
# ================================
dice_num = 6 # サイコロの個数
trials = 20 # 試行回数
red_number = 4 # 赤点(紅点)として扱う目
np.random.seed(0) # 再現性のため固定
# ================================
# 役判定関数 / Role judgement
# ================================
def judge_role(dice):
"""
サイコロの出目から博餅(Bo Bing)の役を判定する関数
Determine Bo Bing role from dice combination
"""
unique, counts = np.unique(dice, return_counts=True)
count_dict = dict(zip(unique, counts))
red_count = count_dict.get(red_number, 0) # “4”の数=赤目数
if red_count == 6:
return "狀元(六紅): 最上位賞"
elif sorted(dice) == [1, 2, 3, 4, 5, 6]:
return "榜眼(對堂): すべて異なる目"
elif red_count == 3:
return "探花(三紅): 赤目3つ"
elif 4 in counts:
return "進士(四進): 4個揃い"
elif red_count == 2:
return "舉人(二舉): 赤目2つ"
elif red_count == 1:
return "秀才(一秀): 赤目1つ"
else:
return "無役"
# ================================
# シミュレーション関数 / Simulation
# ================================
def simulate_bo_bing(trials=10):
"""
博餅を指定回数シミュレーションして結果をプリント
Simulate Bo Bing dice game multiple times and print results
"""
print("=== 博餅(Bo Bing)シミュレーション開始 ===")
for i in range(trials):
dice = np.random.randint(1, 7, dice_num)
role = judge_role(dice)
print(f"試行 {i+1:02d}: 出目 = {dice}, 結果 = {role}")
print("=== シミュレーション終了 ===")
# ================================
# 実行 / Run simulation
# ================================
simulate_bo_bing(trials)