トップページ⇒tech
981コメント335KB

ム板のみんなでRobocode (・∀・)ヤローウヨ!1台目

■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさんNGNG
●闘え、Robocode !(日本語解説ページ)
http://www-6.ibm.com/jp/developerworks/java/020329/j_j-robocode.html
●オフィシャルサイト
http://robocode.alphaworks.ibm.com/home/home.html

●Robocode API Documentation
http://robocode.alphaworks.ibm.com/docs/robocode/index.html

●Java2のダウンロード先
http://java.sun.com/j2se/1.4/ja/download.html

君のマシーンは生き残れるか!?
0267デフォルトの名無しさんNGNG
>>266
ああ、なるほどね。
ム板で良いんじゃないの?ちゃんと言語扱ってるわけだし。
そこらでのさばってるネタスレよかよっぽど面白いし。
0268デフォルトの名無しさんNGNG
http://www-6.ibm.com/jp/developerworks/java/020712/j_j-nelson.html
AlphaBot: Robocodeの生みの親Mat Nelson氏へのインタビュー
0269デフォルトの名無しさんNGNG
http://www-6.ibm.com/jp/developerworks/java/020719/RobotsFinestHour.html
ロボットと過ごす最高の時間
0270106NGNG
http://www.geocities.co.jp/SiliconValley/9155/
http://www.geocities.co.jp/SiliconValley/9155/secrets/tipstrats.html
また訳してアップしました。
> Robocodeマスターの秘密: Robocodeの戦略
> このRobocodeの戦略のガイドでは、
> Gladiatorial Leagueの誕生秘話をあきらかにし、
> 移動・射撃・情報収集の戦略を異なる段階に分けて論じます。
ところでRobocode Rumbleのエリミネーションリーグがはじまったけど
誰か参戦してる?
0271デフォルトの名無しさんNGNG
今日発売のJava Developer9月号
敵座標の線形予測まで解説されてる
0272デフォルトの名無しさんNGNG
>>271
最後にこう書いてある
「できれば日本でも同様な大会をしたいよねということで
編集部内では考えているようですが」

Jリーグ?


0273デフォルトの名無しさんNGNG
>>編集部
Christian Shnellの「RoboLeague」を使えば
大会を開催できるはずなのでがんがってください。
実際Gladiatorial Leagueを主催してるのは個人(evilsimon)だし。
http://user.cs.tu-berlin.de/~lulli/roboleague/
http://www.geocities.com/evilsimon/
http://www.geocities.co.jp/SiliconValley/9155/secrets/tipstrats.html
0274デフォルトの名無しさんNGNG
http://apps.alphaworks.ibm.com/rumble/leaguefinal.jsp?gameid=86&rankst=1&bybot=bybot
日本人が作ったっぽいロボット"Takeru"が健闘してる。
0275デフォルトの名無しさんNGNG
age
C/C++でこういうのってないですか?JAVAはちょっと…
0276デフォルトの名無しさんNGNG
>>275
C++ができる人なら「Javaはちょっと…」ってことないっしょ。
Cしかできないならいい機会だ、Javaに挑戦してみれ。
ちなみに.NETにはTerrariumがある。
http://pc3.2ch.net/test/read.cgi/tech/1024319607/l50
0277275NGNG
>>276
そうですか〜C++でもこういうのがあったら面白いなと思ったんだけどな。
JAVAかRobocode面白そうだしやってみます
0278106NGNG
http://www.geocities.co.jp/SiliconValley/9155/
http://www.geocities.co.jp/SiliconValley/9155/secrets/
"Secrets from the Robocode masters"の訳があまりにひどかった
(誤訳もたくさんあった)ので現在改訳しています。
実のところは改訳というよりも1からやり直しです。
今のところ「Robocodeの戦略」「弾丸をかわす」「予測ターゲッティング」
の3つをうpしました。
以前に比べればかなりましになりました。
英検3級のおれにはこれが限界かもしれません。
0279デフォルトの名無しさんNGNG
>>271
Webにも載ってるね
http://www.javadeveloper.jp/static/robocode/robo1.html

