feedback7: merge fb7-stats — the local statistics page (PR #323 by @2321Robin, reworked): a match counts when it reached its result or the player cleared at least one round before quitting; earlier quits stay in the history marked 中途退出 / 不计入统计 (the owner's rule of 2026-10-08)

- Conflict: docs/PLAYING.md — #321's §12 反馈问题 and the stats §12 both added; the stats section is §13 (README anchor
  updated).
- Golden unchanged; broad node --test 5382 (5381 pass, 0 fail, 1 skipped); lint 0 errors.
This commit is contained in:
sganggs committed 2026-10-08 20:45:05 +08:00
commit e183f2fabd
21 files changed
+2691 -11

No files matched your search

+63 -1
View File
@@ -1068,5 +1068,67 @@
"选择「{name}」的朝向": "Choose {name}'s facing",
"选择朝向": "Choose a facing",
"朝向:{dir}": "Facing: {dir}",
"开发版 · 不稳定,请勿用于公开服务器": "Development build · unstable, not for public servers"
"开发版 · 不稳定,请勿用于公开服务器": "Development build · unstable, not for public servers",
"统计数据": "Statistics",
"统计": "Stats",
"总览": "Overview",
"总局数": "Games",
"胜场": "Wins",
"胜率": "Win rate",
"到达隐秘核心": "Hidden Core reached",
"通关隐秘核心": "Hidden Core cleared",
"最远回合": "Best round",
"累计时长": "Time played",
"{n} 分": "{n} min",
"难度": "Difficulty",
"局数": "Games",
"隐秘核心通关": "Hidden Core clears",
"使用局数": "Used",
"通过局数": "Cleared",
"通过率": "Clear rate",
"称号": "Titles",
"战斗累计": "Combat totals",
"时间": "Time",
"模式": "Mode",
"结果": "Result",
"点击查看该局结算": "View this match's settlement",
"单人": "Solo",
"同盟": "Co-op",
"胜": "Win",
"负": "Loss",
"已导出 {n} 条对局记录": "Exported {n} match {n|record|records}",
"已导入 {added} 条记录{tail}": "Imported {added} {added|record|records}{tail}",
"(跳过重复 {skipped} 条)": " ({skipped} {skipped|duplicate|duplicates} skipped)",
"没有新记录(全部与现有数据重复)": "Nothing new (everything already exists)",
"导入失败:不是有效的统计导出文件": "Import failed: not a valid stats export file",
"已清空本机统计数据": "Local stats cleared",
"本机数据 · 仅记录本浏览器中你参与的对局": "Local data · only matches you took part in, in this browser",
"检测到更新版本的统计数据,请先升级客户端再查看,以免覆盖数据。": "Stats data from a newer version detected — upgrade the client before viewing, or the data could be overwritten.",
"还没有记录 —— 完成一局对局后,这里会开始积累。": "No records yet — finish a match and the page starts filling in.",
"未知": "Unknown",
"对局记录": "Match history",
"{n} 小时": "{n} h",
"计入统计:打到结算的对局,以及中途退出前至少清完 1 个回合的对局;更早退出的对局只留在对局记录里。": "Counted: matches played to the settlement, and matches given up after clearing at least 1 round. Matches given up earlier stay in the match history only.",
"另有 {n} 局未计入统计": "{n} more {n|match|matches} not counted",
"没有清完第一个回合就退出,不计入统计": "Left before clearing the first round — not counted",
"中途退出的对局没有结算可看": "A match given up has no settlement to view",
"较早的对局只保留汇总,不能回看结算": "Older matches keep only their summary — no settlement to view",
"中途退出": "Left early",
"不计入统计": "Not counted",
"显示更多(还有 {n} 局)": "Show more ({n} left)",
"点击一行,回看该局结算;中途退出的对局只留记录。": "Click a row to re-view that match's settlement; a match given up only leaves its entry.",
"最多保留最近 {max} 局,只有最新的 {full} 局能回看结算。": "Only the latest {max} matches are kept, and only the newest {full} can show their settlement again.",
"返回统计": "Back to Stats",
"文件过大,无法导入": "File too large to import",
"无法写入本机存储,可能已满": "Could not write to local storage — it may be full",
"({n} 条无法读取)": " ({n} unreadable)",
"导入失败:这份文件由更新版本的客户端导出,请先升级客户端": "Import failed: this file was exported by a newer client — upgrade the client first",
"清空统计数据": "Clear Statistics",
"将删除本机保存的 {n} 条对局记录,无法恢复。": "This deletes the {n} match {n|record|records} stored on this device. It cannot be undone.",
"导出为文件(可在别的设备上导入)": "Export to a file (import it on another device)",
"从导出的文件导入(与现有记录合并)": "Import from an exported file (merged with the current records)",
"清空本机的统计数据": "Clear the statistics stored on this device",
"本机数据:只保存在这个浏览器里,不会上传到服务器;同盟对局里队友的代号也会存在本机(导出文件里也有)。": "Local data: kept only in this browser, never uploaded to the server. Teammates' names from Team Simulations are stored here too (and appear in an export file).",
"本机保存的统计数据无法读取,已另存为备份,从现在起重新记录。": "The stats stored on this device could not be read. They were set aside as a backup and recording starts afresh.",
"有 {n} 条记录已损坏,已忽略。": "{n} damaged {n|record was|records were} ignored."
}
+63 -1
View File
@@ -1074,5 +1074,67 @@
"{files} 没有下载成功,这一页无法显示;已保存的设置不受影响。请刷新页面;仍不行时,请检查广告拦截插件和网络。": "{files}をダウンロードできなかったため、このページを表示できません。保存済みの設定に影響はありません。ページを更新してください。それでも解決しない場合は、広告ブロッカーとネットワークを確認してください。",
"全员无伤!": "全員無傷!",
"生命值减少 −{n}": "耐久値減少 −{n}",
"当前语言的界面文字为机器翻译,可能不够准确,欢迎在 GitHub 上指正。": "この言語の画面表示は機械翻訳のため、不正確な場合があります。GitHubでの修正提案を歓迎します。"
"当前语言的界面文字为机器翻译,可能不够准确,欢迎在 GitHub 上指正。": "この言語の画面表示は機械翻訳のため、不正確な場合があります。GitHubでの修正提案を歓迎します。",
"统计数据": "統計データ",
"统计": "統計",
"总览": "概要",
"总局数": "対戦数",
"胜场": "勝利数",
"胜率": "勝率",
"到达隐秘核心": "シークレットコア到達",
"通关隐秘核心": "シークレットコアクリア",
"最远回合": "最高ラウンド",
"累计时长": "累計プレイ時間",
"{n} 分": "{n}分",
"难度": "難易度",
"局数": "対戦数",
"隐秘核心通关": "シークレットコアクリア",
"使用局数": "使用回数",
"通过局数": "クリア回数",
"通过率": "クリア率",
"称号": "称号",
"战斗累计": "戦闘累計",
"时间": "日時",
"模式": "モード",
"结果": "結果",
"点击查看该局结算": "この対戦の結果を見る",
"单人": "単独",
"同盟": "連合",
"胜": "勝",
"负": "敗",
"已导出 {n} 条对局记录": "対戦記録を{n}件エクスポートしました",
"已导入 {added} 条记录{tail}": "{added}件の記録をインポートしました{tail}",
"(跳过重复 {skipped} 条)": "(重複{skipped}件をスキップ)",
"没有新记录(全部与现有数据重复)": "新しい記録はありません(すべて既存のデータと重複しています)",
"导入失败:不是有效的统计导出文件": "インポートに失敗しました:有効な統計のエクスポートファイルではありません",
"已清空本机统计数据": "この端末の統計データを消去しました",
"本机数据 · 仅记录本浏览器中你参与的对局": "この端末のデータ · このブラウザで参加した対戦のみ記録されます",
"检测到更新版本的统计数据,请先升级客户端再查看,以免覆盖数据。": "より新しいバージョンの統計データが見つかりました。上書きを避けるため、クライアントを更新してから表示してください。",
"还没有记录 —— 完成一局对局后,这里会开始积累。": "記録はまだありません — 対戦を1つ終えると、ここに蓄積されていきます。",
"未知": "不明",
"对局记录": "対戦履歴",
"{n} 小时": "{n}時間",
"计入统计:打到结算的对局,以及中途退出前至少清完 1 个回合的对局;更早退出的对局只留在对局记录里。": "集計対象:結果画面まで進んだ対戦と、1ラウンド以上クリアしてから途中退出した対戦。それより早く退出した対戦は対戦履歴にのみ残ります。",
"另有 {n} 局未计入统计": "他に{n}件の対戦が集計対象外です",
"没有清完第一个回合就退出,不计入统计": "最初のラウンドをクリアする前に退出したため、集計対象外です",
"中途退出的对局没有结算可看": "途中退出した対戦には表示できる結果がありません",
"较早的对局只保留汇总,不能回看结算": "古い対戦は要約のみ保存されているため、結果は表示できません",
"中途退出": "途中退出",
"不计入统计": "集計対象外",
"显示更多(还有 {n} 局)": "さらに表示(残り{n}件)",
"点击一行,回看该局结算;中途退出的对局只留记录。": "行をクリックすると、その対戦の結果をもう一度見られます。途中退出した対戦は記録のみ残ります。",
"最多保留最近 {max} 局,只有最新的 {full} 局能回看结算。": "保存されるのは直近{max}件のみで、結果を再表示できるのは最新の{full}件だけです。",
"返回统计": "統計に戻る",
"文件过大,无法导入": "ファイルが大きすぎるためインポートできません",
"无法写入本机存储,可能已满": "ローカルストレージに書き込めません。容量がいっぱいの可能性があります",
"({n} 条无法读取)": "(読み取れない記録{n}件)",
"导入失败:这份文件由更新版本的客户端导出,请先升级客户端": "インポートに失敗しました:このファイルはより新しいバージョンのクライアントでエクスポートされています。先にクライアントを更新してください",
"清空统计数据": "統計データを消去",
"将删除本机保存的 {n} 条对局记录,无法恢复。": "この端末に保存されている対戦記録{n}件を削除します。元に戻せません。",
"导出为文件(可在别的设备上导入)": "ファイルにエクスポート(別の端末でインポートできます)",
"从导出的文件导入(与现有记录合并)": "エクスポートしたファイルからインポート(既存の記録と統合)",
"清空本机的统计数据": "この端末の統計データを消去",
"本机数据:只保存在这个浏览器里,不会上传到服务器;同盟对局里队友的代号也会存在本机(导出文件里也有)。": "この端末のデータ:このブラウザにのみ保存され、サーバーには送信されません。連合演算の仲間の名前もこの端末に保存されます(エクスポートファイルにも含まれます)。",
"本机保存的统计数据无法读取,已另存为备份,从现在起重新记录。": "この端末に保存された統計データを読み取れませんでした。バックアップとして退避し、記録を最初からやり直します。",
"有 {n} 条记录已损坏,已忽略。": "破損した記録{n}件を無視しました。"
}
+63 -1
View File
@@ -1070,5 +1070,67 @@
"{files} 没有下载成功,这一页无法显示;已保存的设置不受影响。请刷新页面;仍不行时,请检查广告拦截插件和网络。": "{files} 다운로드에 실패하여 이 페이지를 표시할 수 없습니다. 저장된 설정에는 영향이 없습니다. 페이지를 새로고침해 주세요. 그래도 안 되면 광고 차단 확장 프로그램과 네트워크를 확인해 주세요.",
"全员无伤!": "전원 무사!",
"生命值减少 −{n}": "목표 HP 감소 −{n}",
"当前语言的界面文字为机器翻译,可能不够准确,欢迎在 GitHub 上指正。": "현재 언어의 인터페이스 텍스트는 기계 번역이므로 정확하지 않을 수 있습니다. GitHub에서 수정 제안을 환영합니다."
"当前语言的界面文字为机器翻译,可能不够准确,欢迎在 GitHub 上指正。": "현재 언어의 인터페이스 텍스트는 기계 번역이므로 정확하지 않을 수 있습니다. GitHub에서 수정 제안을 환영합니다.",
"统计数据": "통계",
"统计": "통계",
"总览": "개요",
"总局数": "총 판수",
"胜场": "승리",
"胜率": "승률",
"到达隐秘核心": "숨겨진 핵심 도달",
"通关隐秘核心": "숨겨진 핵심 클리어",
"最远回合": "최고 라운드",
"累计时长": "누적 플레이 시간",
"{n} 分": "{n}분",
"难度": "난이도",
"局数": "판수",
"隐秘核心通关": "숨겨진 핵심 클리어",
"使用局数": "사용 판수",
"通过局数": "클리어 판수",
"通过率": "클리어율",
"称号": "평가",
"战斗累计": "전투 누적",
"时间": "시간",
"模式": "모드",
"结果": "결과",
"点击查看该局结算": "이 판의 정산 보기",
"单人": "독립",
"同盟": "동맹",
"胜": "승",
"负": "패",
"已导出 {n} 条对局记录": "기록 {n}건을 내보냈습니다",
"已导入 {added} 条记录{tail}": "기록 {added}건을 가져왔습니다{tail}",
"(跳过重复 {skipped} 条)": " (중복 {skipped}건 건너뜀)",
"没有新记录(全部与现有数据重复)": "새 기록이 없습니다(모두 기존 데이터와 중복)",
"导入失败:不是有效的统计导出文件": "가져오기 실패: 올바른 통계 내보내기 파일이 아닙니다",
"已清空本机统计数据": "이 기기의 통계 데이터를 삭제했습니다",
"本机数据 · 仅记录本浏览器中你参与的对局": "이 기기의 데이터 · 이 브라우저에서 참여한 판만 기록됩니다",
"检测到更新版本的统计数据,请先升级客户端再查看,以免覆盖数据。": "더 최신 버전의 통계 데이터가 감지되었습니다. 데이터를 덮어쓰지 않도록 클라이언트를 업데이트한 뒤 확인하세요.",
"还没有记录 —— 完成一局对局后,这里会开始积累。": "아직 기록이 없습니다 — 한 판을 마치면 여기에 쌓이기 시작합니다.",
"未知": "알 수 없음",
"对局记录": "판 기록",
"{n} 小时": "{n}시간",
"计入统计:打到结算的对局,以及中途退出前至少清完 1 个回合的对局;更早退出的对局只留在对局记录里。": "집계 대상: 정산까지 진행한 판, 그리고 1라운드 이상 클리어한 뒤 중도 포기한 판. 그보다 일찍 나간 판은 판 기록에만 남습니다.",
"另有 {n} 局未计入统计": "집계에 포함되지 않은 판이 {n}건 더 있습니다",
"没有清完第一个回合就退出,不计入统计": "첫 라운드를 클리어하기 전에 나가서 집계에 포함되지 않습니다",
"中途退出的对局没有结算可看": "중도 포기한 판은 볼 수 있는 정산이 없습니다",
"较早的对局只保留汇总,不能回看结算": "오래된 판은 요약만 저장되어 정산을 볼 수 없습니다",
"中途退出": "중도 퇴장",
"不计入统计": "집계 제외",
"显示更多(还有 {n} 局)": "더 보기 (남은 {n}건)",
"点击一行,回看该局结算;中途退出的对局只留记录。": "행을 누르면 해당 판의 정산을 다시 볼 수 있습니다. 중도 포기한 판은 기록만 남습니다.",
"最多保留最近 {max} 局,只有最新的 {full} 局能回看结算。": "최근 {max}판까지만 보관하며, 정산을 다시 볼 수 있는 것은 최신 {full}판뿐입니다.",
"返回统计": "통계로 돌아가기",
"文件过大,无法导入": "파일이 너무 커서 가져올 수 없습니다",
"无法写入本机存储,可能已满": "로컬 저장소에 쓰지 못했습니다. 공간이 가득 찼을 수 있습니다",
"({n} 条无法读取)": " (읽을 수 없는 기록 {n}건)",
"导入失败:这份文件由更新版本的客户端导出,请先升级客户端": "가져오기 실패: 더 최신 버전 클라이언트에서 내보낸 파일입니다. 먼저 클라이언트를 업데이트하세요",
"清空统计数据": "통계 데이터 비우기",
"将删除本机保存的 {n} 条对局记录,无法恢复。": "이 기기에 저장된 기록 {n}건을 삭제합니다. 되돌릴 수 없습니다.",
"导出为文件(可在别的设备上导入)": "파일로 내보내기 (다른 기기에서 가져올 수 있습니다)",
"从导出的文件导入(与现有记录合并)": "내보낸 파일에서 가져오기 (기존 기록과 병합)",
"清空本机的统计数据": "이 기기의 통계 데이터 비우기",
"本机数据:只保存在这个浏览器里,不会上传到服务器;同盟对局里队友的代号也会存在本机(导出文件里也有)。": "이 기기의 데이터: 이 브라우저에만 저장되며 서버로 전송되지 않습니다. 동맹 시뮬레이션에서 함께한 동료의 이름도 이 기기에 저장됩니다(내보낸 파일에도 포함).",
"本机保存的统计数据无法读取,已另存为备份,从现在起重新记录。": "이 기기에 저장된 통계 데이터를 읽을 수 없습니다. 백업으로 따로 보관했으며 지금부터 새로 기록합니다.",
"有 {n} 条记录已损坏,已忽略。": "손상된 기록 {n}건을 무시했습니다."
}
+63 -1
View File
@@ -1072,5 +1072,67 @@
"游戏数据没有载入": "遊戲資料沒有載入",
"{files} 没有下载成功,这一页无法显示;已保存的设置不受影响。请刷新页面;仍不行时,请检查广告拦截插件和网络。": "{files} 沒有下載成功,這一頁無法顯示;已儲存的設定不受影響。請重新整理頁面;仍不行時,請檢查廣告攔截擴充功能和網路。",
"全员无伤!": "全員無傷!",
"生命值减少 −{n}": "生命值減少 −{n}"
"生命值减少 −{n}": "生命值減少 −{n}",
"统计数据": "統計資料",
"统计": "統計",
"总览": "總覽",
"总局数": "總局數",
"胜场": "勝場",
"胜率": "勝率",
"到达隐秘核心": "到達隱秘核心",
"通关隐秘核心": "通關隱秘核心",
"最远回合": "最遠回合",
"累计时长": "累計時長",
"{n} 分": "{n} 分",
"难度": "難度",
"局数": "局數",
"隐秘核心通关": "隱秘核心通關",
"使用局数": "使用局數",
"通过局数": "通過局數",
"通过率": "通過率",
"称号": "稱號",
"战斗累计": "戰鬥累計",
"时间": "時間",
"模式": "模式",
"结果": "結果",
"点击查看该局结算": "點擊查看該局結算",
"单人": "單人",
"同盟": "同盟",
"胜": "勝",
"负": "負",
"已导出 {n} 条对局记录": "已匯出 {n} 筆對局記錄",
"已导入 {added} 条记录{tail}": "已匯入 {added} 筆記錄{tail}",
"(跳过重复 {skipped} 条)": "(略過重複 {skipped} 筆)",
"没有新记录(全部与现有数据重复)": "沒有新記錄(全部與現有資料重複)",
"导入失败:不是有效的统计导出文件": "匯入失敗:不是有效的統計匯出檔案",
"已清空本机统计数据": "已清空本機統計資料",
"本机数据 · 仅记录本浏览器中你参与的对局": "本機資料 · 僅記錄本瀏覽器中你參與的對局",
"检测到更新版本的统计数据,请先升级客户端再查看,以免覆盖数据。": "偵測到更新版本的統計資料,請先升級用戶端再查看,以免覆蓋資料。",
"还没有记录 —— 完成一局对局后,这里会开始积累。": "還沒有記錄 —— 完成一局對局後,這裡會開始累積。",
"未知": "未知",
"对局记录": "對局記錄",
"{n} 小时": "{n} 小時",
"计入统计:打到结算的对局,以及中途退出前至少清完 1 个回合的对局;更早退出的对局只留在对局记录里。": "計入統計:打到結算的對局,以及中途退出前至少清完 1 個回合的對局;更早退出的對局只留在對局記錄裡。",
"另有 {n} 局未计入统计": "另有 {n} 局未計入統計",
"没有清完第一个回合就退出,不计入统计": "沒有清完第一個回合就退出,不計入統計",
"中途退出的对局没有结算可看": "中途退出的對局沒有結算可看",
"较早的对局只保留汇总,不能回看结算": "較早的對局只保留彙總,不能回看結算",
"中途退出": "中途退出",
"不计入统计": "不計入統計",
"显示更多(还有 {n} 局)": "顯示更多(還有 {n} 局)",
"点击一行,回看该局结算;中途退出的对局只留记录。": "點擊一行,回看該局結算;中途退出的對局只留記錄。",
"最多保留最近 {max} 局,只有最新的 {full} 局能回看结算。": "最多保留最近 {max} 局,只有最新的 {full} 局能回看結算。",
"返回统计": "返回統計",
"文件过大,无法导入": "檔案過大,無法匯入",
"无法写入本机存储,可能已满": "無法寫入本機儲存空間,可能已滿",
"({n} 条无法读取)": "({n} 筆無法讀取)",
"导入失败:这份文件由更新版本的客户端导出,请先升级客户端": "匯入失敗:這份檔案由更新版本的用戶端匯出,請先升級用戶端",
"清空统计数据": "清空統計資料",
"将删除本机保存的 {n} 条对局记录,无法恢复。": "將刪除本機保存的 {n} 筆對局記錄,無法復原。",
"导出为文件(可在别的设备上导入)": "匯出為檔案(可在別的裝置上匯入)",
"从导出的文件导入(与现有记录合并)": "從匯出的檔案匯入(與現有記錄合併)",
"清空本机的统计数据": "清空本機的統計資料",
"本机数据:只保存在这个浏览器里,不会上传到服务器;同盟对局里队友的代号也会存在本机(导出文件里也有)。": "本機資料:只保存在這個瀏覽器裡,不會上傳到伺服器;同盟對局裡隊友的代號也會存在本機(匯出檔案裡也有)。",
"本机保存的统计数据无法读取,已另存为备份,从现在起重新记录。": "本機保存的統計資料無法讀取,已另存為備份,從現在起重新記錄。",
"有 {n} 条记录已损坏,已忽略。": "有 {n} 筆記錄已損毀,已略過。"
}