Skip to content

ゲーム内時間ルール・運用チェックリスト / In-Game Time Rules & Operations Checklist

概要 / Overview

24時間ライブ配信(YouTube Live + TikTok Live)を安定運用するための時間設計・配信前チェック・日常運用・障害対応・法的遵守事項をまとめる。

Comprehensive guide covering time system design, pre-stream checks, daily operations, incident response, and legal/ToS compliance for the 24-hour live stream on YouTube Live + TikTok Live.


1. ゲーム内時間ルール / In-Game Time Rules

1.1 リアルタイム 1:1 マッピング / Real-Time 1:1 Mapping

ゲーム内時間と現実時間は 1:1 で同期する。ゲーム内の「朝7時」は現実世界の朝7時にあたる。

In-game time maps 1:1 to real-world time. "7:00 AM" in the game corresponds to 7:00 AM in the real world.

PropertyValueDetail
Time ratio1:11 real minute = 1 game minute
TimezoneJST (UTC+9)日本時間を基準 / Based on Japan Standard Time
Cycle interval10 min1日144ターン / 144 turns per day
Tip interruptsAnytimeターン外でも即時処理 / Processed immediately regardless of cycle
Real World                 Game World
─────────────────────────────────────────
00:00 JST  ──────────────  00:00 game time (Day N+1 starts)
06:00 JST  ──────────────  06:00 game time (Characters wake up)
12:00 JST  ──────────────  12:00 game time (Lunch time)
18:00 JST  ──────────────  18:00 game time (Dinner time)
23:00 JST  ──────────────  23:00 game time (Characters sleep)

1.2 game_day リセットタイミング / game_day Reset Timing

ゲーム内日数カウンター game_day は毎日 00:00 JST にインクリメントされる。

The in-game day counter game_day increments at 00:00 JST every day.

┌─────────────────────────────────────────────────────┐
│              game_day Reset Flow                     │
│                                                      │
│  23:59:59 JST                                        │
│    │  game_day = N                                   │
│    │  Current cycle completes normally               │
│    │                                                  │
│    ▼                                                  │
│  00:00:00 JST                                        │
│    │  1. game_day = N + 1                            │
│    │  2. Daily status adjustments applied            │
│    │  3. Daily log rotation                          │
│    │  4. Daily backup triggered                      │
│    │  5. Characters should be sleeping (natural)     │
│    │                                                  │
│    ▼                                                  │
│  00:00:00 ~ 05:59:59 JST                             │
│    │  Night phase: characters asleep                 │
│    │  LLM calls skipped for sleep actions            │
│    │  Tips still processed (sleepy reaction)         │
│    │                                                  │
│    ▼                                                  │
│  06:00:00 JST                                        │
│    │  Wake-up window begins                          │
│    │  Characters wake up (06:00 ~ 07:30 range)       │
│    │                                                  │
│    ▼                                                  │
│  New day gameplay begins                              │
└─────────────────────────────────────────────────────┘

game_day リセット時の処理 / Processing at game_day Reset

#ProcessDetail (JP)Detail (EN)
1Day counter incrementgame_day を +1Increment game_day by 1
2Daily stats adjustment各キャラクターのステータスを微調整(疲労蓄積等)Fine-tune character statuses (fatigue accumulation, etc.)
3Memory maintenance重要度 < 0.3 の当日メモリを削除候補にMark memories with importance < 0.3 as deletion candidates
4SQLite checkpointWAL ファイルのチェックポイント実行Execute WAL checkpoint
5Log rotation前日のログファイルをアーカイブArchive previous day's log files
6Auto-backupSQLite DB のバックアップを data/backups/ に保存Save SQLite DB backup to data/backups/

タイマードリフト対策 / Timer Drift Prevention

risks.md で定義されている通り、長時間稼働によるタイマードリフトを防止する。

As defined in risks.md, timer drift during long-running operations is prevented.

StrategyDetail
Absolute timestampssetInterval ではなく、次のターン開始を絶対時刻で計算 / Calculate next turn start as an absolute timestamp, not using setInterval
Hourly drift correction1時間ごとにシステム時刻と同期し、累積ズレを補正 / Sync with system clock every hour, correcting accumulated drift
Cycle alignmentターン開始を HH:M0 (10分区切り) に揃える / Align turn starts to HH:M0 (10-minute boundaries)