前編はこっち↓
http://www.javadeveloper.jp/static/200208/robocode/robo1.html
0280106NGNG
キタ━━━━━━(゚∀゚)━━━━━━━!!!!!
外套と砲塔: ロボコードの達人たちから秘訣を学ぶ
http://www-6.ibm.com/jp/developerworks/java/020726/CloakandTurret.html
0281デフォルトの名無しさんNGNG
http://www.geocities.co.jp/SiliconValley/9155/
http://www.geocities.co.jp/SiliconValley/9155/api/robocode/Robot.html
http://www.geocities.co.jp/SiliconValley/9155/api/robocode/AdvancedRobot.html
現在Robocode APIドキュメンテーションをまるごと訳しなおしてます。
RobotクラスとAdvancedRobotクラスのぶんは終わったのでアップしました。
以前はstop(boolean)やその親戚、setInterruptible(boolean)など
いくら読んでもわかるもんじゃない文章がたくさんありませんでしたが
今度はわかってもらえるのではないかと思います。
v1.0.3から導入されたsetFire(double)やsetFileBullet(double)
およびgetDataQuotaAvailable()の説明も書きました。
というわけでよかったら読んでください。
the Secrets of the Robocode mastersの訳は誤訳だらけだったし
オフィシャルな翻訳が出たことだし削除しときました。
0282デフォルトの名無しさんNGNG
よーしパパRobocodeコピペしちゃうぞー

