ツイッターパズルコンテストの作り方(問題以外)

コンテスト開催の告知

(追記: 現在は終了しています)
問題PDFのURL: https://drive.google.com/file/d/1HyhbyPBuNpr22mMYvWyTnK7bXWew2tTa/view

...えー何を言っているか分からないという方は、本編の前にCMです

今日(記事公開日)から4日間、12/21の0時から12/25の0時まで、”パズルコンテスト「黄色い烏オリジナル」”を開催します

こちらのリンクからエントリー可能です

このコンテストは黄色い烏氏が問題・ルール制作、そして私ホームレストランがチェッカー・運営を務めるパズル大会です

実際の運営は、このカレンダーを作ったという事になっているhomerestのアカウントでやってます

これまでカレンダーを読んできて、オモパとかコンテストとか競技パズルとかに興味を持った人は参加してみましょう

〜CM終わり〜

#ペンパアドベント2018 21日目
こんにちは、ホームレストランと申します
一応主催者ですが、何もしてないので何も偉くないです
それでは先ほどの話から少し内容を変えてお話ししましょう

「ツイッターパズルコンテストとは」


そもそもツイッターパズルコンテストとは、その名の通りツイッターで開催されるパズルコンテストなのですが、ほとんどの場合でグーグルのソフトを用いるなど、一つの同じ形式で開催されています

恐らくこれが一番楽で、最も洗練された方法だと思うので、今回もこの一般的な方法を紹介します

まずパズルコンテストに必要な要素というのを上げていきましょう
多分普通の人が一度参加してみて気づくのは、

・インストラクション
・エントリー/解答フォーム
・問題用紙
・結果発表

の四つぐらいでしょう

これらはコンテストの表面として、プレイヤーが直に触れる部分というわけですが、実は用意すべき要素はもっともっとあります
リストしてみると、

・インストラクション
・エントリー/解答フォーム
・問題用紙
・結果発表
宣伝
・校閲
・集計シートの管理
・チェッカー募集
・チェック
・(問題の答え)

ぐらいだと思います まあ個人的な意見っちゃそうですが

(一番最後の”(問題の答え)”は、コンテストによって有ったり無かったりするので括っておきました
”問題あるなら答え出せるでしょ”というパズル界らしい考えによるものだと思うのですが、自分みたいな初心者としては欲しい気もしますね)

それではそれぞれの細かい内容を説明していきましょう

インストラクション・問題用紙

…パス!!!

この二つはもの凄く短くまとめれば、問題とルールを作り、体裁を整えてPDFを作る段階です

…ですがタイトルにある通り、今回はこれらの解説はパスする事にしました
ただどちらも校閲やチェックなどの大事な付属要素があるので後々紹介していきます

今回このようにしたのは時間が無かったからではなく、自分に問題作成の経験が無かったからという理由です
つまり言ってしまえば、この記事はいわゆる運営の説明がメインです

それでも声を大にして言いたいのは、残りの要素をバカにしちゃいけないという点です

上で紹介したパズルコンテストでも、自分はすべての運営を担当したのですが、もうそれはそれは大変でした
全部一人でやるのとかちょっと想像もできないぐらい大変でしょう
なので自分としては、この大会みたいに大胆な分担作業をするコンテストが増えてもいいかなと思いますね

エントリー/解答フォーム

正直言ってここが今回説明する中で、一番大変で、一番運営やってる感みたいなのが強いと思います

最初に書いた通り、ここの段階はグーグルフォームを使ったコンテストがほとんどです
専用のサイトを作る方法もあると思いますが多分凄い面倒です
上のリンクから右下の赤いボタンを押して新しいフォームを作成しましょう

時間がとにかく無いので、フォームを作る最短経路だけ解説していきます

まず一枚目は説明・質問を追加することができる場所です
上のエントリーフォームを例にとると、

説明 ・コンテストの概要(趣旨など)
   ・制限時間、開催期間等の問題に関係しないインストラクション
   ・インストラクションPDF
   ・参加方法
   ・禁止事項
   ・クレジット(制作者)
質問 ・エントリー名
   ・参加の確認

で、例は挙げられませんが、上の解答フォームは、

説明 ・パスワード
質問 ・エントリー名
   ・アンサーキー全て

という構造になっています

必ずしもこの通りに作る必要は無いですが、やはりこれらの情報を含んであると分かりやすいフォームになると思います