1.3 時間帯別の行動傾向 / Time-Based Action Weights

キャラクターの行動選択にゲーム内時刻が影響する。LLMプロンプトに現在時刻を含めて自然な行動を促す。

In-game time influences character action selection. The current time is included in LLM prompts to encourage natural behavior.

Time Range (JST)PhaseTypical Actions
00:00 - 05:59Deep night / 深夜Sleep. Tips get sleepy reactions (mumble, roll over)
06:00 - 07:30Morning / 朝Wake up, breakfast, walk Eve
07:30 - 12:00Daytime AM / 午前Work, clean, talk
12:00 - 13:00Lunch / 昼食Cook, eat together
13:00 - 17:00Daytime PM / 午後Work, rest, play with Eve
17:00 - 19:00Evening / 夕方Cook dinner, eat, walk Eve
19:00 - 22:00Night / 夜Relax, talk, watch TV, bath
22:00 - 23:59Late night / 深夜前Wind down, go to sleep

1.4 季節システム / Season System

MVP 除外 / Excluded from MVP

季節変動は Phase 2 で実装予定(mvp.md 参照)。ただし、ゲーム内日付は MVP から保持しておき、Phase 2 への移行をスムーズにする。

Seasonal changes are planned for Phase 2 (see mvp.md). However, in-game date is tracked from MVP to enable a smooth transition to Phase 2.

MVP での日付管理 / Date Tracking in MVP

typescript
interface GameTime {
  gameDay: number;       // Day count since launch (1, 2, 3, ...)
  gameDate: string;      // Calendar date "YYYY-MM-DD" (tracked but not used in MVP)
  gameHour: number;      // 0-23
  gameMinute: number;    // 0-59
  season: string;        // "spring" | "summer" | "autumn" | "winter" (derived, unused in MVP)
}
FieldMVP UsagePhase 2 Usage
gameDayUI表示、マイルストーン判定 / UI display, milestone trackingSame
gameDateDB に記録のみ / Stored in DB only季節イベント判定 / Seasonal event triggers
season算出するが使用せず / Calculated but unused背景変化・季節イベント / Background changes, seasonal events

季節の算出ルール(Phase 2) / Season Derivation Rules (Phase 2)

SeasonMonthsEvents (planned)
Spring / 春Mar - MayCherry blossom viewing, spring cleaning
Summer / 夏Jun - AugFireworks festival, beach episode, watermelon
Autumn / 秋Sep - NovAutumn leaves, Halloween, reading season
Winter / 冬Dec - FebChristmas, New Year, Valentine's Day, snow

2. 配信前チェックリスト / Pre-Stream Checklist

配信開始前に必ず以下を確認する。全項目 OK で配信開始可能。

Complete all checks below before starting the stream. All items must pass before going live.

2.1 OBS 接続確認 / OBS Connection Check

#Check ItemHow to VerifyOK Criteria
1OBS起動 / OBS launchedOBS Studio を開くアプリが正常起動 / App launches normally
2ブラウザソース / Browser sourceソース一覧で確認http://localhost:3000 が表示されている / Shows game screen
3解像度 / Resolution設定 → 映像1280x720px (720p)
4YouTube RTMP 接続 / YouTube RTMP配信設定でRTMPキーを確認前回のストリームキーが有効 / Stream key is valid
5TikTok RTMP 接続 / TikTok RTMPMulti-RTMP plugin 設定確認TikTok のサーバーURL + キーが設定済み / Server URL + key configured
6テスト配信 / Test stream限定公開で5秒間テスト配信映像・音声が正常出力 / Video and audio output correctly
7録画設定 / Recording設定 → 出力ローカル録画 ON(障害時の証拠保全) / Local recording ON (evidence preservation)

2.2 API 接続確認 / API Connection Check