import robocode.*;
public class Hikky extends YourRobot {
public void run() {
out.println("(-_-)");
out.println("(∩∩)");
super.run();
}
public void onHitByBullet(HitByBulletEvent e) {
out.println("鬱");
super.onHitByBullet(e);
}
public void onDeath(DeathEvent e) {
out.println("鬱山車脳");
super.onDeath(e);
}
}
0283デフォルトの名無しさんNGNG
IBM : developerWorks : Java technology Robocode関連記事リンク集
http://www-6.ibm.com/jp/developerworks/java/020802/robocode_link.html
もちろんこれはありがたい。しかしたくさんの文献が日本語訳されたというのに
APIドキュメンテーション、オンラインヘルプ、FAQなどがまだなのはなぜ?
0284デフォルトの名無しさんNGNG
http://apps.alphaworks.ibm.com/rumble/botdetails.jsp?botid=921
SandboxLump強すぎ!なにこれ?リーグ10回中9回も1位だよ。
0285106NGNG
APIドキュメンテーションを全体的に改訳し、オフラインでも読めるようzip形式のアーカイブも用意しました。
http://www.geocities.co.jp/SiliconValley/9155/
http://www.geocities.co.jp/SiliconValley/9155/api/javadoc.zip
0286デフォルトの名無しさんNGNG
このスレみて、面白そうだなとおもってさっき始めました。
MyFirstRobotのコンパイルまではできたんですけど、この
さきどうするんでしょうか?ロボット名.classができている
の確認したのですが、こいつをバトルフィールド上に表示して
動かす方法がわかりません。実行の仕方を教えてください。
0287デフォルトの名無しさんNGNG
わかりました(汗)Battle->NewでAddすればいいんですね。
敵さんもSampleから適当に選んで配置すればいいんですね。
BattleStartを押したら、あっという間に終わりました。
やっと改造できます。
ところで右下にでるボタンでResumeってのはどういう意味
でしょうか。
0288デフォルトの名無しさんNGNG
>>287
resumeには「再開する」という意味がある。
バトル中に"Pause"ボタンを押すとポーズされ、
"Pause"ボタンは"Resume"ボタンに表示が変わり、
"Resume"ボタンを押すとゲームは再開される。
ちょっとした英単語なら辞典で調べる習慣をつけたほうがいい。たとえば
http://www.alc.co.jp/
0289デフォルトの名無しさんNGNG
RobocodeのオンラインヘルプとFAQを翻訳してアップしますた。
http://www.geocities.co.jp/SiliconValley/9155/help/
http://www.geocities.co.jp/SiliconValley/9155/help/faq.txt
0290デフォルトの名無しさんNGNG
http://groups.yahoo.com/group/robocode/
Yahoo!ジャパンはRobocodeのグループを作ってはくれないのかしらん。
0291デフォルトの名無しさんNGNG
キタ━━━━━━(゚∀゚)━━━━━━━!!!!!
日本で開催だYO
ttp://www.yomiuri.co.jp/02/20020824ib01.htm
0292∞ ◆INFP2PEU NGNG
9月の試験終わったら参加してみようかな
0293デフォルトの名無しさんNGNG
ロボコード日本大会の賞品、上級者クラスは30万のシンクパッドと5万のlinuxザウルス。
本家よりも豪華で、3位まで賞品あり
0294デフォルトの名無しさんNGNG
これダウンロードしようと公式サイトを進むといっつもフリーズする・・・俺だけ?
0295デフォルトの名無しさんNGNG
私も同じだった。JDK1.4が既に入れてあると、固まる。mailで聞いたら、installingの最初の画面の Advanced usersに進めと言われた。FAQにもあるらしい。
0296デフォルトの名無しさんNGNG
ありが�d
今robocode-setup.jarとかいうのダウンロードしてる。
0297デフォルトの名無しさんNGNG
今月のJAVA Develoer誌で11月頭に新宿でRobocodeの勉強会うんぬん
という話もでているね
0298デフォルトの名無しさんNGNG
Javaよりもどういう戦略がいいのか考える方が難しい。
0299testNGNG
test
0300デフォルトの名無しさんNGNG
(゚Д゚) pront?
0301デフォルトの名無しさんNGNG
結局皆何位くらいだった?
俺一週間くらいかけて作ったの出場させてたんだけど、今日見てみたら
intermediateで30位弱だった。
日本のの方がレベル上がるのかな?前の参考に出来る分。
0302デフォルトの名無しさんNGNG
ttp://www.yomiuri.co.jp/02/20020824ib01.htm
まだ公式サイトに情報が載ってないなぁ。
0303デフォルトの名無しさんNGNG
Javaは全然勉強したことがないのですけど、いまから勉強したとして、
ちゃんとしたロボットが作れますか?
Cの初歩を知っている程度の知識です。
今度の大会で、できれば初心クラスで参加したいです。
0304ksoNGNG
俺も参加してー
0305デフォルトの名無しさんNGNG
俺もやりてー。けど受験終わんないと出来ねー
0306ksoNGNG
>>305欲求不満を溜め過ぎると体に毒ですぞケケケ
0307デフォルトの名無しさんNGNG
http://itpro.nikkeibp.co.jp/free/NSW/NEWS/20020826/1/print.shtml
初心クラスは、言語を問わずにプログラミング経験6カ月以下、らしいです。
6ヶ月以上だと、ヘボプログラマでも上級者クラスに出るしかないのか?
0308ksoNGNG
ヘボはヘボなりに奇策を考えれば(・∀・)イイ!! って俺のことかw
0309デフォルトの名無しさんNGNG
>>303
とりあえずやってみ。結構何とかなるもんだ。
簡単なロボット同士の闘いもこれはこれで面白いし。
0310デフォルトの名無しさんNGNG
キタ━━━━━━(゚∀゚)━━━━━━━!!!!!
http://www-6.ibm.com/jp/developerworks/java/robojcup/
> Robocode ジャパンカップ 開幕!
> 最強のロボットを創り出すのは、誰だ!?
0311デフォルトの名無しさんNGNG
アルゴウォーズ。
0312デフォルトの名無しさんNGNG
Javaを対戦ゲームで学ぶRobocode日本カップ開催
http://slashdot.jp/article.pl?sid=02/08/27/0555200&mode=nested
0313デフォルトの名無しさんNGNG
javaを勉強すればパトレイバーの起動用
OSが作れるようになるでしょうか?
0314shigeNGNG
COBOLが必要です。
0315デフォルトの名無しさんNGNG
http://www.ibm.com/news/jp/2002/08/08261.html
>■ Robocode Japan cup開催スケジュール(予定)
> 2002年 8月26日 参加者用情報サイトの開設
> 2002年 9月19日 ロボットの登録およびプレーシーズン・リーグの開始
> 2002年11月25日 応募締切及びプレシーズン・リーグの終了
> 2002年11月25日 予選、決勝リーグ(12月8日まで)
> 2002年12月10日 結果発表
0316デフォルトの名無しさんNGNG
チュートリアルってどっかになかった?
教えて!!
0317デフォルトの名無しさんNGNG
せめて公式サイトで、日本語APIドキュメントとか用意して欲しいな。
0318デフォルトの名無しさんNGNG
http://www.geocities.co.jp/SiliconValley/9155/
「Robocodeマスターの秘密」改め「Robocodeの達人たちから秘訣を学ぶ」
を改訳してかなりアップしました。相変わらず人のふんどしで相撲を取ってます。
>>316
宣伝になるけど、おれのページ経由でチュートリアルは結構読めるのでは。
スキルがわからないので具体的にどれをお奨めするべきかわからない。
>>317
禿同。
0319デフォルトの名無しさんNGNG
レーダー、大砲の旋回速度ってどれぐらいかわかりますか?>詳しい人
0320デフォルトの名無しさんNGNG
>>319
それぞれ1フレームにつき45度、20度。
ただし大砲はロボットの、レーダーは大砲の上に乗っているので
影響を受ける。FAQ参照。
http://robocode.alphaworks.ibm.com/help/robocode.faq.txt
0321デフォルトの名無しさんNGNG
でも絶対影響受けないようにした方がやりやすい。影響受けるままでやってる人居る?
0322デフォルトの名無しさんNGNG
Class ScannedRobotEventの

