Node.jsなら日曜プログラマーでも簡単に通信対戦ゲームが作れる

Post on 20-Dec-2014

4.045 views 7 download

description

 

Transcript of Node.jsなら日曜プログラマーでも簡単に通信対戦ゲームが作れる

NODE.JSなら日曜プログラマーでも簡単に通信対戦ゲームが作れる

竹内 佑介

自己紹介

• 竹内 佑介です

• 趣味でゲームを作ってました

• クリック&クリエイト、RPGツクール

HSP、DXライブラリとかやってました

中学生の頃はツクールや クリック&クリエイトやってました

• こいつらは使いやすいけど、変数とかサブルーチンの機能が弱くて大変だった

• じゃあ、プログラムを書こう

という訳で入門書を読みましたが

• 入門本読むぞ

• えっ、ウインドウ作るだけで100行

• プログラムとか素人には無理

そこに救世主が登場

その名もHSP

HSPは僕の青春でした

• ウインドウ作るのが1 行だけ

• ボールがバウンドするアニメーションも20行くらいで書けちゃう

• しかも無料で使えて、けっこう軽い

まあその後DXライブラリに鞍替え しますが……

• 当時のHSPにはグローバル変数しかなかった。ー>関数、クラス使いたいよ

• あと、HSPだと途端に敷居があがるものがありました、それは……

通信対戦と3D

C++で3D、通信にチャレンジしてみますが……

• 3DはDXライブラリで何とかなったけど、素材用意するのが死ぬ程大変

• ソケット通信プログラムもやってみたけど、初期化するだけで100行近くって

• こんなのツクラーに毛が生えた程度の人間が、趣味で出来ることを超えてますよ

そこでNODE.JS+SOCKET.IO の出番です

SOCKET.IOで簡単に 通信プログラムが書けます

• これだけでサーバ、クライアント間での通信プログラムが書けてます

論より証拠ということで 通信対戦ゲームを作ってみました• ジャンケンゲームです

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

かかった時間、行数とか

• 作成期間は2日間(土日で作りました)

• プロダクトコードの行数は500行くらいです

• socket.io、express、enchant.jsというオーソドックスな組み合わせで作られています

作ってみた感想

• サーバから自分で書けるフリーダムさがいいですね

->Railsとかは予め決められた枠組みを自分で拡張

する感じ

->node.jsは自分で枠組みを作れる感じ

->こういうところがHSPとかに通じるものが あると思います。

• 堅実さよりもすぐに動かせる機能こそ、ツクラーの望むものです

手軽さ故にはまったところもあります

• じゃんけんの手を定数にしてました

• が、クライアントと繋げるでスペルミスしてるのに気づきませんでした

• undefineでもイコールは通るので、テストコードにもひっかかりませんでした

• Javaならビルドエラーで一発で気づいたんだろうな

じゃんけんゲームのソースについて

• 今日さらしたゲームのソースコードは、

githubに公開してます

https://github.com/kaidouji85/janken

まとめ !

この短期間で通信対戦ゲームを 実装できる使いやすさ

まったくNODE.JSは最高だぜ (ごめんなさい、これが言いたかっただけです)

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