5ちゃんねる ★スマホ版★ ■掲示板に戻る■ 全部 1- 最新50  

■ このスレッドは過去ログ倉庫に格納されています

【囲碁?】囲連星のAIを作ってみよう【連珠?】

1 :名前は開発中のものです。:2006/08/03(木) 16:13:45 ID:jCmv785l
フリーソフト囲連星のAIを自作してみませんか?(囲碁+連珠)
デフォルトのAIが弱いので今なら囲連星AIの第一人者になれる。
もし名人より強いAIを作成すればそのAIが名人位に。
詳しいことはソフトダウンロード後、ヘルプメニューを参考に。

作成方法:AI部分をプログラムしコンパイルしたものをファイルコピーすればOK
ソフトダウンロード:http://irensei.com/

577 :447:2008/04/18(金) 20:03:39 ID:vj6JGiSx
>>572
>>569=>>447です。
IDを見ていただければわかると思います。
話がかみ合って無いですか?

>>573
了解です。

>>574
当分変更しないかもしれませんが、誰かにいいアイディアが沸いて変更したくなったときに、
そのための作業が面倒くさいとその人は諦めてしまうかもしれません。
そうするといいアイディアが人知れず死んでいくことになります。
それはたった一回のことでも大きな損失になるかもしれません。(大げさ?)
とにかく下げれるハードルはなるべく下げておくほうが後々いいことあると思います。

>>575
今のところ連の情報はBoardクラスには含めないつもりです。
一つ一つのクラスはなるべく必要最小限の機能しか持たせなくして、独立して扱えるようにするつもりです。
そのほうが取り回しがよいと思うので。

一応以下のような構想です。

Point 座標を表すクラス。
Board 局面を表すクラス。9x9のマスのどこにどの石がおかれているか、劫の情報、手番の情報を持つ。
PointSet 座標の集合のクラス。
StoneSet 連のクラス。連に含まれる石の座標の集合とその連の隣接点の座標の集合の情報をもつ。
Game ゲームを管理するクラス。囲連星のルールに従って着手したり、勝敗の判定をする。

もし連の情報とBoardの情報を持ったクラスを作りたければ
BoardとStoneSetを使ってそれらをもった新しいクラスを作ることは可能です。



578 :Y:2008/04/19(土) 01:29:28 ID:iiK1YGD1
>>576
多分>>543と多分同一のものをあげときました。
http://www-2ch.net:8080/up/download/1208535840197938.M9PcLj

>>577
なるほど、わかりました。

579 :名前は開発中のものです。:2008/04/19(土) 03:00:38 ID:tZVNWLtB
>>578
ありがとうございます
でもエラーで起動できませんでした
なにかライブラリとか必要ですか?

580 :東陶基:2008/04/19(土) 09:58:57 ID:wuZsEwfZ
アップローダーはどうなるかわかりませんが
とりあえず公式HPとは別に囲連星のAIコミュニティサイトみたいなのを作りましょうか。
そこにこのスレでUPしてもらったファイルをそのサイトからDL出来るようにすればいいかなと。


581 :Y:2008/04/19(土) 10:47:27 ID:Rh1JSjNB
>>579
ライブラリは必要じゃないと思いますが、
447さんが作ったGUIが無いと動かないです。

582 :名前は開発中のものです。:2008/04/19(土) 11:07:57 ID:tZVNWLtB
>>581
>>469からGUIを落として同じフォルダに入れて起動しましたがAIが出てきません
特別な操作が必要ですか?

583 :447:2008/04/19(土) 11:47:43 ID:bybo7FLQ
447です。
GUIを再アップしました。
http://www-2ch.net:8080/up/download/1208573058915527.9QsKxs

このファイルとYさんのAIを同じフォルダに入れて、IrenseiGUI.exeを実行してください。
それにしてもファイルが流れるのはやいですね…

584 :名前は開発中のものです。:2008/04/19(土) 12:17:59 ID:Nxclwo9L
2chロダは3日ぐらいしかもたないので
こういうファイルのやりとりにはあまり良くないんじゃないですか?
以前使ってたうpろだ.orgか
会長さんが新しく用意してくださるコミュニティサイトの方が
たぶんいいでしょうね

585 :東陶基:2008/04/19(土) 12:23:24 ID:wuZsEwfZ
一応暫定的に作りました。
http://ai.irensei.com/

今度から保存しておいた方がよさそうなファイルをUPした場合は
その旨をレスに書いておいてください。

586 :名前は開発中のものです。:2008/04/19(土) 12:59:40 ID:tZVNWLtB
>>583
ありがとうございます
無事起動できました

9路盤だと狭いのでだいぶ感覚が変わりますね
囲連星というより囲碁みたいです

587 :名前は開発中のものです。:2008/04/19(土) 13:03:48 ID:tZVNWLtB
あと、9路囲連星のルールについて質問なのですが、
1線で7連を作った場合は勝ちにならないのでしょうか?
それでも本家と違って、1線の石を含む7連はOKなのですよね?