#Check ItemHow to VerifyOK Criteria
1Claude APIcurl でテストリクエスト送信200 OK + 正常レスポンス / Valid response
2YouTube Live APIOAuth トークンの有効期限確認トークンが有効 or 自動リフレッシュ可能 / Token valid or auto-refreshable
3YouTube LiveChat ID配信枠の chatId を取得chatId が返ってくる / chatId retrieved
4TikTok Live ConnectorWebSocket 接続テスト接続成功 + heartbeat 受信 / Connected + heartbeat received
5WebSocket (Game)ws://localhost:3000/ws/game に接続ハンドシェイク成功 / Handshake success
6WebSocket (Admin)ws://localhost:3000/ws/admin に接続 + 認証admin:auth_ok 受信 / Received admin:auth_ok

2.3 DB 初期化確認 / DB Initialization Check

#Check ItemHow to VerifyOK Criteria
1SQLite ファイル存在 / DB file existsls data/game.dbファイルが存在する / File exists
2テーブル確認 / Tables existsqlite3 data/game.db ".tables"全テーブルが存在 / All tables present
3初期データ / Initial dataSELECT COUNT(*) FROM charactersJohn, Sara, Eve の3件 / 3 records
4ゲーム状態 / Game stateSELECT * FROM game_stategame_day, life_coin_balance 等の値が正常 / Values are valid
5バックアップ先 / Backup dirls data/backups/ディレクトリが存在 / Directory exists
6WAL モード / WAL modePRAGMA journal_modewal が返る / Returns wal

2.4 テスト投げ銭 / Test Tip

#Check ItemHow to VerifyOK Criteria
1管理コマンドで擬似投げ銭admin:trigger_eventtip_item を発火アイテム出現 + キャラクターがリアクション / Item appears + character reacts
2投げ銭バナー表示画面上にバナーが出るか確認バナーが表示され、数秒後に消える / Banner shows and fades
3LLM応答キャラクターがお礼を言うか確認お礼台詞が吹き出しに表示 / Thank-you dialogue in speech bubble
4LifeCoin 加算admin:get_state で残高確認残高が増加 / Balance increased

2.5 画面表示確認 / Screen Check

#Check ItemHow to VerifyOK Criteria
1部屋描画 / Room renderingブラウザソースを目視確認タイルマップが正常表示 / Tilemap renders correctly
2キャラクター表示 / Characters3体全て表示されているかJohn, Sara, Eve が表示 / All 3 characters visible
3アニメーション / Animationキャラクターが動いているか歩行・待機アニメーションが再生 / Walk/idle animations playing
4UI オーバーレイ / UI overlayステータスバー・時計・日数全UI要素が表示 / All UI elements visible
5吹き出し / Speech bubblesテスト会話で確認吹き出しが正常表示・消滅 / Bubbles appear and disappear correctly
6多言語表示 / Bilingual displayJP/EN テキストの表示確認文字化けなし / No garbled text
7OBS プレビュー / OBS previewOBS のプレビュー画面ゲーム画面がフル表示・切れていない / Full game screen without clipping

2.6 最終確認 / Final Checks

#Check ItemHow to VerifyOK Criteria
1pm2 プロセスpm2 statusonline 状態 / Status is online
2メモリ使用量pm2 monit or admin:get_state< 500MB
3ディスク空き / Disk spacedf -h> 10GB 空き / > 10GB free
4NGワードリスト / NG words loadedadmin:ng_listリストが読み込まれている / List is loaded
5環境変数 / Env vars.env ファイル確認全キー設定済み / All keys configured
6Slack通知 / Slack alertsテスト通知送信Slackに通知が届く / Notification received in Slack

3. 日常運用 / Daily Operations

3.1 ログレビュー / Log Review

毎日実施すべきログ確認項目。最低1日1回、できれば朝・夕の2回確認する。

Log review items to perform daily. At minimum once per day; ideally twice (morning and evening).

#Review ItemWhat to CheckWhere
1エラーログ / Error logsL0 (FATAL) / L1 (CRITICAL) が発生していないかlogs/error.log or pm2 logs --err
2pm2 再起動回数 / pm2 restarts予期しない再起動がないかpm2 status → restart count
3LLM API エラー / API errorsタイムアウト・レート制限の頻度logs/llm-api.log
4NGフィルタログ / NG filter logブロック件数の異常増加がないかlogs/content-filter.log
5投げ銭ログ / Tip log正常に処理されているか、取りこぼしがないかadmin:get_logs (filter: tips)
6監査ログ / Audit log不正な管理コマンド実行がないかadmin_audit_log table
7キャラクター行動ログ / Action log行動ループ・異常パターンがないかadmin:get_logs (filter: actions)