getHeading() の説明の意味がわからんです、ロボットの向いている方向を角度で返す
らしいんだけど、この角度がどこを基準に計っているのか知っている人教えてほしい。
getBearing()のほうには向いている向きを基準にして角度を返すって書いてあるのに。

これと関連して、

Class HitByBulletEventの
getHeading() メソッドは
Returns the direction the bullet was heading when it hit you, in degrees
(0 <= getHeading() < 360) This is not relative to the direction you are facing.
って書いてあるんだけど、
自分の向いている方向からの相対的な角度じゃないっていうから、どっかの方角が
12時で(バトルフィールドの画面の上のほうとか)そこから時計回りに360度を測っている
んでしょうか?

ところで、玉あたってから砲塔旋回させるときにみんなどうしていますか?
0323デフォルトの名無しさんNGNG
Robotクラスのドキュメントを読むべし。
ヘディングは画面真上方向が0度、で、時計回りに正。
真右方向が90度、真下方向が180度、真左方向が270度
0324デフォルトの名無しさんNGNG
Robot#onBulletHit(BulletHitEvent)使えばいいんじゃないの。
0325デフォルトの名無しさんNGNG
>>322
この辺も参考になるかと
ttp://www.javadeveloper.jp/static/robocode/robo1.html
0326なべPNGNG
他人の作ったロボットをダウンロードして,バトルすることができますけど,
そのダウンロードしたロボットのソースコードってどうやって見ることが
できるのですか?
Robot EditerのExtract downloaded robot for editingで見られるかと
思ったのですが,ダウンロードしたロボットがでてきません。
0327デフォルトの名無しさんNGNG
コンパイルしてるから無理じゃないの?
0328デフォルトの名無しさんNGNG
逆コンパイルすれば
0329なべPNGNG
やっぱり他人のソースは見れないんだ〜
だよね〜
0330デフォルトの名無しさんNGNG
JARファイルを解凍してみた?ロボットによってはソースが見つかるはず。
0331デフォルトの名無しさんNGNG
JollyNinja,MadHatter,TheArtOfWarにはソースが入ってたよ。
バージョンによっては入ってないものもあるかもしれないけど。
でも最初のうちはデフォルトでついてくるサンプルロボットの
ソースを見るだけでもかなり勉強になる。
0332デフォルトの名無しさんNGNG
Robotのプログラムを書くのに、
eclipseを使いたいんですけど、
どうやったらいいんでしょうか?
0333なべPNGNG
デフォルトの名無しさんへ
いくつかのロボットのファイルを解凍してみたけど,
ソースコードはありませんでした。
どうもありがとうございます。
これから勉強して強いロボット作ってみます
0334デフォルトの名無しさんNGNG
自己成長型のプログラムってどう書けばいいんだろう?
自分自身と対戦を繰り返して、徐々に強くなっていくようなRobotつくれないかな?
0335デフォルトの名無しさんNGNG
>>333