そのへんのルールの細かい部分が良く分かりませんでした・・・

588 :名前は開発中のものです。:2008/04/19(土) 13:14:59 ID:yn7cP96h
>>587
含むのはOK。9路は単純に1線のみの7連だけがダメと理解すればOK。

589 :名前は開発中のものです。:2008/04/19(土) 15:29:22 ID:Y2QR1vlW
447さん、初めから9*9しかやらないつもりなんですか?

590 :447:2008/04/19(土) 16:22:44 ID:bybo7FLQ
>>589
初めは19路のAI作ってたんですけど、あんまり強くならなかったです。>>383参照。
で、9路なら19路より簡単に強いAIが作れるだろうと思ったんですけど、
意外にそうでもない。もしかしたら同じくらい難しいかもしれません。

あとは詰め囲連星のソフトなんか作れるとおもしろいかなと思っていますが、
それはもしやるとしても当分先ですね。(たぶんやらない。)


591 :名前は開発中のものです。:2008/04/19(土) 17:09:13 ID:Y2QR1vlW
AIではないんです Cのルールの事です

592 :名前は開発中のものです。:2008/04/19(土) 19:53:05 ID:SnX/iDTQ
>>588
なるほど
把握しました

593 :447:2008/04/19(土) 22:35:57 ID:bybo7FLQ
19路のルールなら本家のソースがあるのでそちらを使うといいと思います。



594 :名前は開発中のものです。:2008/04/19(土) 22:51:05 ID:Y2QR1vlW
>>593
使い方が難しいんです…どれがルールなのか判らないです
9でも19でもその他でも統一的なのが良いです

595 :名前は開発中のものです。:2008/04/20(日) 01:12:18 ID:y0rkqz3b
チュートリアルの文書は見つけた?

596 :名前は開発中のものです。:2008/04/20(日) 12:54:06 ID:pQ5Uoy2G
ルールのアルゴリズムわかりました ホームページのAuto対戦のソースがわかりやすいです ありがとう

597 :名前は開発中のものです。:2008/04/21(月) 00:06:41 ID:zSd5krN3
会長が歯が立たないAI作れば10万出るんでよね? 2006/11となってますけど…

598 :東陶基:2008/04/21(月) 00:26:15 ID:dzQ1S9+/
>>597
はい、歯が立たない(先手で10回打って1回も勝てないくらい)レベルで10万と思ってます。
会長自身で判断できるのはそこまでの強さなので。

ただCPUの思考時間だけ注意してください。一手に何十秒も考えるようだとフリーソフトに
組み込めないので。要するに強いAIに賞金を出すと言うよりはフリーソフトに組み込める
AIに支払うというスタンスだと思ってください。

599 :名前は開発中のものです。:2008/04/21(月) 00:28:12 ID:zSd5krN3
PCで強くて速いやつ作れたら、携帯で月額100円とかで販売できないかな?

600 :名前は開発中のものです。:2008/04/21(月) 00:33:01 ID:zSd5krN3
>>598
わかりました。19*19でも1手1秒以内に人間相手に圧勝できるのを目標にします。
599を送信したらレスついてました。

601 :東陶基:2008/04/21(月) 00:39:41 ID:dzQ1S9+/
>>599
販売そのものは出来ると思いますよ。
実際DL形式での販売なら何度かそういう話もありましたが
フリーソフトで公開してるのでほぼ同じものを販売するのは気が引けたので
やめてます。

作られた方(GUIも含めて作った場合)が売りたいと言うことであれば日本囲連星協会としては気にしないので
どうぞ販売してください。ただぼったくりとか法外な価格で詐欺まがいに売るのは辞めてね。
一応商標も取ってますが囲連星の名前はどうぞ自由に使ってください。


602 :名前は開発中のものです。:2008/04/21(月) 01:13:30 ID:zSd5krN3
いえいえそんな気はないです 携帯の販売や開発経験ないしそういう話がくる事もないので… 
例えばそういう展開もあるかなと思っただけです

603 :447:2008/04/21(月) 23:39:45 ID:CIuKF2oH
一応ルールのコーディングは終わりました。
これからテストです。
今後の事を考えるとやっつけのテストじゃなくて、
使いまわしの利くテストを書いたほうがいいんですよね…

囲連星もちゃんと産業になれば面白いんでしょうけどね。
なにをやるにも会長の持ち出しってワケにも行かないだろうし。



604 :東陶基:2008/04/24(木) 17:03:08 ID:ORh7oz3C
4/27(Sun)の19:00にオンライン対局場で
臨時の定例会を開きますので参加できる方はよろしくお願いします。
http://dojo.irensei.com/

ただ臨時でいきなり告知をしたので
何人くらい参加してくれるのかはわからないです。