ログレビューのコマンド例 / Log Review Commands

bash
# pm2 のステータスと再起動回数を確認
# Check pm2 status and restart count
pm2 status

# 直近のエラーログを確認
# Check recent error logs
pm2 logs --err --lines 50

# 管理コマンドでゲームログを取得
# Get game logs via admin command
# admin:get_logs { "count": 100, "filter": "errors" }

3.2 メモリ使用量確認 / Memory Usage Check

MetricWarning ThresholdCritical ThresholdAction
RSS memory> 500MB> 800MB警告ログ出力 / Warning log
Heap used> 400MB> 700MB自動メモリ削減 / Auto memory reduction
SQLite DB size> 500MB> 1GBVACUUM 実行 / Run VACUUM
Log file size> 100MB per file> 500MBログローテーション / Log rotation
bash
# メモリ使用量のリアルタイムモニタリング
# Real-time memory monitoring
pm2 monit

# SQLite DB サイズ確認
# Check SQLite DB size
ls -lh data/game.db

# SQLite VACUUM(手動実行)
# Manual SQLite VACUUM
sqlite3 data/game.db "VACUUM;"

メモリ自動管理 / Automatic Memory Management

risks.md で定義されている通り、以下の自動管理を実施する。

As defined in risks.md, the following automatic management is performed:

TaskFrequencyDetail
低重要度メモリ削除 / Low-importance memory cleanupDaily (00:00 JST)importance < 0.5 かつ 30日以上前の記憶を削除 / Delete memories with importance < 0.5 older than 30 days
メモリ要約 / Memory summarizationMonthlyLLM による月次メモリ要約・圧縮 / Monthly LLM-based memory summarization
SQLite VACUUMWeekly (Sunday 04:00 JST)削除データの領域回収 / Reclaim space from deleted data
WAL checkpointDaily (00:00 JST)WAL ファイルをメインDBに統合 / Merge WAL into main DB

3.3 バックアップ確認 / Backup Verification

#Check ItemFrequencyHow to Verify
1日次バックアップ / Daily backupDailyls -la data/backups/ で最新ファイルの日付確認 / Check latest file date
2バックアップサイズ / Backup sizeDaily前日比で極端な変動がないか / No extreme changes from previous day
3バックアップ復元テスト / Restore testWeeklyバックアップから別DBに復元し整合性確認 / Restore to separate DB and verify integrity
4バックアップ保持期間 / RetentionMonthly30日以上前のバックアップを削除 / Delete backups older than 30 days
bash
# バックアップ一覧と日時確認
# List backups with dates
ls -lht data/backups/ | head -10

# バックアップ復元テスト
# Backup restore test
cp data/backups/game_YYYYMMDD.db /tmp/test_restore.db
sqlite3 /tmp/test_restore.db "PRAGMA integrity_check;"

3.4 日常運用タイムテーブル / Daily Operations Timetable

Time (JST)TaskResponsible
00:00game_day 自動リセット / Auto game_day resetSystem (auto)
00:05日次バックアップ実行 / Daily backup runsSystem (auto)
04:00 (Sun)週次 VACUUM 実行 / Weekly VACUUMSystem (auto)
09:00朝のログレビュー / Morning log reviewOperator
09:00メモリ使用量確認 / Memory usage checkOperator
09:00バックアップ確認 / Backup verificationOperator
18:00夕方のログレビュー / Evening log reviewOperator
随時 / As needed障害対応 / Incident responseOperator

4. 障害対応フロー / Incident Response Flow

4.1 概要 / Overview

障害発生時は「検知 → 判断 → 対応」の3ステップで対処する。error-handling.md で定義されたエラー重大度レベル (L0-L3) に基づき対応を決定する。

Incidents are handled in three steps: Detection, Judgment, Response. Response is determined based on the error severity levels (L0-L3) defined in error-handling.md.

