見出し画像

ポケカ交流会の運営が大変すぎたので、スマホ1台で完結するアプリ作った

こんにちは、普段は「あつまれポケカフレンズin横浜」や「平日夜ポケカ」(オンラインでの練習会)を運営しているパヤオです。
そして、ポケカ公認ジャッジ・オーガナイザーとしても活動しています。

この度、ガンスリンガー形式のイベントに特化したアプリ「cadoba」(Web / iOS / Android)を作りました。
対戦が終わった人から順番に次の相手を自動でマッチングしてくれるアプリです。
半年ほど自分が開催するイベントで使いながら改良してきて、ある程度形になったので紹介させてください。

cadoba Web版: https://cadoba.fun
iOSアプリ: https://apps.apple.com/jp/app/cadoba/id6759292152
Androidアプリ: https://play.google.com/store/apps/details?id=com.cadoba.cadoba_app&hl=ja

イベント詳細画面

なんで作ったのか

まずガンスリンガー形式について簡単に説明すると、参加者が次々と対戦していくイベントスタイルのことです。
一般的な大会のように「全員揃ってからラウンド開始」ではなく、対戦が終わった人からどんどん次の相手とマッチングしていくので、待ち時間が少なく、たくさん対戦できるのが特徴です。

自分が運営しているイベントはどちらもこのガンスリンガー形式なのですが、既存の管理ツールはスイスドロー大会向けのものがほとんどで、ガンスリンガーの運営には合いませんでした。

実際にはホワイトボードや紙を使って手動でマッチングを回していたのですが、参加者が増えると管理が追いつかなくなります。20人超えたあたりから「今誰が空いてるんだっけ?」「この人さっきも同じ相手だったんじゃない?」みたいなのが頻発して、かなり大変でした。

しかも主催者がマッチング管理に追われると、自分が対戦に参加する余裕がなくなります。自分も対戦したいタイプの主催者にとっては、これが結構つらかったです。

そこで、ガンスリンガー形式に特化したアプリを作ってみることにしました。

cadobaでできること

自動マッチング(コア機能)

「待機中」にした参加者同士を自動でペアリングします。
主催者が手動でマッチングを管理する必要がなく、対戦が終わったらボタンひとつで次の対戦相手を探していきます。

再戦の設定もできて、「再戦なし」にすればまだ対戦したことのない相手を優先的にマッチングしてくれるし、「連戦なし」にすれば直前の対戦相手だけ避けるようにもできます。
さっき書いた「この人さっきも同じ相手だったんじゃない?」問題は、これで完全に解消されました。

対戦卓数を設定しておけば、マッチング時に卓番号も自動で割り当てられます。「テーブル3で対戦してください」みたいなのがアプリ上で自動的に出るので、参加者が迷うこともなくなりました。

さらに、対戦時間を設定しておくとイベントページ上にカウントダウンタイマーも表示できます。
「あと何分で終わり?」を参加者それぞれが確認できるので、主催者が何度も声をかける必要が減ります。

これがcadobaの一番のコア機能で、これのおかげで主催者も普通に対戦に参加できるようになりました。

マッチング画面


フリーマッチとスイスドロー

cadobaではガンスリンガー形式の中で「フリーマッチ」と「スイスドロー」の2つのモードを選べます。

フリーマッチは、対戦が終わった人からランダムにマッチングしていく形式です。
途中参加・途中退出もOKで、対戦回数に制限もないので、交流会や練習会にはこっちが向いています。

スイスドローは、同じ戦績同士でマッチングして決められた回戦数で順位を決める形式です。
一般的なスイスドローと違い、ラウンドごとに全員の試合終了を待つ必要がなく、対戦が終わった人から順番にマッチングされていきます。
大会っぽくやりたいときにはこっちを選べます。

イベント作成画面でのマッチング設定

プッシュ通知

既存のイベント管理ツールはWebアプリがベースのものが多くて、プッシュ通知ができないものがほとんどでした。
cadobaはネイティブアプリ(iOS/Android)なので、いろんな場面でプッシュ通知が届きます。

・対戦相手が決まったとき — 「対戦が決まりました! vs 〇〇」
・イベント開催前日/当日 — 「本日開催!〇〇」「明日開催!〇〇」
・イベント開始時 — 「イベントが開始されました!」
・フォローしている団体が新しいイベントを作ったとき — 「〇〇の新しいイベントが作成されました」
・参加者がチェックインしたとき — 運営メンバーに「〇〇さんが受付しました」
・団体をフォローされたとき — 運営メンバーに「〇〇さんが〇〇をフォローしました」

特にマッチング通知が便利で、対戦が終わってスマホをしまって雑談してても、通知ですぐ次の対戦に気づけます。
リマインダー通知も地味に助かっていて、前日や当日に自動で届くので、参加者へ「明日よろしくお願いします」みたいな連絡を個別に送る手間がなくなりました。

通知はアプリ内で種類ごとにON/OFFできます。
対戦通知、イベントリマインダー、イベント開始・終了、運営向け通知、団体の新着イベント通知を分けて設定できるので、必要な通知だけ受け取れます。

マッチングした時のpush通知
通知設定画面

QRコードでかんたん受付