605 :東陶基:2008/04/24(木) 17:07:05 ID:ORh7oz3C
>>603
一応HPにアドセンス貼ってみたので持ち出しのたしにでもなればと。
興味がある広告がありましたら見てください。

そうですね今後のことを考えたら19路みたくAIだけ作ればGUIは使いまわせるように
なると新しく開発する人は楽でしょうね。
そういう意味ではテストは基本的なバグ取りだけでもとりあえずはいい気がしますけどね。
こっちでも打ってみますので447さんが軽くテストしてもらえば残りはみんなで
使ってテストにするという形式でも良いと思いますよ。

606 :名前は開発中のものです。:2008/04/25(金) 05:29:05 ID:IMNDdpFi
短手数で決着するなら、黒が有利だけど
盤面がかなり埋まるような段階になれば白が断然有利だね
黒は端の2つを含むものは作れないし、8連も作れないけど
白は端も含められるから

607 :名前は開発中のものです。:2008/04/25(金) 09:46:57 ID:Qhtjlc8m
どういうこと?端ってなんだろ

608 :名前は開発中のものです。:2008/04/25(金) 10:22:00 ID:IMNDdpFi
19*19の盤面の端の2行と2列は、7連にカウントしないルールがある
しかし、黒は端を含めて8連作ると反則負け

609 :447:2008/04/25(金) 21:49:02 ID:PdEP2I8H
9路のルールのソースを一旦アップします。
http://www-2ch.net:8080/up/download/1209126828686063.wHdBWa

すいません。
あんまりテストしてません。とりあえず動かしてみてください。
バグがあったら報告or可能ならソースを修正お願いします。
Mainというディレクトリにmakefileが入ってますのでmakeしてください。
makefileのことはあんまり知らないので出来がよくないかも
しれませんが誰か書き直してくれるとありがたいです。

拡張性がどうのこうのといいましたが、
特別な仕掛けなどは何も無いです。

あと、doxygenのコメント入れてみました。
htmlというディレクトリにDoxygenのドキュメントが入ってるので見てみてください。
わかりずらいところがあったら報告お願いします。

610 :名前は開発中のものです。:2008/04/28(月) 12:55:27 ID:1byUW4+2
19路を開発している者ですが、石がいくつつながっているか調べるのに
縦横斜めの列をビットとして登録して表引きするのと、その都度数えるのではどちらが良いんでしょうか?
前者は局面の更新に手間がかかりますが、石が何処でつながっているか直ぐに調べられます。

611 :名前は開発中のものです。:2008/04/28(月) 13:10:25 ID:1byUW4+2
>>610ですが、縦横斜めをビット列で記録するのは、やめました。
黒の、縦横斜めの石の個数を記録しておき、8個以上になった場合だけ合法手なのか精密検査します。

612 :名前は開発中のものです。:2008/05/07(水) 18:03:54 ID:dWjoNhTk
将棋はアマトップがコンピュータに負けちゃったね。

613 :東陶基:2008/06/15(日) 17:42:15 ID:jt59rKjf
そういえば折角なので九路のやつ完成させませんか?
折角ちゃんと動いているので。

614 :東陶基:2008/06/15(日) 17:52:44 ID:jt59rKjf
今動かしてみたらちょっと直した方がいいかなと思ったところはファイル名を直しただけでOKでした。

・irenseiGUI.exeだとなんなのでirensei.exeにならないかな→ファイル名直しても正常に動いた
・ai_Yというのはいかがなものか?→ファイル名をAIに変更したら表示も変わった

上の二つが出来たのでそのままVectorに公開してしまおうと思いますがどうでしょうか?
AIの表示名はもっといいのがあれば教えてください。
AI(Y氏考案)とかでもいいですし

615 :東陶基:2008/06/15(日) 18:04:06 ID:jt59rKjf
訂正。
2番目の変更は出来なかったです
表示は変わりますが対局になったら落ちた

616 :名前は開発中のものです。:2008/06/15(日) 19:34:59 ID:v4adpNPP
九路じゃ勝負つかんだろと思いましたが
やってみると最初から終盤戦みたいな感じで難しいですね><

617 :447:2008/06/15(日) 20:39:29 ID:2kcLN95s
>>615
ai_Y.rbのファイル名を変える場合にはai_Y.rbの5行目の

module Ai_Y

のところをファイル名にあわせてください。

ファイル名はaiで始まる必要があり、
moduleのところはAiで始まる必要があります。

モジュール名に日本語は使えないので、(Y氏考案)は現状、無理です。




618 :東陶基:2008/06/16(月) 21:06:13 ID:/6RHEGTR
>>617
ありがとうございました。
とりあえず普通に動いてますので
ちょっとテストしてベクターとかに上げてみましょうかね。
特に誰かやってみたい人(プログラムの管理など)がいなければ
こちらで登録はしますがどうですかね。

619 :447:2008/06/16(月) 21:43:16 ID:xloIcLFP
>>618
そうですね。
よろしくお願いします。

Yさんの同意も>>512で取れてますし。