┌───────────────────────────────────────────────────────────────────┐
│                  Incident Response Flow                            │
│                  障害対応フロー                                    │
│                                                                    │
│  ┌──────────┐     ┌──────────┐     ┌──────────────────────────┐  │
│  │ DETECT   │ ──▶ │ JUDGE    │ ──▶ │ RESPOND                  │  │
│  │ 検知     │     │ 判断     │     │ 対応                      │  │
│  │          │     │          │     │                            │  │
│  │ ・Alert  │     │ ・Level  │     │ ・L0: pm2 restart + notify│  │
│  │ ・Monitor│     │   (L0-L3)│     │ ・L1: Fallback + notify   │  │
│  │ ・Viewer │     │ ・Scope  │     │ ・L2: Auto-fallback + log │  │
│  │   report │     │ ・Impact │     │ ・L3: Log only             │  │
│  └──────────┘     └──────────┘     └──────────────────────────┘  │
│                                                                    │
│  ◀──────── Post-incident review within 24 hours ────────────▶    │
│  ◀──────── 障害後24時間以内にレビュー実施 ──────────────────▶    │
└───────────────────────────────────────────────────────────────────┘

4.2 検知 / Detection

Detection SourceMethodExample
自動アラート / Auto alertpm2 クラッシュ検知 → Slack 通知Process crash, memory threshold exceeded
モニタリング / Monitoringログ監視・メトリクス異常Error rate spike, LLM API failures
視聴者報告 / Viewer reportコメント・SNS での報告"Screen is frozen", "Characters not moving"
運営確認 / Operator check定期ログレビューで発見Unusual action patterns, missing tips

4.3 判断 / Judgment

LevelSymptomsJudgment
L0 FATAL配信画面が停止・真っ黒 / Stream frozen or black即時対応必須。pm2 自動再起動を確認、手動介入 / Immediate action required
L1 CRITICAL主要機能停止(LLM応答なし、投げ銭未処理等)5分以内に対応。フォールバック動作を確認 / Respond within 5 min
L2 WARNING機能劣化(一部コメント欠落、レスポンス遅延等)次の定期レビューで対応 / Address at next review
L3 INFO軽微な問題(ログ警告等)ログ記録のみ / Log only

4.4 対応 / Response

L0 FATAL — 配信停止レベル / Stream-Down Level

L0 Detected

    ├─ 1. pm2 auto-restart (automatic)
    │     └─ Check: pm2 status → "online"?
    │           ├─ YES → Verify stream resumed → Done
    │           └─ NO  → Continue to step 2

    ├─ 2. Manual restart
    │     └─ pm2 restart all
    │           ├─ Success → Verify stream resumed → Done
    │           └─ Fail → Continue to step 3

    ├─ 3. Full service restart
    │     └─ pm2 kill && pm2 start ecosystem.config.js
    │           ├─ Success → Verify stream resumed → Done
    │           └─ Fail → Continue to step 4

    └─ 4. Emergency OBS maintenance screen
          └─ Switch OBS to "Under Maintenance" scene
          └─ Investigate root cause
          └─ Notify viewers via YouTube/TikTok chat

L1 CRITICAL — 主要機能停止 / Major Feature Down

ScenarioAuto-ResponseManual Follow-Up
LLM API 全面停止フォールバック行動(定型文)に切り替えAPI 復旧を監視。長期化時はキャッシュ応答
YouTube API 切断自動再接続(3回リトライ)OAuth トークン再発行、ストリームキー確認
TikTok 接続断WebSocket 自動再接続TikTok 側の障害情報確認
メモリ 90% 超過低優先度キャッシュをクリアメモリリークの調査
DB 書き込み失敗インメモリに一時保持、リトライDB ファイルのロック・権限確認

L2 WARNING / L3 INFO

LevelAction
L2ログに記録。次の定期レビューで確認。頻発する場合は L1 に格上げ / Log and review at next check. Escalate to L1 if recurring
L3ログにのみ記録。対応不要 / Log only. No action required

4.5 障害対応後のレビュー / Post-Incident Review

L0 / L1 の障害が発生した場合、24時間以内にレビューを実施する。

