• ベストアンサー

プログラミングコンテストで

プログラミングコンテストというものが開催されるのですが、そこでFlashを使ってゲーム感覚で競い合おうということになりました。 具体的には、5×5のビンゴゲームのFlashを使用し、25問の問題を解いていき、解けた番号のビンゴの色が変わるといったものです。ビンゴの数が多いチームの勝ちといった感じです。このビンゴゲームの機能を満たすFlashは完成しましたが、ちょっと最近話がややこしくなってきました。 例えば参加チームが10チームあるとします。各チームの画面にはそれぞれ各々のビンゴ画面があります。それとは別に、別の1つの画面で上位4チームのビンゴ画面をFlashでリアルタイムで随時表示してギャラリーに見せることはできないかと言われました。上位4チームが入れ替われば、その画面も随時入れ替わります。どのような方法で実現が可能でしょうか?みなさんよろしくお願いいたします。

質問者が選んだベストアンサー

  • ベストアンサー
  • BlurFiltan
  • ベストアンサー率91% (1611/1754)
回答No.2

一番簡単な部分が Flash ではないかと思います。 Webではないので(LANでも可能かもしれないので),集計用のプログラムはPerlやPHPに限定する必要もありません。 ASP でも,単なる VBS でも可能かもしれません。 しかし,少なくともデータをとりまとめるマシンと,集計プログラムは必要でしょう(集計自体は Flash でも可能です)。 ゲームをするチームPCからは, 5秒に1回 とか,1問正解するたびに1回とか,何かの拍子に定期的に集計用マシンにデータを送信します。 25問で解けたか解けていないかというデータですから, 例えば次のようなデータを送信すれば良いだけです。 象さんチームなら, data=Zou,0,0,1,0,0,0,0,1,0,0,1,0,0,0,0,0,1,0,0,0,0,1,0,0,0 カバさんチームなら data=Kaba,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1 というようなデータです。 それを集計用マシンのプログラムで,上位4位を集計して, 例えば次のようなデータを生成させます。 &rank1=Sai,0,1,0,1,0,0,1,0,1,0,1,0,1,0,0,0,1,1,0,0,0,1,0,1,0& &rank2=Uma,0,1,0,0,1,0,0,0,1,0,0,0,1,0,1,0,0,1,0,0,0,0,1,1,0& &rank3=Inu,1,0,0,0,1,0,0,1,0,0,0,0,0,1,1,0,0,0,0,1,0,0,0,0,1& &rank4=Ushi,0,0,1,0,0,1,0,1,0,0,0,0,0,0,1,0,0,0,0,1,0,0,0,1,0 このデータを,上位4チームのビンゴ画面を表示させるFlashで受け取って, その Flash に表示させれば良いだけです。 つまり 4チーム 表示用のFlash は別に作成する必要がありますが, 上のデータによってチーム名を表示させて,ビンゴの色を変えれば良いだけですから,そんなに難しいことではないと思います。 または, データをとりまとめるマシンには,順位は関係なく,各チームから送信されてくるデータをただ保存しておいて, そのデータを「上位4位までのチーム」表示用 Flash ですべてロードし,Flashに集計させても良いと思います。 ------------------------------------------  しかし,私が一番難しいと思ったのは  "「上位4位までのチーム」 をどうやって決めるのか。"  ということです。 上の例では,正解問数だけで  Sai さんチーム10点  Uma さんチーム8点  Inu さんチーム7点  Ushi さんチーム6点 という順位にしていますが,, 実は4点でランク外の Kaba さんチームがいきなりビンゴするかもしれません。 リーチの個数で順位を決めても同じです。 5~6個リーチしているチームより1つしかリーチしていないチームの方が先にビンゴする可能性もあります。 というか,確実に穫ろうとする知能犯チームの方がそういう行動を取るような気もします。 そんなことになったら,何のために用意したもの??? すべて水の泡です。 ギャラリーも「ホヘ???」とあっけにとられてしまいます。 しくみを作るのに難しい順を付けると  上位4位を決定するルール   >サーバサイドのプログラムやしくみ    >Flash という順だと思います。Flashが一番簡単です。 しかし, 「上位4位を決定するルール」を私は思い付きません。 したがって,他のしくみやプログラムも私は用意する気にはなれませんね。 > 別の1つの画面で上位4チームのビンゴ画面を > Flashでリアルタイムで随時表示して > ギャラリーに見せることはできないかと言われました。 そんな感じで,具体的にどういうことかを考えずに,イメージだけで簡単に言うクライアントさんはたくさんいますね。 わたしもそういうわけのわからないクライアントさんによく泣かされます。 「上位4位を決定するルール」を思い付いていらっしゃるのでしたら, そのまま先へ進まれても良いと思います。 LoadVarsクラスのメソッドですべてできると思います。 または getURL で VBScript を実行させても良いかもしれません。 しかし,もし 「上位4位を決定するルール」 が決まらないのでしたら, 根本的に別の方法や演出を考える方が良いと思います。 例えば, ゲームの状況を2人くらいのスタッフで見まわって,もう少しでビンゴしそうなチームのモニタをカメラで撮影して回るとか。 そんな感じの方が現実的でなおかつ面白いと思います。