620 :名前は開発中のものです。:2008/06/27(金) 22:31:39 ID:D2uucQB5
ベクターで9路囲連星発見age

621 :東陶基:2008/06/28(土) 00:13:20 ID:HxTuCd3K
>>620
昨日くらいから公開されてますね。
先週くらいに登録の申し込みをしたんですがベクターはそこそこ公開まで時間かかるんですよね。

このスレの皆さんのおかげで無事公開することが出来ました。
これからも宜しくお願いします。

622 :Y:2008/07/10(木) 19:39:12 ID:z2yflhep
19路の囲連星でネット対戦するためのDLLを作っていて,
家ではうまく動くようになったので,
実際にネットワーク越しに試してみたいので,
誰か協力してくれませんか?

参考までに,ローカルで動かしたときの動画です.
http://f58.aaa.livedoor.jp/~protest/irensei.mp4

623 :名前は開発中のものです。:2008/07/11(金) 04:05:32 ID:6UPHLp/0
>>622
すごいですねこれ
やってみたいです

624 :東陶基:2008/07/11(金) 04:43:57 ID:+vNPdJdk
>>622
これは・・・凄すぎですねw
自分も協力出来ますので必要な時は声掛けてください。

625 :名前は開発中のものです。:2008/07/11(金) 18:48:47 ID:/Z6x+J07
>>622
そのDLLどこにうpされてるの?
早くやってみたいんだが

626 :Y:2008/07/11(金) 23:27:31 ID:pvwxkCb0
DLLをアップロードしました.
DLパスはirenseiです.
http://www-2ch.net:8080/up/download/1215785494532021.anWBg5

ここに少しですが説明を書きました.
http://f58.aaa.livedoor.jp/~protest/tut.htm

今日起きている間は囲連星を立ち上げて待ってますんで,
もし試してくれるなら,
囲連星の新規対局ボタンを押して
 ・黒番にenemy(client)
 ・白番にplayer(client)
をそれぞれ選択して,出てきたプロンプトに,
 ・アドレス:219.116.88.30
 ・ポート:12346
を入力してください.

627 :Y:2008/07/11(金) 23:46:07 ID:pvwxkCb0
負けた〜

どなたか存じませんが,ありがとうございました.
本日は終了します.

628 :Y:2008/07/12(土) 02:29:09 ID:J9dnDjTK
クライアント側が接続に失敗した場合に,
”接続に失敗しました”というエラーメッセージを
表示するようにしました.

http://www.dotup.org/uploda/www.dotup.org2456.zip.html

629 :東陶基:2008/07/12(土) 03:28:46 ID:zK9BElCJ
遅かった・・・

対局できなかったから的違いかもしれないけど疑問点を
1、IPを告知するのは必須?
2、黒番、白番を自分と相手を指定するのは必須?
3、名前とかチャットとか可能?



630 :東陶基:2008/07/12(土) 03:31:31 ID:zK9BElCJ
1は要するにIPを告知しなくても対局できるようになれば便利かなと
ただ昔からこういう通信の対戦のゲームありますがハンゲームとかみたいなサイト型でなく
この類の対戦だと実際は告知する必要ありそうなんですよね・・・

2は黒が敵とか白が敵とか指定しないといけない場合は自分がサーバーになるか
クライアントになるか以外にも分岐というか選択肢が出て来てわかりづらいかなと

多分この類の問題は一台サーバーとして常時立ち上げていてそこに必ず接続しに行って
そこから登録しているメンバーを表示して選択するとその相手のマシンのIPとやり取りする
という形になれば一番自然なんでしょうけど常時接続のサーバーとそこでのプログラムが
必要ってことになりますからやっぱり大変かな。
そのあたりはYさんも既に分かっていての一番シンプルなこの方法でやってるんだと思いますが。


631 :東陶基:2008/07/12(土) 03:35:42 ID:zK9BElCJ
まぁ折角なので通信対戦したくなったらとりあえず気軽にすぐ出来るようになると
楽しそうですよね。今のままでも掲示板とかにIPとポートを書き込むとかでOKなのかも
知れないですが。

いつもすばらしいプログラムありがとうございます。>Yさん

632 :名前は開発中のものです。:2008/07/12(土) 03:46:41 ID:aNr6MbEw
囲連星のホームページで使っているサーバーでは駄目ですか?

633 :名前は開発中のものです。:2008/07/12(土) 03:52:23 ID:aNr6MbEw
参考に

将棋の対戦サーバ
unofficial shogi server for computer programs
http://wdoor.c.u-tokyo.ac.jp/shogi/

634 :名前は開発中のものです。:2008/07/12(土) 03:53:48 ID:6MEjsGS3
LAN内以外で対戦する場合は、サーバー側だけがポート開放すればいいんですか?
クライアント側は開けなくてもいいのでしょうか?