For L0 / L1 incidents, conduct a review within 24 hours.

#Review ItemDetail
1発生日時 / When障害の発生時刻と復旧時刻 / Incident start and resolution time
2影響範囲 / Impact視聴者への影響、データ損失の有無 / Viewer impact, data loss assessment
3根本原因 / Root cause障害の原因を特定 / Identify the root cause
4対応内容 / Response実施した対応の記録 / Record of actions taken
5再発防止策 / Prevention同じ障害を防ぐための改善策 / Improvements to prevent recurrence

5.1 YouTube パートナープログラム / YouTube Partner Program (YPP)

Super Chat(投げ銭)を受け取るためには YouTube パートナープログラムへの参加が必要。

Participation in the YouTube Partner Program is required to receive Super Chat (tips).

参加要件 / Eligibility Requirements

RequirementThresholdStatus / Strategy
チャンネル登録者 / Subscribers1,000人以上 / 1,000+条件達成まで Super Chat なしで運用 / Operate without Super Chat until achieved
総再生時間 / Watch hours過去12ヶ月で4,000時間 / 4,000 hours in past 12 months24h配信で急速に蓄積 / Accumulates rapidly with 24h streaming
YouTube Shorts 再生 / Shorts views過去90日で1,000万回(代替条件)切り抜き動画で達成可能 / Achievable with clip videos
ポリシー遵守 / Policy complianceコミュニティガイドライン違反なしNGフィルタで担保 / Ensured by NG filter
2段階認証 / 2FA有効 / Enabled必須 / Required

コンテンツガイドライン遵守 / Content Guideline Compliance

GuidelineOur Compliance
暴力的コンテンツ禁止 / No violent contentLLMシステムプロンプトで制約 + 出力フィルタ / Constrained by system prompt + output filter
性的コンテンツ禁止 / No sexual contentキャラクターデザイン・行動カテゴリで対策 / Character design + action categories prevent this
ハラスメント禁止 / No harassment視聴者コメントの入力フィルタ + キャラクター応答制御 / Input filter + character response controls
誤情報禁止 / No misinformationキャラクターは「ゲーム世界」内の発言のみ / Characters speak only within "game world" context
スパム禁止 / No spam自動配信のため関係なし(ただし繰り返し回避ロジックあり) / Not applicable to auto-stream (but repetition avoidance exists)

配信カテゴリ / Stream Category

PlatformCategoryReason
YouTubeGaming or EntertainmentAI シミュレーションゲームとして分類 / Classified as AI simulation game
TikTokGaming同上 / Same as above

カテゴリ選択の重要性 / Importance of Category Selection

「Gaming」カテゴリを選択することで、AIが生成するコンテンツに対する審査基準が「ゲームコンテンツ」として適用される。「Just Chatting」等の雑談カテゴリよりも、キャラクターの行動に対する許容範囲が広い。

Selecting the "Gaming" category means AI-generated content is evaluated under "game content" standards. This provides wider tolerance for character actions compared to categories like "Just Chatting".

5.2 TikTok LIVE 利用条件 / TikTok LIVE Conditions

RequirementDetailStrategy
フォロワー数 / Followers1,000人以上(地域により異なる) / 1,000+ (varies by region)TikTok での事前プロモーション / Pre-promotion on TikTok
年齢要件 / Age requirement18歳以上 / 18+運営者が要件を満たすこと / Operator must meet requirement
LIVE Access 申請 / LIVE Access一部地域で別途申請必要 / Separate application needed in some regions事前に申請 / Apply in advance
コミュニティガイドライン / GuidelinesYouTube と同様の安全基準 / Similar safety standards to YouTube同一のフィルタシステムで対応 / Same filter system applies

TikTok 特有の制約 / TikTok-Specific Restrictions

RestrictionDetailMitigation
配信時間上限 / Stream duration limitアカウントレベルにより異なる(最大数時間の場合あり)risks.md 記載の通り、自動再接続で対応 / Auto-restart as noted in risks.md
ギフト受取条件 / Gift eligibility特定の条件を満たしたアカウントのみ事前に条件を確認・達成 / Verify and meet conditions in advance
コンテンツ審査 / Content reviewTikTok独自のAI審査が配信中にも適用NGフィルタで配信規約違反を事前防止 / NG filter prevents violations proactively

