OpenSangokushi commit ML
sango****@lists*****
2011年 2月 4日 (金) 21:58:16 JST
Revision: 478 http://sourceforge.jp/projects/sangokushi/svn/view?view=rev&revision=478 Author: hryksbt Date: 2011-02-04 21:58:16 +0900 (Fri, 04 Feb 2011) Log Message: ----------- Added Paths: ----------- trunk/IRC_ChatLog/20110203_Skype.txt Added: trunk/IRC_ChatLog/20110203_Skype.txt =================================================================== --- trunk/IRC_ChatLog/20110203_Skype.txt (rev 0) +++ trunk/IRC_ChatLog/20110203_Skype.txt 2011-02-04 12:58:16 UTC (rev 478) @@ -0,0 +1,274 @@ +[2011/02/03 22:48:55] 裕之: こんばんはー +[2011/02/03 22:49:22] doi: こんばんは +[2011/02/03 22:49:53] 裕之: doiさんは、ソフトウェアを作るって過程の中で、 +[2011/02/03 22:50:06] 裕之: どの辺が一番面白く感じますか? +[2011/02/03 22:50:24] doi: 納品するときってのはだめですか?w +[2011/02/03 22:50:52] 裕之: そう来るとは思いませんでしたが、 ^^;確かにそれもそうかもですね +[2011/02/03 22:51:31] doi: 設計自体は嫌いじゃないですけど、色々と制約があったりクライアントの希望を飲まなきゃというのは若干気になります。 +[2011/02/03 22:51:50] doi: その分、実装してるときは外の様子が変わらない限り自由なので、楽しいとも言えますね。 +[2011/02/03 22:52:07] 裕之: もっとこうすりゃ良いのに、ってのが多々あるような感じですかね +[2011/02/03 22:52:31] doi: そうですね。まぁ、僕視点での話しなので、クライアントが欲しいものとは違うのでしょうが。 +[2011/02/03 22:52:43] doi: でも、基本的にものづくりは好きです。どこをとっても。 +[2011/02/03 22:52:49] 裕之: なるほどー +[2011/02/03 22:52:56] 裕之: では天職ではないですか^^ +[2011/02/03 22:53:01] doi: 条件があるとすると、作っているものにわくわくできないと、作業になってしまいますね。 +[2011/02/03 22:53:23] 裕之: 作業って考えるとつらいですよね +[2011/02/03 22:53:42] doi: そうですねぇ。まぁ、好きなことしてお金もらえているので、幸せなんでしょうが。 +[2011/02/03 22:54:25] 裕之: まだまだ有り余っていそうですね +[2011/02/03 22:56:40] 裕之: 三国志の方ですが、 +[2011/02/03 22:57:10] 裕之: もっとこうすりゃいいってゆうのがあれば、ドンドンそうゆうのは適用していってもらえればと思うのですが、 +[2011/02/03 22:57:30] 裕之: 逆にそれも意外に難しいのかなとも思ったりします +[2011/02/03 22:57:55] doi: そうですね。 +[2011/02/03 22:58:15] 裕之: ルールがある事に大半の方は慣れてると思うので +[2011/02/03 22:58:18] doi: さっきも言いましたが、あくまで僕の独断でこうだったらなので、正しいとは限らないんですよね。 +[2011/02/03 22:58:20] 裕之: 私もそうですし +[2011/02/03 22:58:40] 裕之: それは私も同じなので、 +[2011/02/03 22:58:54] 裕之: 今作った仕様も私の独断でしかないので、 +[2011/02/03 22:59:14] 裕之: 間違いなく、もっと色々、あると思います +[2011/02/03 22:59:20] doi: いや。でも、ゲームのマーケティングとか勉強されていたじゃないですか。僕はそういうのも何もしていないので。 +[2011/02/03 22:59:38] 裕之: 勉強だけはやってますね +[2011/02/03 23:00:06] 裕之: でも、全員でやる必要もないと思うので、必要な部分だけ共有できればいいかなと思います +[2011/02/03 23:00:34] 裕之: 因みに、 +[2011/02/03 23:00:45] 裕之: 今の段階で設計に手をつけるとしたら、 +[2011/02/03 23:00:59] 裕之: ある程度は進められると思いますか??? +[2011/02/03 23:01:05] 裕之: テーブル設計とか。 +[2011/02/03 23:01:45] doi: えっと。それ以前の部分を固めないと行けないのかなと思ってます。 +[2011/02/03 23:01:53] doi: ちょうどゲームとしての設計といいますか。 +[2011/02/03 23:01:56] 裕之: ふむふむ +[2011/02/03 23:02:09] doi: ちょうど、裕之さんが仕様書を更新してくれているような部分ですかね。 +[2011/02/03 23:02:14] 裕之: 決まりきらない部分が多々あるって感じでしょうかね +[2011/02/03 23:02:32] 裕之: 通信とかのあたりですか??? +[2011/02/03 23:02:42] doi: ゲームとしてどうするかですかね。 +[2011/02/03 23:03:01] doi: 実装的にはとりあえず置いておいて、何をどうして楽しむってとこですかね。 +[2011/02/03 23:03:23] 裕之: 一番基本的なところですね +[2011/02/03 23:03:48] 裕之: これはもう、私の中では答えは出てると思っていて、 +[2011/02/03 23:04:17] doi: 遊び方の妙として、武器の組み合わせによる戦略的なところを楽しんでもらうのか、コツコツLvあげ(武器購入?)して、それによる達成感を楽しむのか。 +[2011/02/03 23:04:40] 裕之: 戦略を練りつつも、アクション要素があるので、ゆっくりまったりもできず +[2011/02/03 23:04:54] 裕之: マルチプレイでの戦闘を楽しむことを +[2011/02/03 23:05:02] 裕之: 目的としたいと思ってます +[2011/02/03 23:05:17] 裕之: なぜなら、そうゆうのって、あまり見かけないからです +[2011/02/03 23:05:46] 裕之: アクションだけなら、複雑な動きにとにかく凝るべきだと思いますが、 +[2011/02/03 23:06:00] 裕之: 個人の戦略やチームプレイも絡んでくるので、 +[2011/02/03 23:06:05] 裕之: 操作自体は簡単にして、 +[2011/02/03 23:06:26] 裕之: パッと決めて、パッと動く +[2011/02/03 23:06:42] doi: というと、極端な言い方をすると、数が勝負の戦争って感じですかね? +[2011/02/03 23:06:43] 裕之: とまあ、イメージでお伝えするとこんな感じですね +[2011/02/03 23:07:07] 裕之: 数もそうですが、属性も少なからず影響すると思います +[2011/02/03 23:08:16] doi: なるほど。 +[2011/02/03 23:08:28] 裕之: それと、仲間通しで組むフォーメーション +[2011/02/03 23:08:44] 裕之: 地形を意識して戦うことになりそうですね +[2011/02/03 23:09:25] 裕之: ドラクエみたいに、プレイヤーが入り込めない岩があったり、細い道なんかがあると +[2011/02/03 23:09:37] 裕之: 面白いかなと +[2011/02/03 23:10:48] doi: そうですよねぇ。 +[2011/02/03 23:11:03] 裕之: いいかんじですかねええ??? +[2011/02/03 23:11:46] doi: 日本人的には判官贔屓というか、弱者が強者を倒す方が好まれますよね。その方法の妙が痛快なんですよね。とはいっても、対戦型だとバランスが。。。というところで思考停止しています。 +[2011/02/03 23:12:25] 裕之: 舞台は三国志ですので、 +[2011/02/03 23:12:50] 裕之: 一撃で大量に倒せるような、兵器ってのはないですからねえ +[2011/02/03 23:13:21] 裕之: あとは、計略をどのようにゲームに組み込むかというのは重要な要素だと思います +[2011/02/03 23:13:42] 裕之: まだ決め切れてないので、 +[2011/02/03 23:13:57] 裕之: 火計とか、ただダメージを与えるだけにするか +[2011/02/03 23:14:36] 裕之: 一度火がついたユニットは、沈火するまでダメージを受け続けるとか +[2011/02/03 23:14:39] 裕之: などなど +[2011/02/03 23:17:20] doi: あとは、それに応じて、移動の仕方とかも変わってきますよね? +[2011/02/03 23:17:32] doi: 今は、1マスずつ動くことになったんでしたっけ? +[2011/02/03 23:17:41] 裕之: そうです +[2011/02/03 23:18:10] 裕之: そうじゃないと、システム的にどう解決するかで行き詰ってしまい、 +[2011/02/03 23:18:26] 裕之: 半オートマチックな操作は難しいという結論に至りましたので、 +[2011/02/03 23:18:47] 裕之: いっそのこと、もっとリアルタイムにしてしまえーという話になってます +[2011/02/03 23:19:19] doi: 半オートマチックは難しいですかね? +[2011/02/03 23:19:22] 裕之: 行き先だけ指定して、数秒かけて目的地に到達する +[2011/02/03 23:19:26] 裕之: みたいな。。 +[2011/02/03 23:19:51] 裕之: で、敵とその途中で遭遇した場合、戦闘が強制的に始まって +[2011/02/03 23:20:00] 裕之: とかというところをどう計算するか +[2011/02/03 23:20:01] 裕之: ですね +[2011/02/03 23:20:07] 裕之: あと、 +[2011/02/03 23:20:26] 裕之: 目的地に移動している最中に、やっぱりこっち +[2011/02/03 23:20:41] 裕之: 見たいな操作も受け付けるようにしたいとか +[2011/02/03 23:20:51] 裕之: 出来そうですか??? +[2011/02/03 23:21:22] doi: 結局は同じなんじゃないかと。 +[2011/02/03 23:21:32] 裕之: 特に、通信部分で全体の状態を把握しなければいけないので、 +[2011/02/03 23:21:58] 裕之: パフォーマンス要求高そうだなあ、、なんて話してました。 +[2011/02/03 23:23:14] doi: クライアントが欲しい情報って、見える戦力の場所と、前回から今回からまでに起きた事象だけでいいのではないかと。 +[2011/02/03 23:24:28] 裕之: 多数のユーザーの位置情報と、敵と座標が交差したときに、攻撃ってゆうイベントが発生します +[2011/02/03 23:24:38] 裕之: おっと、意味不明な。。 +[2011/02/03 23:25:12] 裕之: 多数のユーザーの位置情報を常に受け取りつつ、 +[2011/02/03 23:25:24] 裕之: 座標が交差した場合に、 +[2011/02/03 23:25:25] 裕之: ですね +[2011/02/03 23:25:46] doi: 更新間隔をどのくらいにするかですが、 +[2011/02/03 23:25:56] doi: 移動命令をクライアントから送ることと +[2011/02/03 23:26:02] 裕之: はい +[2011/02/03 23:26:26] doi: サーバに一気に出した命令の一部を解釈することとは同等なのではないかと思っています。 +[2011/02/03 23:26:59] doi: つまり、ユーザが(0,0)から(10,10)に行きたいと命令を一度出して、半オートマチックにするということは、 +[2011/02/03 23:27:33] doi: 命令を出した次の更新タイミングでは、(0、1)に、 +[2011/02/03 23:27:40] doi: その次には、(1,1)に、 +[2011/02/03 23:28:01] doi: さらにその次には(1,2)にみたいな命令の連続だと思うんです。 +[2011/02/03 23:28:11] 裕之: そうですね +[2011/02/03 23:28:17] doi: これをクライアントから1マスずつ命令を出させたとしても、解決すべき問題は一緒なのではないかと。 +[2011/02/03 23:28:59] 裕之: ちなみに、更新間隔ということは、つまりターンがある前提なのかと思いますが、 +[2011/02/03 23:29:35] 裕之: 私が考えていたのは、ターンのない、リアルタイムな操作なんですね +[2011/02/03 23:29:56] 裕之: これも条件的にさほど変わりませんか??? +[2011/02/03 23:30:49] doi: リアルタイムな操作って、本質的に無理なのだと思っています。できるのは、ターンが細かい単位で動作する、擬似リアルタイムなのかと。 +[2011/02/03 23:31:15] 裕之: 丁度そんな解決法も話してまして、 +[2011/02/03 23:31:48] 裕之: 更新間隔がどれくらいあればいいか、下手すると超長くなってしまったり +[2011/02/03 23:32:02] 裕之: などなど悩んでました。 +[2011/02/03 23:32:15] 裕之: 完全なリアルタイムで行く場合、 +[2011/02/03 23:32:26] 裕之: 自分以外のプレイヤーの情報については、 +[2011/02/03 23:32:36] 裕之: サーバーからプッシュする形ですね +[2011/02/03 23:32:51] doi: 完全なリアルタイムであったとしても、クライアントからはポーリングすることになるので、その間隔以上のリアルタイム性は出せないのではないかと。 +[2011/02/03 23:32:55] 裕之: クライアントは受け取る都度画面でそれを表現するって形です +[2011/02/03 23:33:36] 裕之: ポーリングだと、電池の消耗が激しそうという話になりまして +[2011/02/03 23:34:21] 裕之: クライアントはポートを空けて、ポカーンとサーバーからのデータを待ち受けてる状態なら +[2011/02/03 23:34:42] 裕之: そんなに電池を食わないだろう、と考えていたわけです +[2011/02/03 23:34:56] doi: それってできるんですか?IPもころころ変わるのだと思いますし。調べてないんですが。 +[2011/02/03 23:35:17] 裕之: それをですね、今おこたねこさんが実験してるところです +[2011/02/03 23:35:35] doi: 2.2からできるんですかね。 +[2011/02/03 23:35:41] 裕之: 携帯ですからね。移動するとIP変わりますからね +[2011/02/03 23:36:11] 裕之: ソケット通信自体は、仕様上、1.6でも出来ますよね +[2011/02/03 23:36:44] doi: ソケット通信の仕組みだと、IP変わるとNGじゃないですか?というか、一度、切断されちゃうとおしまいじゃないですか? +[2011/02/03 23:37:05] 裕之: IPが変わることをキャッチできるかどうか +[2011/02/03 23:37:11] doi: iPhoneのAPNSのような仕組みなら行けるかもですが、 +[2011/02/03 23:37:12] doi: http://jp.techcrunch.com/archives/20100523chrome-to-android-push/ +[2011/02/03 23:37:15] doi: これですかね。 +[2011/02/03 23:37:21] 裕之: はやっ +[2011/02/03 23:37:42] doi: よく見てないので、検討はずれだったらごめんなさい。 +[2011/02/03 23:37:50] doi: ということで、これから帰宅するので、一度落ちますね。 +[2011/02/03 23:37:56] 裕之: あ、はい +[2011/02/03 23:38:02] 裕之: またお仕事でしたね +[2011/02/03 23:38:04] doi: 話の途中ですみません。 +[2011/02/03 23:38:06] 裕之: いえいえ +[2011/02/03 23:38:11] 裕之: ありがとうございます +[2011/02/03 23:38:14] 裕之: いつもいつも^^; +[2011/02/03 23:44:01] 裕之: Mizukamiさん +[2011/02/03 23:44:04] 裕之: 見てますか??? +[2011/02/03 23:44:19] 裕之: お、 +[2011/02/03 23:44:29] 裕之: narunaruさんも来ましたね! +[2011/02/03 23:48:50] 裕之: たぶん、Skypeもソケット通信してると思うんですけど、 +[2011/02/03 23:49:07] 裕之: 移動中でも途切れない仕組みを応用できれば +[2011/02/03 23:49:18] 裕之: 解決するんじゃないかなと思ってるわけですが、 +[2011/02/03 23:49:25] 裕之: どうやるんでしょう??? +[2011/02/03 23:50:52] narunaru: お疲れ様です^^ +[2011/02/03 23:50:58] 裕之: どうもー +[2011/02/03 23:51:02] narunaru: 過去ログ見てました- +[2011/02/03 23:51:13] 裕之: 丁度doiさんと入れ違いでしたね +[2011/02/03 23:51:20] narunaru: なかなかコアな話題が出てましたね^^ +[2011/02/03 23:51:46] 裕之: 楽しいですよね こうゆうの +[2011/02/03 23:52:20] narunaru: はい、楽しいですね。やはりみんなが思う箇所なんですねー +[2011/02/03 23:53:24] 裕之: 実際、携帯のアプリで双方向通信できている場合って、 +[2011/02/03 23:53:58] 裕之: 移動中でも途切れないので、技術的に解決する仕組みって結うのは +[2011/02/03 23:54:04] 裕之: 存在すると思うんですよね +[2011/02/03 23:54:46] narunaru: そうですね。skypeが解決できているなら、ほかの一般アプリでも実現できるのだと思います。 +[2011/02/03 23:55:06] 裕之: 出来るけどやりかたが^^; +[2011/02/03 23:55:14] narunaru: はい^^;; +[2011/02/03 23:56:19] 裕之: narunaruさんの周りにもコアな人が絶対いそうなので聞いて見てもらえればなあと。。 +[2011/02/03 23:57:31] narunaru: 了解です^^でもアンドロイドの開発やってる人は名古屋には居ないので、本社に戻ってからになりそうです^^;; +[2011/02/03 23:58:16] 裕之: Androidっていうレベルの話なのか、Unixのネットワークプログラミング的な話なのか。。。 +[2011/02/03 23:59:32] narunaru: Unixのネットワークプログラミングは、残念ながら今の場所には詳しい人は居ないですね^^; +[0:00:18] narunaru: 元、ナビの部隊なんでどちらかというとwindowsとtron系ばかりです。。。 +[0:00:20] 裕之: 自分の周りにも、なかなかそうゆう分野の人はいなそうだなあ。。 +[0:00:43] 裕之: ナビは、GPSでデータを受け取る場合、 +[0:00:48] 裕之: ソケットではないんですか? +[0:01:13] narunaru: う~ん、どうなんでしょう。。。GPSの部分はやったことないのですが、多分 +[0:01:28] narunaru: GPSデータは勝手に +[0:01:57] 裕之: でも何かしらのプロセスがあって、デジタル的にデータを受け取ってるので、基本原理としては同じなのかなあと。。 +[0:02:13] narunaru: すいません、離籍します。。。 +[0:02:17] 裕之: おっと +[0:02:20] 裕之: はい。。 +[0:02:24] 裕之: 悶々 +[0:02:25] narunaru: 英語の時間です。。 +[0:02:27] 裕之: 悶々 +[0:02:32] 裕之: なるほど^^ +[0:02:38] 裕之: 頑張ってくださいー +[0:26:25] narunaru: 無事完了しました^^ +[0:26:41] narunaru: 今日も大苦戦です^^;; +[0:26:57] 裕之: 早いですねー +[0:27:18] narunaru: で、続きですが、GPSは勝手に送られてきてハードで受信してそこからはI2SとかCANとかに +[0:27:26] narunaru: なってるんじゃないかと思ってます。 +[0:27:34] narunaru: そうぞうですが。。。 +[0:27:54] 裕之: なぞのキーワードが出てきましたが、そうゆうものなんですね +[0:28:39] narunaru: あ、CANとかI2Sは通信の手段です。 +[0:30:01] 裕之: WikipediaでI2Sを見たけど、日本語のようで日本語でないような世界でした! +[0:31:04] narunaru: 自分もAPIを使用しているだけなので、よくわかってないです^^; +[0:34:22] 裕之: いまずっと調べてたけど、謎です +[0:35:18] narunaru: 自分もナビをやってはじめて知りました +[0:35:32] 裕之: ソケット +[0:36:01] 裕之: narunaruさんの英会話中調べてたけど +[0:36:17] 裕之: いい感じの情報ないですねええええ +[0:36:42] narunaru: そうなんですね。。。 +[0:37:00] narunaru: 一般には公開されてない情報なんですかね +[0:37:50] 裕之: でもIPフォンアプリを作ってる人もいるから、 +[0:37:59] 裕之: あると思うんですけどねえ +[0:38:48] narunaru: そうなんですねー、ためしに英語で検索してみてはどうでしょうか? +[0:39:57] 裕之: お、早速narunaruさんの腕の見せ所ではないですか!? +[0:40:51] narunaru: はい、やっぱりそうきますか^^;;足りない英語力でがんばって調べて見ます +[0:57:01] doi: 帰宅しました~。 +[0:57:42] 裕之: はやいですねー :O +[0:58:01] doi: 1時間くらいですねぇ。 +[0:58:19] 裕之: あ、もうそんなに経ちますか^^; +[0:59:50] 裕之: 例の件、悶々としてましたが解決に至らずですねえ +[1:00:11] 裕之: こうゆうときはAndroidの会に投げてみますか^^ +[1:00:22] 裕之: 得意の (flex) +[1:00:52] doi: 何か知っている方はいそうですよね。 +[1:02:17] 裕之: さっき、narunaruさんと話してた様に、Skypeとか、IPphoneアプリとかで途切れず話せてるあたり、仕組みはあると思うんですよね +[1:02:45] doi: 確かにそうですねぇ。 +[1:03:00] 裕之: 全く途切れないっぽく感じますモンね +[1:03:20] doi: Skypeはインストールしたっきり使っていないのでw +[1:03:34] 裕之: あれま^^; +[1:07:04] 裕之: PJ活性化のために、まずはSourceForgeの方に投げてみようかと思います +[1:07:22] doi: http://androidoperatingsystem.net/2010/03/27/incorporating-socket-programming-into-your-applications/ +[1:07:31] doi: 電話同士で通信するって記事はありましたねぇ。 +[1:07:40] doi: でも、見ると普通にソケット通信してるだけなですよね。 +[1:08:02] 裕之: アドレスが変わったときが鍵なんですよね +[1:08:55] 裕之: public static String SERVERIP = "10.0.2.15"; は相手のアドレスのことですかねえ?? +[1:09:50] doi: デフォルトで入っていて、起動時に自分のIPに書き換えるようです。 +[1:10:11] 裕之: あ、そうゆうことですね +[1:15:01] 裕之: 今猛烈にコード読んでるとこでしたか? +[1:15:38] narunaru: 自分はコード見てましたが、よくわからなかったです^^; +[1:15:47] 裕之: むむ +[1:21:46] 裕之: サーバとの通信に使うアドレスがしりたいのであれば、 + +SocketオブジェクトのLocalAddressプロパティを見れば、分かります。 + +説明がアレなので、コードざっと書くと、 + +--- + +var sock:Socket = new Socket(); +sock.addEventListener(Event.CONNECT, ConnectCompleteHandler); +sock.connect("server address", 80); // 実際に接続するサーバのアドレスとポートを指定。 + +function ConnectCompleteHandler(ev:Event):void { +trace("connect :: use LocalAddress >> " + sock.localAddress); +} + +--- + +とかいう感じ。 + +BSD Socketで言う所の、getsockname みたいな感覚ですね。 + + +試行されていたNetworkInterfaceを使う方法は、default gateway も合わせて検出できれば、サーバと通信するものが選べそうではありますが、AIRでは標準でデフォルトゲートウェイ拾えないみたいなんで、その方法を貫きたい場合は、Native Process使って、Cなりjavaなりで書いた別プロセスで拾った結果を戻すしかなさげですねー。 +[1:22:00] 裕之: こんなのもありましたけど。。 +[1:22:48] 裕之: http://www.fxug.net/modules/xhnewbb/viewtopic.php?topic_id=4036 +[1:22:53] 裕之: ですけども。。 +[1:23:25] doi: う~ん。Skypeがどうやってるかはよく分かりませんが、 +[1:23:29] 裕之: はい +[1:23:55] doi: ゲームに関してはそこまでの接続性を求められないので、対処はできるでしょうね。切れたら、新しいIPをサーバに通知すればいいだけの話なので。 +[1:24:09] 裕之: そうですね +[1:24:15] doi: あとは、それで電力消費がどうなのかですが。 +[1:24:34] doi: まぁ、気にしなくてもいいかなと個人的には思ったりします。 +[1:25:52] 裕之: なにぶん仕様しだいですね +[1:26:23] 裕之: 結論としては、半オートマチック操作と、 +[1:26:37] doi: やりたいことが十分に面白ければ、電池の持ちが悪くても遊んでもらえることに期待。 +[1:26:56] 裕之: 今コミットしてる仕様ではそんなに大差ないかもといったところでしょうか +[1:27:41] 裕之: 優先度としては面白さがやっぱり1番に来ますよね +[1:30:18] doi: でしょうね。 +[1:31:39] 裕之: そろそろzzz仕様かと思いますが、 +[1:32:19] 裕之: 半オートか、リアルタイム操作かは、また相談させてください +[1:32:35] doi: はい。 +[1:32:43] doi: また、よろしくお願いします。 +[1:32:55] 裕之: ありがとうございましたー +[1:33:08] 裕之: どっちが面白いかで、検討ですね +[1:33:10] narunaru: お疲れ様でした^^ +[1:33:16] 裕之: それではー +[1:33:26] 裕之: お休みなさいー \ No newline at end of file