635 :名前は開発中のものです。:2008/07/12(土) 03:55:24 ID:6MEjsGS3
利便性との兼ね合いもあるのでわかりませんが、
今みたいにP2Pで対戦できるのは好きですね
運営サーバーが無くなってもプログラムは生き続けますから

636 :名前は開発中のものです。:2008/07/12(土) 03:58:06 ID:6MEjsGS3
あ、気になった点は、投了できないことですかね
囲連星を終了すれば投了扱いになりますが
棋譜を保存したりしたいですので

637 :名前は開発中のものです。:2008/07/12(土) 04:01:10 ID:aNr6MbEw
Winnyはサーバないのに、相手と自動で接続しますね 
今思ったんですけど、WinnyなどのP2Pネットワーク網を利用できないですか?
現在、囲連星のオンラインやっている人が少ないので、
自動で接続しようとすると相手を発見することが困難と思います。
そこで既存のネットワーク網を利用して相手が参加したら直ぐ発見できるようにするんです。

638 :名前は開発中のものです。:2008/07/12(土) 04:07:24 ID:6MEjsGS3
別に対戦相手を見つけるだけだったら、
フリーのFTP鯖かなんかに自分のIPアドレス&ポート&黒番or白番をテキストで上げるだけでいいよ
システムが対戦要求開始時にアップロードして、
対戦開始時に削除すればいいだけ
対戦相手はサーバーからランダムに拾ってくればいいかな?

Winnyのネットワークとかプロトコルを把握してないと無理だし、
弾かれる可能性もあるし、何より大袈裟すぎね?

639 :東陶基:2008/07/12(土) 07:56:33 ID:B0LMMmgs
>>632
普通のレンタルサーバーですがそれで可能なのであればこちらは大丈夫です

基本的に>>637さんの3行目4行目の意見と同じ考えです。
Winnyとか既存のネットワーク網とかは自分にはどうなるのか理解できてないので
賛成反対は出来ないですが簡単に相手が見つかるというところがポイントだと思ってます。
そういう意味では>>638さんの意見のように簡易的にHPの方でサーバーリストを
作るのもありかと思ってます。PHPが使えるのでそれでリアルタイムに表示できればと。
さらにユーザーに対してイージーにするにはHPの対戦可能サーバーをクリックすると
その情報をクライアントの囲連星のソフトに送って、今のコマンドプロンプトでの入力を
省略できればさらにいいかなとは思います。

640 :東陶基:2008/07/12(土) 08:04:16 ID:B0LMMmgs
さらに追記すると、そのパターンでの理想は
・囲連星のソフトを立ち上げる
・自分がサーバーになる→HPのサーバー情報DBに自分のIP、ポートを書き込みに行く
・対局相手が見つかる→DBに対局中のフラグを立てる
・対局終わる→DBに対戦相手募集のフラグを立てる


・公開されてるサーバーを探す→ソフトの方でDBからサーバー情報リストを取得し表示する
・対局したいサーバーをクリック→DBの対局相手のサーバー情報に対局中フラグを立てる
・・・・

みたいな感じが理想ですが最初は単にHPに対局可能サーバーのリスト表示(手動)
だけでいいのかなとは思います。

641 :東陶基:2008/07/12(土) 08:11:57 ID:B0LMMmgs
ゴメン。良く考えたらサーバー今年移転してPHP使えなかった。
CGIとrubyは使えるからDBへの書き込み、表示くらいならすぐ出来るかも知れないけど
会長のプログラム能力からしてちょっと保証は出来ないです。

642 :名前は開発中のものです。:2008/07/12(土) 09:39:50 ID:aNr6MbEw
rubyで対戦サーバー作れるみたいです
これは自動で対戦くんでやつとおもいます
将棋です

http://wdoor.c.u-tokyo.ac.jp/shogi/logs/x/shogi-server

643 :Y:2008/07/12(土) 09:51:26 ID:J9dnDjTK
>>629
1.今のところ必須です.
>>637さんが書いてあるような方法をとれば
自動で相手を探して対戦することは可能だと思います.

2.今のところは必須です.

3.今は不可能ですが,つけようと思えば
つけられると思います.

>>634
はい,サーバー側がポートを開放するだけで
大丈夫です.

>>636
投了はこれから搭載予定です.
CUIにTORYOと入力するという方法で考えています.

>>637
>>638>>640のような方法が簡単だと思うので,
そちらの方法で考えてます.

今のところは,
・投了
・白黒はランダムで決める
・サーバーから対戦相手を勝手に探してくる
・チャット
・レーティングとか
の機能をつけたいと思っています.

644 :Y:2008/07/12(土) 10:15:44 ID:J9dnDjTK
>>642
参考にしたいけど難しいですね.
少なくとも始めは簡単に>>640のような仕組みでやろうと思います.

645 :名前は開発中のものです。:2008/07/12(土) 12:46:21 ID:6MEjsGS3
白黒はランダムもいいけど自分で決めたいかも