328の言うように、逆コンパイルするって方向はないの?
それもまたRobocodeの目的の「Javaの勉強」の一環だとおもうのだが
0336デフォルトの名無しさんNGNG
>>332
http://robocode.alphaworks.ibm.com/help/ide/ide.html
http://www.geocities.co.jp/SiliconValley/9155/help/ide.html
>>333
http://apps.alphaworks.ibm.com/rumble/botdetails.jsp?botid=1000
ここでTheArtOfWarのJARファイルをダウンロードして解凍しる。
>>334
もし作れるのなら、おれも知りたい。
>>335
http://www-6.ibm.com/jp/developerworks/java/011026/j_j-obfus.html
0337デフォルトの名無しさんNGNG
どなたかAdvancedRobotとブロッキングAPIについて詳しく説明してくれませんか??
なんだか難しくて、、、、
0338デフォルトの名無しさんNGNG
>>337
闘え、Robocode (ロボコード): 第2ラウンド
http://www-6.ibm.com/jp/developerworks/java/020705/j_j-robocode2.html
ここは読んでみた?それから、質問する時はもっと具体的に絞らないと
(「詳しく」といわれても何から何まで説明するって不可能でしょ)
適切な回答はなかなか得られないよ。
0339デフォルトの名無しさんNGNG
レーダーの索敵範囲ってどこに書いてあるんでしょうか?

ロボットの絵からの想像なんですが、範囲は、前方で角度は向いている方向を
中心に90度から-90度てな感じでしょうか。もっと狭いのでしょうか?

0340デフォルトの名無しさんNGNG
画面をキャプチャして敵の撃った弾丸を完璧によけるRobotって作れないかな?
それとか、ソケットか何かで通信して完全に外部から制御されるDroidを作って
外部でプレイヤーがジョイスティックで動かすとか・・・

どっちも、商品ゲットには使えなそうだけど。
0341デフォルトの名無しさんNGNG
真っ正面のみだとおもうが
0342デフォルトの名無しさんNGNG
RobocodeのメニューからOptions->Preferencesを選択し
Visible scan Arcs (Cool, but may slow down game)
のチェックボックスにマークしてFinishをクリック。
するとレーダが索敵した範囲が青く表示されてカコ(・∀・)イイ!
0343デフォルトの名無しさんNGNG
>>337
ブロッキングは、一つのことをやってるときには、一つのことしか出来ない。

だから、ブロッキングのメソッドしか使えないRobotを実装した戦車は、
カーブを描いて曲がることは出来なくて、一回止まってから方向を変えてまた
進まなきゃいけない。

逆にそれがフェイントになって、敵の偏差射撃を外せることもあるんだけど、
基本的にはレベルの低い動きになる。

AdvancedRobotには、2つ以上のことを同時にやれる非ブロッキングのメソッドが
実装されているので、コレを使えば、レーダーで戦場全体をスキャンしながら、
移動しつつ、敵に照準をあわせて撃つなんていう芸当が出来ることに。

という理解なんですが、よろしいでしょうか。
0344∞ ◆INFP2PEU NGNG
>>335
javap というコマンドで逆アセンブルならできるかと

さて、テストも終わったしチャレンジしてみるか
0345デフォルトの名無しさんNGNG
でも、これってterrariumと違って、人の動作をぱくれないのがつらい
0346デフォルトの名無しさんNGNG
>>345
なんでぱくれないの ?
それとも有力日本人ものをぱくれないという意味かな ?

terrariumではどうやってぱくれたの ?
0347デフォルトの名無しさんNGNG
>>346
上位のバトルみても実際にどうやって相手の動きを読んだりしてるのか
 わからない。
 その点、terraはみるだけアルゴリズムが推測できた。
0348デフォルトの名無しさんNGNG
優勝商品って何がもらえるの?
0349デフォルトの名無しさんNGNG
シンクパッド
0350デフォルトの名無しさんNGNG
ロボットのカラーエディタがホスィ
0351デフォルトの名無しさんNGNG
あげ
0352デフォルトの名無しさんNGNG
初心者より学生の方が景品高いのはなんでだ?
http://www-6.ibm.com/jp/developerworks/java/robojcup/rules.html
0353デフォルトの名無しさんNGNG
学生の方がレベル高いから。上級者>学生>初心者
学生は、学生上級者にかなわないと思ったら初心者に行けばいいし、
一般上級者に挑戦したかったら上級者に行けばいい。
0354デフォルトの名無しさんNGNG
厨な質問で申し訳ないですが、robocodeをインストールしようと