エントリーフォーム最後の”参加の確認”っていうのは良く分からないかもしれませんが、かなり色々な所で使われている質問のようです
自分で置いてある理由を考えてみたのですが、恐らくうっかりフォームを送信させないようにするための工夫だと思います

グーグルフォームの使い方(ざっくり)

この画像の右側にあるボタンで説明と質問を追加できます
一番上のボタンが質問を追加するボタンで、二番目のボタンが説明を追加するボタンです

またこの画像で”ラジオボタン”と書かれている部分をクリックすると、質問の形態を変更することが出来ます

最も使うのは一番上の記述式で、アンサーキーなどを直接入力させることができます
二番目はチェックボックスで、参加の確認等に使われます

画像で選択してあるのが記述式の質問です

右下の”必須”のボタンは、オンにしておくと、参加者がその問題に回答しないとフォームを送信できないようにする設定です
質問の数は必要最低限にして、全て必須をオンにしておくと良いでしょう

そのまた右下の”回答の検証”というのは、記述式の質問だけにある機能であり、文字数などの条件を制限できます 条件を満たさない解答を記入するとフォームを送信できません

正規表現というものを使うとかなり細かく設定できますが、数字と文字数の制限をするだけなら、"[0-9]{n}"で、n桁の数字に制限できます
下の例だと数字5桁以外のアンサーキーを入れるとフォームを送信できません

これが二番目のボタンの、タイトルと説明です
良い感じに書きたいことをまとめましょう

そしてこちらが回答について操作できる欄です

回答を受付中のボタンはその名の通り、回答を受け付けるか否かの設定です
デフォルトでオンになっていますが、よく切り替え忘れるので、コンテスト開始時や終了時には注意しておきましょう

また、右上にある緑色のボタンを押すとこういった画面になります

右下の作成を押すと、新しいシートに飛びます
そのシートにはフォームの解答が自動的に記録されます

そのシートをいじって結果発表を用意するのですが、それはまた下の方で詳しく書きます

最初に戻って、右上にある白いアイコンの欄にある機能も紹介します

まず目のアイコンはプレビューに飛ぶことが出来るボタンです
プレビューはフォームを公開した際に、実際に参加者が見る画面を確かめられる機能です

そしてその隣の設定を押すとこのような画面になります

一枚目で必要なのは”回答を1回に制限する”です
解答フォームには不要な場合が多いと思いますが、エントリーフォームでは複数回答無しの方が良いでしょう

二枚目がかなり重要なパートなのですが、エントリーフォームではここの一番下に、解答フォームへのリンクを貼る必要があります

つまりどういう事かというと、エントリーフォームを送信後、解答フォームへのリンクを表示することで、エントリーフォームを出さないと絶対に解答フォームに辿り着けない仕様にするという寸法です

この方法を最初に考えた人はきっと天才でしょうね

ここまでの手法を総括すると、両フォームに質問を書き、記録用の新しいスプレッドシートを作成する、そしてエントリーフォームの設定で、回答を1回に制限し、解答フォームへのリンクを貼り付けるという流れです

コンテストが終了すると、ここで作った集計用のシートに解答が集まるわけです

結果発表・集計シートの管理

大体やることは同じなので一つにまとめました

集計シートをPDFで出力すれば大体結果です
主催者のコメントを添えることも多いですが、シートにそのまま添付できるので、今回はシートの操作だけ扱います

…ちょっと申し訳ないのですが、自動化みたいな話をする予定だったはずが、あまりに時間が無さすぎて、人力でごりごりやる方法しか紹介できません…
ふわっとやり方は浮かんだので、いつかどこかで説明するかも…?

またさっきからずっとシートシートって言ってますが、スプレッドシートのことを指してます
ほぼエクセルですが、フォームと直接つながっているので断然こっちの方が使いやすいです

ではまず集計の前提として、行/列の移動、数える、足し算引き算、コピペという基本動作を要求します
ですが、簡単なだけに間違えやすいという罠が潜んでいるため、やっぱり自動化したい所なんですよねー

まあとにかくリストで流れを説明します(これはあくまで自分のやり方です)