646 :東陶基:2008/07/12(土) 13:50:11 ID:3R36YMGn
一応さっきまでperlでファイルの読み書きをしてIP公開みたいなのを作ってたのですが
Yさんの>>643の方法がベターですね。
ちなみにサーバーってどうしようと思ってますか?
一旦情報を集めるサーバー(※1)を使ったとしても対局するときは対局者A、Bどちらかが
サーバーになってポート開放とかをしないといけない感じですか(ユーザー手動で)?
※1のから対局者Aのマシンのポートをどうこうとなるとファイアウォールの関係とかもあるので
まだ色々考えないといけないこととかもあるんでしょうかね。

個人的には新規対局を押すとAIを選択するところで先手、後手とも「ネット対局」みたいのを
選択するとそれだけでもう対局OKみたいなのが良いとは思いますが。


647 :東陶基:2008/07/12(土) 13:55:27 ID:3R36YMGn
とりあえず今の段階で出来る一番簡単な方法は
公式HPに掲示板を立てるなりスレを立てるなりしてそこに対局したい人が
IP、ポートを書き込む方法ですね。
ちなみにサーバーになる方法って今現在どうすればいいんでしょうか?
Yさんがサーバーになってくれてた間はIPとポートを聞いて対局できるような感じですが
自分がサーバーになることって簡単ですか?
特にルータが入ってる環境でも簡単になれるのかな?

648 :東陶基:2008/07/12(土) 14:09:13 ID:3R36YMGn
色々書きましたが自分にはちょっと細かいところはわからないので
Yさんが良い(もしくは簡単)と思う方法で進めてください。

649 :名前は開発中のものです。:2008/07/12(土) 15:11:40 ID:/VIdyalX
囲連星のサーバーがポート固定で公開してれば
そこへつなぐだけではないですか?

650 :東陶基:2008/07/12(土) 15:59:17 ID:3R36YMGn
>>649
自分はあんまり理解できてないのかもしれませんが
公開マシン情報を管理するサーバー(A)、対局者でサーバーとなるPC(B)、
対局者でクライアントになるPC(C)の3台が必要なのかなと理解してます。
対局者が増えればBとCのPCはどんどん増えていき、B'、C'、B''、C''・・・・
それらの情報をAのPCで管理するというイメージですね。違ってるかも知れませんが。

で、AのPCの役割を掲示板などで単にB、B'、の情報を公開するだけにするか
それともAのPCがある程度頑張ってBとCの対局サポートを自動でするかというあたりが
ポイントになってきてるような気がします。
後者のようにBとCとの対局を自動にするような機能はHPを公開しているような
レンタルサーバーだとどこまで出来るかは微妙な感じですね。

651 :東陶基:2008/07/12(土) 16:01:24 ID:3R36YMGn
あとはAというPCはなくしてB,CのPCだけで自動に対局できるようなシステムにするというのも
あります。これが出来れば良いのでしょうけどBのIP情報などをCにどうやって自動的に知らせるかが
ネックとなりそうな気がします。

652 :Y:2008/07/12(土) 17:44:07 ID:MhSYhI+P
>>645
そうですか.
IGO棋院では確か自分で白黒決めてましたね.
どうするか保留にしときます.

>>646
>新規対局を押すとAIを選択するところで先手、後手とも「ネット対局」
自分もそうしたいと思ってます.
サーバーは,レンタルサーバーにphpか何かのスクリプトを置いて,
そこにIPアドレスとポート番号を登録するつもりです.
他の対局者とマッチングが出来たら,サーバーの方に
アクセスして自分のIPアドレスとポート番号を削除してもらうようにするつもりです.

>>647
自分はルータ越しですが,ポートマッピングの設定だけで
簡単にサーバーになれました.
↓にある方法でポートを空ければ間違いないと思います
ttp://27bit.com/

>>649
問題はそのサーバーのIPアドレスとポートをどうやって
入手するかってことですかね.
文章を間違って理解してたらすみません.

>>651で仰っているGnutellaのような(?)システムは,
主に自分の能力的な理由で実現は難しいと思います.

653 :名前は開発中のものです。:2008/07/12(土) 20:29:44 ID:PizYam5k
サーバーレスでP2PネットワークでIP情報を管理するのは相当ノード数がないと無理でしょ

654 :名前は開発中のものです。:2008/07/12(土) 21:12:30 ID:9SLFfnx1
Winnyのネットワークを利用する

655 :名前は開発中のものです。:2008/07/12(土) 23:05:01 ID:UIcT0kpG
本ゲームのネットワークに参加するホストは総台数でもせいぜい数台〜数十台程度と予想する。
サーバレスP2Pでネットワークを構築した場合、ホスト間でネットワーク全体のホスト情報を交換しても問題ない情報量だ。
つまり、ネットワークの構成としては1 対 全ホストとなる

新規参加者がどのようにネットワークに参加するかという点に課題が残るけど
スケール感を考えるとWinnyやグヌーテラのようなリレー式ではなく全ホスト接続のスター型のほうが効率が良いのではないか

