MAKING
どすこい力士 のつくりかた
6本目は相撲部屋の育成ゲームです。企画を立てて、画面のデザインを決めるところまでを、そのまま置いています。
ゲームのページへ ・制作中(2026年9月に企画)
1. どんな遊びにするか
ちゃんこと稽古で子ども力士を育て、鍛えすぎれば怪我、引退したら次の弟子に移る。部屋が代を重ねるほど強い力士が育つ、という遊びです。
作る前に「なぜそれが面白いのか」を1文で書くことにしています。この作品はこうしました。「あと1日だけ鍛えるか、やめておくか」を毎日選ばせるから。数字が伸びること自体は面白さではなく、伸ばしすぎると失うから選択になる、という考えです。
だから「怪我を確実に防ぐ道具」「無限に回復するちゃんこ」「失敗を巻き戻す機能」は入れないと最初に決めました。強くなるのを金や広告で早められると、この1文が壊れるからです。
2. 画面の並びを決める
先に14画面を書き出し、どの画面が本体かを決めました。この作品は「稽古場」です。毎日ここに戻り、ちゃんこと午前・午後の稽古を組んで「1日すすめる」を押す。その手応えを「1日の結果」と「怪我した」の2画面が返します。
本体が決まると、残りの画面は「そこへ戻ってくるための道」として置けます。場所(15日)・イベント・引退と襲名・部屋・番付表・設定。
3. 見た目の方向を3つ描いて選ぶ
毎回、いちばん大事な画面を3つの方向で描いて選びます。言葉で相談するより速く、あとで揺れません。絵は ChatGPT の画像生成(Codex CLI)で描いています。
4. 選ばれたのは「A、ただし下はC」
A に決まりましたが、こういう注文がつきました。「A がいいけど、下のボタン部分は C の方が好きだな」
そこで A の稽古場に、C の下まわり(朱色の板のボタン・平らなタブ・筆のような見出し)を合わせた版を描き直しました。これが以降13画面の決まりになります。
5. 直しは「見本の上」で受ける
14画面ぶんの見本を並べたレビューページを作り、画面ごとにOK / 直してほしい+コメントを書き込める形にしました。返ってきた注文は、たとえばこういうものです。
「どすこい力士、どすこい部屋の二つがいらない気がします」——上の帯にロゴと部屋名が並んでいたのを、部屋名だけにしました。
「午前と午後に稽古を分ける必要はないんじゃないかな?」——朝夕2回の稽古をやめて1日1つに。毎日2回同じ選択をさせるだけで、手数が倍になっていました。
「横幅がバラバラすぎます」——縦に並ぶ札とボタンの左右を、1か所の決まりで揃えました。
6. アイコンは組み合わせて決まった
5案を並べたところ、選ばれたのは「どちらでもない」でした。「BとEを組み合わせて欲しいんだけど、キャラの顔がゲームのタイトルに出てくるのとだいぶ違うからあわせて」
そこで相撲字の「ど」とちゃんこ鍋を1枚にまとめ、顔はタイトルの絵を参考画像として渡して描き直しました。さらに「ちゃんこの中に入っちゃうのはダメかな、食べようとしてて欲しいな」という注文で、鍋の手前で箸を持つ形に。最後に背景を土俵に差し替えて決定です。
7. 実装した画面
見本のとおりに Flutter で組み直しました。背景・ロゴ・筆の見出し・雲の紋様は絵として描き、札とボタンはコードで組んでいます。
音は計算で作りました。BGM は稽古場(92拍)と本場所(138拍)の2曲。1回目は太鼓ばかりで高い音が 0.7% しかなく、スマホのスピーカーではほとんど聞こえなかったので、篠笛と拍子木を足して鳴らし直しています。
使っている道具
- ゲーム本体: Flutter + Flame(1本ずつ別のアプリとして出しています)
- 画面のデザイン見本: ChatGPT の画像生成(Codex CLI)。実装は Flutter で組み直します
- 絵: 生成モデルで部位ごとに作り、アプリの中で色を塗り分けています
- 音: 効果音と BGM は計算で作っています(外部の音源は使っていません)
- BGM: 譜面のコードを ChatGPT に書かせ、音そのものは Python の標準ライブラリで合成(音楽の生成モデルは使っていません)
- 書体: 端末の既定の書体。ロゴと見出しは絵として描いています