配信画面に視聴者のユーザー名・コメントを表示するための同意取得方針。

Policy for obtaining consent to display viewer usernames and comments on the stream screen.

表示対象 / What Is Displayed

DataDisplay LocationTrigger
ユーザー名 / Username投げ銭バナー、キャラクター台詞内投げ銭時 / When tipping
コメント内容 / Comment textキャラクター台詞の参照元として間接利用(直接表示は限定的)10分サイクルで選択時 / When selected in 10-min cycle
投げ銭額 / Tip amount投げ銭バナー投げ銭時 / When tipping
MethodDetail
プラットフォーム規約による包括同意YouTube / TikTok の利用規約上、ライブ配信でのコメント表示は配信者の裁量。コメント投稿は視聴者の自発的行為であり、公開の場での発言として扱われる
Platform ToS implicit consentUnder YouTube / TikTok ToS, displaying comments in live streams is at the streamer's discretion. Posting comments is a voluntary act by viewers, treated as public speech
配信概要欄での告知配信の概要欄に「コメント・ユーザー名がゲーム内で表示される場合があります」と明記
Stream description noticeState in stream description: "Comments and usernames may be displayed within the game"
投げ銭時の明示投げ銭バナーにユーザー名が表示されることは、Super Chat / TikTok Gift の標準機能として視聴者に認知されている
Tip display expectationDisplaying usernames in tip banners is a standard feature of Super Chat / TikTok Gifts, expected by viewers

個人情報保護 / Personal Information Protection

MeasureDetail (JP)Detail (EN)
ユーザー名のフィルタNGワードに該当するユーザー名は「みなさん」に置換Usernames matching NG words are replaced with "everyone"
コメントの加工LLMに渡す際、個人を特定できる情報(住所・電話番号等)は入力フィルタで除去PII (addresses, phone numbers, etc.) is removed by the input filter before passing to LLM
データ保持期間コメントログは30日間保持後に削除Comment logs are retained for 30 days then deleted
削除要請対応視聴者から表示削除の要請があった場合、速やかに対応Promptly respond to viewer requests for display removal

5.4 配信概要欄テンプレート / Stream Description Template

YouTube と TikTok の配信概要欄に記載すべき情報。

Information to include in the stream description for YouTube and TikTok.

【日本語】
AI同棲生活シミュレーション 24時間ライブ配信
キャラクター: ジョン、サラ、イブ(犬)

・投げ銭(Super Chat / TikTok Gift)でアイテムをプレゼントできます
・コメントにキャラクターが反応することがあります
・コメント・ユーザー名がゲーム画面内に表示される場合があります
・全てのキャラクター発言はAIにより自動生成されています
・不適切なコメントは自動的にフィルタリングされます

カテゴリ: ゲーム / Gaming

---

【English】
AI Cohabitation Life Simulation - 24/7 Live Stream
Characters: John, Sara, Eve (dog)

- Send tips (Super Chat / TikTok Gifts) to give items to the characters
- Characters may react to your comments
- Comments and usernames may be displayed on the game screen
- All character dialogue is auto-generated by AI
- Inappropriate comments are automatically filtered

Category: Gaming
Risk AreaMitigation
著作権 / CopyrightLLMプロンプトで「実在の製品名・作品名を言及しない」を指示。出力フィルタで実在固有名詞を検出 / System prompt instructs "Do not mention real product/work names". Output filter detects real proper nouns
商標 / Trademarkゲーム内アイテム名は全てオリジナル / All in-game item names are original
名誉毀損 / Defamationキャラクターは実在の人物について言及しない / Characters never reference real people
未成年保護 / Minor protection暴力的・性的コンテンツの生成を防止するフィルタ / Filters prevent violent/sexual content generation
景品表示法 / Consumer protection投げ銭とゲーム内効果の対応表を事前公開 / Pre-publish tip-to-effect mapping
資金決済法 / Payment servicesLifeCoin はゲーム内通貨であり、換金不可であることを明記 / Clearly state LifeCoin is in-game currency, non-redeemable