656 :名前は開発中のものです。:2008/07/12(土) 23:10:17 ID:9SLFfnx1
新規構築ではなく、既存のネットワーク網を利用するんだ。
そこで囲連星のグループでまとまればいい。
隣接のPCが多くあるから見つけやすいはず

657 :名前は開発中のものです。:2008/07/12(土) 23:18:20 ID:PizYam5k
Winnyネットワークを利用なんて現実的にできるのか?
>>656がプロトタイプのソース書いてみてくれ

658 :名前は開発中のものです。:2008/07/12(土) 23:21:32 ID:UIcT0kpG
マッチングの為だけにWinnyクラスタを利用するのは効率が悪くないかな
要するに自分のIPアドレスを書いたテキストファイルを放流して共有するんだろ?
ある程度の人数が見込めるならおもしろいけど、数人しか居なければクラスタを構成できるかも怪しい

659 :名前は開発中のものです。:2008/07/12(土) 23:26:27 ID:9SLFfnx1
違うよ。 Winnyは起動せずネットワーク網だけつかうの。
囲連星のグループを作って、試合開始を押したら2台のパソコンをつないで対戦を開始する。
全部DLLが自動でやるようにする。

660 :名前は開発中のものです。:2008/07/12(土) 23:41:10 ID:UIcT0kpG
そのDLLの仕組みは?

661 :名前は開発中のものです。:2008/07/12(土) 23:44:04 ID:PizYam5k
>>659
だからそのプロトタイプを示してくれ
Winnyネットワークを利用してるアプリなんてないだろう

662 :名前は開発中のものです。:2008/07/12(土) 23:54:29 ID:UIcT0kpG
エスパーしてみると
Winnyで囲連星クラスタを構成して、接続ノード(要するにnetstat -aとかで見える接続相手)に対して
囲連星クライアントからの接続を試行するってことか

663 :名前は開発中のものです。:2008/07/12(土) 23:56:37 ID:PizYam5k
だいたい仮にも日本囲連星協会公式のソフトが
Winnyクラスタを利用するとか心象が悪すぎるだろw

664 :プロトコル調べた:2008/07/13(日) 00:06:43 ID:EjGU0hKj
BitTorrent

BitTorrent プロトコル仕様書 http://lowlife.jp/yasusii/stories/16.html
BitTorrentのファイル配信メカニズム http://dev.ariel-networks.com/articles/unixmagazine/bittorrent
BitTorrent - Wikipedia http://ja.wikipedia.org/wiki/BitTorrent


poeny(Winny)
poenyでのWinny2ファイル共有互換プロトコルの実装メモ http://archive.shingetsu.info/5f7d38bc3d3a55f2df2957e5e621eb0c/b448aaf7x.txt
Index of /poeny http://fuktommy.com/poeny/
ポエニー―readme.txt http://imony.fbox.info/one/readme.html

>>661
winnyネットワーク利用アプリ 

ポエム専用P2PネットワークPoenTropy http://muziyoshiz.jp/200603.html

665 :名前は開発中のものです。:2008/07/13(日) 04:54:57 ID:BFCV576c
そういうのがあるのは知らなかったけど、囲連星の対戦相手探すなんて目的とは全然的外れじゃん

666 :Y:2008/07/16(水) 01:58:46 ID:p12UXK+Q
サーバーと通信して,相手を探すようにしました.
簡単に↓に説明を書きました.
http://f58.aaa.livedoor.jp/~protest/irensei_ver0.02.htm

サーバーに登録されたIPアドレスとポート番号は
↓のアドレスから見られるので,見られるのが嫌な人は試さない方が良いかも知れません.
http://f58.aaa.livedoor.jp/~protest/get_server_list.php

アップロード先です.
http://www-2ch.net:8080/up/download/1216139319408580.xPJyGW

667 :名前は開発中のものです。:2008/07/16(水) 07:29:28 ID:Vq1vAMRn
>>666
乙かれさまです

Addressについてなんですけど、
ユーザーが手動で入力すると間違ったIPアドレスを入力したりして混乱がおきませんか?
サーバー側が接続してきたIPアドレス、送られてきたポート番号を記録するほうが
問題が起きにくいような気がするのですが・・・

668 :東陶基:2008/07/16(水) 09:22:05 ID:Xf8RPT7n
Yさんありがとうございます。

自分の環境だとデフォルトのIPが自分のマシン127.0.0.1を指してしまいますが
サーバーになる場合はIPしらべて入力しないとダメですか?
それともルータを挟んでるからこうなるとか?
(でもルータ入れてたら192.168.・・・ってなりそうですね)

とりあえずしばらくサーバーにならないで繋いでます。
サーバーになれるかたいたらどうぞ。
※気付かないかもしれないけど。音とか出るのかな?

