diff --git a/docs/00_starter/system_structured_schema.json b/docs/00_starter/system_structured_schema.json index e185a7d..334ef22 100644 --- a/docs/00_starter/system_structured_schema.json +++ b/docs/00_starter/system_structured_schema.json @@ -37,7 +37,7 @@ "type": "array", "items": { "type": "string", - "enum": ["UserProfile", "Lesson", "Dialogue", "Task", "TaskReward", "Leaderboard", "Purchase", "Subscription", "AdImpression"] + "enum": ["UserProfile", "Lesson", "Dialogue", "Task", "TaskReward", "Leaderboard", "Purchase", "Subscription", "AdImpression", "Vocabulary", "VocabularyReview", "LifePoints", "ContinuousLearning", "TimeWarp"] } }, "view_ids": { "type": "array", "items": { "type": "string" } } diff --git a/docs/01_requirement/已處理/情境對話.txt b/docs/01_requirement/已處理/情境對話.txt new file mode 100644 index 0000000..1cf0962 --- /dev/null +++ b/docs/01_requirement/已處理/情境對話.txt @@ -0,0 +1,356 @@ +情境對話 - 功能概述 +情境對話 - 功能概述 +整體流程: +1. 進入劇本 +2. 跑開場對話了解劇情背景 +3. 查看通關條件 + 1. 劇情任務 + 2. 指定詞彙 +4. 開始對話 + 1. 限時300秒 + 2. 使用者開始扮演角色和AI角色對話想辦法完成任務和提及指定詞彙 + 3. 當使用者提及詞彙或完成某個任務時,要立即回饋使用者成功通知 + + 4. 對話時,用戶可以使用輔助功能 + 1. 回覆協助功能(需要消耗寶石)協助通關 + 2. 劇情任務範例 + 3. 指定詞彙範例 + 5. 時間到或是點擊系統訊息中的「結算表現」即結算劇本分數 +開場對話 +開場對話 +功能描述: +使用者點擊劇本後,即進入對話室,並逐一顯示4-8句開場對話(效果參考Figma prototype),幫助使用者進入劇情,開場對話結束,使用者即可與劇情中的角色對話 + + +畫面規格: + + + + +________________ +欄位說明: +離開劇本: +操作:點擊後彈跳出警告視窗時,點擊「繼續努力」則關閉視窗,點擊「退出」則導航回「闖關學習」 +警告視窗圖示 + + +劇本名稱、場景描述:不可選取 +角色對話(用戶扮演) + 1. 圖示 + 2. 類型:文字 + 3. 操作:角色名稱可複製、角色英文對話可複製,角色中譯對話可複製 + 4. 特殊說明 + * 角色中譯對話,只有於開場對話才顯示,開始對話後,由用戶自行說出的話顯示角色中譯對話 + * 角色中譯對話,預設是不顯示,需於「對話功能欄」點選中譯按鈕,才會顯示 +開場對話功能欄 + 1. 圖示 + + 2. 類型:按鈕 + 3. 說明 + 1. 播放按鈕:點擊後即播放英文對話 + 2. 中譯按鈕:點擊後顯示中譯對話,再次點擊時隱藏中譯對話 + 3. 儲存對話按鈕:點擊後儲存對話 + 4. 檢舉按鈕: + 1. 點擊後,彈出問題回報視窗,視窗有5個選項,分別為無意義、重複、不當或冒犯的內容、其他、取消 + 2. 若使用者選擇取消,則關閉回報視窗 + 3. 若使用者選擇任一回報選項,則回報問題至後端,並關閉回報視窗 +進行對話 +進行對話 +功能規格: + * 看完6句開場對話,已初步了解劇情,接著再藉由查看通關條件,了解在本次對話當中需完成指定任務和需提及詞彙,時間限制300秒 + * 對話方式以語音輸入(後台轉文字)為主,文字輸入為輔 + * 使用者說出來的話(AI說的不需要判斷),都會進行以下判斷 + 1. 判斷語法正確與否,並顯示於對話功能欄 + 2. 判斷是否有完成任務 + 3. 判斷是否有提及指定詞彙 +畫面規格: + + +________________ +特殊欄位說明: +離開劇本:參照「情境對話 - 開場對話」 +通關條件: + 1. 圖示: + + + 2. 操作: + * 點擊後彈出視窗,有三個分類:劇情任務、指定詞彙、劇情角色 + * 個別規格請參照個別文件分頁 + + +文字輸入 + 1. 點擊後顯示文字輸入視窗,如下圖 +說話按鈕 + 1. 圖示 + + 2. 操作:點擊後即開始錄製語音,再次點擊,即可送出語音,操作畫面流程請參考figma prototype + 3. 備註 + 1. 當用戶講中文或是輸入中文時,角色應該表示聽不懂 + 2. 如果聽不到聲音,則顯示:抱歉,好像沒有聲音,請重新錄製於系統提示 + + + + +通關協助:參照「情境對話 - 通關協助」 +用戶訊息&用戶對話功能列 + 1. 用戶訊息 = 用戶扮演角色 + 用戶英文 + 2. 用戶對話功能列 + 1. 第一個按鈕為語法檢查,正確為橘色驚嘆號,錯誤為藍色勾,如下圖 + + 2. 其他按鈕說明參照 +劇情任務 +劇情任務 +功能說明 +必須在300秒內,在與劇中角色對話時,完成全部劇情任務,才能通關 +畫面規格 + + +________________ +欄位說明 + + +欄位 + 類型 + 圖示 + 操作 + 說明 + 通關條件選單 + 選單 + + + 點擊之後可以導航到其他選單 + + + 任務狀態 + + + + + 無法藉由點擊改變狀態,狀態改變是於每次使用者對話後,系統判定是否完成任務 + 當任務為完成狀態時,顯示完成圖標,反之顯示未完成圖標,狀態無法點擊 + 任務描述 + 文字 + + + 不可複製 + + + 任務提示 + 按鈕 + + + 點擊後,顯示一句範例,這樣說可以完成任務 + 當任務已經完成時,不會顯示這個按鈕 + 指定詞彙 +指定詞彙 +功能說明 +必須在300秒內,在與劇中角色對話時,正確提及指定詞彙,才能通關 +畫面規格可參考「情境對話 - 劇情任務」 +畫面規格 + + +劇情角色 +劇情角色 +功能描述 +藉由此頁面了解劇情角色有哪些及各角色詳細說明 +畫面規格 + + +回覆協助 +回覆協助 +功能說明 +主要是當用戶在扮演角色遇到卡關,不知道該講什麼時,或是不知道怎麼講時,給予協助 +畫面規格 + + + + +欄位說明 +回覆引導 +根據對話室中最後一句話生成回覆引導,引導內容包含 + 1. 對方意圖:分析對方說這句話的意圖 + 2. 回應思緒:分析用戶聽到這句話的反應及可能可以怎麼回覆 + 3. 回覆範例:生成一句回覆的範例 +中翻英 +直接將使用者的中文以google翻譯,轉譯成英文 +關卡結算 +關卡表現 +功能說明 +當劇本時間用完或用戶主動點選離開劇本時,則立即結算表現並宣告結果,結果有過關與失敗,詳細流程如下: +過關判斷 +是否任務都有完成 +是否指定詞彙都有提及 +表現計算 +評分標準如下 + 1. 對話語意合適分數 > 60 (滿分100) + 1. 根據上下文一致性、語境適應性、意圖匹配,進行評分 + 2. 語法錯誤率 = 0 + 1. 用戶說的每句話經過語法判定都正確或者訂正後都正確亦可 + 3. 表達流暢平均分數 > 60 (滿分100) + 1. 用戶說的每句話都會有分數,所有分數平均即為表達流暢平均分數 +以上每合格一項獲得一顆星 +宣告過關與否 + 1. 過關流程 + 1. 恭喜過關 + 2. 表現結算 + 3. 是否訂正錯誤 + 1. 如果點擊立即訂正,則跑訂正流程(語法錯誤&表達不順),訂正完成再回來繼續領獎,此時獎勵是訂正後的獎勵,訂正後的獎勵規則參照 + 2. 如果點擊不訂正,則直接領獎 + 4. 領取通關獎勵 + 2. 失敗流程 + 1. 宣告失敗 + 2. 領取安慰獎 + + +獎勵 + * 闖關成功 + * 獲得金幣 + * 獲得經驗值 + * 闖關失敗 + * 獲得時光卷一張 + + +________________ +畫面規格 + + + + +語法錯誤訂正 +語法錯誤訂正 +功能說明 +用戶在情境對話過程中,說的每一句話都會立即判定語法正確與否,結算表現時,當用戶點選立即訂正,系統會將所有該劇本對話時語法錯誤的句子,依序讓用戶進行訂正 +畫面規格 + + +欄位說明 +進度條 + 1. 分子 = 訂正的次數 + 1. 每當嘗試一次,不管正確與否,訂正次數都增加 + 2. 分母 = 語法錯誤句數 + 表達不順句數 +練習按鈕 +點擊後,即播放說話動畫,再次點擊則送出錄音,檢查完成後,回饋結果正確或錯誤(如下圖) + + +表達不順訂正 +表達不順訂正 +功能說明 +用戶在情境對話過程中,當用戶是語音輸入,就會針對精準度、流利度、韻律進行評分,結算表現時,當用戶點選立即訂正,系統會將所有該劇本對話時表達不順的句子,依序讓用戶進行訂正 +畫面規格 + + +欄位說明 +進度條 + 1. 分子 = 訂正的次數 + 1. 每當嘗試一次,不管正確與否,訂正次數都增加 + 2. 分母 = 語法錯誤句數 + 表達不順句數 +練習按鈕 +點擊後,即播放說話動畫,再次點擊則送出錄音,檢查完成後,回饋結果正確或錯誤(如下圖) + + +附件1:資料來源清單 +資料來源清單 + + +項目 + 來源 + 生成時機 + 開場對話(含場景描述) + 資料庫 + 事前手動生成 + 任務(中文、範例、範例翻譯) + 資料庫 + 事前手動生成 + 詞彙(含翻譯、圖片、題庫、等) + 資料庫 + 事前手動生成 + 劇情大綱 + 資料庫 + 事前手動生成 + AI角色對話 + AI生成 + 關卡進行當下生成 + 用戶對話 + 語音轉文字 +再存到資料庫 + 關卡進行當下生成 + 關卡經驗值獎勵 + 資料庫 + 數目事前設定 + 關卡寶石獎勵 + 資料庫 + 數目事前設定 + 關卡訂正後的寶石獎勵 + 資料庫 + 數目事前設定 + 對話翻譯 + google翻譯 + 關卡進行當下生成 + 表達流暢度分析(APP先打第三方平台分析) + 1. 精準度 + 2. 流利度 + 3. 韻律 + speakace + 關卡進行當下生成 + 語法錯誤評估 + AI生成 + 關卡進行當下生成 + 語意合適度評估 + AI生成 + 關卡進行當下生成 + 任務完成評估 + AI生成 + 關卡進行當下生成 + 提及詞彙判斷 + 資料庫 +儲存時會提供詞彙所有型態以供模糊比對 +例如 eat ate eats eaten + 每次對話結束用模糊比對 + 對話儲存 + 資料庫 + + + 回覆引導 + AI生成 + 關卡進行當下生成 + + +附件2:劇情範例 +劇本範例 +劇本名稱 +午餐吃什麼 +劇情大綱 +兩位朋友在公園長椅上討論午餐選擇。Alex想吃較重口味的食物,而Jamie偏好清淡餐點。他們各自提出不同選擇,並透過討論與妥協,最終Alex需要決定一個能滿足彼此需求的午餐方案。 +開場對話 + * 場景 + * Two friends sit on a park bench under a shady tree. They both hold their phones, browsing restaurant options and debating what to eat for lunch. The sound of birds chirping and children playing fills the background. + * 兩位朋友坐在樹蔭下的公園長椅上,他們手裡拿著手機,瀏覽餐廳選項,討論午餐吃什麼。背景中傳來鳥鳴聲和孩子們玩耍的聲音。 + * 對話 (用戶扮演Alex) + * Alex: “Jamie, I can’t decide! What do you feel like eating?” +Alex:「Jamie,我不知道該選什麼!你想吃什麼?」 + * Jamie: “I’m not sure either. Maybe something light, like salad?” +Jamie:「我也不確定,也許吃點清淡的,比如沙拉?」 + * Alex: “Salad? That’s so boring. How about burgers?” +Alex:「沙拉?那也太無聊了吧。吃漢堡怎麼樣?」 + * Jamie: “Burgers are heavy, and we had them last week!” +Jamie:「漢堡太油膩了,而且我們上週才吃過!」 +任務 + 1. 說服 Jamie 吃自己喜歡的食物,並舉出理由(如口味、方便或氣氛)。 + 1. My friend recommended this place too, said it's the best [food name] they've ever had. + 2. (我朋友也超推薦這家,說是他吃過最好吃的 [食物名稱]。) + 2. 在一句表達中,提出至少2種食物選擇,並根據 Jamie 的意見進行妥協。 + 1. I'm thinking either Thai food or burgers tonight, but I'm open to other suggestions. What are you in the mood for? + 2. 我今晚想吃泰國菜或漢堡,但我也願意聽聽其他建議。你今天想吃什麼? + + +指定詞彙 + * Decide:決定 + * a) deceive b) besides c) decided d) disease + * Light:清淡的 + * a) right b) fight c) sight d) slight + * Compromise:折衷 + * a) comprise b) promise c) surprise d) demise + * How about:⋯⋯怎麼樣? + * a) what about b) who about c) where about d) which about + * Can’t decide:拿不定主意 + * a) can decide b) will decide c) may decide d) unable to decide \ No newline at end of file diff --git a/docs/01_requirement/已處理/詞彙學習關卡.txt b/docs/01_requirement/已處理/詞彙學習關卡.txt new file mode 100644 index 0000000..248e5b2 --- /dev/null +++ b/docs/01_requirement/已處理/詞彙學習關卡.txt @@ -0,0 +1,87 @@ +功能概述 +詞彙學習關卡 - 功能概述 +功能說明 +* 每一個劇本都會根據劇情設計5個常用詞彙(3個單字、1個片語、1個俚語) +* 在開始進入對話之前,會有兩個關卡幫助預先熟悉這5個詞彙,分別為「詞彙認識」、「詞彙熟悉」 +* 闖關開始時會檢查命條 是否大於1 +* 詞彙認識關答錯就-1,詞彙熟悉關答錯就-1,對話訓練通關失敗就-1 +* 反之命條歸零時,即闖關失敗,參考「闖關成功或失敗」 +* 答錯的題目要在最後一題再問一次,直到所有題都答對為止 +* 「詞彙認識」和「詞彙熟悉」關卡,只要通關就直接給三顆星 +整體流程: + 1. 在「闖關學習」頁面選取「詞彙認識」關卡 + 2. 玩「詞彙認識」關卡,依序把這5個詞彙跑完以下流程 + 1. 詞彙展示 + 2. 詞彙選擇題 + 3. 回到「闖關學習」頁面,開始玩下一關,選取「詞彙熟悉」關卡 + 4. 玩「詞彙熟悉」關卡,依序把這5個詞彙跑完以下流程 + 1. 例句重組 + 2. 詞彙配對 + 5. 經歷過以上訓練,對詞彙已有一定程度的熟悉,即開始進入情境對話關卡 +詞彙認識 +詞彙認識 +功能描述: +藉由「詞彙展示」「詞彙選擇題」初步認識詞彙 +在詞彙展示時,嘗試記住詞彙的詞義及例句及示意圖,後續會有考題檢視記憶效果 +在詞彙選擇題時,選出根據示意圖選出正確的英文詞彙 +畫面規格: +截圖 2025-05-23 凌晨2.57.01.png +截圖 2025-05-23 凌晨2.56.56.png +詞彙熟悉 +詞彙熟悉 +功能描述: +藉由「例句重組」「詞彙配對」進一步熟悉詞彙 +在例句重組時,在從單字選取區點選,組出示意圖的原句 +在詞彙配對時,左邊是示意圖,右邊是詞彙,嘗試全部配對正確 +畫面規格: +例句重組 + + +詞彙配對 + + +詞彙說明與範例 +詞彙說明與範例 +詞彙包含單字、片語、俚語,以下為詞彙的範例 + + +範例1 + 1. 劇本名稱:買菜小冒險 + 2. 常用單字:market, vegetables, price + 3. 常用片語:ask for a discount(詢問折扣) + 4. 常用俚語:a steal(超便宜的好東西) +範例2 + 1. 劇本名稱:遲到的咖啡約會 + 2. 常用單字:coffee, late, apologize + 3. 常用片語:run into traffic(遇到交通堵塞) + 4. 常用俚語:my bad(是我的錯) +範例3 + 1. 劇本名稱:失而復得的手機 + 2. 常用單字:phone, lost, find + 3. 常用片語:look around for(到處找) + 4. 常用俚語:lucky break(意想不到的好運) + + + + +闖關成功或失敗 +闖關成功或失敗 +過關判斷: + * 當命條 扣完(歸零)時,即闖關失敗 + * 答錯題目則命條-1 +獎勵計算[a] + * 闖關成功 + * 獲得金幣 + * 獲得經驗值 + * 闖關失敗 + * 獲得時光卷一張 +過關流程 + + +________________ +失敗流程 + + + + +[a]待補充 \ No newline at end of file diff --git a/docs/01_requirement/已處理/詞彙複習.txt b/docs/01_requirement/已處理/詞彙複習.txt new file mode 100644 index 0000000..860d7dd --- /dev/null +++ b/docs/01_requirement/已處理/詞彙複習.txt @@ -0,0 +1,33 @@ +詞彙複習 +功能概述 +* 使用者在玩遊戲過程中所學的的詞彙,時間久了就會慢慢忘記,系統以間隔複習的方式協助使用者將詞彙儲存到長期記憶中 +整體流程 +1. 點擊開始複習,系統將自動判斷使用者當前哪些詞彙需要複習,整理出一個待複習清單 +2. 系統將待複習清單以「詞彙熟悉」關卡的形式,讓使用者玩 +3. 使用者答錯題目時,將該題目複製一份擺到當前最後一題 +4. 一直答題直到所有題目皆答對為止 + 1. 答題完成後給予使用者複習完成的經驗值 +5. 當使用者中途離開,要保留使用者的複習紀錄,使用者再次進入時,則繼續上次複習進度 + 1. 中途離開時給予使用者複習完成的經驗值(不包含還沒完成複習的部分) + + +詞彙複習清單 +加入 +1. 只要關卡(詞彙認識、詞彙熟悉、對話訓練)通關,就會把該關卡訂定的詞彙全部加入詞彙複習清單 +2. 已經加入過的詞彙略過(不重複加入) + + +當日哪些待複習 +1. 複習詞彙欄位為下次複習時間若為當日,則為當日複習詞彙 +2. 當關卡詞彙加入詞彙複習清單,則當日為第一次複習時間,且計算以複習一次 +3. 下次複習時間 = 當日 + (2^複習次數) +4. 範例 + 1. 於3月4日玩了某關卡獲得一個詞彙apple,apple下次複習日期為3/4+2^1=3/6 + 2. 於3月6日複習後,apple下次複習日期為3/6+2^2=3/10 +5. 未準時複習時 + 1. 本應於3月10日但尚未複習,此時仍應計算為待複習項目 + 2. 若於3月11日複習apple,此時apple下次複習時間應以3/11計算,即3/11+2^3=3/19 +詞彙收藏 +詞彙收藏 +訊息收藏 +訊息收藏 \ No newline at end of file diff --git a/docs/01_requirement/已處理/闖關學習.txt b/docs/01_requirement/已處理/闖關學習.txt new file mode 100644 index 0000000..bee053b --- /dev/null +++ b/docs/01_requirement/已處理/闖關學習.txt @@ -0,0 +1,80 @@ +功能概述 +闖關學習 - 功能概述 +功能說明 +* 依序闖關,在闖關中進行學習 +主流程 +1. 選擇關卡,視窗往下滑,滑過下一個關卡時,上方關卡資訊要更新 +2. 點擊關卡,顯示關卡資訊 +3. 進入關卡 +4. 結束後返回闖關學習頁面 + + +闖關學習介面 +闖關學習介面 + + +欄位說明 +1. 語言程度 +2. 金幣 +3. 關卡命條 + 1. 闖關開始時會檢查命條是否大於1 + 2. 命條上限為5,新用戶預設為5 + 3. 獲得:每5小時獲得1個 + 4. 損失 + 1. 詞彙認識關答錯就-1 + 2. 詞彙熟悉關答錯就-1 + 3. 對話訓練通關失敗就-1 +4. 連續學習天數 +5. 關卡資訊 +6. 通關分數 +7. 劇本標題 +8. 時光關卡 + + +流程說明 +1. 闖關必須要按照關卡順序進行,不可跳關 +2. 當玩過該關卡後,即使分數為零顆星,只要成功通關,依然會解鎖下一關 + + + + +補充成功通關 +* 「詞彙認識」和「詞彙熟悉」關卡,只要通關就直接給三顆星,而這兩種關卡的通關條件是答題都要正確,答錯扣命,直到答對為止 +* 情境對話通關條件參考 + + +連續學習天數 + + +關卡與教材設計 + + +教材參考連結如下 +https://docs.google.com/spreadsheets/d/1HiiqBKFF3cw73TNaCb0Xf3fTmg8Wefi5qVEVrXIyYqo/edit?usp=sharing + + +資料層級與關係 +1. 階層關係為:第x階段 > 第x劇本 > 某某關卡 +2. 目前預計共有 13 個階段 +3. 每一階段會有20個以上的劇本(還會持續增加) +4. 每一個劇本都固定有三種關卡(詞彙認識、詞彙熟悉、對話訓練) + + + + + + +時光關卡 +時光關卡 +依照順序挑選前階未玩過對話訓練關卡,若都玩過則隨機挑選,點選「我要挑戰」,則消耗一張時光卷 + + +前階定義 + + +成功通關一樣會將該關卡之詞彙加入詞彙複習 +關卡命條 +關卡命條 + + +錢不夠時,按鈕為disable \ No newline at end of file diff --git a/docs/01_requirement/特殊任務/images/image1.png b/docs/01_requirement/特殊任務/images/image1.png new file mode 100644 index 0000000..c51837c Binary files /dev/null and b/docs/01_requirement/特殊任務/images/image1.png differ diff --git a/docs/01_requirement/特殊任務/images/image2.png b/docs/01_requirement/特殊任務/images/image2.png new file mode 100644 index 0000000..c4ff3c8 Binary files /dev/null and b/docs/01_requirement/特殊任務/images/image2.png differ diff --git a/docs/01_requirement/特殊任務/index.html b/docs/01_requirement/特殊任務/index.html new file mode 100644 index 0000000..160bc2c --- /dev/null +++ b/docs/01_requirement/特殊任務/index.html @@ -0,0 +1 @@ +
藉由完成任務可以取得獎勵,提高用戶參與度
任務 | 獎勵 | 任務期限 |
成功闖關1次詞彙認識關卡 | 經驗值 | 每天00:00重置 |
成功闖關1次詞彙熟悉關卡 | 經驗值 | 每天00:00重置 |
成功闖關1次對話訓練關卡 | 經驗值 | 每天00:00重置 |
在對話訓練關卡拿到滿星分數1次 | 經驗值 | 每天00:00重置 |
關卡結束時,於結算時,最後流程才來判斷任務是否有完成
沒有完成就不顯示
有完成則顯示以下結算頁面
\ No newline at end of file diff --git a/docs/01_requirement/訂閱會員/images/image1.png b/docs/01_requirement/訂閱會員/images/image1.png new file mode 100644 index 0000000..7f18194 Binary files /dev/null and b/docs/01_requirement/訂閱會員/images/image1.png differ diff --git a/docs/01_requirement/訂閱會員/images/image2.png b/docs/01_requirement/訂閱會員/images/image2.png new file mode 100644 index 0000000..7e9595b Binary files /dev/null and b/docs/01_requirement/訂閱會員/images/image2.png differ diff --git a/docs/01_requirement/訂閱會員/index.html b/docs/01_requirement/訂閱會員/index.html new file mode 100644 index 0000000..36ab25b --- /dev/null +++ b/docs/01_requirement/訂閱會員/index.html @@ -0,0 +1 @@ +
目前只有月費資格
月費暫時先訂600元/月
但內部測試時期會先打2折
訪客可以訂閱,直接就用設備id辨識
\ No newline at end of file diff --git a/docs/01_requirement/語言程度.txt b/docs/01_requirement/語言程度.txt new file mode 100644 index 0000000..0b24174 --- /dev/null +++ b/docs/01_requirement/語言程度.txt @@ -0,0 +1,98 @@ +簡述 +設計理念:最佳體驗&最佳學習效率 +1. 適度難度能激起用戶挑戰心與克服之後的成就感 +2. 適度難度能讓用戶基本功不足需加強 +3. 適度難度可以讓使用者看到精進方向 +4. 輔助功能可以協助使用者越級完成挑戰 +5. 時光關卡引導使用者向前階關卡挑戰,以加強不足的基本功 +語言程度 +語言程度介面 + + + + +欄位說明 +1. 晉階按鈕 + 1. 當晉階條件尚未滿足時,晉階按鈕為disable + 2. 階級介紹:請參照excel表格之欄位-CEFR程度&學習重點 + + + + +晉階 +語言程度 - 晉級設定 + + +簡述 +總共13階層 +鼓勵他們往上爬階 +也鼓勵他們在每一階段學習到一定程度就先往上爬 +但是往上爬一定會因為程度不夠遇到難關 +這時候對話輔助功能(如回覆引導)能幫助克服超過程度的關卡 +然後再以時光關卡的形式引導用戶複習前階關卡,以補足基本功 + + +晉階條件: +當階與前階需累積指定次數之對話訓練關卡「滿星分數」 + +語言分級與聽說讀寫測驗次數對照表 +1 級 (A1) + +前階: x + +後階: 10 次 + +2-3 級 (A2) + +前階: 15 次 + +後階: 10 次 + +4-6 級 (B1) + +前階: 15 次 + +後階: 10 次 + +7-8 級 (B2) + +前階: 15 次 + +後階: 10 次 + +9-11 級 (C1) + +前階: 15 次 + +後階: 10 次 + +12 級 (C2) + +前階: 15 次 + +後階: 10 次 + +13 最高級 (C2) + +前階: (此處無詳細資訊,可能與 C2 級相同或另有規定) + +後階: (此處無詳細資訊,可能與 C2 級相同或另有規定) + + + + +語言表現數據 +語言表現數據(非本階段工程,不用理會) + 1. 當前階段 + 1. 會告訴使用者每階段的學習目標 + 2. 儀表板 + 1. 語意合適度 + 3. 數據 + 1. 篩選 + 1. 階段 + 2. 全部 + 2. 數據項目 + 1. 語意合適度 + 2. 語法錯誤率 + 3. 表達流暢度 + 4. 詞彙分數 \ No newline at end of file diff --git a/docs/02_design/ai-algorithm-specs.md b/docs/02_design/ai-algorithm-specs.md index 76893ed..ff4e937 100644 --- a/docs/02_design/ai-algorithm-specs.md +++ b/docs/02_design/ai-algorithm-specs.md @@ -5,176 +5,364 @@ ## 核心評分維度 -### 1. 語法評分 (Grammar Score) -**目標**: 評估用戶對話的語法正確性 +基於 UI_LevelResult_ScoreSummary.png 的實際設計,採用簡化的三維評分顯示: -#### 評分標準 (0-100分) -- [ ] **基礎語法** (40分) - - 主詞動詞一致性 - - 時態使用正確性 - - 詞序結構正確性 - -- [ ] **進階語法** (35分) - - 複句結構使用 - - 介系詞使用準確性 - - 語法變化形式正確性 - -- [ ] **高級語法** (25分) - - 複雜句型運用 - - 條件句、被動語態等 - - 語法多樣性展現 +### 簡化評分系統 +**目標**: 提供清楚的學習反饋,觸發對應成就獎勵 -#### 實現技術方案 -- [ ] **技術選擇**: 待決定 (GPT-4/Claude/自建模型) -- [ ] **API整合方式**: 待定義 -- [ ] **錯誤分類系統**: 待建立 -- [ ] **即時分析響應時間**: 目標 < 2秒 +#### 三項評分指標 +- [ ] **語法評分**: 評估語法正確性 + - 達到優秀標準時觸發「完美語法」成就 + - 獎勵: +10 鑽石 + 10 閃電能量 -### 2. 語意評分 (Semantic Score) -**目標**: 評估對話內容的語意適切性和情境理解 +- [ ] **語意評分**: 評估內容理解和表達適切性 + - 作為整體表現參考 + - 不單獨觸發特定成就 -#### 評分標準 (0-100分) -- [ ] **情境理解** (45分) - - 場景適應性 - - 對話目標達成度 - - 上下文連貫性 - -- [ ] **詞彙選擇** (35分) - - 詞彙準確性 - - 語域適當性 - - 表達豐富度 - -- [ ] **邏輯性** (20分) - - 推理合理性 - - 回應關聯性 - - 論述完整性 +- [ ] **流暢度評分**: 評估表達的自然度和流暢性 + - 達到優秀標準時觸發「表達流利」成就 + - 獎勵: +10 鑽石 + 10 閃電能量 -#### 實現技術方案 -- [ ] **語意理解模型**: 待選擇 -- [ ] **情境知識庫**: 待建立 -- [ ] **評分權重配置**: 待調整 -- [ ] **多語言支援策略**: 待規劃 +#### 技術實現方案 +- [ ] **AI 模型選擇**: 待決定 (GPT-4/Claude/自建模型) +- [ ] **評分閾值設定**: 定義「優秀」標準的具體分數 +- [ ] **即時分析**: 目標響應時間 < 2秒 +- [ ] **成就觸發機制**: 自動檢測並發放對應獎勵 -### 3. 流暢度評分 (Fluency Score) -**目標**: 評估對話的自然度和表達流暢性 +## AI 對話分析功能 -#### 評分標準 (0-100分) -- [ ] **表達自然度** (40分) - - 語言節奏感 - - 慣用表達使用 - - 母語使用習慣 - -- [ ] **對話連接** (35分) - - 轉接詞使用 - - 對話銜接流暢性 - - 互動反應適時性 - -- [ ] **整體表現** (25分) - - 整段對話完整性 - - 表達信心度 - - 溝通效果達成 +### 即時分析機制 *(更新基於最新規格)* +基於最新規格的詳細分析系統: -#### 實現技術方案 -- [ ] **流暢度檢測算法**: 待開發 -- [ ] **對話品質指標**: 待定義 -- [ ] **即時反饋機制**: 待設計 -- [ ] **學習進度追蹤**: 待實現 +- [ ] **每句話即時分析**: 用戶說出的每句話都進行即時判斷 + - 語法正確性分析(即時顯示於對話功能欄) + - 任務完成狀態檢測 + - 指定詞彙使用檢測 +- [ ] **即時成功通知**: 當用戶提及詞彙或完成任務時立即回饋 +- [ ] **三維度結算評分**: 對話結束後的綜合評分 + - 對話語意合適分數(滿分100,>60為合格) + - 語法錯誤率(必須=0,所有句子都正確或訂正後正確) + - 表達流暢平均分數(滿分100,>60為合格) -## AI 對話訂正功能 +## 情境對話核心系統 -### 訂正類型 -- [ ] **語法訂正**: 直接糾錯並提供正確表達 -- [ ] **語意優化**: 建議更貼切的表達方式 -- [ ] **流暢度改善**: 提供更自然的表達替代方案 -- [ ] **文化適應性**: 符合目標語言文化的表達建議 +### 雙重通關條件檢測 *(新增核心功能)* +基於最新規格的結構化通關機制: -### 訂正展示方式 -- [ ] **即時高亮**: 標示問題部分 -- [ ] **建議面板**: 顯示改進方案 -- [ ] **解釋說明**: 提供訂正原因 -- [ ] **學習建議**: 相關學習資源推薦 +#### 劇情任務識別系統 +- [ ] **任務目標解析**: + - 解析每個劇本的具體劇情任務要求 + - 識別對話中的關鍵情節完成點 + - 例如:"預約餐廳" → 檢測是否包含預約相關對話元素 -### 技術實現細節 -- [ ] **訂正算法選擇**: 待決定 -- [ ] **多層次訂正邏輯**: 待設計 -- [ ] **用戶接受度追蹤**: 待建立 -- [ ] **訂正準確度評估**: 待實現 +- [ ] **任務進度追蹤**: + - 即時監控劇情任務的完成狀態 + - 分析用戶對話是否達成情節目標 + - 觸發即時成功通知機制 -## 即時分析與回覆建議 +- [ ] **情節完整性驗證**: + - 確保對話內容符合劇情邏輯 + - 檢驗任務完成的合理性和連貫性 + - 防止虛假完成的判定 -### 分析觸發機制 -- [ ] **即時觸發**: 用戶輸入完成後立即分析 -- [ ] **按需觸發**: 用戶主動請求分析 -- [ ] **階段性觸發**: 對話段落結束後分析 -- [ ] **綜合評估**: 整次對話結束後完整分析 +#### 指定詞彙檢測系統 +- [ ] **詞彙識別引擎**: + - 精準識別用戶是否使用指定的關鍵詞彙 + - 支援詞彙的不同變化形式(單複數、時態等) + - 處理同義詞和相關變體的檢測 -### 回覆建議系統 -- [ ] **情境適應建議**: 基於場景的回覆選項 -- [ ] **難度分級建議**: 符合用戶程度的表達方式 -- [ ] **個人化建議**: 基於學習記錄的客製化建議 -- [ ] **文化脈絡建議**: 考量文化背景的表達建議 +- [ ] **語境相關性分析**: + - 確保詞彙使用符合對話情境 + - 避免機械性插入詞彙的誤判 + - 驗證詞彙使用的自然度和適當性 -### 建議展示格式 -- [ ] **候選回覆**: 3-5個建議回覆選項 -- [ ] **難度標示**: 標明建議的語言難度等級 -- [ ] **使用情境**: 說明適用場合和語境 -- [ ] **學習重點**: 強調該建議的學習價值 +- [ ] **即時反饋機制**: + - 使用詞彙時立即觸發成功通知 + - 提供詞彙使用品質的評分 + - 記錄詞彙掌握程度的學習數據 + +### 回覆卡關輔助系統 *(更新基於最新規格)* + +#### 回覆協助功能 (消耗寶石) +**觸發時機**: 用戶在扮演角色遇到卡關,不知道該講什麼或怎麼講時 + +**三層引導內容**: +- [ ] **對方意圖分析**: 根據對話室中最後一句話,分析對方說這句話的意圖 +- [ ] **回應思緒引導**: 分析用戶聽到這句話的反應及可能的回覆方向 +- [ ] **回覆範例生成**: 生成一句具體的回覆範例 + +#### 免費輔助工具 +- [ ] **劇情任務範例**: + - 點擊任務提示按鈕後顯示一句範例 + - 說明「這樣說可以完成任務」 + - 當任務已完成時不顯示此按鈕 + - 完全免費,不消耗任何道具 + +- [ ] **指定詞彙範例**: + - 展示指定詞彙的正確使用方式 + - 提供詞彙在不同語境下的使用示例 + - 包含詞彙變化形式的學習支援 + +### 中翻英輔助功能 *(更新基於最新規格)* +- [ ] **Google翻譯整合**: 直接將使用者的中文以Google翻譯轉譯成英文 +- [ ] **即時翻譯服務**: 在對話過程中提供即時的中翻英支援 +- [ ] **翻譯品質優化**: 針對對話情境調整翻譯結果的適切性 +- [ ] **學習引導**: 協助用戶從依賴翻譯逐步過渡到獨立表達 + +### 語音處理系統 *(新增基於最新規格)* +- [ ] **語音轉文字**: 以語音輸入為主,文字輸入為輔的對話方式 +- [ ] **中文檢測**: 當用戶講中文或輸入中文時,角色表示聽不懂 +- [ ] **語音品質檢測**: 如果聽不到聲音,顯示「抱歉,好像沒有聲音,請重新錄製」 +- [ ] **表達流暢度分析**: 使用Speakace等第三方平台分析精準度、流利度、韻律 + +## 詞彙學習系統 *(新增功能模組)* + +### 詞彙學習關卡系統 +基於最新規格的結構化詞彙學習機制: + +#### 詞彙認識關卡 +- [ ] **詞彙展示功能**: + - 顯示詞彙本身、詞義、例句和示意圖 + - 協助用戶初步記住詞彙的核心資訊 + - 為後續考題做準備 +- [ ] **詞彙選擇題**: + - 根據示意圖選出正確的英文詞彙 + - 4選1的單選題形式 + - 答錯會扣除命條(-1)並在最後重新測試 +- [ ] **通關機制**: 所有詞彙題目都答對才算通關,直接獲得三顆星 + +#### 詞彙熟悉關卡 +- [ ] **例句重組功能**: + - 從單字選取區點選組出示意圖的原句 + - 訓練詞彙在語境中的使用能力 + - 強化語法結構理解 +- [ ] **詞彙配對功能**: + - 左邊示意圖與右邊詞彙進行配對 + - 全部配對正確才算完成 + - 提升詞彙識別和記憶連結 +- [ ] **通關機制**: 所有配對和重組正確才算通關,直接獲得三顆星 + +#### 詞彙內容設計標準 +基於劇本的5詞彙組合設計: +- [ ] **詞彙組合**: 每個劇本包含5個詞彙 + - 3個常用單字 + - 1個常用片語 + - 1個常用俚語 +- [ ] **詞彙範例結構**: + - 買菜小冒險: market, vegetables, price + "ask for a discount" + "a steal" + - 遲到的咖啡約會: coffee, late, apologize + "run into traffic" + "my bad" + - 失而復得的手機: phone, lost, find + "look around for" + "lucky break" + +### 間隔複習系統 *(Spaced Repetition)* +基於遺忘曲線的智慧複習機制: + +#### 複習清單管理 +- [ ] **自動加入機制**: + - 詞彙認識、詞彙熟悉、對話訓練通關後自動加入詞彙 + - 避免重複加入已存在的詞彙 + - 維護個人化的複習詞彙庫 +- [ ] **複習時機計算**: + - 下次複習時間 = 當日 + (2^複習次數) + - 首次加入當日即為第一次複習時間 + - 例如:3/4學習 → 3/6複習 → 3/10複習 → 3/18複習 + +#### 每日複習排程 +- [ ] **待複習詞彙判定**: + - 複習日期為當日或已過期的詞彙 + - 未準時複習的詞彙持續標記為待複習 + - 延遲複習時重新計算下次複習時間 +- [ ] **複習關卡執行**: + - 以「詞彙熟悉」關卡形式進行複習 + - 答錯題目複製到當前最後一題 + - 直到所有題目都答對才完成複習 + +#### 進度保存機制 +- [ ] **中途離開處理**: + - 保留用戶當前複習進度和狀態 + - 再次進入時繼續上次未完成的複習 + - 給予已完成部分的經驗值獎勵 +- [ ] **完成獎勵機制**: + - 複習完成後給予經驗值獎勵 + - 更新詞彙複習次數和下次複習時間 + - 強化學習動機和持續性 + +## 限時對話系統 *(新增功能)* + +### 300秒倒數計時機制 +基於最新規格的時間管理系統: + +#### 時間控制引擎 +- [ ] **精準計時系統**: + - 300秒(5分鐘)的精確倒數計時 + - 支援暫停和恢復功能(特殊情況下) + - 時間剩餘的視覺化顯示 + +- [ ] **時間壓力分析**: + - 分析時間壓力對用戶表現的影響 + - 記錄不同時間段的對話品質變化 + - 優化時間分配的學習建議 + +- [ ] **結算觸發機制**: + - 時間歸零自動觸發結算 + - 支援用戶主動點擊「結算表現」 + - 確保數據完整保存和分析 + +#### 時間效率優化 +- [ ] **進度加權評分**: + - 基於完成時間給予額外評分 + - 鼓勵高效但準確的對話完成 + - 平衡速度與品質的評分機制 + +- [ ] **時間管理指導**: + - 提供時間分配的策略建議 + - 分析用戶的時間使用模式 + - 協助提升對話效率 + +## 關卡結算與訂正系統 *(新增基於最新規格)* + +### 關卡表現結算 +**觸發時機**: 當劇本時間用完或用戶主動點選離開劇本時 + +#### 過關判斷標準 +- [ ] **雙重完成檢查**: + - 是否所有任務都已完成 + - 是否所有指定詞彙都已提及 + +#### 表現評分系統 +- [ ] **評分標準** (每合格一項獲得一顆星): + 1. **對話語意合適分數 > 60** (滿分100) + - 根據上下文一致性進行評分 + - 語境適應性評估 + - 意圖匹配度分析 + 2. **語法錯誤率 = 0** + - 用戶說的每句話經過語法判定都正確 + - 或者訂正後都正確亦可 + 3. **表達流暢平均分數 > 60** (滿分100) + - 用戶說的每句話都會有流暢度分數 + - 所有分數平均即為表達流暢平均分數 + +### 結算流程系統 +#### 過關流程 +- [ ] **成功宣告**: 恭喜過關訊息 +- [ ] **表現結算**: 顯示詳細評分和星級 +- [ ] **訂正選擇**: + - 如果點擊「立即訂正」→ 執行訂正流程 → 完成後領取訂正後獎勵 + - 如果點擊「不訂正」→ 直接領獎 +- [ ] **獎勵發放**: 領取通關獎勵 + +#### 失敗流程 +- [ ] **失敗宣告**: 顯示失敗原因 +- [ ] **安慰獎勵**: 領取時光卷一張 + +### AI訂正系統 +#### 語法錯誤訂正 +- [ ] **錯誤收集**: 系統收集該劇本對話中所有語法錯誤的句子 +- [ ] **依序訂正**: 讓用戶依序對每個錯誤句子進行訂正 +- [ ] **進度追蹤**: 分子=訂正次數,分母=語法錯誤句數+表達不順句數 +- [ ] **語音練習**: 點擊練習按鈕後播放說話動畫,再次點擊送出錄音 +- [ ] **結果反饋**: 檢查完成後回饋正確或錯誤 + +#### 表達不順訂正 +- [ ] **流暢度評估**: 針對語音輸入的精準度、流利度、韻律進行評分 +- [ ] **不順句收集**: 收集表達不順的句子進行訂正 +- [ ] **語音重錄**: 使用語音方式重新錄製和練習 +- [ ] **品質提升**: 透過重複練習提升表達流暢度 + +### 技術實現重點 +- [ ] **快速響應**: 優先保證系統響應速度 +- [ ] **準確評估**: 確保評分的一致性和準確性 +- [ ] **獎勵整合**: 與遊戲化系統無縫整合 ## 技術架構設計 -### AI 模型整合 -- [ ] **主要AI服務商**: 待選擇 (OpenAI/Anthropic/Google/其他) -- [ ] **備用方案**: 多供應商容錯機制 -- [ ] **本地化處理**: 敏感資料保護方案 -- [ ] **成本控制**: API使用量管理策略 +### 核心技術需求 *(更新基於最新規格)* +- [ ] **AI 服務選擇**: 確定主要 AI 模型供應商 +- [ ] **評分算法**: 建立三維度評分的具體邏輯 +- [ ] **雙重檢測引擎**: 實現劇情任務和詞彙檢測的AI系統 +- [ ] **即時反饋系統**: 任務完成和詞彙使用的立即通知機制 +- [ ] **回覆輔助引擎**: 實現意圖分析和回應引導的AI模型 +- [ ] **語音處理整合**: 語音轉文字和Speakace流暢度分析 *(新增)* +- [ ] **翻譯服務整合**: Google翻譯API的無縫整合 +- [ ] **限時系統整合**: 300秒計時和結算觸發機制 +- [ ] **訂正系統AI**: 語法錯誤和表達流暢度的訂正引擎 *(新增)* +- [ ] **成就系統整合**: 自動觸發獎勵機制 +- [ ] **性能優化**: 確保響應時間 < 2秒 -### 效能優化 -- [ ] **響應時間**: 目標全流程 < 3秒 -- [ ] **並發處理**: 支援多用戶同時分析 -- [ ] **快取策略**: 常見分析結果快取 -- [ ] **負載平衡**: 分散式處理架構 +### 數據來源架構 *(新增基於最新規格)* +#### 預先準備的數據 (事前手動生成) +- [ ] **開場對話**: 包含場景描述的4-8句開場對話 +- [ ] **任務定義**: 中文描述、完成範例、範例翻譯 +- [ ] **詞彙數據**: 包含翻譯、圖片、題庫等完整詞彙資料 +- [ ] **劇情大綱**: 完整的劇本背景和角色設定 +- [ ] **獎勵設定**: 關卡經驗值獎勵、寶石獎勷、訂正後獎勵數目 -### 資料隱私 -- [ ] **用戶對話保護**: 資料加密和存取控制 -- [ ] **AI訓練資料**: 不使用用戶資料訓練 -- [ ] **資料保留政策**: 對話記錄管理規則 -- [ ] **合規要求**: GDPR等隱私法規遵循 +#### 即時生成的數據 (關卡進行當下) +- [ ] **AI角色對話**: 基於劇情和用戶回應的AI動態生成 +- [ ] **用戶對話**: 語音轉文字後存入資料庫 +- [ ] **語法錯誤評估**: AI即時分析每句話的語法正確性 +- [ ] **語意合適度評估**: AI評估對話的語境適應性 +- [ ] **任務完成評估**: AI判斷劇情任務的完成狀態 +- [ ] **流暢度分析**: Speakace平台分析精準度、流利度、韻律 +- [ ] **回覆引導**: AI生成的三層輔助內容 +- [ ] **對話翻譯**: Google翻譯提供的中翻英服務 -## 評估與優化 +#### 詞彙檢測系統 +- [ ] **詞彙變化形式**: 資料庫儲存詞彙所有型態供模糊比對 + - 例如:eat, ate, eats, eaten +- [ ] **即時比對機制**: 每次對話結束後進行模糊比對 +- [ ] **語境適配**: 確保詞彙使用的自然性和合理性 -### 算法效果評估 -- [ ] **準確度指標**: 各維度評分準確性測量 -- [ ] **用戶滿意度**: 評分結果接受度調查 -- [ ] **學習效果**: 長期學習成效追蹤 -- [ ] **對比實驗**: A/B測試不同算法方案 +### 情境對話技術架構 *(新增)* +- [ ] **劇情解析引擎**: 理解和追蹤劇本任務的完成狀態 +- [ ] **詞彙監控系統**: 即時檢測指定詞彙的使用情況 +- [ ] **雙重成功判定**: 同時滿足劇情任務和詞彙要求的邏輯 +- [ ] **時間管理核心**: 精確的300秒倒數計時系統 -### 持續優化機制 -- [ ] **模型微調**: 基於用戶回饋調整算法 -- [ ] **權重優化**: 動態調整各維度評分權重 -- [ ] **新功能實驗**: 漸進式功能測試上線 -- [ ] **效能監控**: 系統性能持續監測 +### 回覆輔助技術架構 +- [ ] **意圖識別模型**: 基於context理解對方話語意圖 +- [ ] **回應策略生成**: 提供多元化的回應思路建議 +- [ ] **範例生成算法**: 根據使用者等級生成適當的回覆範例 +- [ ] **情境適應性**: 確保建議符合對話場景和文化背景 + +### 基本品質控制 +- [ ] **準確性測試**: 驗證評分結果的一致性 +- [ ] **用戶體驗**: 確保獎勵系統運作順暢 +- [ ] **資料隱私**: 基本的用戶資料保護 --- ## 待完成任務 -### 高優先級 -1. [ ] 確定主要AI技術供應商和API方案 -2. [ ] 設計三維度評分的具體算法邏輯 -3. [ ] 建立即時分析的技術架構 -4. [ ] 定義訂正功能的實現方式 +### 高優先級 *(更新基於最新規格)* +1. [ ] 建立每句話的即時分析系統(語法、任務、詞彙三重檢測) +2. [ ] 實現劇情任務完成狀態的AI檢測引擎 +3. [ ] 建立指定詞彙模糊比對系統(支援詞彙變化形式) +4. [ ] 開發詞彙學習關卡系統(詞彙認識和詞彙熟悉)*(新增)* +5. [ ] 實現間隔複習算法(2^複習次數的遺忘曲線計算)*(新增)* +6. [ ] 開發即時成功通知機制(任務完成和詞彙使用立即反饋) +7. [ ] 實現三維度結算評分系統(語意60+、語法0錯、流暢60+) +8. [ ] 建立語音轉文字和中文檢測系統 +9. [ ] 整合Speakace流暢度分析(精準度、流利度、韻律) +10. [ ] 開發回覆輔助的三層引導AI(意圖分析、思緒引導、範例生成) -### 中優先級 -1. [ ] 建立評分準確度的測試基準 -2. [ ] 設計個人化建議的推薦算法 -3. [ ] 規劃多語言支援的技術方案 -4. [ ] 建立用戶回饋收集機制 +### 中優先級 +1. [ ] 建立雙重通關條件的邏輯驗證系統 *(新增)* +2. [ ] 優化時間壓力下的AI分析準確性 *(新增)* +3. [ ] 設計三類輔助工具的智能推薦機制 *(新增)* +4. [ ] 建立意圖分析模型的準確性測試 +5. [ ] 優化回覆範例生成的品質控制 +6. [ ] 建立評分一致性的測試機制 +7. [ ] 優化與遊戲化系統的整合 +8. [ ] 確保基本的資料隱私保護 -### 低優先級 -1. [ ] 研究進階AI功能的可行性 -2. [ ] 探索本地化AI模型的部署方案 -3. [ ] 調研語言學習領域的最新AI技術 -4. [ ] 建立與學術機構的合作評估機制 +### 新增功能優先級 +1. [ ] 設計劇情任務的複雜度分級系統 +2. [ ] 建立指定詞彙的學習進度追蹤 +3. [ ] 優化限時環境下的用戶體驗 +4. [ ] 設計回覆卡關的觸發時機和條件 +5. [ ] 建立輔助功能使用的數據追蹤 +6. [ ] 優化中翻英結果的情境適應性 +7. [ ] 設計輔助功能的學習成效測量 --- diff --git a/docs/02_design/business-logic-rules.md b/docs/02_design/business-logic-rules.md index 59ea811..19b6ac8 100644 --- a/docs/02_design/business-logic-rules.md +++ b/docs/02_design/business-logic-rules.md @@ -1,298 +1,300 @@ # 商業邏輯與營收規則 ## 概述 -定義 Drama Ling 應用的完整商業模式實現,包含訂閱制、內購、廣告等營收機制的具體規則和邏輯。 +基於實際 UI 設計,定義 Drama Ling 的遊戲化商業模式,以鑽石貨幣系統為主的道具購買機制,搭配簡潔的訂閱服務。 -## 訂閱制服務 +## 鑽石貨幣系統 (主要營收機制) -### 訂閱方案設計 +### 鑽石獲得方式 +- [ ] **初始贈送**: 新用戶註冊贈送1500鑽石 +- [ ] **每日登入**: 登入獎勵鑽石 +- [ ] **學習成就**: 完成關卡獲得鑽石獎勵 +- [ ] **現金購買**: 直接購買鑽石包 +- [ ] **廣告獎勵**: 觀看廣告獲得少量鑽石 -#### 免費版 (Free Tier) -**功能範圍**: -- [ ] **基礎對話練習**: 每日限制 5 次對話 -- [ ] **基礎場景**: 僅開放日常生活場景 (共10個) -- [ ] **AI分析功能**: 每日限制 3 次使用 -- [ ] **排行榜**: 僅顯示好友排行榜 -- [ ] **成就系統**: 僅開放基礎成就 (30%) -- [ ] **廣告觀看**: 觀看廣告可獲得額外使用次數 +### 道具商店系統 -**限制條件**: -- [ ] 對話練習冷卻時間: 4小時 -- [ ] 不支援離線下載 -- [ ] 廣告頻率: 每3次操作顯示1次 -- [ ] 不支援匯出學習記錄 +#### 加時道具 🕰️ +**功能**: 為對話訓練加時1分3秒 +- [ ] **單個購買**: 1個 = 300鑽石 +- [ ] **組合包**: 5個 = 1,200鑽石 (節省20%) +- [ ] **使用情境**: 挑戰關卡時間不夠時使用 +- [ ] **效果**: 獲得更長的思考和組織時間 -#### 基礎版 (Basic Plan) - 月費 NT$199 -**解鎖功能**: -- [ ] **無限對話練習**: 移除每日次數限制 -- [ ] **擴展場景**: 開放社交互動場景 (額外12個) -- [ ] **無廣告體驗**: 完全移除廣告干擾 -- [ ] **進階AI分析**: 無限制使用三維度評分 -- [ ] **詳細學習報告**: 週報和月報功能 -- [ ] **雲端同步**: 跨設備學習進度同步 +#### 補命道具 ❤️ +**功能**: 為對話學習的時間卡復活1次機會 +- [ ] **單個購買**: 1個 = 100鑽石 +- [ ] **組合包**: 5個 = 400鑽石 (節省20%) +- [ ] **使用情境**: 對話練習失敗時使用 +- [ ] **效果**: 可重新挑戰失敗的關卡 -**優惠政策**: -- [ ] 年付優惠: NT$1,980 (相當於月付83折) -- [ ] 學生優惠: 憑學生證享7折優惠 -- [ ] 首月體驗: 新用戶首月 NT$99 +#### 時光卷 ✨ *(更新基於最新規格)* +**功能**: 可挑戰1次前階段關卡或獲得失敗安慰獎勵 +- [ ] **獲得方式**: + - 詞彙認識關卡失敗獲得1張 + - 詞彙熟悉關卡失敗獲得1張 + - 對話訓練失敗獲得1張 + - 複習詞彙失敗安慰獎勵 +- [ ] **使用情境**: + - 挑戰時光關卡(前階段未玩過的對話訓練) + - 若前階段都已完成則隨機挑選關卡 +- [ ] **消費機制**: 點擊「我要挑戰」消耗1張時光卷 +- [ ] **特殊效果**: 成功通關的詞彙一樣加入詞彙複習清單 -#### 進階版 (Premium Plan) - 月費 NT$399 -**解鎖功能**: -- [ ] **全場景開放**: 包含應急處理和專業場景 -- [ ] **個人化學習計劃**: AI客製化學習路徑 -- [ ] **優先客服**: 24小時內回覆保證 -- [ ] **專屬成就**: 解鎖所有成就和徽章 -- [ ] **語音辨識**: 口說練習和發音評估 -- [ ] **離線模式**: 下載內容供離線學習 -- [ ] **學習數據匯出**: 完整學習歷程匯出 +#### 回覆提示道具 💡 *(更新基於最新規格)* +**功能**: 當用戶在扮演角色遇到卡關,不知道該講什麼或怎麼講時提供協助 +- [ ] **單個購買**: 1個 = 30鑽石 +- [ ] **組合包**: 10個 = 250鑽石 (節省17%) +- [ ] **觸發條件**: 用戶主動請求回覆協助時使用 +- [ ] **效果**: 根據對話室中最後一句話生成三層引導內容 -**年付優惠**: NT$3,999 (相當於月付83折) +**回覆引導內容** (消耗道具): +- [ ] **對方意圖分析**: 分析對方說這句話的意圖 +- [ ] **回應思緒引導**: 分析用戶聽到這句話的反應及可能的回覆方向 +- [ ] **回覆範例生成**: 生成一句具體的回覆範例 -#### 專業版 (Professional Plan) - 月費 NT$799 -**解鎖功能**: -- [ ] **企業場景**: 商務、面試、簡報等專業場景 -- [ ] **一對一AI導師**: 個人化指導和建議 -- [ ] **多語言支援**: 支援5種目標語言學習 -- [ ] **競賽特權**: 參與高級競賽和獲得實體獎勵 -- [ ] **API存取**: 開發者可整合學習數據 -- [ ] **白標服務**: 企業客戶客製化版本 -- [ ] **專屬社群**: 高級用戶專屬討論區 +**免費輔助功能** (不消耗道具): +- [ ] **劇情任務範例**: 點擊任務提示按鈕顯示「這樣說可以完成任務」的範例 +- [ ] **指定詞彙範例**: 展示指定詞彙的正確使用方式 +- [ ] **中翻英翻譯**: 直接將使用者的中文以Google翻譯轉譯成英文 -### 訂閱管理機制 +**使用規則**: +- [ ] **任務完成狀態**: 當任務已經完成時,不會顯示任務提示按鈕 +- [ ] **使用限制**: 每次對話合理使用,避免過度依賴 +- [ ] **學習導向**: 鼓勵用戶從輔助逐步過渡到獨立表達 -#### 訂閱流程 -- [ ] **免費試用**: 所有付費方案提供7天免費試用 -- [ ] **自動續約**: 到期前24小時自動扣款續約 -- [ ] **取消政策**: 隨時可取消,當期使用到期為止 -- [ ] **升級降級**: 即時生效,費用按比例計算 -- [ ] **暫停功能**: 最多可暫停3個月 (保留資料) +## 關卡命條系統 *(新增核心機制)* -#### 付費方式整合 -- [ ] **信用卡**: 支援 Visa、MasterCard、JCB -- [ ] **數位支付**: Apple Pay、Google Pay、Samsung Pay -- [ ] **電信帳單**: 與電信商合作代收 -- [ ] **第三方支付**: 街口支付、LINE Pay、悠遊付 -- [ ] **銀行轉帳**: 提供虛擬帳號轉帳 -- [ ] **禮品卡**: 實體和數位禮品卡購買 +### 命條管理機制 +基於最新規格的闖關生命值系統: -#### 計費邏輯 -- [ ] **按月計費**: 每月同一日期扣款 -- [ ] **按年計費**: 年付享折扣優惠 -- [ ] **比例退款**: 降級時退還剩餘天數費用 -- [ ] **暫停計費**: 暫停期間停止扣款 -- [ ] **逾期處理**: 扣款失敗後7天緩衝期 +#### 命條基本規則 +- [ ] **初始設定**: 新用戶預設5個命條(上限為5) +- [ ] **闖關門檻**: 開始闖關前檢查命條是否大於1 +- [ ] **自動回復**: 每5小時自動獲得1個命條 +- [ ] **命條歸零**: 當命條扣完歸零時即闖關失敗 -## 內容付費機制 +#### 命條消耗規則 +- [ ] **詞彙認識關卡**: 答錯題目扣除1個命條 +- [ ] **詞彙熟悉關卡**: 答錯題目扣除1個命條 +- [ ] **對話訓練關卡**: 通關失敗扣除1個命條 +- [ ] **重複答題**: 答錯的題目需在最後重新回答,再次答錯繼續扣命條 -### 付費內容類型 +#### 命條不足處理 +- [ ] **闖關阻擋**: 命條不足時無法開始新的關卡挑戰 +- [ ] **購買機制**: 命條不足時可使用鑽石購買命條 + - 1個命條 = 100鑽石 + - 5個命條組合包 = 400鑽石(節省20%) +- [ ] **等待恢復**: 用戶可選擇等待5小時自然恢復命條 +- [ ] **視覺提示**: 金錢不夠時購買按鈕顯示為disable狀態 -#### 特殊場景包 (每包 NT$99-299) -- [ ] **主題場景包**: - - 旅遊場景包 (機場、飯店、觀光) - NT$149 - - 醫療場景包 (看病、急救、藥局) - NT$199 - - 法律場景包 (法庭、律師、契約) - NT$299 - - 學術場景包 (論文、研究、會議) - NT$249 +### 關卡結構系統 *(新增基於最新規格)* +基於13階段的完整學習路徑: -- [ ] **文化場景包**: - - 節日慶典場景 (聖誕、新年、婚禮) - NT$129 - - 運動場景包 (健身、比賽、戶外) - NT$149 - - 美食場景包 (料理、品酒、米其林) - NT$179 - - 藝術場景包 (博物館、畫展、音樂會) - NT$199 +#### 階段化學習架構 +- [ ] **學習階層**: 第x階段 > 第x劇本 > 某某關卡 +- [ ] **總體規劃**: 共13個學習階段 +- [ ] **劇本數量**: 每階段包含20個以上劇本(持續增加) +- [ ] **關卡類型**: 每個劇本固定包含三種關卡 + - 詞彙認識關卡 + - 詞彙熟悉關卡 + - 對話訓練關卡 -#### 專業對話包 (每包 NT$199-499) -- [ ] **商務專業包**: - - 國際商務談判包 - NT$399 - - 跨國會議包 - NT$299 - - 企業簡報包 - NT$249 - - 客戶關係包 - NT$199 +#### 關卡解鎖機制 +- [ ] **順序闖關**: 必須按照關卡順序進行,不可跳關 +- [ ] **解鎖條件**: 完成前一關卡才能解鎖下一關 +- [ ] **通關標準**: 即使獲得零顆星,成功通關仍會解鎖下一關 +- [ ] **星級獎勵**: 詞彙認識和詞彙熟悉關卡通關直接給予三顆星 -- [ ] **考試準備包**: - - IELTS口說包 - NT$499 - - TOEFL口說包 - NT$499 - - 多益口說包 - NT$399 - - 全民英檢包 - NT$299 +#### 連續學習獎勵 +- [ ] **連續學習天數**: 追蹤用戶連續學習的天數 +- [ ] **每日學習判定**: 當日完成至少一個關卡即計為學習一天 +- [ ] **連續獎勵機制**: 基於連續天數給予額外獎勵 + - 7天連續: 額外經驗值獎勵 + - 14天連續: 免費命條補充 + - 30天連續: 特殊成就徽章 -#### 名師課程包 (每包 NT$599-1,299) -- [ ] **語言專家系列**: 知名語言學習專家錄製 -- [ ] **母語人士系列**: 道地母語人士對話示範 -- [ ] **文化導師系列**: 深度文化背景解析 -- [ ] **商務導師系列**: 商界菁英實戰經驗 +## 情境對話核心商業機制 *(新增功能)* -### 內購邏輯設計 +### 雙重通關條件獎勵系統 +基於最新規格的結構化通關獎勵機制: -#### 購買流程 -- [ ] **預覽功能**: 購買前可試用第一個場景 -- [ ] **一鍵購買**: 整合系統支付,無需跳轉 -- [ ] **批次購買**: 購買多個內容包享組合折扣 -- [ ] **心願清單**: 加入心願清單,降價時通知 -- [ ] **禮品贈送**: 可購買贈送給好友 +#### 劇情任務完成獎勵 +- [ ] **基礎完成獎勵**: 完成劇情任務獲得 +10 鑽石 + 10 閃電能量 +- [ ] **任務品質加成**: 高品質完成劇情任務額外 +5 鑽石 +- [ ] **即時獎勵機制**: 任務完成立即觸發獎勵通知和發放 +- [ ] **進度追蹤獎勵**: 連續完成劇情任務的連擊獎勵機制 -#### 定價策略 -- [ ] **動態定價**: 根據用戶程度和偏好調整價格 -- [ ] **限時優惠**: 新內容上線限時特價 -- [ ] **組合折扣**: 相關內容包組合購買享折扣 -- [ ] **會員折扣**: 訂閱用戶享內購9折優惠 -- [ ] **活動促銷**: 節日和特殊活動期間折扣 +#### 指定詞彙使用獎勵 +- [ ] **詞彙掌握獎勵**: 正確使用指定詞彙獲得 +5 鑽石 + 5 閃電能量 +- [ ] **自然使用加成**: 詞彙使用自然且符合語境額外 +3 鑽石 +- [ ] **即時反饋獎勵**: 使用詞彙時立即觸發成功通知 +- [ ] **詞彙精通獎勵**: 單次對話使用多個指定詞彙的組合獎勵 -#### 內容保護機制 -- [ ] **DRM保護**: 防止內容被盜用或分享 -- [ ] **帳號綁定**: 購買內容綁定特定帳號 -- [ ] **設備限制**: 最多可在3台設備上使用 -- [ ] **離線保護**: 離線內容定期需要驗證授權 -- [ ] **盜版檢測**: 偵測和防範非法分享行為 +#### 結算獎勵系統 *(更新基於最新規格)* +**過關獎勵** (同時滿足劇情任務和詞彙要求): +- [ ] **基礎通關獎勵**: 獲得金幣和經驗值 +- [ ] **星級獎勵系統**: 基於三維度評分獲得1-3顆星 + - 語意合適分數 > 60 (滿分100) = 1顆星 + - 語法錯誤率 = 0 (所有句子正確或訂正後正確) = 1顆星 + - 表達流暢平均分數 > 60 (滿分100) = 1顆星 +- [ ] **訂正後獎勵**: 選擇立即訂正後獲得訂正後的獎勵數值 -## 廣告系統設計 +**失敗安慰獎勵**: +- [ ] **安慰獎**: 獲得時光卷一張(可重新挑戰關卡) +- [ ] **鼓勵機制**: 提供重新挑戰的動機和資源 + +### 300秒限時挑戰機制 +基於最新規格的時間管理商業系統: + +#### 限時挑戰入場機制 +- [ ] **挑戰門票**: 參與300秒限時挑戰需消耗 50鑽石 入場費 +- [ ] **免費次數**: 每日首次限時挑戰免費,後續挑戰需付費 +- [ ] **VIP特權**: 付費用戶每日3次免費限時挑戰機會 +- [ ] **好友邀請**: 邀請好友一同挑戰可減免入場費用 + +#### 時間相關道具系統 +- [ ] **時間暫停道具**: 暫停倒數計時30秒,消耗 100鑽石 +- [ ] **時間加成道具**: 增加額外60秒挑戰時間,消耗 150鑽石 +- [ ] **快速完成獎勵**: 在180秒內完成獲得 +15 鑽石時間獎勵 +- [ ] **壓力測試獎勵**: 在最後30秒完成挑戰獲得 +25 鑽石壓力獎勵 + +#### 限時結算獎勵機制 +- [ ] **基礎完成獎勵**: 300秒內完成對話獲得 +30 鑽石 + 30 閃電能量 +- [ ] **時間效率獎勵**: 基於完成時間給予 1.2x - 2.0x 獎勵倍數 +- [ ] **雙重條件加成**: 限時環境下達成雙重條件額外 +50 鑽石 +- [ ] **排行榜獎勵**: 每週限時挑戰排行榜前10名特殊獎勵 + +## 簡化訂閱系統 (次要營收) + +### 訂閱服務設計 +- [ ] **7天免費體驗**: 新用戶可免費使用7天完整功能 +- [ ] **目標**: 與靈兔一起闖關學英文,玩出一口流利的口說英文 +- [ ] **成功頁面**: 可愛外星人角色設計增加親切感 +- [ ] **續約提醒**: "還在等什麼?先來7天免費體驗看看!" + +### 資源不足機制 +- [ ] **提醒彈窗**: "任務提示需要消耗30資石,但你目前資石不足" +- [ ] **引導購買**: 直接引導用戶到道具商店 +- [ ] **清楚的需求說明**: 顯示具體需要的資源數量 +- [ ] **一鍵解決**: 提供"了解"按鈕引導至購買頁面 + +## 道具購買流程設計 + +### 購買確認機制 + +#### 加時道具購買確認 +- [ ] **視覺化設計**: 大型時鐘圖示加上加號圖示 +- [ ] **清楚的價值說明**: "用加時道具去玩出更高的分數吧!" +- [ ] **遊戲化設計**: 對話式的遊戲要求,而非單純交易 +- [ ] **即時購買**: "立即購買 300鑽石"按鈕 +- [ ] **取消選項**: 簡單的"不,謝謝"選項 + +#### 補命道具購買確認 +- [ ] **心形圖示**: 愛心加號的視覺設計 +- [ ] **功能說明**: 明確告知為學習時間復活用途 +- [ ] **價格透明**: 直接顯示100鑽石的明確價格 +- [ ] **低價格策略**: 相對低廉的價格降低購買的障礙感 + +#### 回覆提示道具購買確認 +- [ ] **燈泡圖示**: 智慧提示的視覺設計 +- [ ] **功能說明**: "獲得AI智慧引導,突破對話卡關!" +- [ ] **價格透明**: 直接顯示30鑽石的低門檻價格 +- [ ] **價值展示**: 強調包含四合一功能(意圖分析+思維引導+回覆範例+翻譯) +- [ ] **即時解決**: "立即獲得對話靈感"的行動導向按鈕 +- [ ] **低價策略**: 最低價道具降低首次付費心理障礙 + +### 購買成功機制 +- [ ] **即時生效**: 購買後立即可在遊戲中使用 +- [ ] **清楚的庫存顯示**: 在主界面右上角顯示目前鑽石數量(1500) +- [ ] **使用指引**: 在需要使用道具時提供明確的使用方式 + +## 訂閱成功體驗設計 + +### 成功頁面設計理念 +- [ ] **可愛風格**: 使用外星人角色創造親切感 +- [ ] **清楚的價值主張**: "和靈兔一起闖關學英文!玩出一口流利的口說英文!" +- [ ] **緊迫性設計**: "還在等什麼?先來7天免費體驗看看!" +- [ ] **行動導向**: 大型明顯的CTA按鈕"領取7天體驗資格" + +### 用戶心理設計 +- [ ] **降低抵觸**: 免費體驗降低初次購買的心理障礙 +- [ ] **社交證明**: 使用外星人形象增加記憶點 +- [ ] **成就感**: 體驗成功的成就感與滿意度 +- [ ] **持續動機**: 透過可愛設計建立情感連結 + +## 鑽石購買套餐設計 + +### 推薦套餐結構 +- [ ] **新手包**: 500鑽石 = NT$30 (首次購買優惠) +- [ ] **基礎包**: 1,200鑽石 = NT$60 +- [ ] **價值包**: 2,500鑽石 = NT$99 (最受歡迎) +- [ ] **豪華包**: 5,000鑽石 = NT$190 +- [ ] **至尊包**: 12,000鑽石 = NT$390 + +### 定價策略考量 +- [ ] **低門檻**: NT$30的新手包降低進入的障礙 +- [ ] **價值感**: 每1鑽石約NT$0.04的合理價格 +- [ ] **組合購買優惠**: 5個裝比單購節省20-25% +- [ ] **心理定位**: 道具價格設定在100-1200鑽石區間 + +## 付費轉換優化 + +### 轉換漏斗設計 +- [ ] **無縫體驗**: 從免費使用到需要購買的自然過渡 +- [ ] **第一次付費**: 通常為最低價的道具(回覆提示道具30鑽石) +- [ ] **漸進式需求**: + - **入門級**: 回覆提示道具(30鑽石) - 解決即時卡關問題 + - **成長級**: 限時挑戰門票(50鑽石) - 體驗競技式學習 + - **進階級**: 補命道具(100鑽石) - 提供重新挑戰機會 + - **專家級**: 時間相關道具(100-150鑽石) - 優化限時挑戰表現 + - **大師級**: 加時道具(300鑽石) - 獲得更充裕練習時間 +- [ ] **成就動機**: 通過道具使用獲得更好成績和雙重通關的成就感 +- [ ] **學習進步感**: 回覆提示功能和即時獎勵讓用戶感受到明顯的學習支援 +- [ ] **競技驅動**: 300秒限時挑戰創造緊張感和競爭動機 +- [ ] **社交壓力**: 好友排行榜和限時挑戰排名驅動持續消費 + +## 簡化廣告系統 ### 廣告展示策略 - -#### 免費用戶廣告頻率 -- [ ] **啟動廣告**: App開啟時展示 (5秒,可跳過) -- [ ] **練習間廣告**: 每3次對話練習後展示 -- [ ] **功能解鎖廣告**: 使用進階功能前觀看廣告 -- [ ] **退出廣告**: 結束學習階段時展示 -- [ ] **獎勵廣告**: 主動觀看獲得獎勵 - -#### 廣告類型與時長 -- [ ] **影片廣告**: 15-30秒影片廣告,教育、遊戲類優先 -- [ ] **互動廣告**: 可互動的廣告內容,增加參與度 -- [ ] **原生廣告**: 融入介面設計的原生廣告內容 -- [ ] **橫幅廣告**: 螢幕底部或頂部的橫幅展示 -- [ ] **全螢幕廣告**: 在自然暫停點展示的全螢幕廣告 - -### 廣告獎勵機制 - -#### 觀看獎勵類型 -- [ ] **額外練習次數**: 觀看廣告獲得2次額外對話機會 -- [ ] **AI分析次數**: 獲得1次額外AI分析機會 -- [ ] **積分獎勵**: 觀看廣告獲得25-50積分 -- [ ] **內容試用**: 獲得付費場景1小時試用權 -- [ ] **社交功能**: 獲得好友排行榜查看權限 - -#### 獎勵發放規則 -- [ ] **每日上限**: 每種獎勵每日最多獲得5次 -- [ ] **冷卻時間**: 同類獎勵需間隔30分鐘 -- [ ] **觀看驗證**: 需完整觀看才能獲得獎勵 -- [ ] **獎勵疊加**: 不同類型獎勵可以疊加使用 -- [ ] **有效期限**: 獎勵需在獲得後24小時內使用 - -### 廣告品質控制 - -#### 廣告內容審核 -- [ ] **教育相關**: 優先顯示教育、學習相關廣告 -- [ ] **年齡適宜**: 確保廣告內容適合目標用戶年齡層 -- [ ] **文化敏感**: 避免文化衝突或敏感內容 -- [ ] **品牌安全**: 排除有害品牌和不當內容 -- [ ] **用戶回饋**: 建立廣告品質回饋機制 - -#### 廣告效果最佳化 -- [ ] **個人化投放**: 基於用戶興趣和行為投放相關廣告 -- [ ] **A/B測試**: 測試不同廣告格式和時機的效果 -- [ ] **頻率控制**: 避免相同廣告過度曝光造成反感 -- [ ] **時段優化**: 在用戶活躍時段投放高價值廣告 -- [ ] **轉換追蹤**: 追蹤廣告點擊和轉換效果 - -## 企業客戶方案 - -### B2B 服務方案 - -#### 企業培訓版 (客製化報價) -**服務內容**: -- [ ] **員工帳號管理**: 批次開設和管理員工學習帳號 -- [ ] **學習進度追蹤**: 管理者可查看員工學習狀況 -- [ ] **客製化內容**: 根據企業需求開發專屬學習場景 -- [ ] **培訓報告**: 定期提供企業培訓成效報告 -- [ ] **專屬客服**: 指派專人負責企業客戶服務 -- [ ] **API整合**: 與企業現有系統整合 - -#### 教育機構版 (年費制) -**服務內容**: -- [ ] **學生管理系統**: 教師可管理學生學習進度 -- [ ] **課程規劃工具**: 協助教師規劃語言學習課程 -- [ ] **成績管理**: 整合學習成果到既有成績系統 -- [ ] **教學資源**: 提供教師專用教學資源和指南 -- [ ] **大量授權**: 支援數百到數千學生同時使用 -- [ ] **教育折扣**: 相較個人版享有大幅優惠 - -### 定價模式 - -#### 企業培訓版定價 -- [ ] **基礎方案**: NT$200/人/月 (最少50人) -- [ ] **標準方案**: NT$350/人/月 (包含客製化內容) -- [ ] **高級方案**: NT$500/人/月 (包含專屬客服和API) -- [ ] **設定費**: 一次性 NT$50,000 系統設定費 -- [ ] **客製化開發**: 另外報價,通常 NT$100,000 起跳 - -#### 教育機構版定價 -- [ ] **小型機構** (≤100學生): NT$8,000/月 -- [ ] **中型機構** (101-500學生): NT$25,000/月 -- [ ] **大型機構** (501-2000學生): NT$80,000/月 -- [ ] **超大型機構** (>2000學生): 客製化報價 - -## 數據服務營收 - -### 匿名化數據分析服務 -- [ ] **學習趨勢報告**: 提供語言學習趨勢分析報告 -- [ ] **教育機構諮詢**: 協助教育機構優化教學方法 -- [ ] **語言能力評估**: 提供標準化語言能力評估服務 -- [ ] **內容效果分析**: 分析不同學習內容的效果差異 -- [ ] **技術授權**: 授權AI分析技術給其他教育平台 - -### 數據隱私保護 -- [ ] **完全匿名化**: 移除所有可識別個人身份的資訊 -- [ ] **聚合數據**: 僅提供統計性聚合數據,不提供個人資料 -- [ ] **用戶同意**: 明確告知並取得用戶同意才收集分析數據 -- [ ] **法規遵循**: 完全遵守GDPR和相關隱私法規 -- [ ] **安全傳輸**: 使用最高等級加密保護數據傳輸 - ---- +- [ ] **非強制性**: 主要用於獲得額外鑽石獎勵 +- [ ] **獎勵導向**: 觀看廣告獲得25-50鑽石 +- [ ] **頻率控制**: 避免影響核心遊戲體驗 +- [ ] **品質篩選**: 優先顯示教育和遊戲相關廣告 ## 技術實現考量 ### 支付系統整合 - [ ] **第三方支付串接**: 整合多種支付方式API - [ ] **交易安全**: PCI DSS合規的支付安全機制 -- [ ] **退款處理**: 自動化退款處理流程 -- [ ] **發票開立**: 整合電子發票開立系統 -- [ ] **帳務對帳**: 自動化帳務對帳和財務報告 +- [ ] **即時到帳**: 購買後立即可使用的鑽石發放 +- [ ] **退款處理**: 簡化的退款處理流程 -### 訂閱管理系統 -- [ ] **自動續約**: 智慧續約提醒和自動扣款機制 -- [ ] **方案升降級**: 即時生效的方案變更處理 -- [ ] **使用量監控**: 即時監控用戶使用量和限制 -- [ ] **帳號暫停復原**: 自動化帳號狀態管理 -- [ ] **客戶生命週期**: 完整的客戶生命週期管理 - -### 廣告平台整合 -- [ ] **廣告SDK整合**: 整合主流廣告平台SDK -- [ ] **廣告投放優化**: 智慧廣告投放和最佳化 -- [ ] **收益最大化**: 動態調整廣告格式和頻率 -- [ ] **廣告屏蔽檢測**: 檢測並應對廣告屏蔽軟體 -- [ ] **廣告效果追蹤**: 精確的廣告效果分析和報告 +### 道具系統管理 +- [ ] **即時庫存**: 即時更新用戶鑽石和道具庫存 +- [ ] **使用追蹤**: 追蹤道具使用情況和效果 +- [ ] **防作弊機制**: 防止道具被不正當獲得或使用 +- [ ] **數據分析**: 道具使用率和購買轉換率分析 --- -## 待完成任務 +## 關鍵差異與實際設計對齊 -### 高優先級 -1. [ ] 確定各訂閱方案的具體定價和功能範圍 -2. [ ] 設計付費內容的具體場景和定價策略 -3. [ ] 建立廣告獎勵機制的平衡性測試 -4. [ ] 規劃企業客戶的銷售和服務流程 +### 與原規劃的主要不同 +1. **簡化商業模式**: 從複雜的4層訂閱制改為鑽石道具+簡單訂閱 +2. **遊戲化貨幣**: 使用鑽石取代直接台幣定價 +3. **低門檻策略**: 最低100鑽石的道具降低付費門檻 +4. **視覺化購買**: 可愛的確認彈窗而非複雜的訂閱頁面 +5. **即時獎勵**: 購買後立即可用,增加滿足感 -### 中優先級 -1. [ ] 設計支付流程的使用者體驗 -2. [ ] 建立客戶服務的標準作業程序 -3. [ ] 規劃數據分析服務的產品化方案 -4. [ ] 設計會員等級和忠誠度計劃 - -### 低優先級 -1. [ ] 研究新興支付方式的整合可能性 -2. [ ] 探索NFT或區塊鏈技術的應用場景 -3. [ ] 建立合作夥伴的收益分成機制 -4. [ ] 設計社群變現的創新模式 +### 實際應用案例 +- **道具商店頁面**: 清楚的分類和價格顯示 +- **購買確認彈窗**: 遊戲化的對話式確認 +- **資源不足提醒**: 直接引導到解決方案 +- **訂閱成功頁**: 可愛外星人增加品牌親和力 --- **最後更新**: 2024年9月5日 -**負責人**: 待分配 -**審查週期**: 每兩週檢討一次 \ No newline at end of file +**基於實際設計**: 05_views 目錄中的商業相關UI設計 +**審查週期**: 與實際UI設計保持同步更新 \ No newline at end of file diff --git a/docs/02_design/content-management-specs.md b/docs/02_design/content-management-specs.md index 4e8935c..f170ce2 100644 --- a/docs/02_design/content-management-specs.md +++ b/docs/02_design/content-management-specs.md @@ -1,395 +1,389 @@ # 內容管理規格文件 ## 概述 -定義 Drama Ling 應用中所有學習內容的創作標準、管理架構和品質控制機制。 +基於 05_views 實際設計,定義簡化的學習內容管理架構。 -## 劇本創作標準 +## 挑戰關卡系統 -### 劇本結構規格 +### 關卡結構設計 +基於 UI_ChallengeLevel_Map.png 和相關介面,採用簡化的關卡進度系統: -#### 基本劇本架構 +#### 劇本內容架構 *(更新基於最新規格)* ```json { - "scenario_id": "SC_Restaurant_01", - "scenario_name": "餐廳訂位", - "category": "daily_life", - "difficulty_level": "A2", - "estimated_duration": "5-8分鐘", - "learning_objectives": ["預約用餐", "詢問菜單", "表達偏好"], - "target_vocabulary": ["reservation", "available", "preference"], - "cultural_context": "西式餐廳用餐禮儀", - "dialogue_flow": {...} + "script_id": "S001", + "script_name": "午餐吃什麼", + "scene_description": { + "english": "Two friends sit on a park bench under a shady tree...", + "chinese": "兩位朋友坐在樹蔭下的公園長椅上..." + }, + "plot_outline": "兩位朋友在公園長椅上討論午餐選擇...", + "opening_dialogue": [ + { + "character": "Alex", + "english": "Jamie, I can't decide! What do you feel like eating?", + "chinese": "Jamie,我不知道該選什麼!你想吃什麼?", + "user_role": true + }, + { + "character": "Jamie", + "english": "I'm not sure either. Maybe something light, like salad?", + "chinese": "我也不確定,也許吃點清淡的,比如沙拉?", + "user_role": false + } + ], + "plot_tasks": [ + { + "task_description": "說服 Jamie 吃自己喜歡的食物,並舉出理由", + "example_english": "My friend recommended this place too, said it's the best [food name] they've ever had.", + "example_chinese": "我朋友也超推薦這家,說是他吃過最好吃的 [食物名稱]。" + } + ], + "required_vocabulary": [ + { + "word": "Decide", + "chinese": "決定", + "variations": ["decide", "decided", "deciding", "decision"], + "quiz_options": ["deceive", "besides", "decided", "disease"] + }, + { + "word": "Light", + "chinese": "清淡的", + "variations": ["light", "lighter", "lightly"], + "quiz_options": ["right", "fight", "sight", "slight"] + } + ], + "time_limit": 300, + "completion_criteria": { + "tasks_required": true, + "vocabulary_required": true, + "scoring_thresholds": { + "semantic_score": 60, + "grammar_errors": 0, + "fluency_score": 60 + } + } } ``` -#### 對話流程設計原則 -- [ ] **情境設定**: 清楚的場景背景和角色身份 -- [ ] **目標導向**: 每個劇本都有明確的溝通目標 -- [ ] **循序漸進**: 難度由淺入深,符合學習曲線 -- [ ] **互動性強**: 提供多種對話分支選擇 -- [ ] **實用性高**: 貼近真實生活溝通需求 +#### 關卡設計原則 +- [ ] **簡潔目標**: 每關卡有明確的對話練習目標 +- [ ] **鑽石消費**: 統一關卡消費機制 (300鑽石/關) +- [ ] **解鎖系統**: 循序解鎖的關卡進度 +- [ ] **完成獎勵**: 統一的三項成就獎勵系統 -### 劇本分類體系 +### 場景內容分類 -#### 按難度分級 (CEFR標準) -- [ ] **A1 初學者**: 基礎日常對話 (自我介紹、購物等) -- [ ] **A2 初級**: 簡單社交對話 (餐廳、交通等) -- [ ] **B1 中級**: 複雜情境對話 (工作會議、申訴等) -- [ ] **B2 中高級**: 專業場景對話 (面試、簡報等) -- [ ] **C1 高級**: 抽象議題討論 (辯論、學術等) -- [ ] **C2 精通級**: 專業領域深度對話 +#### 簡化場景系統 +基於實際 UI 設計的簡化分類: -#### 按場景主題分類 -**日常生活類** (20個場景) -- [ ] 自我介紹與問候 -- [ ] 購物和消費 -- [ ] 餐廳用餐 -- [ ] 交通出行 -- [ ] 醫療保健 -- [ ] 住宿安排 -- [ ] 銀行金融 -- [ ] 郵政服務 -- [ ] 娛樂休閒 -- [ ] 家庭生活 +- [ ] **日常對話場景**: 基本生活情境對話練習 +- [ ] **挑戰關卡**: 進階的目標導向對話任務 +- [ ] **語法訂正**: 專注語法改進的練習內容 +- [ ] **流暢度訓練**: 專注表達流暢度的練習內容 -**社交互動類** (15個場景) -- [ ] 朋友聚會 -- [ ] 約會戀愛 -- [ ] 鄰里互動 -- [ ] 社團活動 -- [ ] 節慶慶祝 -- [ ] 運動健身 -- [ ] 興趣愛好 -- [ ] 旅遊規劃 -- [ ] 文化交流 -- [ ] 志工服務 +## 詞彙學習內容管理系統 *(新增功能模組)* -**應急處理類** (12個場景) -- [ ] 車禍事故處理 -- [ ] 醫療急救 -- [ ] 報警求助 -- [ ] 投訴申訴 -- [ ] 設備故障 -- [ ] 迷路求助 -- [ ] 金融詐騙 -- [ ] 自然災害 -- [ ] 法律諮詢 -- [ ] 心理諮商 +### 詞彙關卡內容架構 +基於最新規格的詞彙學習關卡設計: -**專業場景類** (18個場景) -- [ ] 商務談判 -- [ ] 工作面試 -- [ ] 會議簡報 -- [ ] 客戶服務 -- [ ] 技術討論 -- [ ] 學術研究 -- [ ] 教育培訓 -- [ ] 醫療諮詢 -- [ ] 法律程序 -- [ ] 媒體採訪 - -### 劇本創作指南 - -#### 對話編寫原則 -- [ ] **自然流暢**: 符合目標語言的自然表達習慣 -- [ ] **文化適切**: 考量目標語言的文化背景和習俗 -- [ ] **語法重點**: 每個劇本強調特定語法結構 -- [ ] **詞彙密度**: 新詞彙密度控制在15-25%之間 -- [ ] **重複強化**: 重要詞彙和句型在對話中多次出現 - -#### 角色設計規範 -- [ ] **角色背景**: 明確的年齡、職業、性格設定 -- [ ] **對話風格**: 符合角色身份的語言使用風格 -- [ ] **情緒表達**: 透過語言展現角色情緒變化 -- [ ] **互動動機**: 每個角色都有清楚的對話動機 -- [ ] **文化代表性**: 角色設定體現多元文化背景 - -#### 分支劇情設計 -- [ ] **多重選擇**: 提供3-5個對話選項供用戶選擇 -- [ ] **後果差異**: 不同選擇導向不同的對話發展 -- [ ] **學習重點**: 每個分支突出不同的學習重點 -- [ ] **複雜度漸增**: 後續分支難度逐漸提升 -- [ ] **回歸主線**: 分支最終回歸主要學習目標 - -### 品質檢核標準 - -#### 語言準確性檢查 -- [ ] **母語人士審核**: 至少一位母語專家審核 -- [ ] **語法正確性**: 確保語法使用完全正確 -- [ ] **用詞準確性**: 詞彙使用符合情境和語域 -- [ ] **發音標註**: 提供正確的發音指導 -- [ ] **語調標記**: 標註語調變化和重音位置 - -#### 教學效果驗證 -- [ ] **學習目標對應**: 內容與學習目標完全對應 -- [ ] **難度適中性**: 透過測試驗證難度合適性 -- [ ] **參與度測試**: 確保內容能維持學習者興趣 -- [ ] **記憶效果**: 驗證詞彙和句型的記憶留存效果 -- [ ] **實用性驗證**: 確認內容在實際情境中的適用性 - -## 詞彙庫組織架構 - -### 詞彙分類系統 - -#### 按頻率分級 -- [ ] **核心詞彙** (1-1000): 最常用的基礎詞彙 -- [ ] **重要詞彙** (1001-3000): 日常溝通必備詞彙 -- [ ] **進階詞彙** (3001-6000): 中級學習者詞彙 -- [ ] **專業詞彙** (6000+): 特定領域專業詞彙 - -#### 按主題領域分類 -**生活主題詞彙** -- [ ] 家庭與人際關係 (300詞) -- [ ] 食物與飲料 (400詞) -- [ ] 衣著與時尚 (250詞) -- [ ] 住房與家具 (350詞) -- [ ] 交通與旅行 (300詞) -- [ ] 健康與醫療 (400詞) -- [ ] 購物與消費 (250詞) -- [ ] 娛樂與休閒 (350詞) - -**學術主題詞彙** -- [ ] 教育與學習 (400詞) -- [ ] 科學與技術 (500詞) -- [ ] 商業與經濟 (450詞) -- [ ] 政治與社會 (350詞) -- [ ] 文化與藝術 (300詞) -- [ ] 環境與自然 (400詞) - -#### 按語法功能分類 -- [ ] **動詞類**: 行為動詞、狀態動詞、助動詞 -- [ ] **名詞類**: 可數名詞、不可數名詞、專有名詞 -- [ ] **形容詞類**: 描述性、評價性、比較級形容詞 -- [ ] **副詞類**: 時間、地點、方式、程度副詞 -- [ ] **連接詞**: 因果、對比、順序連接詞 -- [ ] **介系詞**: 時間、地點、方式介系詞 - -### 詞彙條目規格 - -#### 基本詞彙資訊 +#### 詞彙內容數據結構 ```json { - "vocabulary_id": "VOC_0001", - "word": "restaurant", - "phonetic": "/ˈrestərɑːnt/", - "part_of_speech": "noun", - "difficulty_level": "A2", - "frequency_rank": 1250, - "definition": "A place where people pay to sit and eat meals", - "chinese_translation": "餐廳", - "example_sentences": [...], - "collocations": [...], - "related_words": [...], - "usage_notes": "..." + "script_vocabulary": { + "script_id": "S001", + "script_name": "買菜小冒險", + "vocabulary_set": [ + { + "type": "word", + "english": "market", + "chinese": "市場", + "pronunciation": "/ˈmɑːrkɪt/", + "example_sentence": "I go to the market every Saturday.", + "example_translation": "我每個星期六都去市場。", + "image_url": "images/market.jpg", + "quiz_options": ["market", "garden", "school", "hospital"] + }, + { + "type": "phrase", + "english": "ask for a discount", + "chinese": "詢問折扣", + "example_sentence": "Can I ask for a discount on this?", + "example_translation": "我可以要求這個打折嗎?", + "context_usage": "用於購物砍價的情境" + }, + { + "type": "slang", + "english": "a steal", + "chinese": "超便宜的好東西", + "example_sentence": "This shirt is a steal at $10!", + "example_translation": "這件襯衫10美元真是超值!", + "cultural_note": "美式英語中表示價格很划算" + } + ] + } } ``` -#### 學習輔助資訊 -- [ ] **記憶提示**: 詞根分析、聯想記憶法 -- [ ] **易混淆詞**: 相似詞彙的辨析說明 -- [ ] **使用場景**: 適用的具體溝通場景 -- [ ] **語域標註**: 正式/非正式/口語/書面語標註 -- [ ] **文化背景**: 詞彙使用的文化背景說明 +#### 詞彙認識關卡管理 +- [ ] **詞彙展示內容**: + - 詞彙本身、中文意思、音標 + - 例句和中文翻譯 + - 相關示意圖或插圖 + - 詞彙類型標識(單字/片語/俚語) +- [ ] **選擇題設計**: + - 4選1的單選題形式 + - 根據示意圖選出正確英文詞彙 + - 選項設計避免過於明顯的錯誤答案 + - 錯誤答案在最後重新測試 -#### 多媒體資源 -- [ ] **發音音檔**: 標準發音示範錄音 -- [ ] **情境圖片**: 詞彙概念的視覺化圖片 -- [ ] **使用影片**: 實際使用情境的短影片 -- [ ] **手勢動作**: 相關的肢體語言或手勢說明 -- [ ] **文化圖像**: 體現文化背景的相關圖像 +#### 詞彙熟悉關卡管理 +- [ ] **例句重組內容**: + - 提供示意圖作為提示 + - 將完整例句拆分為單字選取區 + - 用戶需重新組合出正確句子 + - 支援拖拽或點擊操作 +- [ ] **詞彙配對內容**: + - 左側顯示示意圖 + - 右側顯示多個詞彙選項 + - 支援一對一配對操作 + - 全部配對正確才算完成 -### 間隔複習演算法 +### 間隔複習內容管理系統 +基於遺忘曲線的智慧複習機制: -#### 複習間隔計算 -```python -# SuperMemo 2 演算法改良版 -def calculate_next_review(quality_rating, repetition_count, previous_interval, ef_factor): - """ - quality_rating: 1-5 (用戶回答品質) - repetition_count: 複習次數 - previous_interval: 上次複習間隔(天) - ef_factor: 容易程度因子 (1.3-2.5) - """ - # 實際計算邏輯待實現 - pass +#### 複習數據結構 +```json +{ + "vocabulary_review": { + "user_id": "U001", + "vocabulary_id": "V001", + "first_learned_date": "2024-03-04", + "review_count": 2, + "next_review_date": "2024-03-10", + "last_review_result": "correct", + "retention_strength": 0.85, + "review_history": [ + { + "review_date": "2024-03-04", + "result": "correct", + "response_time": 3.2 + }, + { + "review_date": "2024-03-06", + "result": "correct", + "response_time": 2.8 + } + ] + } +} ``` -#### 掌握度評估指標 -- [ ] **即時評分** (0-5分): 當次複習的回答品質 -- [ ] **累積掌握度** (0-100%): 基於多次複習的綜合評估 -- [ ] **遺忘曲線預測**: 預測遺忘時間點 -- [ ] **複習緊急度**: 基於遺忘風險的複習優先級 -- [ ] **長期記憶轉化**: 評估是否已轉入長期記憶 +#### 複習排程算法 +- [ ] **間隔計算公式**: 下次複習時間 = 當前日期 + (2^複習次數)天 +- [ ] **複習觸發條件**: + - 詞彙認識、詞彙熟悉、對話訓練通關後自動加入 + - 避免重複加入相同詞彙 + - 當日即為第一次複習時間 +- [ ] **延遲複習處理**: + - 過期未複習的詞彙持續標記為待複習 + - 延遲複習時以實際複習日期重新計算間隔 + - 例如:應3/10複習但3/11才複習,下次時間為3/11+2³=3/19 -#### 個人化複習策略 -- [ ] **學習節奏適應**: 根據個人學習速度調整間隔 -- [ ] **弱項強化**: 對掌握度低的詞彙增加複習頻率 -- [ ] **關聯複習**: 相關詞彙組合複習提升效果 -- [ ] **情境複習**: 在相關對話情境中複習詞彙 -- [ ] **多感官複習**: 結合視覺、聽覺、觸覺的複習方式 +#### 複習進度管理 +- [ ] **中途離開保存**: + - 記錄當前複習位置和已完成題數 + - 保存答題結果和錯誤記錄 + - 給予已完成部分的經驗值 +- [ ] **複習完成機制**: + - 所有待複習詞彙都答對才算完成 + - 答錯題目複製到最後重新測試 + - 完成後給予完整經驗值獎勵 + - 更新複習次數和下次複習時間 -## 多語言支援策略 +## 情境對話內容管理系統 *(新增功能)* -### 支援語言規劃 +### 劇情任務管理系統 +基於最新規格的結構化任務內容管理: -#### 第一階段語言 (MVP版本) -- [ ] **英語** (主要目標語言) - - 美式英語為主,英式英語為輔 - - 涵蓋日常、商務、學術各領域 - - 支援多種口音和方言 +#### 任務定義架構 +- [ ] **任務層級管理**: + - 主要任務目標 (如:預約餐廳、購買商品) + - 子任務要素 (如:時間確認、數量說明、付款方式) + - 隱藏任務線索 (如:禮貌用語、文化適應性) +- [ ] **任務完成檢測**: + - 關鍵對話元素的識別規則 + - 任務邏輯性和完整性的驗證機制 + - 情節一致性的品質控制標準 +- [ ] **任務進度追蹤**: + - 即時完成狀態的更新機制 + - 部分完成vs完整達成的差異化記錄 + - 任務完成品質的評分系統 -#### 第二階段語言 (6個月後) -- [ ] **日語**: 考量台灣日語學習需求量大 -- [ ] **韓語**: 韓流文化帶動的學習需求 -- [ ] **西班牙語**: 全球第二大使用人口 +#### 任務內容品質標準 +- [ ] **情境真實性**: 確保任務反映真實生活場景 +- [ ] **難度適配性**: 根據用戶語言水平調整任務複雜度 +- [ ] **文化適應性**: 考量目標語言的文化背景和表達習慣 +- [ ] **學習目標性**: 每項任務都對應明確的語言學習目標 -#### 第三階段語言 (12個月後) -- [ ] **法語**: 歐洲商務和文化需求 -- [ ] **德語**: 工程和學術領域需求 -- [ ] **中文**: 針對外國人學中文的需求 +### 指定詞彙庫管理系統 +基於最新規格的智慧詞彙檢測和管理: -### 本地化內容策略 +#### 詞彙庫架構設計 +```json +{ + "vocab_entry": { + "primary_word": "reservation", + "word_forms": { + "noun": ["reservation", "reservations"], + "verb": ["reserve", "reserved", "reserving"], + "adjective": ["reserved"] + }, + "synonyms": ["booking", "appointment", "arrangement"], + "context_patterns": [ + "make a reservation", + "book a table", + "reserve a spot" + ], + "difficulty_level": "A2", + "usage_frequency": "high", + "cultural_notes": "常用於餐廳和飯店場景" + } +} +``` -#### 文化適應性內容 -- [ ] **節日慶典**: 各文化重要節日的對話場景 -- [ ] **社交禮儀**: 不同文化的禮貌用語和行為規範 -- [ ] **商務文化**: 各國商務溝通的文化差異 -- [ ] **飲食文化**: 各地美食和用餐文化的對話場景 -- [ ] **生活習俗**: 日常生活中的文化差異體現 +#### 詞彙檢測機制 +- [ ] **形式變化識別**: 支援詞彙的各種語法形式變化 +- [ ] **同義詞檢測**: 識別語意相近的替代詞彙 +- [ ] **語境相關性**: 確保詞彙使用符合對話情境 +- [ ] **自然度評估**: 評估詞彙使用的自然性和適切性 -#### 語言變體處理 -- [ ] **方言支援**: 主要方言和口音的識別和教學 -- [ ] **語域差異**: 正式/非正式語言使用的區別 -- [ ] **世代差異**: 不同年齡層的語言使用習慣 -- [ ] **專業用語**: 各行業專業術語的本地化 -- [ ] **網路語言**: 當代網路流行語和俚語 +#### 詞彙學習進度管理 +- [ ] **掌握度追蹤**: 記錄用戶對各詞彙的掌握程度 +- [ ] **使用品質分析**: 分析詞彙使用的準確性和自然度 +- [ ] **重複學習機制**: 基於遺忘曲線的詞彙複習排程 +- [ ] **情境應用記錄**: 追蹤詞彙在不同情境下的使用經驗 -### 翻譯品質控制 +### 300秒限時挑戰內容管理 *(新增功能)* +基於最新規格的限時挑戰內容設計: -#### 翻譯標準流程 -1. [ ] **專業翻譯**: 母語專家進行初譯 -2. [ ] **交叉審核**: 另一位專家進行審核 -3. [ ] **文化檢查**: 文化顧問檢查文化適切性 -4. [ ] **教學驗證**: 語言教師驗證教學適用性 -5. [ ] **用戶測試**: 目標用戶群測試使用體驗 +#### 限時挑戰內容架構 +- [ ] **快節奏對話設計**: 適合時間壓力下的對話節奏和內容複雜度 +- [ ] **即時反饋機制**: 時間緊迫情況下的簡潔有效反饋系統 +- [ ] **壓力測試內容**: 測試用戶在時間壓力下的語言表現能力 +- [ ] **效率優化提示**: 針對限時環境的對話策略和技巧指導 -#### 翻譯一致性維護 -- [ ] **術語庫管理**: 建立統一的專業術語翻譯 -- [ ] **風格指南**: 制定各語言的翻譯風格指南 -- [ ] **版本控制**: 追蹤所有翻譯版本和修改歷程 -- [ ] **同步更新**: 原文修改時所有語言版本同步更新 -- [ ] **品質監控**: 定期檢查翻譯品質和一致性 +#### 限時內容管理標準 +- [ ] **時間分配設計**: 確保300秒內可以完成有意義的對話練習 +- [ ] **難度平衡控制**: 避免時間壓力下的過度困難或過度簡單 +- [ ] **成就感設計**: 在限制時間內創造明確的成就感和進步感 +- [ ] **競技性內容**: 適合排行榜競爭的對話挑戰設計 -## 內容品質控制系統 +## 回覆卡關輔助內容管理 -### 內容審核流程 +### 引導內容結構設計 +基於手寫規格的三層輔助架構: -#### 創作階段審核 -1. [ ] **需求確認**: 確認內容符合教學需求 -2. [ ] **大綱審核**: 審核內容架構和學習目標 -3. [ ] **初稿創作**: 專業編劇和語言專家創作 -4. [ ] **專家審核**: 語言學習專家審核教學效果 -5. [ ] **母語審核**: 母語專家審核語言準確性 +#### 意圖分析內容庫 +- [ ] **情境意圖模板**: 預建不同情境下的常見對話意圖 +- [ ] **情感識別標籤**: 友好、正式、急迫、詢問等情感色彩分類 +- [ ] **文化背景考量**: 針對中文使用者的文化理解差異調整 +- [ ] **更新機制**: 基於用戶互動數據優化意圖識別準確度 -#### 測試階段驗證 -1. [ ] **內部測試**: 團隊內部試用和回饋 -2. [ ] **專家測試**: 外部語言專家測試評估 -3. [ ] **用戶測試**: 目標用戶群小規模測試 -4. [ ] **數據分析**: 分析測試數據和學習效果 -5. [ ] **迭代優化**: 基於測試結果優化內容 +#### 回應思維引導庫 +- [ ] **思考路徑模板**: 不同情境下的標準思考流程 +- [ ] **多元回應策略**: 積極、中性、詢問、說明等多種回應風格 +- [ ] **難度分級**: A1-C2不同等級的思維複雜度調整 +- [ ] **情境適配**: 根據對話場景提供相應的思維引導 -#### 上線後監控 -- [ ] **使用數據追蹤**: 監控內容使用率和完成率 -- [ ] **用戶回饋收集**: 收集用戶對內容的評價和建議 -- [ ] **學習效果分析**: 分析內容對學習成效的影響 -- [ ] **定期更新**: 基於數據和回饋定期更新內容 -- [ ] **版本控制**: 記錄所有內容變更和版本歷史 +#### 回覆範例內容庫 +- [ ] **分級範例庫**: 按語言水平提供適當複雜度的回覆範例 +- [ ] **風格多樣性**: 正式、非正式、友善、專業等不同風格選項 +- [ ] **情境相關性**: 確保範例符合具體對話情境和角色設定 +- [ ] **學習漸進性**: 從模仿到自主表達的學習路徑設計 -### 內容評分標準 +### 中翻英輔助功能管理 +基於Google翻譯整合的智慧翻譯系統: -#### 語言品質評分 (1-10分) -- [ ] **準確性** (25%): 語法和用詞準確性 -- [ ] **流暢性** (25%): 語言表達的自然流暢度 -- [ ] **適切性** (25%): 符合情境和語域要求 -- [ ] **豐富性** (25%): 語言表達的多樣性和豐富度 +#### 翻譯品質優化 +- [ ] **情境調整**: 根據對話場景調整翻譯的正式度和用詞選擇 +- [ ] **語言等級適配**: 將翻譯結果調整至使用者的目標語言水平 +- [ ] **文化適應**: 考量中英文化差異,提供更自然的表達方式 +- [ ] **學習引導**: 在翻譯結果中標註重要語法點和詞彙選擇 -#### 教學效果評分 (1-10分) -- [ ] **目標對應** (30%): 內容與學習目標的對應程度 -- [ ] **難度適中** (25%): 難度設計的合理性 -- [ ] **參與度** (25%): 內容的趣味性和參與度 -- [ ] **實用性** (20%): 實際應用價值 +#### 翻譯內容管理 +- [ ] **常用片語庫**: 預建中英對照的常用對話片語 +- [ ] **情境詞彙庫**: 不同場景下的專業詞彙中英對照 +- [ ] **語法模式庫**: 常見中文思維模式的英文表達建議 +- [ ] **錯誤修正庫**: 針對中文使用者常見的英文表達錯誤進行預防性修正 -#### 技術品質評分 (1-10分) -- [ ] **系統相容** (30%): 與系統功能的相容性 -- [ ] **載入效能** (25%): 內容載入速度和效能 -- [ ] **互動設計** (25%): 互動元素的設計品質 -- [ ] **錯誤率** (20%): 技術錯誤和bug數量 +## 對話內容管理 -### 持續改進機制 +### 簡化內容標準 +基於實際應用需求的精簡內容管理: -#### 內容效果分析 -- [ ] **學習成效追蹤**: 追蹤用戶學習成效變化 -- [ ] **完成率分析**: 分析不同內容的完成率差異 -- [ ] **重複使用率**: 分析內容的重複學習率 -- [ ] **推薦效果**: 分析推薦內容的接受度 -- [ ] **用戶留存影響**: 分析內容對用戶留存的影響 +#### 基本內容要求 +- [ ] **對話目標**: 每個場景有明確的溝通目標 +- [ ] **評分整合**: 內容配合三維度評分系統 (語法/語意/流暢度) +- [ ] **獎勵觸發**: 內容設計配合成就系統觸發機制 +- [ ] **成本設定**: 統一的鑽石消費標準 -#### 最佳化策略 -- [ ] **數據驅動優化**: 基於使用數據優化內容設計 -- [ ] **A/B測試**: 測試不同版本內容的效果差異 -- [ ] **用戶回饋整合**: 將用戶建議整合到內容改進中 -- [ ] **專家建議**: 定期邀請專家評估和建議改進 -- [ ] **技術創新**: 整合新技術提升內容品質和體驗 +#### 品質控制機制 +- [ ] **基本準確性**: 確保對話內容語言正確性 +- [ ] **適用性驗證**: 驗證內容符合學習目標 +- [ ] **測試驗證**: 確保評分系統正常運作 ---- +## 技術實現要點 -## 技術實現架構 +### 內容管理需求 +基於實際應用的簡化管理需求: -### 內容管理系統 (CMS) -- [ ] **創作工具**: 提供編劇和專家使用的內容創作工具 -- [ ] **審核流程**: 支援多階段審核流程的工作流系統 -- [ ] **版本控制**: 完整的內容版本管理和回溯功能 -- [ ] **多語言支援**: 支援多語言內容的統一管理 -- [ ] **權限管理**: 不同角色的內容存取和編輯權限 +#### 核心功能 *(更新)* +- [ ] **關卡內容**: 對話場景的基本內容管理 +- [ ] **劇情任務管理**: 結構化任務目標和完成檢測的內容架構 *(新增)* +- [ ] **指定詞彙庫**: 智慧詞彙檢測和形式變化識別的內容管理 *(新增)* +- [ ] **限時挑戰內容**: 300秒限時對話的專門內容設計和管理 *(新增)* +- [ ] **評分配置**: 配合 AI 評分系統的內容標註 +- [ ] **回覆輔助內容**: 意圖分析、思維引導、範例回覆的內容庫管理 +- [ ] **翻譯內容庫**: 中翻英輔助的詞彙和片語管理 +- [ ] **雙重獎勵設定**: 配合劇情任務和詞彙使用的複合獎勵機制 *(新增)* +- [ ] **消費設定**: 關卡鑽石消費、輔助道具和限時挑戰門票的統一管理 -### 內容發布系統 -- [ ] **內容打包**: 自動化內容打包和壓縮 -- [ ] **CDN部署**: 全球內容分發網路部署 -- [ ] **版本發布**: 支援段階式發布和回滾機制 -- [ ] **快取管理**: 智慧內容快取和更新策略 -- [ ] **效能監控**: 內容載入效能和使用情況監控 - -### 學習數據分析 -- [ ] **使用行為追蹤**: 詳細追蹤用戶學習行為 -- [ ] **效果評估**: 自動化學習效果評估和報告 -- [ ] **個人化推薦**: AI驅動的個人化內容推薦 -- [ ] **預測分析**: 預測學習趨勢和內容需求 -- [ ] **即時優化**: 基於即時數據調整內容策略 +#### 基本品質控制 +- [ ] **內容準確性**: 確保對話內容的語言正確性 +- [ ] **系統整合**: 確保與評分和獎勵系統的正確整合 +- [ ] **用戶測試**: 基本的用戶體驗驗證 --- ## 待完成任務 -### 高優先級 -1. [ ] 建立劇本創作的具體範本和指導原則 -2. [ ] 設計詞彙庫的資料結構和管理系統 -3. [ ] 實現間隔複習演算法的具體邏輯 -4. [ ] 建立內容品質控制的評估機制 +### 高優先級 *(更新)* +1. [ ] 建立劇情任務管理系統的結構化內容架構 *(新增)* +2. [ ] 建立指定詞彙庫的智慧檢測和形式變化管理 *(新增)* +3. [ ] 設計300秒限時挑戰的專門內容管理系統 *(新增)* +4. [ ] 建立雙重通關條件的複合獎勵內容配置 *(新增)* +5. [ ] 建立基本的對話場景內容 +6. [ ] 建立回覆輔助的三層內容庫(意圖分析、思維引導、範例回覆) +7. [ ] 配置關卡鑽石消費系統和回覆提示道具管理 +8. [ ] 整合Google翻譯API和中翻英輔助內容庫 +9. [ ] 整合 AI 評分與成就獎勵機制 +10. [ ] 設定關卡解鎖條件 ### 中優先級 -1. [ ] 設計內容管理系統的使用者介面 -2. [ ] 建立多語言內容的同步管理機制 -3. [ ] 規劃內容創作團隊的工作流程 -4. [ ] 設計用戶回饋的收集和分析系統 +1. [ ] 建立回覆輔助內容的品質測試流程 +2. [ ] 優化翻譯結果的情境適應性 +3. [ ] 建立內容品質測試流程 +4. [ ] 驗證系統整合的正確性 -### 低優先級 -1. [ ] 研究AI輔助內容創作的可行性 -2. [ ] 探索虛擬實境內容的創作可能性 -3. [ ] 建立與外部內容供應商的合作機制 -4. [ ] 設計內容智慧財產權保護方案 +### 新增功能優先級 +1. [ ] 設計輔助內容的動態更新機制 +2. [ ] 建立用戶使用輔助功能的學習效果追蹤 +3. [ ] 優化多語言文化差異的內容適配 +4. [ ] 建立輔助功能使用數據的分析機制 --- **最後更新**: 2024年9月5日 **負責人**: 待分配 -**審查週期**: 每兩週檢討一次 \ No newline at end of file +**審查週期**: 每兩週檢討一次 diff --git a/docs/02_design/gamification-mechanics.md b/docs/02_design/gamification-mechanics.md index d49df2f..450fb71 100644 --- a/docs/02_design/gamification-mechanics.md +++ b/docs/02_design/gamification-mechanics.md @@ -6,46 +6,133 @@ ## 排行榜競爭機制 ### 排行榜類型 -- [ ] **全球排行榜**: 所有用戶的總體排名 -- [ ] **週排行榜**: 每週重置的短期競爭 -- [ ] **月排行榜**: 月度學習成就排名 -- [ ] **好友排行榜**: 僅顯示好友間的排名比較 -- [ ] **等級分組排行榜**: 依語言程度分組競爭 -- [ ] **地區排行榜**: 基於地理位置的本地競爭 +基於 UI_SocialRanking_Main.png 的實際設計,採用簡化的好友排行榜系統: -### 積分計算規則 -#### 基礎積分來源 (總分 = 基礎分 × 難度係數 × 連擊加成) +- [ ] **好友排行榜**: 主要排行榜功能,顯示好友間的閃電能量比較 +- [ ] **排名顯示**: 1-7名好友排列,每位顯示頭像、姓名和閃電總數 +- [ ] **個人突顯**: 第4名使用紫色背景突顯當前用戶位置 -**對話練習積分** -- [ ] **完成對話**: 10分/次 -- [ ] **使用目標詞彙**: +5分/個詞彙 -- [ ] **達成任務目標**: +15分/任務 -- [ ] **流暢完成對話**: +10分 (無需AI提示) +### 成就獎勵系統 +基於 UI_LevelResult_ScoreSummary.png 的實際設計,採用簡化的三項成就機制: -**評分積分轉換** -- [ ] **語法評分**: 0.3 × 語法分數 -- [ ] **語意評分**: 0.3 × 語意分數 -- [ ] **流暢度評分**: 0.4 × 流暢度分數 -- [ ] **綜合優秀**: 三維度均 > 85分時 +50分獎勵 +#### 核心成就系統 *(更新)* +- [ ] **過關獎勵** (通關寶箱) + - 完成對話場景即可獲得 + - 獎勵: +10 鑽石 + 10 閃電能量 + +- [ ] **完美語法** + - 語法評分達到優秀標準 + - 獎勵: +10 鑽石 + 10 閃電能量 + +- [ ] **表達流利** + - 流暢度評分達到優秀標準 + - 獎勵: +10 鑽石 + 10 閃電能量 -**特殊活動積分** -- [ ] **限時挑戰完成**: 基礎分 × 1.5倍 -- [ ] **首次嘗試新場景**: +25分 -- [ ] **連續學習天數**: +5分/天 (上限 +100分) -- [ ] **幫助其他用戶**: +20分 (回答問題、分享經驗) +#### 雙重通關條件成就 *(新增核心功能)* +- [ ] **劇情大師** + - 成功完成劇情任務且表現優秀 + - 觸發條件: 完成所有劇情任務要素且邏輯連貫 + - 獎勵: +15 鑽石 + 15 閃電能量 + 劇情成就徽章 + +- [ ] **詞彙專家** + - 正確且自然地使用所有指定詞彙 + - 觸發條件: 使用指定詞彙且符合語境和自然度要求 + - 獎勵: +12 鑽石 + 12 閃電能量 + 詞彙成就徽章 + +- [ ] **完美對話** + - 同時滿足劇情任務和指定詞彙雙重條件 + - 觸發條件: 劇情任務完成 + 詞彙正確使用 + 整體評分≥90 + - 獎勵: +25 鑽石 + 25 閃電能量 + 雙重成就特殊徽章 + 1個回覆提示道具 -#### 難度係數設定 -- [ ] **初級場景 (A1-A2)**: 1.0倍 -- [ ] **中級場景 (B1-B2)**: 1.3倍 -- [ ] **高級場景 (C1-C2)**: 1.6倍 -- [ ] **專業場景 (商務、醫療等)**: 1.8倍 -- [ ] **即興對話場景**: 2.0倍 +#### 輔助功能成就 *(新增功能)* +- [ ] **智慧學習者** + - 首次使用回覆輔助功能並成功完成對話 + - 觸發條件: 使用回覆提示道具完成對話 + - 獎勵: +5 鑽石 + 2個回覆提示道具 -#### 連擊加成機制 -- [ ] **連續成功對話**: 2-5次 (+10%), 6-10次 (+20%), 11+次 (+30%) -- [ ] **每日連擊**: 連續天數 × 2% 加成 (上限 +60%) -- [ ] **完美表現**: 當日所有對話評分 > 90分時 +50% 加成 -- [ ] **挑戰連擊**: 連續完成限時挑戰 +25% 加成/次 +- [ ] **獨立進步** + - 在同一場景中,先使用輔助後能獨立完成類似對話 + - 觸發條件: 同場景使用輔助後,下次對話無需輔助且分數≥85 + - 獎勵: +15 鑽石 + 15 閃電能量 + +- [ ] **翻譯達人** + - 累計使用中翻英功能50次 + - 觸發條件: 中翻英功能使用次數達標 + - 獎勵: +20 鑽石 + 5個回覆提示道具 + +#### 獎勵貨幣系統 +- [ ] **鑽石** (💎): 主要遊戲貨幣,用於購買道具和解鎖內容 +- [ ] **閃電能量** (⚡): 用於加時、提示等輔助功能 +- [ ] **回覆提示道具** (💡): 專用於回覆卡關輔助功能 *(新增)* +- [ ] **限時挑戰門票** (🎫): 專用於300秒限時挑戰入場 *(新增)* +- [ ] **時間道具** (⏰): 時間暫停和加成道具 *(新增)* +- [ ] **統一獎勵**: 核心成就固定 +10/+10 獎勵,雙重通關和限時成就有特殊獎勵 *(更新)* + +### 關卡進度系統 *(新增基於最新規格)* +基於13階段學習架構的完整進度管理: + +#### 階段化進度機制 +- [ ] **學習路徑**: 第x階段 → 第x劇本 → 詞彙認識 → 詞彙熟悉 → 對話訓練 +- [ ] **總體架構**: 13個學習階段,每階段20+劇本 +- [ ] **順序解鎖**: 必須按照順序完成,不可跳關 +- [ ] **通關標準**: 成功完成即解鎖下一關(即使0星) + +#### 命條生命系統 +- [ ] **命條機制**: 新用戶預設5命條,上限5條 +- [ ] **命條消耗**: + - 詞彙認識答錯 -1命條 + - 詞彙熟悉答錯 -1命條 + - 對話訓練失敗 -1命條 +- [ ] **命條回復**: 每5小時自動回復1命條 +- [ ] **命條購買**: 1命條=100鑽石,5命條=400鑽石 + +#### 連續學習獎勵系統 +- [ ] **天數追蹤**: 記錄用戶連續學習天數 +- [ ] **學習判定**: 當日完成至少1個關卡即計為學習 +- [ ] **階段性獎勵**: + - 7天連續: +100經驗值 + 特殊徽章 + - 14天連續: +200經驗值 + 2命條補充 + - 30天連續: +500經驗值 + 特殊成就徽章 + 100鑽石 + +### 詞彙學習成就系統 *(新增功能)* +基於詞彙學習關卡的專屬成就: + +#### 詞彙掌握成就 +- [ ] **詞彙新手** + - 完成第一個詞彙認識關卡 + - 獎勵: +50經驗值 + 詞彙學習徽章 + +- [ ] **詞彙達人** + - 累計完成50個詞彙熟悉關卡 + - 獎勵: +200經驗值 + 詞彙達人徽章 + 50鑽石 + +- [ ] **複習專家** + - 連續30天完成詞彙複習 + - 獎勵: +300經驗值 + 複習專家徽章 + 100鑽石 + +#### 關卡完成成就 +- [ ] **三星收集者** + - 在單一劇本中獲得全部三顆星(詞彙認識+詞彙熟悉+對話訓練) + - 獎勵: +100經驗值 + 完美劇本徽章 + +- [ ] **階段征服者** + - 完成整個學習階段的所有劇本 + - 獎勵: +500經驗值 + 階段征服徽章 + 200鑽石 + +### 時光關卡系統 *(新增機制)* +基於時光卷的特殊關卡挑戰: + +#### 時光關卡機制 +- [ ] **關卡選擇**: 依序挑選前階段未玩過的對話訓練關卡 +- [ ] **隨機機制**: 若前階段都已完成則隨機挑選關卡 +- [ ] **消費機制**: 點擊「我要挑戰」消耗1張時光卷 +- [ ] **獎勵機制**: 成功通關的詞彙加入複習清單,獲得正常獎勵 + +#### 時光卷獲得途徑 +- [ ] **失敗安慰**: 各類關卡失敗時獲得1張時光卷 +- [ ] **每日獎勵**: 連續學習獎勵中包含時光卷 +- [ ] **成就獎勵**: 特定成就達成時獲得時光卷 +- [ ] **購買機制**: 可使用鑽石購買時光卷(待定價格) ### 排行榜更新機制 - [ ] **即時更新**: 積分變化立即反映 @@ -55,57 +142,73 @@ ## 成就系統設計 -### 成就分類 +基於實際 UI 設計,採用簡化的即時成就系統: -#### 學習里程碑類 -- [ ] **初學者**: 完成首次對話 -- [ ] **勤奮學習者**: 連續學習 7/30/100 天 -- [ ] **場景探索家**: 完成 5/15/50 個不同場景 -- [ ] **詞彙大師**: 掌握 100/500/2000 個詞彙 -- [ ] **對話達人**: 完成 50/200/1000 次對話練習 -- [ ] **完美主義者**: 獲得 10/50/200 次滿分評價 +### 核心成就機制 +- [ ] **過關獎勵**: 完成任何對話場景獲得寶箱獎勵 +- [ ] **完美語法**: 語法表現優秀時獲得額外獎勵 +- [ ] **表達流利**: 流暢度表現優秀時獲得額外獎勵 +- [ ] **輔助功能成就** *(新增)*: 智慧使用回覆輔助功能的學習進步獎勵 -#### 技能提升類 -- [ ] **語法專家**: 語法評分達到 90+ 分 10/50/200 次 -- [ ] **語意高手**: 語意評分達到 90+ 分 10/50/200 次 -- [ ] **流暢達人**: 流暢度評分達到 90+ 分 10/50/200 次 -- [ ] **全能選手**: 三維度同時達到 85+ 分 5/20/100 次 -- [ ] **快速反應**: 限時挑戰中 10/50/200 次快速完成 +## 300秒限時挑戰系統 *(新增核心功能)* -#### 社交互動類 -- [ ] **樂於助人**: 幫助其他用戶 10/50/200 次 -- [ ] **人氣王**: 獲得 50/200/1000 個好友讚賞 -- [ ] **分享達人**: 分享學習成果 20/100/500 次 -- [ ] **導師**: 指導新用戶學習 5/20/100 次 -- [ ] **社群領袖**: 在討論區發表優質內容 30/150/500 次 +### 限時挑戰機制設計 +基於最新規格的競技式學習系統: -#### 挑戰征服類 -- [ ] **勇敢嘗試**: 嘗試高難度場景 5/20/100 次 -- [ ] **速度之王**: 在時限內完成對話 20/100/500 次 -- [ ] **堅持不懈**: 從失敗中重新挑戰 10/50/200 次 -- [ ] **創新思維**: 使用創意表達方式 15/75/300 次 -- [ ] **極限挑戰**: 完成最高難度場景 1/5/20 次 +#### 倒數計時系統 +- [ ] **精準計時**: 300秒(5分鐘)的精確倒數顯示 +- [ ] **視覺化時間**: 動態進度條和數字倒數的雙重顯示 +- [ ] **時間警告**: 剩餘60秒和30秒時的視覺和音效提醒 +- [ ] **自動結算**: 時間歸零時自動觸發結算流程 -#### 特殊節日類 -- [ ] **新年決心**: 新年期間連續學習 7 天 -- [ ] **情人節浪漫**: 完成浪漫場景對話 10 次 -- [ ] **萬聖節驚奇**: 完成恐怖/驚悚場景 5 次 -- [ ] **聖誕精神**: 12月完成 25 次學習任務 -- [ ] **生日慶祝**: 生日當天完成特殊挑戰 +#### 限時挑戰獎勵機制 +- [ ] **時間效率獎勵**: + - 180秒內完成: 1.5x 基礎獎勵倍數 + - 120秒內完成: 2.0x 基礎獎勵倍數 + - 60秒內完成: 2.5x 基礎獎勵倍數 +- [ ] **雙重條件加成**: 限時環境下達成雙重通關額外 +50 鑽石 +- [ ] **壓力挑戰獎勵**: 最後30秒內完成額外 +25 鑽石壓力獎勵 +- [ ] **完美限時成就**: 限時內達成完美對話獲得特殊限時徽章 -### 成就獎勵機制 -- [ ] **徽章收藏**: 每個成就對應獨特徽章設計 -- [ ] **積分獎勵**: 不同等級成就給予 50/200/500 積分獎勵 -- [ ] **稱號系統**: 解鎖專屬稱號在排行榜顯示 -- [ ] **內容解鎖**: 解鎖新場景、新功能或專屬內容 -- [ ] **實體獎勵**: 高級成就獲得實體紀念品 (限量版) +#### 限時挑戰排行榜 +- [ ] **每日排行榜**: 每日限時挑戰最佳成績排名 +- [ ] **每週冠軍賽**: 週末特殊限時挑戰競賽 +- [ ] **好友競技**: 好友間的限時挑戰比較和挑戰 +- [ ] **全球排名**: 全體用戶的限時挑戰成績排行 -### 成就進度追蹤 -- [ ] **視覺化進度條**: 清楚顯示完成進度 -- [ ] **階段性提醒**: 接近完成時的推送通知 -- [ ] **成就預告**: 即將解鎖的成就提示 -- [ ] **統計面板**: 個人成就完成統計概覽 -- [ ] **好友比較**: 與好友的成就完成度比較 +### 限時挑戰成就系統 +基於時間壓力下的特殊成就機制: + +#### 時間相關成就 +- [ ] **閃電戰士** + - 首次在180秒內完成限時挑戰 + - 獎勵: +30 鑽石 + 30 閃電能量 + 速度徽章 + +- [ ] **時間大師** + - 累計完成10次限時挑戰且平均時間<4分鐘 + - 獎勵: +50 鑽石 + 50 閃電能量 + 時間掌控徽章 + +- [ ] **壓力之王** + - 在最後30秒內完成5次限時挑戰 + - 獎勵: +75 鑽石 + 75 閃電能量 + 壓力專家徽章 + +#### 限時雙重通關成就 +- [ ] **限時劇情大師** + - 在限時挑戰中完成劇情任務且時間<4分鐘 + - 獎勵: +40 鑽石 + 40 閃電能量 + 限時劇情徽章 + +- [ ] **限時詞彙專家** + - 在限時挑戰中正確使用所有指定詞彙且時間<3分鐘 + - 獎勵: +35 鑽石 + 35 閃電能量 + 限時詞彙徽章 + +- [ ] **限時完美對話** + - 在限時挑戰中達成雙重通關且時間<2.5分鐘 + - 獎勵: +100 鑽石 + 100 閃電能量 + 限時完美徽章 + 3個回覆提示道具 + +### 獎勵統一標準 +- [ ] **統一獎勵**: 每項成就固定給予 +10 鑽石 + 10 閃電能量 +- [ ] **即時反饋**: 完成對話後立即顯示獲得的成就 +- [ ] **視覺化展示**: 使用寶箱和貨幣圖示清楚顯示獎勵 ## 闖關系統設計 @@ -170,49 +273,23 @@ ## 進度追蹤系統 -### 個人進度面板 -- [ ] **整體進度**: 所有關卡完成百分比 -- [ ] **各章節進度**: 每章節詳細完成情況 -- [ ] **技能雷達圖**: 語法/語意/流暢度能力視覺化 -- [ ] **學習軌跡**: 每日/週/月學習時間和強度變化 -- [ ] **成長曲線**: 長期能力提升趨勢圖 +### 簡化追蹤機制 +基於實際 UI 設計的簡化追蹤系統: -### 統計資訊 -- [ ] **累計學習時間**: 總學習時長統計 -- [ ] **對話完成數**: 累計完成對話次數 -- [ ] **詞彙掌握量**: 已學習和熟練掌握詞彙統計 -- [ ] **場景體驗數**: 體驗過的不同情境場景統計 -- [ ] **AI互動次數**: 與AI分析系統的互動統計 - -### 學習建議 -- [ ] **弱項分析**: 基於表現數據識別學習弱點 -- [ ] **推薦關卡**: 個性化推薦適合的下一個關卡 -- [ ] **學習計劃**: AI生成的個人化學習進度安排 -- [ ] **複習提醒**: 基於遺忘曲線的複習內容建議 -- [ ] **目標設定**: 協助用戶設定並追蹤學習目標 +- [ ] **闖關進度**: 完成的對話場景數量統計 +- [ ] **貨幣累積**: 鑽石和閃電能量的當前持有量 +- [ ] **好友排名**: 在好友圈中的閃電能量排名 +- [ ] **成就記錄**: 獲得過關獎勵、完美語法、表達流利的次數統計 ## 社交競爭機制 -### 好友系統 -- [ ] **好友邀請**: 通過ID、QR碼、聯絡人邀請好友 -- [ ] **好友動態**: 查看好友的學習進度和成就 -- [ ] **互相鼓勵**: 為好友的成就點讚和留言 -- [ ] **學習PK**: 與好友進行一對一學習競賽 -- [ ] **組隊學習**: 多人協作完成團體挑戰 +### 好友排行榜系統 +基於 UI_SocialRanking_Main.png 的簡化社交功能: -### 學習群組 -- [ ] **主題群組**: 按學習主題或程度分組 -- [ ] **地區群組**: 同地區學習者交流群組 -- [ ] **學習夥伴**: 匹配相似程度的學習夥伴 -- [ ] **導師制度**: 高級用戶指導初學者 -- [ ] **學習俱樂部**: 定期舉辦線上/線下學習活動 - -### 競賽活動 -- [ ] **週賽**: 每週主題競賽活動 -- [ ] **月度錦標賽**: 月度大型競賽活動 -- [ ] **季度總決賽**: 季度最高榮譽競賽 -- [ ] **特殊賽事**: 節日或紀念日特別賽事 -- [ ] **團體戰**: 群組間的團體競賽活動 +- [ ] **好友邀請**: 基本的好友添加功能 +- [ ] **排行榜比較**: 顯示好友間的閃電能量排名(1-7名) +- [ ] **個人位置突顯**: 使用紫色背景標示當前用戶排名 +- [ ] **簡潔展示**: 每位好友顯示頭像、姓名和總閃電數 --- @@ -243,17 +320,25 @@ ## 待完成任務 -### 高優先級 -1. [ ] 確定積分計算的具體數值和平衡性 -2. [ ] 設計成就系統的徽章視覺設計 -3. [ ] 規劃關卡內容的具體場景劇本 -4. [ ] 建立防作弊機制的技術方案 +### 高優先級 *(更新)* +1. [ ] 實現雙重通關條件的成就系統和獎勵機制 *(新增)* +2. [ ] 建立300秒限時挑戰的完整競技系統 *(新增)* +3. [ ] 設計限時挑戰排行榜和時間相關成就 *(新增)* +4. [ ] 建立雙重條件在限時環境下的特殊獎勵機制 *(新增)* +5. [ ] 確定積分計算的具體數值和平衡性 +6. [ ] 設計成就系統的徽章視覺設計 +7. [ ] 實現回覆輔助功能的三項新成就系統 *(新增)* +8. [ ] 規劃關卡內容的具體場景劇本 +9. [ ] 建立防作弊機制的技術方案 +10. [ ] 設計回覆提示道具的獎勵平衡機制 *(新增)* ### 中優先級 1. [ ] 設計社交功能的互動介面 -2. [ ] 規劃競賽活動的舉辦週期和規則 -3. [ ] 建立學習數據的分析和建議算法 -4. [ ] 設計個性化推薦系統 +2. [ ] 建立輔助功能使用數據的分析追蹤 *(新增)* +3. [ ] 優化輔助功能成就的觸發時機和用戶體驗 *(新增)* +4. [ ] 規劃競賽活動的舉辦週期和規則 +5. [ ] 建立學習數據的分析和建議算法 +6. [ ] 設計個性化推薦系統 ### 低優先級 1. [ ] 研究遊戲化的心理學原理應用 diff --git a/docs/02_design/ui-ux-guidelines.md b/docs/02_design/ui-ux-guidelines.md index dbc943d..e5731b9 100644 --- a/docs/02_design/ui-ux-guidelines.md +++ b/docs/02_design/ui-ux-guidelines.md @@ -18,6 +18,17 @@ - [ ] **即時回饋**: 提供即時的視覺和互動回饋 - [ ] **個人化體驗**: 基於用戶偏好和程度調整介面 - [ ] **無障礙設計**: 確保不同能力用戶都能順利使用 +- [ ] **智慧輔助** *(新增)*: 在適當時機提供非侵入性的學習輔助 +- [ ] **漸進引導** *(新增)*: 從輔助學習逐步過渡到獨立表達 +- [ ] **雙重任務可視化** *(新增)*: 清晰展示劇情任務和詞彙要求的完成狀態 +- [ ] **時間壓力管理** *(新增)*: 300秒限時挑戰的直觀計時和警告系統 +- [ ] **即時成就反饋** *(新增)*: 任務完成和詞彙使用的立即慶祝動畫 +- [ ] **開場對話體驗** *(新增)*: 4-8句開場對話的漸進顯示效果 +- [ ] **語音優先設計** *(新增)*: 以語音輸入為主、文字輸入為輔的交互設計 +- [ ] **即時語法反饋** *(新增)*: 每句話的語法正確性即時顯示於對話功能欄 +- [ ] **詞彙學習流程** *(新增)*: 詞彙展示→選擇題→例句重組→配對練習的漸進式學習 +- [ ] **命條生命系統** *(新增)*: 直觀的生命值顯示和消耗反饋 +- [ ] **間隔複習提醒** *(新增)*: 智慧提醒用戶進行詞彙複習的時機 ## 視覺設計系統 @@ -215,6 +226,43 @@ - [ ] **小型按鈕**: 32px高度,次要操作按鈕 - [ ] **迷你按鈕**: 24px高度,標籤或圖示按鈕 +#### 回覆輔助按鈕 *(新增功能)* +```css +.btn-reply-help { + background: linear-gradient(135deg, var(--accent-violet), var(--accent-violet-dark)); + color: white; + padding: 12px 20px; + border-radius: var(--radius-full); + font-weight: 600; + font-size: var(--font-sm); + border: none; + cursor: pointer; + transition: all 0.3s ease; + display: flex; + align-items: center; + gap: var(--space-2); + box-shadow: 0 4px 12px rgba(155, 89, 182, 0.3); +} + +.btn-reply-help::before { + content: '💡'; + font-size: 1.1em; +} + +.btn-reply-help:hover { + background: linear-gradient(135deg, var(--accent-violet-light), var(--accent-violet)); + transform: translateY(-2px); + box-shadow: 0 6px 20px rgba(155, 89, 182, 0.4); +} + +.btn-reply-help:disabled { + background: var(--text-tertiary); + cursor: not-allowed; + transform: none; + box-shadow: none; +} +``` + ### 輸入框組件 #### 文字輸入框設計 @@ -326,6 +374,388 @@ ## 互動設計規範 +### 情境對話介面設計 *(新增核心功能)* + +#### 雙重任務顯示系統 +基於最新規格的任務狀態可視化設計: + +##### 劇情任務顯示區域 +```css +.plot-task-display { + background: linear-gradient(135deg, var(--secondary-purple-light), var(--secondary-purple)); + padding: var(--space-4); + border-radius: var(--radius-lg); + margin-bottom: var(--space-4); + box-shadow: var(--shadow-md); + position: relative; +} + +.plot-task-title { + font-size: var(--text-lg); + font-weight: 700; + color: white; + margin-bottom: var(--space-2); + display: flex; + align-items: center; + gap: var(--space-2); +} + +.plot-task-title::before { + content: '🎭'; + font-size: 1.2em; +} + +.plot-task-progress { + display: flex; + flex-direction: column; + gap: var(--space-2); +} + +.plot-task-item { + display: flex; + align-items: center; + justify-content: space-between; + padding: var(--space-2); + background: rgba(255, 255, 255, 0.1); + border-radius: var(--radius-md); + color: white; + font-size: var(--text-sm); +} + +.plot-task-item.completed { + background: rgba(76, 175, 80, 0.3); + color: white; +} + +.plot-task-item.completed::after { + content: '✅'; + font-size: 1.1em; +} +``` + +##### 指定詞彙顯示區域 +```css +.vocabulary-display { + background: linear-gradient(135deg, var(--accent-violet-light), var(--accent-violet)); + padding: var(--space-4); + border-radius: var(--radius-lg); + margin-bottom: var(--space-4); + box-shadow: var(--shadow-md); +} + +.vocabulary-title { + font-size: var(--text-lg); + font-weight: 700; + color: white; + margin-bottom: var(--space-3); + display: flex; + align-items: center; + gap: var(--space-2); +} + +.vocabulary-title::before { + content: '📝'; + font-size: 1.2em; +} + +.vocabulary-list { + display: flex; + flex-wrap: wrap; + gap: var(--space-2); +} + +.vocabulary-item { + background: rgba(255, 255, 255, 0.2); + padding: var(--space-2) var(--space-3); + border-radius: var(--radius-full); + color: white; + font-size: var(--text-sm); + font-weight: 600; + border: 2px solid transparent; + transition: all 0.3s ease; +} + +.vocabulary-item.used { + background: rgba(76, 175, 80, 0.8); + border-color: #4CAF50; + animation: vocabularyUsed 0.6s ease; +} + +@keyframes vocabularyUsed { + 0% { transform: scale(1); } + 50% { transform: scale(1.15); } + 100% { transform: scale(1); } +} +``` + +##### 300秒倒數計時器設計 +```css +.countdown-timer { + position: fixed; + top: var(--space-4); + right: var(--space-4); + background: linear-gradient(135deg, #FF6B6B, #FF5722); + color: white; + padding: var(--space-3); + border-radius: var(--radius-xl); + box-shadow: var(--shadow-xl); + z-index: 1000; + min-width: 120px; + text-align: center; +} + +.countdown-time { + font-size: var(--text-2xl); + font-weight: 900; + font-family: 'JetBrains Mono', monospace; + margin-bottom: var(--space-1); +} + +.countdown-progress { + width: 100%; + height: 4px; + background: rgba(255, 255, 255, 0.3); + border-radius: var(--radius-full); + overflow: hidden; +} + +.countdown-progress-bar { + height: 100%; + background: white; + border-radius: var(--radius-full); + transition: width 1s linear; +} + +.countdown-timer.warning { + background: linear-gradient(135deg, #FF9800, #FF5722); + animation: pulse 1s infinite; +} + +.countdown-timer.critical { + background: linear-gradient(135deg, #F44336, #D32F2F); + animation: urgentPulse 0.5s infinite; +} + +@keyframes pulse { + 0%, 100% { transform: scale(1); } + 50% { transform: scale(1.05); } +} + +@keyframes urgentPulse { + 0%, 100% { transform: scale(1) rotate(0deg); } + 25% { transform: scale(1.1) rotate(1deg); } + 75% { transform: scale(1.1) rotate(-1deg); } +} +``` + +#### 即時反饋通知系統 +基於最新規格的成功通知和獎勵顯示: + +##### 任務完成通知設計 +```css +.achievement-notification { + position: fixed; + top: 50%; + left: 50%; + transform: translate(-50%, -50%); + background: linear-gradient(135deg, #4CAF50, #2E7D32); + color: white; + padding: var(--space-6); + border-radius: var(--radius-xl); + box-shadow: 0 20px 40px rgba(76, 175, 80, 0.4); + z-index: 2000; + text-align: center; + min-width: 280px; + animation: achievementPop 1s cubic-bezier(0.68, -0.55, 0.265, 1.55) forwards; +} + +@keyframes achievementPop { + 0% { + transform: translate(-50%, -50%) scale(0) rotate(-180deg); + opacity: 0; + } + 60% { + transform: translate(-50%, -50%) scale(1.1) rotate(10deg); + opacity: 1; + } + 100% { + transform: translate(-50%, -50%) scale(1) rotate(0deg); + opacity: 1; + } +} + +.achievement-icon { + font-size: 3rem; + margin-bottom: var(--space-3); + animation: celebrateIcon 0.8s ease-in-out infinite alternate; +} + +.achievement-title { + font-size: var(--text-xl); + font-weight: 800; + margin-bottom: var(--space-2); +} + +.achievement-description { + font-size: var(--text-base); + opacity: 0.9; + margin-bottom: var(--space-4); +} + +.achievement-rewards { + display: flex; + justify-content: center; + gap: var(--space-4); + margin-top: var(--space-3); +} + +.achievement-reward { + display: flex; + align-items: center; + gap: var(--space-1); + background: rgba(255, 255, 255, 0.2); + padding: var(--space-2) var(--space-3); + border-radius: var(--radius-full); + font-weight: 600; +} + +@keyframes celebrateIcon { + 0% { transform: scale(1) rotate(-5deg); } + 100% { transform: scale(1.1) rotate(5deg); } +} +``` + +##### 詞彙使用成功反饋 +```css +.vocabulary-success-feedback { + position: absolute; + background: linear-gradient(135deg, #9C27B0, #673AB7); + color: white; + padding: var(--space-2) var(--space-4); + border-radius: var(--radius-full); + font-size: var(--text-sm); + font-weight: 600; + box-shadow: var(--shadow-md); + animation: vocabularyFeedback 2s ease forwards; + pointer-events: none; + z-index: 1500; +} + +@keyframes vocabularyFeedback { + 0% { + transform: translateY(0) scale(0); + opacity: 0; + } + 20% { + transform: translateY(-20px) scale(1.1); + opacity: 1; + } + 80% { + transform: translateY(-40px) scale(1); + opacity: 1; + } + 100% { + transform: translateY(-60px) scale(0.8); + opacity: 0; + } +} + +.vocabulary-success-feedback::before { + content: '✨'; + margin-right: var(--space-1); +} +``` + +#### 回覆輔助介面整合 +基於三層輔助架構的介面設計規範: + +##### 輔助功能選擇界面 +```css +.reply-assistance-panel { + background: rgba(0, 0, 0, 0.9); + position: fixed; + bottom: 0; + left: 0; + right: 0; + padding: var(--space-6); + border-top-left-radius: var(--radius-2xl); + border-top-right-radius: var(--radius-2xl); + z-index: 1800; + animation: slideUpPanel 0.4s ease; +} + +@keyframes slideUpPanel { + from { + transform: translateY(100%); + opacity: 0; + } + to { + transform: translateY(0); + opacity: 1; + } +} + +.assistance-options { + display: grid; + grid-template-columns: repeat(auto-fit, minmax(250px, 1fr)); + gap: var(--space-4); + margin-bottom: var(--space-6); +} + +.assistance-option { + background: linear-gradient(135deg, var(--accent-violet), var(--accent-violet-dark)); + padding: var(--space-4); + border-radius: var(--radius-lg); + color: white; + text-decoration: none; + transition: all 0.3s ease; + border: 2px solid transparent; +} + +.assistance-option:hover { + transform: translateY(-4px); + box-shadow: 0 8px 25px rgba(155, 89, 182, 0.4); + border-color: var(--accent-violet-light); +} + +.assistance-option-title { + font-size: var(--text-lg); + font-weight: 700; + margin-bottom: var(--space-2); + display: flex; + align-items: center; + gap: var(--space-2); +} + +.assistance-option-description { + font-size: var(--text-sm); + opacity: 0.9; + margin-bottom: var(--space-3); +} + +.assistance-cost { + display: flex; + align-items: center; + gap: var(--space-1); + background: rgba(255, 255, 255, 0.2); + padding: var(--space-1) var(--space-2); + border-radius: var(--radius-full); + font-size: var(--text-xs); + font-weight: 600; + width: fit-content; +} + +.free-assistance { + background: rgba(76, 175, 80, 0.3); + border-color: #4CAF50; +} + +.free-assistance .assistance-cost { + background: rgba(76, 175, 80, 0.8); + color: white; +} +``` + ### 動畫效果 #### 頁面轉場動畫 @@ -637,6 +1067,104 @@ } ``` +### 回覆卡關輔助介面設計 *(新增功能)* + +#### 輔助面板樣式 +```css +.reply-assistance-panel { + background: linear-gradient(145deg, #ffffff 0%, #f8f9ff 100%); + border-radius: var(--radius-2xl); + padding: var(--space-6); + margin: var(--space-4) 0; + border: 2px solid var(--primary-teal); + box-shadow: 0 8px 32px rgba(0, 229, 204, 0.15); + animation: slideInUp 0.4s ease-out; +} + +.assistance-section { + margin-bottom: var(--space-5); + padding: var(--space-4); + border-radius: var(--radius-lg); + background: rgba(255, 255, 255, 0.8); + border-left: 4px solid var(--accent-violet); +} + +.assistance-title { + display: flex; + align-items: center; + font-weight: 600; + color: var(--secondary-purple); + margin-bottom: var(--space-3); + font-size: var(--font-md); +} + +.assistance-title::before { + content: '💡'; + font-size: 1.2em; + margin-right: var(--space-2); +} + +.intent-analysis { + border-left-color: var(--primary-teal); +} + +.thinking-guidance { + border-left-color: var(--accent-violet); +} + +.reply-examples { + border-left-color: var(--secondary-purple); +} + +.translation-helper { + border-left-color: var(--success-green); +} +``` + +#### 互動式回覆範例 +```css +.reply-example { + background: var(--background-light); + border: 1px solid var(--border-light); + border-radius: var(--radius-lg); + padding: var(--space-4); + margin: var(--space-2) 0; + cursor: pointer; + transition: all 0.2s ease; + position: relative; +} + +.reply-example:hover { + border-color: var(--primary-teal); + background: var(--primary-teal-light); + transform: translateY(-2px); + box-shadow: 0 4px 12px rgba(0, 229, 204, 0.2); +} + +.example-text { + font-size: var(--font-md); + color: var(--text-primary); + margin-bottom: var(--space-2); +} + +.example-level { + display: inline-block; + background: var(--accent-violet); + color: white; + padding: 2px 8px; + border-radius: var(--radius-full); + font-size: var(--font-xs); + font-weight: 500; +} + +.example-explanation { + font-size: var(--font-sm); + color: var(--text-secondary); + margin-top: var(--space-2); + font-style: italic; +} +``` + ### 經驗值和進度條 #### EXP 進度條設計 @@ -790,6 +1318,11 @@ - 沉浸式對話氣泡設計 - 角色頭像和身份區分 - 即時翻譯和語音播放功能 +- **回覆卡關輔助面板** *(新增)*: + - 三層式智慧分析展示 + - 漸進式引導設計 + - 互動式範例選擇 + - 中翻英整合輔助 ### 個人中心頁面 - 大型用戶頭像和個人資訊顯示 diff --git a/docs/04_technical/api-specifications.md b/docs/04_technical/api-specifications.md index 8a23234..7fd10f5 100644 --- a/docs/04_technical/api-specifications.md +++ b/docs/04_technical/api-specifications.md @@ -508,6 +508,160 @@ Response 200 OK } ``` +## 回覆卡關輔助 API + +### 回覆引導系統 + +#### 獲取回覆輔助 +```http +POST /api/v1/dialogues/{dialogue_id}/assistance +Authorization: Bearer