イベント当日の受付もQRコードで完結します。参加者がイベントページのQRコードを読み取るだけでチェックイン完了。
紙の受付名簿とか用意する必要がなくなったので、受付周りの準備がだいぶ楽になりました。
チェックインがあると、運営メンバーのスマホに「〇〇さんが受付しました」って通知が届くので、受付に張り付いてなくても大丈夫です。

事前参加登録にも対応していて、参加上限を設定しておけば定員超過分は自動でキャンセル待ちに入り、キャンセルが出たら順番に繰り上がります。

QRコード受付

イベント運営に便利な機能

過去イベントのコピー — 定期開催のイベント作成を短縮。
毎週・毎月のように同じ形式でイベントを開く場合、過去のイベント内容をコピーして新しいイベントを作れます。
イベント名、説明、開催地域・場所、参加設定、マッチング方式、卓数、タイマーなどを引き継げるので、毎回ゼロから入力する必要がありません。

過去イベントから内容コピー機能

ランキング表示 — イベント内の勝敗をリアルタイムで集計。
イベント終了時に順位が出るので、カジュアルな交流会でもちょっとした盛り上がりが生まれます。
さらに、自分の成績をまとめた画像をワンタップで作成・シェアできます。「今日3位だった!」みたいなのをXやLINEに投稿してくれる参加者もいて、イベントの宣伝にもなっています。

シーズンランキング — 複数回のイベントをまたいで成績を蓄積。
シーズン通しての総合ランキングが出るので、常連の参加者にとってモチベーションになります。
「次も来よう」って思ってもらえるきっかけになってる気がします。
シーズン上位にはバッジが自動で付与されて、プロフィールに表示されます。

ランキング

ゲストユーザ機能 — スマホを持っていない子供も参加OK。

主催者がニックネームを入力するだけでゲスト参加者を登録できます。
登録するとゲストコードが発行されるので、次回以降はそのコードを入れるだけで同じユーザーとして参加できます。
シーズンランキングを使っている場合、戦績が引き継がれるので便利です。
ゲストの勝敗報告は、運営メンバーが代わりに操作できます。

ポケカの交流会には小学生の参加者も多いので、この機能は重宝しています。

ゲストユーザ機能

団体機能 — 定期的にイベントを開催しているグループ向けの機能です。
団体を作ってメンバーを登録しておくと、イベント作成時に運営メンバーが自動で追加されたり、団体内のシーズンランキングが使えるようになります。

さらに、参加者はよく行く団体をフォローできます。
団体をフォローしておくと、その団体が新しいイベントを作ったときに通知を受け取れるので、「次回いつやるの?」を見逃しにくくなります。
主催者側も、団体ページでフォロワー数やフォロワー一覧を確認できます。

イベント詳細画面の団体フォローボタン
団体のページ

個人の振り返りに使える機能

対戦メモ — 対戦ごとに使用デッキ・先攻後攻・サイド数などを記録できます。

対戦メモ

分析機能 — 記録した対戦データから、通算成績やデッキ別の勝率を自動で集計。
自分の得意・不得意を把握して、次の大会に向けた練習や構築の参考にできます。

分析

オンライン対戦もできます(Discord連携)

Discord Botを使ったオンラインでのマッチングにも対応しています。
自分が運営している「平日夜ポケカ」はこの機能を使って、オンラインでガンスリンガーをやっています。
毎週決まった曜日・時間にイベントを自動作成する定期イベント機能もあるので、定期開催の運営もほぼ手放しでできます。

Discord Botの導入ガイドはこちら: https://www.cadoba.fun/guide/discord-bot

ログインについて

X(Twitter)、Apple、LINEの3つのアカウントでログインできます。
普段使っているアカウントですぐ始められるので、参加者側の登録もかんたんです。

登録・ログイン機能

実際どう使ってるの?

現地イベント(あつまれポケカフレンズin横浜)の場合

  1. 事前にcadobaでイベントを作成、参加者を募集

  2. 当日、参加者にQRコードでチェックインしてもらう(スマホがない子はゲストユーザとして登録)

  3. イベント開始ボタンを押す

  4. あとはcadobaが自動でマッチングしてくれるので、主催者も対戦に交じれる

  5. 対戦が終わった人は結果を報告して、「次の対戦へ」を押すだけ

今まで「次の対戦相手を探す」「受付の管理」に割いていた時間がほぼゼロになったのが一番大きいです。
おかげで自分も対戦を楽しめるようになりました。

最後に

cadobaは現在、Web版・iOSアプリ・Androidアプリをリリースしています。
ポケカ以外にも、遊戯王・デュエマ・MTG・ワンピースカードなど、いろんなTCGのイベントで使えます。
すべての機能が完全無料で、制限もありません。

まだまだ改良中ですが、実際に半年以上自分のイベントで使い続けて、だいぶ安定してきました。
交流会や練習会の運営で困っている方がいたら、ぜひ一度試してみてください。
フィードバックも大歓迎です!

cadoba Web版: https://cadoba.fun
iOSアプリ: https://apps.apple.com/jp/app/cadoba/id6759292152
Androidアプリ: https://play.google.com/store/apps/details?id=com.cadoba.cadoba_app&hl=ja

いいなと思ったら応援しよう!