669 :東陶基:2008/07/16(水) 09:44:31 ID:Xf8RPT7n
どなたか分かりませんが対局ありがとうございました。
対戦出来ますね。テスト的に公開してみようかな。
人が多い方が対戦しやすいだろうし。

670 :Y:2008/07/17(木) 01:07:26 ID:7JkS2uGG
>>667
自分のPCで動作を試すときにはアドレスを指定できた方が
便利なんですよね.
なので,通信の部分がある程度出来るまでは
アドレスも指定するようにしておきたいと思います.

>>668
 囲連星の本体を二つ起動してテストするときに127.0.0.1を
指定していたのですが,入力の手間を省くために
初期状態では127.0.0.1を表示するようにしてました.
サーバーになるためには,今はIPアドレスを調べてもらう
必要があります.
 後々はポート番号だけで良いようにする予定です.
 ゲームが開始したときには,音を出したりメッセージを
表示したいと思うのですが,あまり良い方法が思いつかずに
放置していました.
とりあえず次はゲームが始まったら何かしら知らせるようにします.

671 :東陶基:2008/07/17(木) 10:14:07 ID:XhNxy8vt
そうですね。ユーザーは極力何もしなくても出来る方がいいですよね。
ポートはやっぱり解放は手動でユーザーがやらないとダメですかね?
確かに他のサイトとかでもポートの解放はユーザーがやってますしね。
出来る人に極力サーバー側になってもらえるようにするしかないですかね。

672 :名前は開発中のものです。:2008/07/17(木) 11:50:02 ID:tu/eIL/k
常時立ち上がっているサーバーがあればポート開放いらないのではないですか

673 :Y:2008/07/18(金) 00:13:23 ID:zhxtXlYP
>>671
現状では,というかおそらくずっとポート開放は
手動になると思います.

>>672
確かに,一手ごとにサーバーを中継するようにすれば
ポートを開放する必要は無くなると思います.
ですが,今はレンタルサーバーを借りているので多分その方法は
難しいんじゃないかと思います.

もし開発が順調に進んだら,上記のような形態にして,
昔中途半端に作ってたiアプリをネット対応にして,

PCと携帯が混在してネット対戦出来るようにしたい,という妄想をした.

674 :東陶基:2008/07/19(土) 10:31:45 ID:nZkDR370
>>673
と言う事はポート開放が簡単に出来る人は極力そうしうてもらうように
readme.txtとかに書いておいた方がいいですね。
テスト的にYさんが次のをUPしてくれたくらいからHPでも公開してみようかなと。
多分ここでだけだと対局者数も少ないと思うので。
その場合はwindows版(GUIになってるやつ)だけで良いのかなと思ったりしてますが
CUI版って必要ですか?

あと接続中(相手探し中)に閉じると固まることがありますがあれってどのあたりが問題なんでしょうね。

675 :Y:2008/07/20(日) 00:59:32 ID:kwxrc6ql
>>674
>と言う事はポート開放が簡単に出来る人は極力そうしうてもらうように
>readme.txtとかに書いておいた方がいいですね。
そうですね.UPnPを利用すればポートを勝手にあけられるようなので,
それがうまくいけばポートを空ける手間が省けるかもしれません.

>テスト的にYさんが次のをUPしてくれたくらいからHPでも公開してみようかなと。
>多分ここでだけだと対局者数も少ないと思うので。
あらかじめ連絡取り合ってタイミング合わせないと,対局するのは難しい
んじゃないかと思います
で,まだ作りかけの状態だと

>その場合はwindows版(GUIになってるやつ)だけで良いのかなと思ったりしてますが
>CUI版って必要ですか?
CUIの方が多分安定してると思います.

>あと接続中(相手探し中)に閉じると固まることがありますがあれってどのあたりが問題>なんでしょうね。
う〜ん,ちょっとすぐにはわからないです.

676 :東陶基:2008/07/24(木) 14:52:59 ID:VY8kruoo
>>675
ポートが勝手にあけれるのであれば思いのほか対局が出来るかも知れませんね。
もちろん「かも」というレベルですが、待ち合わせ無しでも夜とかならいけるのではないかと。

まぁ公開はポートが勝手に開けれるのであれば
それが出来たタイミングで良いかもしれませんね。
やはり一般ユーザーが自力でポートの開放までとなるとハードルが若干高くなりますしね。
ソフトダウンロードしたらAIの選択のところにネット対戦ってあるから選んでみたって
感じで繋いでもらうのが一番良いかなと。

677 :名前は開発中のものです。:2008/07/24(木) 14:55:26 ID:LCm1s9qg
ネット対戦で人がいなければサーバーのCPUがお相手する
これは未公開のやつ

264 KB
■ このスレッドは過去ログ倉庫に格納されています

★スマホ版★ 掲示板に戻る 全部 前100 次100 最新50

read.cgi ver 05.04.02 2018/11/22 Walang Kapalit ★
FOX ★ DSO(Dynamic Shared Object)