iアプリ共同製作支援スレ その1
■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさん
2006/12/02(土) 17:48:52それなら自分で作っちゃえというアプリ共同制作支援スレです
903iシリーズの発売に伴ってメガiアプリも始動したし、
近いうちにDojaツール5.0がでて勝手アプリにも侵食する予想なので
神降臨してなんか十分いけそうな悪感...
人が集まったらwikiでも作る予定だがそれだとソースとかの
問題もあるからJarに当てるパッチ形式での配布を考えてるところ...
次スレは>>950
マターリといきましょや
0153デフォルトの名無しさん
2006/12/13(水) 22:04:310154DAT10 ◆X4qqsI5F2s
2006/12/13(水) 22:05:39同意
なんか作っておきたい
0155デフォルトの名無しさん
2006/12/13(水) 22:09:16でもせっかくだからまとめてつくろうよ
0156デフォルトの名無しさん
2006/12/13(水) 22:09:16アプリ名には使えないから「リバーシ」とか、
もしくは全然違う名前を使いましょう。
0157DAT10 ◆X4qqsI5F2s
2006/12/13(水) 22:10:25まあそれもそうだな
ひとつのアプリに集約www
0158デフォルトの名無しさん
2006/12/13(水) 22:46:24オセロ、将棋のCPUをここのやつらに作れるとは到底思えない
0159デフォルトの名無しさん
2006/12/13(水) 22:59:51以前オセロのiアプリを作ったときはjarが26KBくらいで、
コンピュータ対戦で使う評価関数の係数ファイルが108KBくらい。
他のゲームと一緒にするときつくない?
まぁ容量は強さとのトレードオフだから減らせるけど。
0160 ◆JlLrQ.zMek
2006/12/13(水) 23:19:37全くつながりのないゲームをまとめるのはどうかと思う。
>>159 の言うとおり容量もでかくなるだろう。
0161 ◆qs6VtKMtoY
2006/12/13(水) 23:28:18とりあえずはオセロでいいんじゃないか?
で、どういう体制でやっていくんだ?
0162デフォルトの名無しさん
2006/12/14(木) 00:03:070163デフォルトの名無しさん
2006/12/14(木) 00:09:24形が大体できてから何かつければいい
0164デフォルトの名無しさん
2006/12/14(木) 00:14:190166デフォルトの名無しさん
2006/12/14(木) 07:25:100167デフォルトの名無しさん
2006/12/14(木) 11:05:24http://www2s.biglobe.ne.jp/~niitsuma/aprilFool/
0168デフォルトの名無しさん
2006/12/14(木) 17:19:27ウェブ通さない棋譜の入力再生機能とsd-bindingによる棋譜管理機能だけで
いいんじゃないか?
その機能ついてるアプリはいまのところないし
ある程度真面目にやってて強くなりたいような人は
そういうアプリが欲しいんじゃないかな
0169デフォルトの名無しさん
2006/12/14(木) 17:52:38それくらいの機能なら”強い将棋・リバーシアプリ”コンセプトの下でも組み込む事はできると思う。
まぁまだコンセプトは決まってないけど。
それにあまりターゲットを特化してしまうのもどうかと。
0170DAT10 ◆X4qqsI5F2s
2006/12/14(木) 19:13:30ところでどんなコンセプトになっても使うだろうからと思って
とりあえず盤面状態を保持して石を返したり戻したりするクラスを
書いたんだけどどうすればいいの?
0172 ◆JlLrQ.zMek
2006/12/14(木) 19:25:46CPUを強くするのはそのあとでも遅くない。
0173デフォルトの名無しさん
2006/12/14(木) 19:51:14それとも開発陣だけで共有?
http://www21.atwiki.jp/docomotool/
掲示板にちょっと書き込みしました。
0175デフォルトの名無しさん
2006/12/14(木) 22:07:23思ってるんじゃないか?
金はらってもいいって人もいると思う。
うん。その機能も検討してます。
別にボツにしたわけじゃないから。
他の機能との兼ね合いで後回しになる可能性はあるけど。
0177DAT10 ◆X4qqsI5F2s
2006/12/14(木) 23:16:010178デフォルトの名無しさん
2006/12/14(木) 23:23:39CVS鯖なんて誰もたてんだろ。
http://hp.vector.co.jp/authors/VA015468/platina/index.html
あとここ
http://uguisu.skr.jp/othello/index.html
0180デフォルトの名無しさん
2006/12/15(金) 03:23:56なぜ使わないんだ
0181デフォルトの名無しさん
2006/12/15(金) 03:27:14オープンかクローズドかもまだ決まってない。
0182デフォルトの名無しさん
2006/12/15(金) 16:09:14じゃないと多数決もできんorz
0183デフォルトの名無しさん
2006/12/15(金) 19:18:213手分ずつくらいで通信
0184デフォルトの名無しさん
2006/12/15(金) 20:07:12携帯上での計算は6〜7手読みくらいが限界だと思います。
通信の遅延を考えれば1〜4手読みくらいだと携帯上でも十分速いので、
サーバ側でやるメリットはありませんけど。
0186 ◆qs6VtKMtoY
2006/12/16(土) 12:21:14誰がメンテするんだ?
0187デフォルトの名無しさん
2006/12/16(土) 12:23:360188デフォルトの名無しさん
2006/12/16(土) 14:24:17・PHPでリクエストを受けて入力ファイルを作成。
・Cプログラムでは入力ファイルの存在チェック。
・存在すれば読み込み、削除、計算、出力ファイルに書き出し。
・PHPで出力ファイルの存在チェック。
・存在すれば読み込み、削除、結果を返す。
こういうシステムは作ったことあるんですけど。
0190 ◆qs6VtKMtoY
2006/12/17(日) 01:48:25それを一手打つごとにやるのか…
多人数がゲームをしている時大丈夫なのか?
今の段階ではアプリ側だけでの読みでいいと思う。
使い物にならないならその時サーバの使用を見当すればいいんじゃないか?
第一、手の評価のアルゴリズムも決まってない段階でする話じゃない。
それよりも先に決めることが他にもあるよな…
まず何を決めればプログラム作業に移れるんだろうか
誰か指揮を執ってくれないか?
数十人の友人にしか公開してませんし同時に使ってる人はほとんど居ない状況で・・。
ちなみに1手につき1〜10秒くらいサーバのCPUを独占します。
まず付ける機能は
・COMvs人間対戦モード(レベル可変)
・人間vs人間対戦モード(=一人打ち研究モード?)
・局面解析(全着手可能箇所の評価値表示)
・棋譜の保存と再生
こんなもんでどうでしょう?
DoJaプロファイルは3.0?
0192DAT10 ◆X4qqsI5F2s
2006/12/17(日) 10:25:06SD-Binding対応版は別だけど
あとは共有の方法だな
0193 ◆qs6VtKMtoY
2006/12/17(日) 13:53:26ま、3.0でいいとして。
・局面解析(全着手可能箇所の評価値表示)
まずコレだな。おける位置を計算するのはすぐできそう。
っていうかC言語で書いたアルゴリズムあるし、
ネットでも転がってるからそれなりのを使うとして
評価値を計算する方法はどうする?Minimax探索法?
あらたなアルゴリズムを研究するには俺には脳みそが足りない(^ω^;
・COMvs人間対戦モード(レベル可変)
↑が出来たなら、COMの作成に取りかかれると思う。
レベルについては読みの深さの調節だったり、もっとも評価のいい手を打つか、
悪い手を打って弱いCOMを表現したりで。
・人間vs人間対戦モード(=一人打ち研究モード?)
コレは交互に1台の携帯で遊ぶってこと?ネット対戦にするのか?
ネット対戦にするなら後に回したほうがよさそう。
・棋譜の保存と再生 本体に保存する物として
まぁ、COMが先手、人間が後手とかいう情報と次ぎは
どちらの順番か、白と黒の駒がどこに配置されているかが保存できて、
呼び出せるようになればいいよな。
GUIのデザインとかはどうする?
シンプルに十字キーでマスを選択しなんたらかんたらって感じ?
共有の前にどうやって開発を進めていこう?棋譜のデータの持ち方、局面評価の方法、GUIデザイン、メニュー項目、
とか決めた方がいいんじゃね?で開発のスタイルにあった共有方法を探ろう
0194DAT10 ◆X4qqsI5F2s
2006/12/17(日) 22:19:44はい。そのつもりで書きました。
>評価値を計算する方法はどうする?
一応α−β法を使って動的評価の基盤は書いたので、
ゲーム木の末端でする静的評価の方法をごにょごにょしましょう。
あ、静的評価は皆がそれぞれ作ればいろんな特徴・癖のあるCOMと対戦できるかも。
>>194
自分はそれでいいと思います。
zipのパスワードを事前にやり取りして
ソースはクローズドでやってみたいな。
0196デフォルトの名無しさん
2006/12/17(日) 22:50:02自宅鯖でやるのか?
0197デフォルトの名無しさん
2006/12/17(日) 22:54:11phpだけで十分できるでしょ
0198DAT10 ◆X4qqsI5F2s
2006/12/17(日) 22:58:47ソースの管理あたりはWikiにあった掲示板でやり取りするか。
プロジェクトごとに専用のスレ作って。オセロは商標だから「リバーシ開発スレ」とかで立ててほしいな。
パスワードどうやって渡すか具体的なことをそこで話そう。
あの掲示板って酉使えるの?
ここの板はできた時、人集める時、他のアプリ作る人が集まったり知恵を借りたり。
とりあえずリバーシは3人で作ることになるのかな?
性的評価 じゃね静的評価って置けるか置けないかって判断することだよね?
一番よさそうな方法を検討。そのときにデータの持ち方も決まるな。
>>195
動的評価ってαーβ法がよさげ?
俺そのへんまで作ってたわけじゃないから、あんまりワカンネーから教えて
検討してもいいんじゃないか?と、思うんだけど。
0201DAT10 ◆X4qqsI5F2s
2006/12/17(日) 23:04:51とりあえずフリーメールでもとっておかないか?Yahooならチャットもできるわけだし
0202デフォルトの名無しさん
2006/12/17(日) 23:05:29どこかの企業がやってるならともかく、レン鯖でも自鯖でも、管理放棄した時点で
そのアプリはゴミと化すんだぞ?
サーバ使うと通信が不安定になることもあるだろうし圏外じゃ動かない
いざとなったら両方実装するという手もあるがなw
0204デフォルトの名無しさん
2006/12/17(日) 23:41:04プロジェクトごとに専用スレ立てたらさすがにうざがられる
過疎る可能性もあるし
ちゃうww wikiじゃなくて左のメニューのとこにある掲示板のことw
フリメはまだ使わないだろ。まだ掲示板でのやりとりで間に合うし。
>>202
>>203
じゃーサーバの使用はまったく考えないことにしよう。
>>204
2chじゃなくてこのスレ用に用意してもらった掲示板のほうでだぞ?
それでもうざいならどうすればいいんだぜ?
>ソースの管理あたりはWikiにあった掲示板でやり取りするか。
>プロジェクトごとに専用のスレ作って。オセロは商標だから「リバーシ開発スレ」とかで立ててほしいな。
まぁ、真上の行に書いてあったんだけど、スレと言えば2chくらいでしか使わない言葉だし、誤解を招きやすい
言い回しだったから俺もわるかったんだぜ?
一人でアプリ作るのとちがって、体制とかコード規約とか(必要かどうかはしらん)を初めのうちに
決めないと、あとあと大変かもな。
実際にコードを書きはじめるまでにあと何日かかることか。
携帯のアプリで複数のプログラマで開発やったことあるひといない?
うちの会社は1アプリにつきプログラマ1人、プランナ兼デザイナ1人でやってたからその辺の
助言がほしい。
http://hp.vector.co.jp/authors/VA015468/platina/algo/
第3章 評価の方法
http://uguisu.skr.jp/othello/index.html
5.局面評価
ちなみに↓これは僕が動的評価と呼んでいる物です
第2章 ゲーム木と探索
6.評価値探索
なるほど。イメージは掴めた。
オセロって奥が深いんだな。ってか俺が知らないだけだなw
俺のCのソースが役に立たないことが今わかった。うん。
評価、GUIってか見た目のデザイン、これらを平行してやりーの
↓
棋譜の保存、読み込みやりーの
↓
演出とかいろいろ加えーの
↓
とつぎーの
こんな感じになるのかな?
0210デフォルトの名無しさん
2006/12/18(月) 01:01:59>CとPHPを動かすって、レンタル鯖でやるのか?
>自宅鯖でやるのか?
自分は自宅鯖でやりました。
>>197
>思うんだけどさ、Cとphp両方でやる意味ってなんだ?
>phpだけで十分できるでしょ
PHPだけでもできるけど数千行のスクリプトを一手毎に
コンパイル・起動では遅そうだと思ったので。
PHPはあんまり詳しくありませんし。
あと、そのプログラムは起動時に十数MBのファイルを読み込みます。
0211デフォルトの名無しさん
2006/12/18(月) 05:51:340212デフォルトの名無しさん
2006/12/18(月) 13:12:38COM無しで作らせたいのか?
そんなにCOMありは嫌なのか?
両方つけるってことで話がまとまりかけてるのに。
・COMvs人モード
・人vs人モード
・棋譜閲覧モード
ぐらいで考えてる。
ってか棋譜閲覧する機能だけでいいなら自分で作りなよ。
すくなくともリバーシ作成に名乗りを上げてる数名はCOM対戦に異論はないと思うよ。
もし俺の意見が少数派だったらそのときは俺が抜けるから。
>一人でアプリ作るのとちがって、体制とかコード規約とか(必要かどうかはしらん)を初めのうちに
>決めないと、あとあと大変かもな。
に禿同。
細かく決めておかないと間違いなくすれ違いが生じる
この調子じゃ年内にコード書き始めるのも難しいかもな。
0215(゜ε゜) ◆cHN6zUUh9M
2006/12/18(月) 14:24:04必要な素材があれば何ぼか作りますよ
0216デフォルトの名無しさん
2006/12/18(月) 14:24:34複数で同じソースに手を加えていくのは非常によろしくないからそれでもいいのかな。
でも最後結合するときに不整合が出てきていろいろ大変かも。
はじめのうちにデータの持ち方だったり、ゲームのシーケンスを確定しなきゃな。
完成のイメージを全員が持って。コーディング始める前に全員が共通のイメージを
持たないとなぁ。
まずは仕様を確定しよう。
COMvs人モードと棋譜閲覧モードは絶対入れるよね?
全部に共通することなんだけど、データの持ち方はどうやって持つ?
◆GEOPlMMeow氏が評価のコーディング始めてるみたいだから、
そのデータの持ち方(具体的にcharの8x8配列で白=1空=0黒=-1とか)を
そのまま使ったほうがいいのかな。どういう感じでやってるの?
データの持ち方決定したら、GUI描画部から局面を問い合わせして
評価とGUI平行に作業できると思うんだけど。
あと、アプリ内でのデータの管理方法とかもどうするか決めないと。
配列作っただけじゃ関係ないとこから書き換えられたりするから、専用のクラスを
作って、絶対それを使って読むようにするとか、そういう体系も決めないといけない。
どうする?
0217デフォルトの名無しさん
2006/12/18(月) 14:24:58オセロ程度だとコーダーが役割分担する意味がなさそうだけど
打ち合わせしてる間に一人で作りあげられる人がいそうだ(◆qs6VtKMtoYとか)
盤面は10x10の1次元int配列で、外周は壁で、BLACK=0,WHITE=1,EMPTY=2,WALL=3です。
ソースを渡す方法が決まれば今すぐにでも渡せるんですけど。
自分は複数人で開発した事が無いので規約のことはよく分かりません。
規約が決まればそれに合わせてソースを書き直します。
乙
パスつきでうpろだにでもあげる位でいいんじゃないかな?
最初のうちはこのスレ見てたらパスわかってダウンロードできるくらいで。
開発中盤になってきたら作成にかかわってるやつだけ使えるように。
共同製作支援スレなのに最初からガチガチにセキュリティ固めてやる必要はない気がする。
よし。このソースからいろいろ決めていきましょうか。
データ構造と規約確定したらGUI部分とかも決めましょう。
誰かが案を出す→それを元にみんなで話し合い決めていく
ってスタイルの方が0から考えるよりいいのかな。
適度に使い分けましょう。
この2chのスレでリバーシ関連のことばっかりになるのもあれだし。
ソースのうpもwikiの掲示板のほうでお願いされたい。
>あと、アプリ内でのデータの管理方法とかもどうするか決めないと。
スクラッチパッド上にファイルシステムを作るのはどうでしょう?
大掛かり&無駄が多いかな・・?
0225(゜ε゜) ◆cHN6zUUh9M
2006/12/18(月) 22:22:14乙です
仕事早いっすねーしょぼい素材ですが作ったのでうpしておきました
適当に240×240で作ってしまいました
棋譜もスクラッチパッドに保存するよな。1つ以上の棋譜を保存したり、
サイトからダウンロードしたりってやるにはそのくらいやんないとダメかもね。
棋譜のデータの構造とかも決めなきゃいけんね。
共通して呼び出すデータって今のとこ局面の配列だけかな?
ほかに共通して使わなきゃならないデータが必要になった時も同じように
クラスでラッピングしてそれ使って問い合わせするようにすればいいんだな。
0227DAT10 ◆X4qqsI5F2s
2006/12/18(月) 22:31:38素材作りましたのでうpしときます
http://www.uploda.org/uporg621952.zip.html
wikiだいぶ編集しました。掲示板もトリップの使えるやつにしておきましたが、そのトリップに
少し問題があるみたいで・・・orz
0228DAT10 ◆X4qqsI5F2s
2006/12/18(月) 22:32:380230(゜ε゜) ◆cHN6zUUh9M
2006/12/18(月) 22:46:45やべー素材かぶったー
自分のサイズだと情報表示するスペースがないですね
DAT10氏のがいいかもです
どこにうpしました?
パス:cHN6zUUh9M
これだ!
0233DAT10 ◆X4qqsI5F2s
2006/12/18(月) 23:13:00俺のは駄作orz
みんながんばってるし、絶対にリバーシ完成させたい。
晩ご飯食べてくる。
どうやら俺の出る幕はないようで。。。orz
あ、俺BGMとか作れるけどリバーシには必要ないよね?
プログラムはまだ評価の計算とかしか入ってないし、
メニューとか棋譜のデータどうするかとか
まだまだ決めることあるんです。
ボスケテ
0237DAT10 ◆X4qqsI5F2s
2006/12/19(火) 00:36:10http://www.uploda.org/uporg622125.zip.html
PASS:dat10
black0〜black4,white1〜white5の順に連続再生
リサイズとかはまた今度
素材入れるフォルダの名前、プログラムソース入れるフォルダの名前 とか別々にあらかじめ決めておけばさ、
zip解凍しただけで分類されてて便利じゃね?
例えば素材は[reversi]->[res]->素材1.png とかでzipでうp
ソースは[reversi]->[src]->ソース.javaとかね。
で、みんなのPCの中は、例えば、
[Dドライブ]
┗[reversi]
┣[res] (いろんな素材.gif,いろんな素材2.gif)
┣[src] (すてきなコード.java,コメントがおもしろいコード.java)
┃
┗[資料]
┗[エロフォルダ]
ってなってた時に、解凍して出てきた[reversi]->[res]->素材1.pngの[reversi]フォルダごと
Dドライブに入れて、すべて上書き [はい]にすれば
(もしくはDドライブにzipの中身を解凍でもいい)
[Dドライブ]
┗[reversi]
┣[res] ( 素材1.png ,いろんな素材.gif,いろんな素材2.gif)
┣[src] (すてきなコード.java,コメントがおもしろいコード.java)
┃
┗[資料]
┗[エロフォルダ]
ってなってさ、楽じゃね?
素材ちょっと書き換えても、落として解凍するだけですぐビルドできるんだぜ?
ソースだけならsvn使っても楽でいいんだけど用意できないし、バイナリの素材で世代管理なんかやったら
サーバがパンクしちゃう。
ってのを風呂に入りながら考えてたけど、みんなの考えをきかせてくだしあ
0239デフォルトの名無しさん
2006/12/19(火) 06:52:38CSA将棋
思考を自分で作ってくださいというタイプの将棋ソフトです。
コンピュータ将棋選手権出場予定の方が使うソフトです。
http://www2.ttcn.ne.jp/tsuma/download.htm
0240デフォルトの名無しさん
2006/12/19(火) 06:57:150241デフォルトの名無しさん
2006/12/19(火) 06:58:25ほモレがもっているからなのだ!
俺はまだiアプリの仕組みが理解できていないんだ
java覚えるので精一杯だよ
>>241
いまはリバーシの方に取り組んでるのでひと段落すると将棋に取り掛かるかもしれません。
それまでお待ちくだされ。
しかし、あのBONANZAを超えるとは...
ぜひとも動かしてみたいです。
0243DAT10 ◆X4qqsI5F2s
2006/12/19(火) 10:54:03メニューにプロジェクト:リバーシというページをつくり、そこにまとめもうpしておきました
一応
http://www.uploda.org/uporg622377.zip.html
PASS:dat10
俺もauでしかjavaやってなかったからiアプリはまだ使いこなせない。
まぁ、みんな優しそうなやつだから、わからないことあったら教えてくれると思うよ
>>243
乙
じゃーこのuporg622377.zipをタネにしよう。
あくまでこれはデータの保存フォルダって感じにする?
更新情報のテキストは作者別にファイルを用意したほうがいいんじゃないか?
[doc]フォルダ作って 作者名.txtを入れる。
[reversi]
┣[res] (素材フォルダ)
┣[src] (ソースフォルダ)
┗[doc](作者別の更新情報等、いろいろ)
で、データうp時には
[reversi]
┣[res] (今作った素材.gif)
┗[doc](Aさん.txt)
だけうp って感じで。
とりあえず、[reversi]直下にファイルは置かないことにして
(ローカルでそれぞれがなんか置くのはいいですけどね)
[doc]に DAT10 ◆X4qqsI5F2s.txt とか、◆JlLrQ.zMe.txt とか
◆qs6VtKMtoY.txtとか作って、自分だけ書き換えるようにしよう。
更新情報.txtだけだと、複数の人が編集してたときに面倒なことになる。
(svn使えとか言う突っ込みはなし)
片方やる人とか両方やる人とか、いまいち把握しきれてないんですけど・・。
僕はソースを書くだけにしようと思います。
今はファイルシステムを勉強中です。
今はiアプリの基本を勉強して来た。
描画はぱっと見auとそんなに大きく変わってるとこなさそうだから、
すぐ手を付けられそう。
あ、あと、今までうpされたzipファイルは今んとこ俺が全部持ってるから。
なんかあったら対応します。
まだソース書く技術はないけど頑張って勉強します。
GUIの画像は間に合ってるんでBGMとかも担当しようかなと思ってます。
0249デフォルトの名無しさん
2006/12/20(水) 11:24:25弧を描く命令を使って弧を潰していって
弧を潰したら色を反転させて元に戻す
こんな方法で画像なしでも実現可能
FOMAならリソース気にしなくても良さそうだけど
�d 参考にさせてもらう
◆GEOPlMMeow氏
Board#doFlip(int move)
って
Board#canFlip(int move)を含んでない?
Board#doFlip(int move)の中で
if(canFlip(move)){
ひっくり返す処理;
}
とかってできないのかな?
{
public abstract int evaluateBoard(Board board);
public abstract int getGameResult(Board board);
public abstract int getMove(Board board);
public abstract void setLevel(int level);
}
ってinterfaceなんだからabstructいらないんじゃない?
public interface Evaluator
{
public int evaluateBoard(Board board);
public int getGameResult(Board board);
public int getMove(Board board);
public void setLevel(int level);
}
できますね。
doFlipを書いてからそれを元にcanFlipを作りました。
>>251
要りませんね。
searchMaxとsearchMinもEvaluatorに含めてabstract classにしようか迷ってました。
■ このスレッドは過去ログ倉庫に格納されています