worf18
質問者

お礼

大変参考になりました。ありがとうございます。 大分見えてきました。 ゲームの順位のつけ方ですが、ビンゴがそろっている数(普通のビンゴは1つそろったら終わりですが、今回のものはいくつそろっても良い。)と問題を解き終わるまでの時間で決めるそうです。

全文を見る
すると、全ての回答が全文表示されます。

その他の回答 (1)

回答No.1

通信させたいならデータを集約するサーバが必要です。 ビンゴのデータをサーバに送り、サーバで集計します。 ついでですので、サーバで集計した順位をクライアント側に返しておけばゲームをやっている人にも『現在8位』のような表示も出来ると思います。 集計用のプログラムはPerlやPHP等のサーバサイドのスクリプトで書きます。 表示用のFlashを用意し、集計値をもとに上位4位までのチームを表示させます。表示用のFlashは定期的にデータをとりにいくように更新し、常に上位4チームを表示させるようにさせます。 めまぐるしく順位が変わるようなゲームの場合はFlashのSocketを使うと良いでしょう。リアルタイムでデータが更新されます。うまくつくればSocket サーバだけでも大丈夫だと思います。 Socketについては下記URLを参考に(と言ってもなかなか構築するには情報が少なすぎますが)。 http://faces.bascule.co.jp/link.php 面白いゲームを作って下さい。 参考まで。

worf18
質問者

お礼

