機能設計書
クラブの判断・選手の変化・試合の結果を、一つの世界につなぐ。
この資料は従来の検討・承認の記録として保存しています。今後の具体仕様はFC27基準・全機能再設計で整理しています。
01 — 設計の前提
要件定義書v1.3を基準とする。iPhone 17eで個人利用し、初版は1シーズン。試合映像・選手の直接操作は実装せず、試合経過・スタッツ・振り返りを提供する。移籍や経営は現実寄りとし、自由モードは設けない。
ゲーム内の日付を「進める」ことで世界が動く。運営方針から選手・戦術・商業活動に同じ判断基準を通し、操作の結果は履歴として追えるようにする。
本書の数値尺度・計算方法はゲーム用の設計案であり、実在選手や現実の経済に関する実証済みモデルではない。運営クラブはマンチェスター・ユナイテッド、対象大会はプレミアリーグ、開始シーズンは2026–27。試合は要所で止めて交代・戦術変更を行える。
02 — 一日の進行と停止点
プレミアリーグの全参加クラブを対戦・順位計算の対象にし、ユーザーはマンチェスター・ユナイテッドを運営する。他リーグのクラブは移籍先・獲得元として扱える構造にするが、収録する選手の範囲は調達時に決める。国内カップ・欧州大会の初版収録は未確定のため、無断で実装対象に加えず別途範囲を確認する。開始時点は開幕前を基本案とし、2026–27のどの日付の所属・契約を再現するかを調達計画で固定する。
- 判断する編成・練習・契約
- 進行前の確認期限・必須の返答
- 世界を更新他クラブ・練習・試合
- 保存・通知収支・変化・要対応
- 未回答の必須事項、試合のメンバー不備、契約の決断期限があれば、その日の更新前に止める。軽い通知は進行を妨げない。
- 当日有効な契約と登録を更新し、他クラブの移籍交渉・スカウト調査を処理する。
- 試合日なら休養・試合準備、非試合日なら練習計画を適用する。同じ日に通常練習と試合負荷を重複計上しない。
- 当日の試合を進め、状態・成績・約束の履行を更新する。ユーザーの試合が途中停止中なら、日付の進行も停止する。
- 給与・スポンサー入金・物販など、期日を迎えた金銭の移動を計上する。
- 日次更新を確定・保存して通知する。生成AIによる説明文は後から補完できる。
現実の経過時間ではゲーム内の日付を進めない。PCが停止していても負傷や契約が勝手に進行することはない。1季の最後は成績・財務・成長を総括し、閲覧と保存を残して終了する。
03 — 機能のまとまりと入出力
↓ 編成、スカウト、戦術、商業の判断基準
↓ 起用、交渉、試合、育成への影響
↓ 成績、経験、評判、負荷
↓ 補強余力、人気、クラブの歴史
| 機能・要件 | ユーザーの操作 → 処理 | 結果・不成立時の扱い |
|---|---|---|
| F01 方針・編成 R04 | 若手重視、給与配分、戦術方針を指定し、メンバーを選ぶ。方針はスカウト推薦・他クラブ評価・練習推薦に反映。 | 方針に合う理由と外れる理由を表示。方針から外れる選手の起用は禁じない。 |
| F02 移籍・契約 R01・02・14 | 買い手・売り手・選手の3者が条件を評価。移籍金の合意、選手との個人条件、登録の順に成立させる。 | 所属・契約・支払予定を一括更新。予算不足、選手拒否、登録不可、競合、期限切れを区別。 |
| F03 スカウト R15 | 役割・年齢・予算・調査先を指定。日付の進行で情報が増える。 | 評価の幅、確信度、調査日を表示。費用未確保なら依頼を開始しない。 |
| F04 アカデミー R03・10 | 生成された若手に育成重点を付け、昇格を判断する。架空の若手であることを明示。 | 成長履歴・期待役割・昇格後の起用を確認。枠不足などの制約を表示。 |
| F05 練習・状態 R17・18 | 週のチーム計画、個人の重点、低・中・高負荷、休養を指定。 | 能力・習熟・疲労・負傷リスクが変化。負傷中の練習は回復段階に応じて制限。 |
| F06 会話・関係 R16 | 称賛、起用説明、不満への対応、約束を選ぶ。選手間は起用・競争・チーム内イベントから関係が変化。 | 信頼・士気・約束を記録。同一理由の称賛を繰り返して無限に改善することを防ぐ。 |
| F07 試合 R04〜06・19 | 配置・役割・プレス・テンポ・守備ラインなどを設定して試合計算を開始。 | 経過、選手別・チーム別スタッツ、根拠付きの振り返り。登録不備は開始前に提示。 |
| F08 商業契約 R11 | 実在スポンサーの契約を管理し、更新・新契約の条件を交渉する。 | 契約期間、固定額、成果報酬、支払日、独占カテゴリを保存。競合契約を検出。 |
| F09 ユニフォーム R08・12・20 | 色・模様・スポンサー配置の案を作り、採用日・価格・販売数量を決める。 | 独自デザインとして履歴を保存。公式画像は別管理。原価、販売、在庫、売上・利益に反映。 |
| F10 SNS・評判 R13 | ゲーム内で移籍発表・試合振り返りなどのテーマと口調を選ぶ。 | 出来事・成績・過去の評判に応じた反応。文章生成のたびに人気が変わる設計にはしない。 |
| F11 シーズン・保存 R07・09 | 日付進行、セーブ選択、バックアップ、再開。 | 世界全体を一貫して保存。失敗時は直前の確定状態を維持し、再試行可能にする。 |
04 — 選手モデルと育成
| 層 | 保持する情報 | 変化のタイミング |
|---|---|---|
| 能力 | FC26の元データの尺度を維持。パス、トラップ、ドリブル、決定力、守備、空中戦、速度、加速、持久力、強さ、判断、予測、GK能力群。 | 週次で内部小数値を更新し、表示は整数。役割適性は別の重みで算出。 |
| 個性・習熟 | 危険なパスを好む、保持する、走り込むなどの傾向。利き足、ポジション・役割への習熟。 | 傾向は安定的。習熟は練習と実戦で緩やかに変化。 |
| 短期状態 | 疲労、試合勘、負傷、自信、士気。 | 日次・試合・会話で変化。能力の基礎値を直接上下させない。 |
| 関係・期待 | 監督への信頼、選手間関係、期待する出場機会、約束。 | 実際の起用とイベントで更新。全選手の全組合せは作らず必要な関係だけ保存。 |
長期変化の案:能力変化 = 学習効果(成長余地 × 練習の適合 × 出場経験 × 回復状態)− 加齢による変化 − 長期負傷の影響。能力ごとに曲線を変え、負荷を上げるだけでは成長が最大化しない。係数は版管理し、実装後の複数シーズン相当の検証用計算で調整する。プレイ期間自体は1季とする。
内部の成長余地はプレイヤーに完全公開せず、スカウトは範囲で見積もる。実在選手の心理や成長余地はゲーム用の推定として扱う。年齢だけで画一的に衰退させず、能力の種類・履歴による差を持たせる。
05 — 時間帯ごとの試合評価
2026年9月26日のユーザー指示で修正。個々のピッチ上の動作を再現する旧案は撤回。
- 編成と戦術
- 時間帯の優勢・機会
- 得点とスタッツ
- 重要場面で判断
能力・役割・戦術の相性・状態をチーム評価へ集約し、時間帯ごとの展開、得点、統計を生成する。パス・ドリブル・シュート・ブロックを逐次シミュレートしない。経過とスタッツは確定した時間帯集計と重要イベントに整合させる。詳細は試合設計v0.2を参照。
途中介入に備える状態の区切り
試合前 → 前半進行 → ハーフタイム → 後半進行 → 終了 → 結果確定。重大な負傷なども停止可能なイベントにする。ユーザーの回答により要所介入を採用する。ハーフタイム、重大な負傷・退場などの重要場面で止め、交代や戦術変更を受け付ける。同時刻の複数の重要イベントは一つの停止点にまとめ、「変更せず続行」も可能にする。スコア変動時にも判断点を置く。75分の定時停止は設けない。通常のパス・攻撃局面では操作を要求しない。停止点までの経過とスタッツだけを表示し、将来の結果を先に生成・表示しない。変更は停止時点以後に反映する。試合イベント・乱数状態・未処理の停止点を保存する。
「リアルさ」は設計だけで達成済みとしない。戦術差を同条件の複数試合で比較し、極端な得点数、成功率、疲労効果、強弱逆転を検証する。競技規則や交代人数は対象大会・シーズンの確認後に設定データへ分離する。
06 — 交渉・商業・関係性の状態遷移
- 提案予算・期間の確認
- クラブ間合意対案・拒否・期限
- 個人条件合意給与・役割・意思
- 登録・決済所属と支払を確定
クラブ間合意だけで移籍確定にしない。選手の同意と登録条件を満たした時点で、所属、旧契約終了、新契約、移籍金、予算の予約解除をまとめて確定する。拒否・撤回・失効時は予算の予約を解放する。他クラブにも同じ財務・登録ルールを適用し、ポジション不足・年齢構成・目標・給与体系で候補を評価する。
選手契約の更改も、相手役との具体的な会話で条件を調整し、提示→対案/拒否→合意→発効/失効へ進む。期待する役割と出場実績が離れると不満や移籍意向につながる。表示理由はゲーム内で知り得る範囲に限り、すべての内部評価を公開しない。
スポンサー契約は固定収入と成果報酬を分け、支払日と条件を保存する。ユニフォームは発注時に原価・在庫を記録し、販売数=在庫と需要の小さい方とする。需要はクラブ人気、成績、話題、価格、新作効果から計算。契約・出場給・物販には一意の取引IDを付け、同じ日を再試行しても二重計上しない。
ユーザーが自チームの担当者として発言する。相手役はChatGPT連携時には役柄・記憶・現在の関係に応じた返答と提案を作り、非連携時にはルールとテンプレートで返答・提案を作る。提案をゲームの条件に照合してから採用する。約束は対象・期限・評価条件を保存。SNSの評判変化は元イベントに一度だけ紐づけ、文章の再生成で報酬が増えないようにする。
07 — データ設計
- 原典・公式画像出典・基準日・条件
- 収録データ版正規化・整合性確認
- セーブ作成その版を固定して開始
- ゲーム内の履歴移籍・成長・独自更新
| 主なデータ | 関係と重要な項目 |
|---|---|
| Dataset / Source / Asset | 収録版、出典URL、取得日、基準日、利用条件、確認済み/推定/不明。画像は公式・独自生成を区別。 |
| Club / Player / Sponsor | 実在対象の安定したIDと名前。セーブ内のクラブ・選手状態から参照。 |
| Save / ClubState / PlayerState | 1セーブに全クラブと全選手の状態。日付、能力、成長、体調、予算、方針。世界の更新版番号を保持。 |
| Contract / Offer / Ledger | 契約・交渉の状態、相手、有効期間、金額、支払予定、取引ID。金額は整数の最小通貨単位で保存し、通貨を明記。 |
| Match / Event / Tactic | 試合前状態、エンジン版、乱数状態、イベント列、戦術変更時刻。集計値はイベントと整合。 |
| Training / ScoutReport / Relationship / Promise | 対象選手、期間、計画と結果、調査の確信度、関係・約束の評価期限。 |
| Kit / Inventory / Post / AIJob | 独自デザイン版、スポンサー参照、在庫・売上、投稿の元イベント、AI処理の状態・出典イベントID。 |
実在データを更新しても進行中のセーブに移籍情報を自動上書きしない。訂正を取り込む場合は差分を確認して適用する。架空のアカデミー選手とゲーム内の心理推定には、その由来を残す。
08 — 操作画面に渡す情報
画面デザインは工程③で合意する。本書では情報のまとまりを「ホーム/チーム/編成・スカウト/試合/クラブ」とする案を置く。通知から必要な契約・選手・試合へ直接移動できるようにする。
- ホーム:日付、次の試合、期限付きの判断、財務・チーム状態の要約。
- チーム:選手、アカデミー、戦術、練習、身体・精神、会話。
- 編成・スカウト:候補、評価、移籍交渉、更改、給与への影響。
- 試合:日程、先発確認、経過、スタッツ、振り返り。
- クラブ:財務、スポンサー、ユニフォーム、販売、SNS、運営方針、保存。
未調査の情報をゼロとして表示しない。保存中・計算中・通信断・入力不備を区別し、通信復旧時にはPC側の最新状態を読み直す。
09 — 承認した方針と検証
- 日付を進めることで世界が動き、試合経過と同じイベントからスタッツを作る。
- 能力・個性・状態・関係性を分け、コンピュータは対話相手の返答と交渉上の提案を担い、状態変更はゲームの条件を検証して確定する。
- 移籍・給与・スポンサー・物販を同じ契約・財務の仕組みにつなぐ。
- 初版の1季を通して運営できるよう、R01〜R20を段階的に統合する。
検証では、戦術・個性の比較、成長と衰退、二重決済、試合の中断復帰、契約満了、AI停止時の運営継続を重点にする。マンチェスター・ユナイテッド/プレミアリーグ2026–27と要所介入は確認済み。終盤の停止時刻、収録データの版・基準日、他リーグの移籍対象範囲は設計の残課題とする。
10 — 対話・戦術・クラブ表現の具体化
2026年9月25日の追加指示を反映。以下は従来の簡略化した記述を具体化する設計とする。
FC26の能力・市場価値を初期データにする
既存選手の能力値、総合値、ポテンシャル、市場価値はFC26の値をそのまま初期値として採用し、SoFIFAを優先参照先とする。元項目名・値・単位・通貨・版・更新日・選手ID・参照URLを保持する。読み込んだ値を根拠なく再評価しない。試合実績のスタッツは別項目として扱う。
開始後の能力・市場価値はゲーム内の成長、実績、年齢、残存契約などで変化する。市場価値は交渉の基準値で、移籍の確定価格ではない。FC26にない心理・関係性は独自モデルで補う。FC26の採用更新版を固定し、2026–27の所属・契約情報とは別に版を管理する。能力データと世界の開始シーズンが異なることを明示する。
試合前:メンバー表と二層の戦術
- 土台戦術配置・役割・基本方針
- 対戦別の調整相手の弱点・対策
- メンバー表先発・控え・担当
- 試合中の変更交代・戦術の差分
土台戦術を保存し、対戦別戦術は上書きする項目だけを保持する。変更しない項目は土台を継承し、試合開始時には有効な戦術を固定する。試合用変更を土台へ自動で書き戻さず、ユーザーが「土台に反映」を選んだ場合だけ更新する。
メンバー表は先発・控え、フォーメーション上の役割、主将、セットプレー担当、欠場理由を含む。重複登録・負傷・出場停止・大会の登録条件を検査し、出せない選手は理由付きで示す。試合中の変更は新しい戦術版と適用時刻を記録する。
対話が進行する移籍商談
- 話しかける選手・相手監督の役柄
- AIが応じる質問・対案・合意意向
- 条件を整理未決項目・予算を検証
- 商談を確定承認・継続・破談
コンピュータ(ChatGPT連携またはプログラム)は対話相手となる監督・選手などのゲーム内の役柄だけを担い、編成事情、本人の希望、交渉履歴を踏まえて具体的に会話する。相手監督はクラブ側窓口として振る舞うが、クラブ予算・契約権限の範囲内でのみ合意できる。実在本人の発言を再現した記録ではなく、ゲーム内の創作と分かる表示にする。
「移籍金を下げる代わりに出来高を増やしたい」「先発の機会を約束してほしい」といった会話を、金額・支払条件・給与・期間・役割・回答期限の条件表に反映する。初版で計算できる条項だけを交渉対象にし、未対応の条項をAIが口約束で成立させない。
AIは台詞と構造化した交渉行為(質問・提案・対案・承諾意向・拒否意向)を返す。サーバーが現行条件との整合、権限、予算、必須項目を検証し、有効な提案だけを対話相手の返答として確定する。曖昧な金額や条件は聞き返す。話がまとまったら条件表を双方の同意対象として提示し、ユーザーの最終承認と相手の有効な同意で成立させる。合意できない場合は理由を残して破談にする。
ChatGPT連携が使えない場合は、プログラムの相手役で条件入力と会話選択による商談を継続できる。実行方式は表示し、生成AIによる自由対話とは区別する。保存には会話履歴・条件版・未決項目・相手の記憶要約を含める。
選手とのメッセージ・練習・SNS・インタビュー
共通の会話基盤に、個別メッセージ、トレーニング中の会話、試合前後のインタビュー、ゲーム内SNSを接続する。練習中の会話はゲーム内イベントとして提示し、練習映像は必要としない。発言の場に応じて公開範囲を区別し、私信が理由なくSNSに公開されることはない。
私信・練習会話は信頼、士気、練習への姿勢に影響。公開インタビューは選手の受け止め、ファン、スポンサーの反応へつながる。AIは実際の出来事から質問と返答を作り、約束・批判・称賛などの意味を構造化して検証する。影響はイベントID単位で一度だけ適用し、会話の再生成では増減させない。
スポンサー契約とシャツの連動
スポンサー契約に胸・袖・トレーニングウェアなどの掲載枠、有効期間、ロゴ素材ID、許可された配色・配置を保持する。契約発効日に該当枠のロゴを反映した新しいユニフォーム版を作る。終了・解除時も該当ロゴを外した版へ切り替える。同一枠の競合契約は成立させない。
過去の試合・販売済み商品は当時のユニフォーム版を保持する。新契約で昔の写真や売上履歴まで書き換えない。ゲーム内独自デザインに公式ロゴを合成し、AIにロゴそのものを描き直させない。
追加の受け入れ条件
- 土台戦術と対戦別戦術の差分、先発・控えを試合前に確認できる。
- 通常の攻撃局面では入力を求めず、スコア変動・重大場面・ハーフタイム・終盤で介入できる。
- 交渉の台詞と正式な条件表が矛盾せず、合意・破談の経緯を再開後も追える。
- メッセージ・練習会話・SNS・インタビューが共通の出来事と関係性に基づく。
- スポンサーの掲載枠と有効日がユニフォームに反映され、旧版の履歴が保持される。
11 — 会話の役割と実行方式(最新方針)
- ユーザー自分の発言・条件提示
- 対話相手返答・質問・対案
- ゲーム処理条件・予算・権限を検証
- ユーザーが決断承認・再交渉・辞退
相手役はユーザーの台詞・意思を代筆して送信せず、自チームの承認を代行しない。相手が自クラブ所属の選手であっても、その選手の意思は相手役が担当する。ユーザーが選ぶ会話選択肢は操作補助であり、自動送信しない。
ローカル生成AIは使わない。ChatGPTアプリとの連携が成立する場合はChatGPTを相手役にする。未接続でも遊べるよう、プログラムベースの交渉・会話を実装の基準にする。相手の要求、性格傾向、クラブ事情、信頼、予算、条件の評価から、質問・対案・拒否・合意意向を決め、場面に合う文章テンプレートを選ぶ。
プログラム方式では「金額を提案」「出場機会を説明」「理由を聞く」などの意図選択と具体的な条件入力で会話を作る。自由文を万能に理解するとは約束しない。解釈できない発言は確認し、金額や同意を推測して確定しない。メッセージ・練習会話・インタビューも共通の状態遷移と履歴を使う。
既存節の「AI」は対話相手の役割を表す。生成AIを前提にした自由入力・構造化出力はChatGPT連携時の経路であり、基本動作はプログラムでも成立する。SNSや商談の自チーム側の発言はユーザーが決める。
追加指示:情報源・采配・戦術・一日の体験
2026年9月26日:選手メタ情報(氏名・生年月日・国籍・所属・背番号・ポジション・写真・公開実績)はプレミアリーグ公式サイトを基準とする。公式FPLのID・写真は照合補助とし、本体収録では選手・クラブ公式ページとシーズン基準日を確認する。SoFIFAは従来合意したFC26の能力・ポテンシャル・初期市場価値に限定し、メタ情報を補完しない。不明項目は未確認と記録する。
75分の定時停止は撤回。得点・退場・負傷・ハーフタイム等の必要な場面と任意の一時停止で采配する。戦術は保持・非保持の配置、チーム指示、個人役割、切替、セットプレー、相手別対策まで詳細化。試合後は履歴から得点者・個人成績・チーム統計を再確認する。
一日はボタン一つで練習を消化する方式にせず、状態確認、計画、選手への伝達、実施中の観察と対応、結果と振り返り、午後の商談・視察・関係づくりを扱う。毎日同じイベントを繰り返す完成仕様にはせず、疲労・試合間隔・人物・計画に応じて変化させる。今回の試作はその1日の例。