・エントリーフォームのシートで、タイムスタンプに制限時間を足した列を用意する
・解答フォームのシートで、名前の列で行を並び替える
・〃で、それぞれの名前を選択し、タイムスタンプの列で行を並び替える
・両シートを見比べ、それぞれの名前で最も制限時間に近く、なおかつ越えていない行をコピーして別のシート(集計シート)にコピーする
・集計シートで、アンサーキーの正答不正答に応じて点数を割り振り、得点の合計の列を出す
・〃で、得点の合計の列で行を並び替える
・〃に順位やコメントなどを付け足し、PDFで出力する

といった感じです

見比べるとか、正答不正答のチェックとか、点数の割り振りとかが人力だとかなり怖いところになります
なので校閲やチェックがかなり重要な役割を果たします

校閲・チェック

そもそも校閲とチェックの違いが分からないかもしれませんが、自分の言いたいこととしては、文章を直すのが校閲、情報を直すのがチェックという感じです

なので校閲を行うのは、インストラクション、エントリー/解答フォーム、問題用紙、結果発表の四つです
…そうです、一番最初の四つですね そのため校閲は外側を直すという感じです
文章と書きましたが、画像などの修正もここに含まれます

そしてチェックを行うのは、インストラクション、問題用紙、集計シートの三つです

インストラクションは、ルールに抜けや矛盾が無いか、例題が一意解でルールに沿っているかのチェック
問題用紙は、問題の一意解チェック、アンサーキーのチェック
集計シートは、集計の方法が間違っていないかのチェック

何となく違いが伝わったかと思います
しかし何故ここまで区別するのかというのは、やはりチェッカーの存在があります

自分で作った情報を自分で確かめるというのは、やはり思い込みなどによるミスが生まれやすいです
というより、パズルを作る側としては、何回解いても誰かに確認してもらうまで一意解が確定しない感覚があります(自分だけ?)

校閲もやってもらった方が良いとは思いますが、チェックはとにかくチェッカーが必要不可欠です

なのでちゃんとチェッカーを募集しましょう

宣伝・チェッカー募集

気づいてる人もいると思いますが、一番上の所で、宣伝だけひっそりと太字にしておきました
なぜなら自分は、この業界には宣伝力が足りないと考えているからです

まあ確かに、そもそもコンテストの内容が熟練の人向けの場合がほとんどなので、そんなに宣伝しなくても十分というのはありますが

でもやはりパズル大会固有の面白さというのは誰にでも有ると思います
時間制限とか取捨選択とか
それを多くの人に伝えられたら良いのですが、どう考えても一筋縄じゃいかないです

だから宣伝の力で少しでもハードルを下げれたらなと思っているのです
もちろん中身も一緒に変えれると思います

ちょっと話がブレましたが、やはり宣伝も必要不可欠なんです
宣伝は(今は)簡単だから存在感が薄いですが、完全に失敗したらコンテストが成り立たなくなるわけですしね

自画自賛になってしまうのですが、一番上の宣伝は個人的にかなり良いと思っています 皆さん是非よろしくお願いします

最後にチェッカー募集ですが、1,2人をツイッターで募集するのが一般的です
上手く連絡を取りながらコンテストを仕上げましょう

終わりに

全然時間が足りなかったせいで、ふわっとした終わりになってしまいました
しかも皆0時きっかりに投稿してましたが、自分だけこんな時間になってしまいました
…いい感じに来年へのハードルを下げれたところでお別れです
来年もペンシルパズルアドベントカレンダーをよろしくお願いします

※一番上のエントリーフォームの文面を考える際、panistaさんが制作されたフォームを参考にしました panistaさんありがとうございます
※18/12/21 12:51 追記:  何と公開できていなかった…fffさんありがとうございます…






余談 サクトキ!!の反省
サクトキは自分にとって初めてのコンテスト制作だったのだが、あまりにも反省点が多すぎた
まさに行き当たりばったりという感じで進行していた記憶がある
グーグルの諸ソフトは使いこなせていると思っていたが、フォーム間の移動の設定方法を完全に忘れていた
そして自分で変な代替用のシステムを作ってしまったことが原因で、しばらく立ち直れないぐらいのミスを起こしてしまった
次回は自分でこの記事を読みながら作りたいと思う
また間の空白期間が長すぎたというミスもある
今回紹介できなかったシートの自動化も含めて、色々と時間の短縮を目指したい
様々な迷惑を掛けた方々に改めてお詫びする

この記事が気に入ったらサポートをしてみませんか?