回答ありがとうございます。 なかなか難しそうですが、参考にさせていただきます。

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • ゲーム差

    きのうの試合終了時点でのパ・リーグ上位2チームのゲーム差についてお伺いします。サイトで確認すると以下のとおりです。 http://baseball.yahoo.co.jp/npb/standings/ 上位2チームについてですが、ゲーム差は「{(上位の勝数ー下位の勝数)+(下位の負数ー上位の負数)}/2」になると思いますが、それにしたがって計算すると、{(26-30)+(20-17)}/2=-0.5になります。しかし、表ではゲーム差なしになっています。私は-0.5になるのかと思ったのですが、これで正しいのでしょうか。 今年は現在、ロッテが4つも引き分けがあり、しかも試合消化数も他チームより少ないので、ゲーム差が近接してくると、勝率の関係で我らがソフトバンクとどちらが上位なのかわからなくなるときがあります。

  • 年末ボーリング大会を開催します

    年末ボーリング大会を開催します 幹事です 4人3チームで一番ピンを多く倒したチームが 勝ちです 一人私が(幹事)13人目で余るので、 各チーム、第10フレームで最後に投げる人の合計が一番多いチームに私(幹事)の倒したピン数を足して順位を競うゲームをしようと思ってます みなさん参加者側にたって 教えてください。 このゲーム楽しめそうですか?

  • PCの画面上の任意の点から色を読み取るプログラム

    PCの画面上の任意の点(固定点)から随時、RGBの値を読み取って、リアルタイムでExcelに表示してくれる方法を教えていただきたいです。 プログラミングに関しては全くの素人なので、詳しい方がいましたら、些細なことでも構いませんので是非教えていただけると幸いです。

  • ビンゴソフトで数字ではなくひらがなを抽選できるソフトを探しています。

    友人の2次会で「参加者の名前ビンゴ」を開催したいと考えております。(ひらがなを抽選して、名前の文字が揃った方がビンゴ) 会場のプロジェクターを使いゲーム進行する予定ですが、ひらがなを抽選できるビンゴソフトがなかなか見つかりません。 実は http://www.pert.co.jp/Bingo/ で名前ビンゴ専用ソフトを見つけたのですが、画面が淋しいので、もっと華やかなものを探しています。機能としては申し分ないのですが。。 どなたか御存知でしたら教えてくださいませ。 有料でも構いませんので。(あまり高額なものは無理ですが^^; よろしくお願いします。

  • 結婚式二次会でのゲームについて

    来月結婚式を挙げます。 同じ日に二次会も開催し、幹事をお願いした人と先日打ち合わせをしました。 その時に、二次会でのゲームとして二人に関係したクイズを出して、 上位10名に商品を出す事にすると言われました。 予算もあまり無いのでゲームは一種類になるかと思います。 個人戦でクイズって、残りの人たちは途中でイヤになってしまいませんかね? 幹事にそのことを伝えたところ、「商品をもらうのが目的じゃなくて、二人の馴れ初めを知ってもらうのが目的だから」と言われました。 そんなもんなんでしょうか? (1)参加してくれる人たちを4グループ位に分ける →団体戦でクイズ →勝利チームに駄菓子袋詰めみたいな商品プレゼント (2)ビンゴで個人戦 というふうに勝手に考えています。 ただ、せっかくいろいろ考えてくれる幹事さんにちょっと悪いかなー、と。 まずゲームそのものについていかがなものか、教えてください ちなみに参加人数は30~40人位の予定です。

  • Excel2003です。関数を教えてください。

    イベントでビンゴゲームを行います。液晶プロジェクターで投射したいのです。 添付画面を参照ください。左側画面がビンゴのヒット数字をA1~BW1までの75ケのセルにヒット数字をランダムに入力していきます。右側画面が「ビンゴ!」と言った人のカードを正しいかどうか照合する画面です。BINGOの列の下にルールで決められた数値を全て入力した状態の画面です。そこで、左画面で入力した数値が右側画面の定位置に(昇順)リアルタイムで表示したいのです。なんとか出来ないものでしょうか? 補足 右側画面に対する補足: 上記の質問文の中で右側画面は「照合用」と記しましたが、参加者が自分のカードの数字を再確認する目的もあります。 よろしくお願いいたします。

  • クイズ番組みたいな点数表示のソフトってありませんか?

    友人の結婚式2次会でグループ別のゲームをするのですが、各チームの得点表示をしたいです。 プロジェクターが使えるのでパソコンで使えるフリーのソフトがあれば教えてください。 ビンゴのソフトは結構あるのですが、ただ単に点数を表示するものが見つからなくて… また、専用のソフトでなくても他に良い方法があればアドバイス下さいm(_ _)m

  • VBでリアルタイムオークションをしたい

    VBを使ったリアルタイムオークションをするソフトを作っていますが 一番肝心なデータのやりとりが全く無知で悩んでいます。 構成としては、中心にサーバーがあり、そこへ多数のクライアントが データーを見に来る(データーを送る)という事ですが 私の頭の中では、クライアント側がタイマー制御で ごく短い間隔(0.5秒以下)でサーバーのデータを読みに行く と言うことぐらいしか思いつきません。 これではどう考えても重いソフトになりそうで、いわゆる オンラインゲームのような感じで随時サーバーのデーターを 読む(読みっぱなし)にする方法は無いのでしょうか? サーバー側のデータが変化したら随時クライアント側も そのデーターを取得することが軽く簡単にできないかと 思って 色々探してRTCというものを見つけましたが いわゆるオンラインチャット(メッセンジャー)のよう なものを作れるAPIみたいです。 これですと相手がオンラインやオフラインになったら 随時自分の表示も変わるので、できない事はないと思っていますが どうも自分の意図した動きではないような感じで うまくプログラミングできません。 また、肝心なデーターの読みとり方法として Inet を使ったFTP接続による読みとりしか思いつかず インターネット環境からの読みとりはVPNを構築すれば 簡単ですが、設備の負荷はかけたくないので、これも 何とかクリアできないかと悩んでいます。 そもそもJAVAやフラッシュではできることのようなのですが VBには不向きな処理なのでしょうか? VBばかりやってきているので、VBで何とか作りたいのですが リアルタイム通信については全く情報が無く困っています どなたか 良いアイデア、参考ページ、解説などご教授いただける とたいへん助かります。 どうぞよろしくお願いしたします

  • 教えてください

    昨日まで出来ていた富士通ビンゴゲームが出来なくなりFlash Playerが必要です。 最新のFlash Playerをダウンロードし、インストールしてくださいと表示されました。 何回インストール完了してもゲーム画面が表示されません、ダウンロードか、インストールとかのやり方に間違いがあるのだと思います、何方か正しいインストール方法ご教示下さい、よろしくお願いいたします。PCは2008年Biblo Vistaです。

  • プログラミングコンテスト

    学生の時コンテストに出すため作品作りで協力し合ったあの日… ※ いつまでも学生でいたときの青春をわすれたくない… てなわけで卒業後も社会人でも応募できるプログラミングコンテストってなにがありますか? どんな、ちっぽけなのでも構いません。 たくさん教えてください。 ※結局間に合わなくて出せなかったですけどね(笑)  いつかは出品してみたいです!