投稿ガイドライン(叩き台)
作成日:2026-09-11 / ステータス:ドラフト
frank proは投稿前の審査を行いません。 その代わり、機械的に判定できる条件を先に明示し、満たさない作品は投稿時点で弾きます。 このページは「何が通り、何が通らないか」を投稿前に把握するためのものです。
1. 技術要件(満たさないと投稿できません)
1-1. HTML 1ファイルで完結していること
❌ index.html + style.css + game.js + sprite.png
✅ index.html (CSS・JS・画像をすべて内包)
画像や音は data URI(data:image/png;base64,...)で埋め込んでください。 外部URLを参照した画像・フォント・音源は読み込まれません(次項の理由による)。
1-2. 外部への通信ができません
配信時に Content Security Policy を適用しており、作品からの外部通信は ブラウザがすべてブロックします。以下はすべて動きません。
fetch/XMLHttpRequest/WebSocket/EventSource/navigator.sendBeacon- 外部URLを指す
<img src><link href><script src><audio src><video src> - Google Fonts などのCDN
<form>の送信
CDNのライブラリを使っている場合は、ソースを本文に貼り付けてください。
1-3. localStorage / sessionStorage / Cookie が使えません
これが一番多いつまずきです。
作品は隔離された環境(opaque origin)で実行されるため、 localStorage に触ろうとした瞬間に SecurityError が発生して作品全体が停止します。 真っ白な画面になる原因のほとんどはこれです。
// ❌ これだけで作品が止まる
localStorage.setItem('highScore', score)
// ✅ どうしても書くなら必ず囲む
try { localStorage.setItem('highScore', score) } catch (e) { /* 無視する */ }
// ✅✅ 推奨:メモリ上の変数で持つ
let highScore = 0セーブ機能・ハイスコア保存は現在サポートしていません。 リロードで状態が消える前提で設計してください。
1-4. ファイルサイズ上限:5MB
画像を data URI にすると容量が跳ねます。超える場合は、 解像度を落とす、色数を減らす、PNGをJPEGやWebPに変えるなどで調整してください。
1-5. スマホの縦持ちで遊べること
投稿者の多くはPCで制作するため、PC前提の操作になりがちです。 閲覧者の大半はスマホから来ます。
| 使えるもの | 使えないもの |
|---|---|
| タップ、スワイプ、長押し、ドラッグ | キーボード入力(WASD、矢印キー、スペース) |
| 端末の傾き(DeviceOrientation) | マウスホバー、右クリック |
| 画面上に描いたボタン | 物理キーが前提の操作 |
投稿画面にはスマホと同じ縦長サイズのプレビュー枠があります。 投稿ボタンを押す前に、必ずそこで一度遊んでみてください。
PC専用の作品も投稿できますが、説明文に明記してください。
1-6. その他
alert()confirm()prompt()は動作しません(ブロックされます)- カメラ、マイク、位置情報は利用できません
- 全画面API、ポインターロックは利用できます
- 重い処理は閲覧者の端末で動きます。発熱・電池消費に配慮してください
2. 内容の要件
2-1. 権利について
投稿できるのは、あなたが権利を持っているか、正当に使用許諾を得ているものだけです。
よくある見落とし:
- 既存ゲームのスプライト・BGM・効果音を流用している
- 実在のキャラクター、ロゴ、商標が画面に出ている
- フリー素材だが、ライセンスに再配布不可やクレジット表記義務がある
- AIで生成した画像だが、特定の作品や人物が明確に再現されている
素材のライセンスを確認し、クレジット表記が必要なものは説明文に記載してください。
2-2. 投稿できないもの
- 第三者の権利を侵害する作品
- マルウェア、閲覧者の端末に意図しない損害を与えるコード
- 本物のサービスを模したログイン画面・決済画面・支援要請画面 (ネタであっても不可。外部通信を遮断していても、 画面を撮影して別の場所で使われる危険があるため)
- 過度に暴力的・性的な内容、差別を助長する内容
- 自殺・自傷を誘引する内容
- 法令に違反する内容
2-3. 年齢層について
年齢確認の仕組みはありません。子どもが開く前提で作ってください。 不安がある内容は、タイトルと説明文の冒頭に注意書きを入れてください。
3. 投稿時の自動チェック
投稿ボタンを押すと、以下が自動で判定されます。
| 項目 | 判定 |
|---|---|
| ファイル形式 | .html のみ |
| ファイルサイズ | 5MB以下 |
| 外部リソース参照 | 検出した場合は警告(動作しない旨を表示。投稿自体は可能) |
| localStorage の直接使用 | 検出した場合は警告 |
| 縦長プレビューでの動作確認 | 一度も再生していない場合は確認ダイアログ |
外部リソースと localStorage の検出は警告であって拒否ではありません。 コードを読んで判定する方式は、文字列を分割されれば回避できるため、 これを合否の基準にはしていません。実際の遮断は実行環境側で行っています。 警告は「動かない作品を出す前に気づいてもらう」ためのものです。
4. 投稿後
4-1. 編集と削除
投稿した作品はいつでも差し替え・非公開・削除ができます。 差し替えても、アクセス数・評価・コメントは引き継がれます。
4-2. コメント
コメントはログインなしで誰でも書けます。 自分の作品に付いたコメントは、作者が個別に非表示にできます。 対応に困る書き込みがあった場合は、非表示にした上で通報してください。
4-3. 一覧での並び順
「評価率」の並び順は、票が少ないうちはサイト全体の平均に寄る計算をしています。 1票だけの満点が首位に来ないようにするためで、票が集まるほど その作品自身の平均点に近づきます。
投稿直後に評価率が中位に見えるのは正常な挙動です。
4-4. 削除される場合
以下に該当すると運営者が判断した場合、事前の通知なく非公開になることがあります。
- 本ガイドラインの「2. 内容の要件」に反する場合
- 権利者から申立てがあった場合
- 閲覧者の安全上、緊急に止める必要がある場合
異議がある場合は【連絡先】までご連絡ください。
5. 投稿前チェックリスト
□ HTML 1ファイルにまとまっている
□ 外部URLの読み込みがない(画像・フォント・音・ライブラリすべて)
□ localStorage / Cookie を使っていない(または try-catch で囲んである)
□ 5MB以下
□ 縦長プレビューで最後まで遊べた
□ タップとスワイプだけで操作できる(できない場合は説明文に明記した)
□ 使った素材のライセンスを確認した
□ 権利者のあるキャラクター・ロゴ・音源が入っていない