$ java -jar robocode-setup.jar

したら、

Warning: Cannot convert string
"-ryobi-minchol-medium-r-normal--*-140-*-*-c-*-jisx0208.1983-0" to
type FontStruct

てなワーニングがでて、ダイアログの文字が□になってます。
多分フォントの設定が正しくないんでしょうが、javaのフォントって
どうやって設定するんでしょうか?

当方の環境は、TLW8。javaはターボに付いてたj2sdk-1.4.0-fcsです。
0355 ◆k/Ubp.Kg NGNG
>>354
$JAVA_HOME=Javaをインストールしたディレクトリとして
$JAVA_HOME/jre/lib/font.properties.jaってのをいじればイイ。
Java,font.properties.jaとかでGoogle使えば書き方は分かるハズ。
自分のマシンに入ってるフォントはxlsfontとかxfontselとかで見れる。

# あー、ターボはxfontselって入ってたっけな。
0356354NGNG
>>355
どうもありがとうございました。
教えていただいたとおり、font.properties.jaを書き換え
キチンと日本語を表示させることができました。

それにしても、font.properties.ja.Turboなんてファイルがあるのに
なんでシステムに用意されてないフォントが記述されてるんだか。
0357 ◆k/Ubp.Kg NGNG
>>356
font.properties.ja.TurboってFTP版のTurboLinux Workstation 6かそこら辺の奴に合わせて
作ってあるから、バージョン違ったりすると使えないと思う。俺も知人のTurboいじってて、それで
ちょっとハマった。
0358デフォルトの名無しさんNGNG
AdvancedRobot.getAllEvents()ってsetXxx()でセットしたキューの中身を
取得できると思ってたんですけど、どうやら違うらしいですね。

活発な交流希望、、、、
0359デフォルトの名無しさんNGNG
ついでに言うとAdvancedRobot.clearAllEvents()も
セットした行動をクリアーするのではないのか、、、、(鬱
0360デフォルトの名無しさんNGNG
>>359
AdvancedRobotの
getDistanceRemaining()
getGunTurnRemaining()
getRadarTurnRemaining()
getTurnRemaining()
あたりを使えば結局はなんとかなるんじゃないの?
0361デフォルトの名無しさんNGNG
(・∀・)どっかにソース公開してるロボットないですかぁ?(・∀・)
0362デフォルトの名無しさんNGNG
>>361
>>336にも書いてあるように世界のトップクラスのロボットにもソースを
公開しているものはある。でもいきなりソースを見てもわけがわからんはず。
最初のうちはデフォルトでついてくるサンプルロボットのソースを見て
その後"SnippetBot tutorial"や「ロボコードの達人たちから秘訣を学ぶ」を
見るのがよろしいかと。
http://www.ecs.soton.ac.uk/~awo101/SnippetBot.java
http://www-6.ibm.com/jp/developerworks/java/020726/CloakandTurret.html
http://www.geocities.co.jp/SiliconValley/9155/secrets/
0363デフォルトの名無しさんNGNG
AdvancedRobotの「行動」がよくわかんないっす
裏側で「行動」を保持するキューみたいなのがあるんでしょうか?
execute()を呼び出すと、そのキューの「行動」は全て消費されるとか?

「行動」の裏側が知りたい・・・・・・
0364デフォルトの名無しさんNGNG
ロボットを動かすとき(runさせるときに)、座標を引数にできますか?
どうしたらいいですか?算出した敵の座標へ突進させたいのですが。
0365デフォルトの名無しさんNGNG
>>364
いや、普通に敵に向かわせればいいじゃん
お前まだあんまりrobocodeいじってないっしょ?
0366デフォルトの名無しさんNGNG
>>365
普通ってのは?もうちっと詳しく教えて。
敵に向かわせるためには相手の座標いらんの?
あんまりいじってないから、よくわかってない。
runメソッドはまったくいじってない。
さっきから、ずっと紙で三角関数の計算ばっかりしている。
■ このスレッドは過去ログ倉庫に格納されています