店の袋
1月の最初の買い物の日、日本のデパートやブティックは福袋を売ります:透けない袋で、定額で、売れ残った在庫で詰められ、店が言うには袋の値段より価値があるものです。列は開店前から形成されます。楽しみは封印であって、内容ではありません。袋は集計で良い取引だと知り、あなたのものの中身を知りません。これはチケットが必ず何かの価値があるという珍しい形のくじです。
その形が私たちのゲームが保つものです。袋には値段があり、開くことが1回の抽選で、アイテムの価値は値段の倍数でゼロではありません。それが出すものは、内容が価格を上回るという店の約束ですが、ゲームはその約束をすることはできず、ゲームのままでいることはできません。代わりにそれはテーブルを公開します。
2つの袋、15個のアイテム
| アイテム | 配当 | チャンス | ウェイト(百万分の1) |
|---|---|---|---|
| 手拭 Tenugui、手拭い | ×0.20 | 45% | 450,000 |
| 御守 Omamori、お守り | ×0.50 | 29% | 290,000 |
| 招 Maneki-neko | ×1 | 14% | 140,000 |
| 達磨 Daruma | ×2 | 7% | 70,000 |
| 鯉 Koinobori | ×5 | 3.2% | 32,000 |
| 扇 Sensu, a fan | ×10 | 1.26% | 12,600 |
| 刀 Katana | ×25 | 0.5% | 5,000 |
| 金招 Golden maneki-neko | ×100 | 0.04% | 400 |
ウェイト合計1,000,000。リターン = Σ確率×ペイアウト = 0.090 + 0.145 + 0.140 + 0.140 + 0.160 + 0.126 + 0.125 + 0.040 = 96.6%。
| アイテム | ペイ | チャンス | ウェイト(百万分の一) |
|---|---|---|---|
| 箸 Hashi、箸 | ×0.10 | 58% | 580,000 |
| 風鈴 Fūrin、風鈴 | ×0.50 | 26% | 260,000 |
| 面 キツネマスク | ×1 | 1.98% | 19,800 |
| 提灯 Chōchin、行灯 | ×2 | 8.5% | 85,000 |
| 兜 Kabuto, a helmet | ×6 | 4% | 40,000 |
| 龍 Ryū, a dragon | ×20 | 1.5% | 15,000 |
| 鳳凰 Hōō, a phoenix | ×250 | 0.02% | 200 |
Return = 0.058 + 0.130 + 0.0198 + 0.170 + 0.240 + 0.300 + 0.050 = 96.78%。2つのバッグは0.18ポイント以内の価格差です。
ENGINE-VERIFIEDfuku/derive.ts: UME_ITEMS と MATSU_ITEMS はそれぞれのアイテムの mult100(価格の百分の一単位での支払額)と weight(「ロール百万分率での抽選ウェイト」)をリストしています。ヘッダーコメントは「RTP = Σ w/1e6 × mult」を Ume で 96.6%、Matsu で 96.78% と計算しています。FUKU_BAGS は Ume を「バランス型バッグ — 安定した抽選、トップは ×100」と説明し、Matsu を「ワイルド型バッグ — より厳しいフロア、×250 が隠れている」と説明しています。上記の確率はウェイトを100万で割ったもの。最低価格の数字(Ume 26.0%、Matsu 16.0%)は ×1 以上の行の合計で、この記事用に計算されたものです。
2つのテーブルを1つの設計判断として読み取ってください。Ume は開封時の 74% を2つの最安アイテムに割き、残りを穏やかなラダーに分散させます。Matsu は 84% を2つの最安アイテムに割き、フロアを半分にして、その代わりにドラゴンを千回中15回は ×20、1万回中2回は ×250 フェニックスで返します。同じ価格、2つの形です。50個のバッグを開けてお金を残したいプレイヤーは Ume を選びます。1回の開封が重要になるようにしたいプレイヤーは Matsu を選びます。どちらも安いわけではありません。
1つの数字、1つのバッグ
ドローはエンジンで最もシンプルです。ラウンドのハッシュが1つの均一な数を生成します。それを100万倍して切り捨てると、0から999,999の間の整数が得られます。バッグのアイテムリストを下へ歩みながらウェイトを加算します。累積ウェイトがロールを超える最初のアイテムがあなたが開けたものです。これがメカニズム全体です。リール物理学もストップ位置も2番目のドローもありません。その後のアニメーションはエフェクトのためにリールをスピンさせますが、着地する結果は開始前に決定されていました。
ENGINE-VERIFIEDfuku/derive.ts deriveFuku: u = u64(HMAC-SHA256(serverSeed, `${clientSeed}-${nonce}-0`)); roll = min(floor(u × 1,000,000), 999,999); itemsはリスト内を順に走査され、cumulative weightがrollを上回る最初のアイテムが返される。 _shared/demoLocal.ts: 「One nonce per bag; cursor 0がアイテムを引く… Moneyはopenで決済され、reel rideは純粋なtheatreである。」 demoFukuOpenはpriceをdebit、アイテムを導出し、centsFloor(price × mult100 / 100)をcreditする。
2つの帰結が続き、どちらもopenする前に知る価値がある。第1に、順序が重要なのは算術についてのみで、oddsについてではない: アイテムの確率はそのweight、リストのどこにあろうともである。なぜなら、rollは一様だからである。第2に、bagはdice rollとまったく同じくらい検証可能である。なぜなら、bagはrollそのものだからである: seedを明かし、単一のhashを再計算し、tableを辿れば、そのアイテムを得ることができる。verifierは同じfunctionを使用する。
すべてのbagが支払う理由
floorはfukubukuroをlottery ticketと区別する唯一のものであり、これはコストを伴う意図的な選択である。×0.20の価値があるアイテムは、priceの80%の喪失であり、これはほとんどのslotの負けスピンよりも悪い結果である。それでも、それは何もないことではなく、何も与えないのがlottery ticketが通常するところである。このデザインはsealedなbagは決して空であってはならないという店の考え方を借り、common itemsを安くすることでそのコストを払う: tatowelとamuletはUmeの0.235を合わせてコストし、0.966のreturnのうち、zero-floorゲームではladderのトップに行く金銭である。
- floorはfeatureであり、kindnessではない。returnをrare itemsからcommon onesへ移動させる。bagはそのためにより寛容ではない; それは異なる形である。
- 「常に何かを支払う」は「通常は代金を取り戻す」ではない。Umeは約4回に1回、priceを少なくとも返し、Matsuは約6回に1回である。ほとんどのbagsはそのコストよりも価値が低く、return図はすでにそれを示している。
- 2つのbagsは同じpriceである。MatsuをUmeより選択することは、3.3% edgeがどのように集められるかを変え、どのくらい変わるかではない。望む形を読み、そのoneをopenする。
上記の表は、ソースがdemo engineとbrowser verifierによって共有されていると説明しているclient derivation moduleから読み取られている; house serviceはpaying authorityである。Item namesとglyphsはengineのものである。これはdesign noteであり、bagsをopenすることの推奨ではない。
FAQ
このサイトのFukubukuroとは何か?
1ドロー制ゲーム: bag priceを支払い、openし、priceの固定倍数の価値があるアイテムを受け取る。8アイテムまで×100のUmeと、7アイテムまで×250のMatsuの2つのbag。
各bagは何を返すか?
Ume 96.6%とMatsu 96.78% (priceの平均、engineのweight tableから計算され、chance × payoutはitemsの合計)。
すべてのbagが本当に何かを支払うのか?
はい。最も安いアイテムはUmeではpriceの×0.20、MatsuではpriceのX0.10であり、openは決してゼロを返さない。ほとんどのopenはpriceより少ない返却である: Umeはopenの約26%でpriceを少なくとも支払い、Matsuは約16%である。
アイテムはどのように選ばれるか?
roundのhashから1つの数字が0から999,999の間の整数にスケールされ、bagのcumulative weightsと百万分の一で比較される。cumulative weightが rollを超える最初のアイテムが結果である。その後のreel animationはdisplay onlyである。
どのbagが良いか?
返却によって、どちらもない。Umeは×100トップの堅実な形であり、Matsuはより厳しいfloorと×250トップを持つ。ほぼ同じpriceで、volatilityが異なる。
SOURCES & REFERENCES
- Betkyo engine source: fuku/derive.ts (UME_ITEMS, MATSU_ITEMS, FUKU_BAGS, deriveFuku), _shared/demoLocal.ts (demoFukuOpen)
- The at-least-price figures are sums of the ×1-and-above weights computed for this article: 260,000 / 1,000,000 for Ume and 160,000 / 1,000,000 for Matsu
このセクションのゲーム