了解。
では 「二次方程式 1 単元だけ」に完全フォーカスして、
Roblox 上でそのまま実装できるレベルの “データ構造” と “UI案” を、
無駄なく・実装者目線で切り出します。
🔷 1. データ構造(ModuleScript)
Roblox の ModuleScript で扱いやすいように、
問題定義・ステップ定義・採点ルール を最小構成でまとめます。
🧩 ① 問題データ構造(ProblemModel)
return {
Problems = {
{
id = "Q1",
title = "二次方程式の解を求めよ",
question = "x^2 - 5x + 6 = 0",
unit = "quadratic_equation",
difficulty = 1,
-- 必要な前提ノード
prereq = {"factor_basic"},
-- 正答(複数可)
answers = { {x1 = 2, x2 = 3} },
-- 許容ステップ列(正攻法)
validSteps = {
{"factor", "set_zero", "solve"},
},
-- 典型誤答パターン
commonMistakes = {
{pattern = "sign_error", message = "符号の扱いを確認しよう"},
{pattern = "factor_wrong", message = "因数分解の組み合わせを再確認"},
}
},
}
}
🔍 ポイント
- validSteps は「正しいステップの並び」を定義
- commonMistakes は「誤答パターン → フィードバック」を定義
- prereq は後で「弱点ノード可視化」に使える
🧩 ② ステップ定義(StepLibrary)
UI で選べる「数学操作ブロック」の辞書。
return {
factor = {
label = "因数分解する",
requires = {"factor_basic"},
produces = {"factored_form"},
},
set_zero = {
label = "0 になるように式を分ける",
requires = {"factored_form"},
produces = {"zero_product"},
},
solve = {
label = "解を求める",
requires = {"zero_product"},
produces = {"solution"},
},
}
🔍 ポイント
- requires / produces で「状態遷移」を表現
- これにより ステップの妥当性チェックが自動化 できる
- 後で「飛躍」「不適切ステップ」を判定可能
🔷 2. UI案(Roblox Studio で実装しやすい構成)
Roblox の UI 制約を踏まえて、
“解答構築OS”として最小で動く UI を提示します。
🧩 ① ステップ選択パネル(左側)
- 「因数分解する」
- 「平方完成する」
- 「両辺に同じ数を足す」
- 「解の公式を使う」
- 「0 になるように式を分ける」
- 「解を求める」
→ StepLibrary の内容をそのままボタン化
🧩 ② ステップ並べエリア(中央)
- プレイヤーが選んだステップが 縦に積まれていく
- 各ステップはドラッグで並び替え可能
- 各ステップをクリックすると「その時点の式」を表示
例:
1. 因数分解する
2. 0 になるように式を分ける
3. 解を求める
🧩 ③ 式の変形ビュー(右側)
- ステップを選ぶと AI が式の変形を表示
- 例:
- 因数分解 → (x - 2)(x - 3)
- 0 になるように式を分ける → x - 2 = 0, x - 3 = 0
- 解を求める → x = 2, 3
→ プレイヤーは「何をしたか」を視覚的に理解できる
🧩 ④ 採点ボタン(下部)
押すと:
- ステップ列の妥当性チェック
- 飛躍の検出
- 誤答パターンの検出
- 最終的な正誤判定
- 弱点ノードの抽出
を返す。
🔷 3. 最小 MVP(1週間で作れる)
- 二次方程式 10 問を ModuleScript に定義
- StepLibrary を 6〜8 個だけ実装
- ステップ並べ UI を作る
- validSteps と比較して採点
- 簡易フィードバックを返す
これだけで、
「Roblox 上で動く数学解答構築OS」 の原型が完成する。
🔷 あなたへ
次に進むなら、どちらを先に深掘りしたいですか。
- ① 二次方程式の問題 10 問を実際に作る(ModuleScript で)
- ② ステップライブラリ(数学操作ブロック)をもっと増やす
- ③ UI のワイヤーフレームを描く
- ④ 採点ロジックの詳細(飛躍判定など)を作る
どれからでも進められます。