日曜プログラマーが1週間くらいで通信対戦ゲームを作ってみた

19
2014/3/23 日曜プログラマーが 1 週間くらいで通信対戦ゲームを作ってみた 竹内 佑介

Upload: yuusuke-takeuchi

Post on 20-Dec-2014

2.682 views

Category:

Documents


5 download

DESCRIPTION

 

TRANSCRIPT

Page 1: 日曜プログラマーが1週間くらいで通信対戦ゲームを作ってみた

2014/3/23

日曜プログラマーが1週間くらいで通信対戦ゲームを作ってみた

竹内 佑介

Page 2: 日曜プログラマーが1週間くらいで通信対戦ゲームを作ってみた

自己紹介

✤ 竹内 佑介!

✤ 日曜プログラマーです!

✤ RPGツクール、HSP、

クリック&クリエイト、

DXライブラリをいじってました!

✤ 最近はenchant.js + node.jsにはまってます

Page 3: 日曜プログラマーが1週間くらいで通信対戦ゲームを作ってみた

通信対戦ゲームは敷居が高い?

✤ コンピュータ単体で動くゲームのノウハウは 沢山ありますね!

✤ でも、通信対戦ゲームの作り方となると途端に敷居が高くなりますよね

Page 4: 日曜プログラマーが1週間くらいで通信対戦ゲームを作ってみた

そんなことはありません

✤ 便利なライブラリ・サービスを組み合わせれば、

日曜プログラマーでも1週間で通信対戦ゲーム が作れます!

✤ 論より証拠ということで、まずはゲームをお見せします

Page 5: 日曜プログラマーが1週間くらいで通信対戦ゲームを作ってみた

ジャンケンゲームを作ってみました

http://janken-kaidouji85.herokuapp.com/

Page 6: 日曜プログラマーが1週間くらいで通信対戦ゲームを作ってみた

動画デモも公開しています

https://www.youtube.com/watch?v=1_ukdCUcw-Q

Page 7: 日曜プログラマーが1週間くらいで通信対戦ゲームを作ってみた

ゲーム作成期間とか

✤ 作成期間 1週間

->プロトタイプ作成 4日、ブラッシュアップ 3日

->日曜プログラマーだから1日1日の感覚は結構多いんだけどね!

✤ 行数は全部で500行程度

->行数はサーバとクライアントで大体半々くらいです

Page 8: 日曜プログラマーが1週間くらいで通信対戦ゲームを作ってみた

作り方を少しだけ紹介します

✤ どうやって累計1週間で通信対戦ゲームを作ったのか少しだけノウハウを共有させて頂きます!

✤ まずは通信対戦ゲーム作りで壁になるところをリストアップします

Page 9: 日曜プログラマーが1週間くらいで通信対戦ゲームを作ってみた

通信対戦ゲーム作成の課題

1. ゲームプログラムてどう作るの?!

2. 通信プログラムってどう書くの?!

3. サーバとゲーム画面の通信は、どういう仕組みでやればいいの?!

4. ゲームをネットに公開するのはどうやるの?

Page 10: 日曜プログラマーが1週間くらいで通信対戦ゲームを作ってみた

1. ゲームプログラミング

✤ ゲーム画面作成にはenchant.jsを使います!

✤ ネット上の日本語のノウハウが多く、入門本も沢山あります!

✤ http://enchantjs.com/ja/

Page 11: 日曜プログラマーが1週間くらいで通信対戦ゲームを作ってみた

2. 通信プログラム

✤ node.js + socket.ioで超簡単に通信プログラムが書けます!

✤ BASICとかHSP感覚で通信プログラムが作れます!

✤ これもノウハウが多いですし、公式ページが驚くほど分かりやすいです!

✤ http://socket.io/#how-to-use

Page 12: 日曜プログラマーが1週間くらいで通信対戦ゲームを作ってみた

3. 通信ロジック①

✤ ここまでで、ゲーム画面、通信プログラムが作れるようになります!

✤ しかし、サーバ・クライアント間で同期をとる方法を考える必要があります

Page 13: 日曜プログラマーが1週間くらいで通信対戦ゲームを作ってみた

サーバ クライアント

ゲームロジック実行

結果に応じたゲーム画面表示

コマンド送信

ゲーム判定結果送信

3. 通信ロジック②

サーバ  :  ゲームの処理を実行する!クライアント: ゲームの結果を表示! プレイヤーのコマンドをサーバに送信

Page 14: 日曜プログラマーが1週間くらいで通信対戦ゲームを作ってみた

4. サービス公開方法

✤ herokuとかを使えば簡単にサービス公開できます!

✤ デプロイは1コマンドでOK 例)git push heroku master!

✤ しかも5アプリまでなら無料で公開可能です!

✤ https://id.heroku.com/

Page 15: 日曜プログラマーが1週間くらいで通信対戦ゲームを作ってみた

もっと詳しく知りたい方は

✤ ソースコードをgithubに公開しているので、是非アクセスしてみて下さい!

✤ https://github.com/kaidouji85/janken

Page 16: 日曜プログラマーが1週間くらいで通信対戦ゲームを作ってみた

応用すればスゴいゲームも作れるかも

✤ ジャンケンゲームで一通りサーバ・クライアント間通信はできました!

✤ あとはこれを少し複雑にしたり、積み上げたりすれば、より複雑なゲームを作ることも可能です!

✤ 実はジャンケンゲームを元に、通信対戦PRGを作ってます

Page 17: 日曜プログラマーが1週間くらいで通信対戦ゲームを作ってみた

ジャンケンゲームの応用でこんなん作ってます

✤ ジャンケンゲームの応用で通信対戦PRGを作ってます!

✤ 近況は、ブログで順次お伝えします

Page 18: 日曜プログラマーが1週間くらいで通信対戦ゲームを作ってみた

ブログもやってます

✤ ブログもやってます!

✤ 通信対戦プログラムの解説なども順次掲載するつもりです!

✤ 毎日プログラム

http://blog.livedoor.jp/kaidouji85/

Page 19: 日曜プログラマーが1週間くらいで通信対戦ゲームを作ってみた

ご清聴ありがとうございました