BedMaker
That error you're getting is just because RoboResearch is really strict and dies if it sees any console output it doesn't recognize. Some newer versions of Robocode added some new output and it broke RoboResearch. The updated versions (like the zip you downloaded, from Chase-san) should have that fixed. I also posted a version of mine a while back (with hacked melee support) here if you want to give that a try.
I'd make sure you've copied the libs into roboresearch/libs and installed a new version of Robocode into roboresearch/robocode_install. I went years before realizing it was using the libs/robocode.jar to run battles, not the one in robocode_install, nullifying tons of tests I thought I'd run on bots in different Robocode versions.
I hate seeing people struggle so much getting RoboResearch setup, because it's so freaking useful once you have it going!
Yeah.. I reeeeeeaaaallllly want it to run with multiple threads. As is, I have to wait about 12-18 hours for 150bots/14seasons. Not bad, since there's lots of other things going on in life.. but I keep remembering those old Heinz Ketchup commercials... *singing* "Anticipattioonnnnn." *chuckles*
What version should I use for the libs/ directory and the robocode_install/ directory? Is it vital that they are the same version?
Going to give your .zip a try here. Wish me luck!
Well, the libs dir is what's actually used to run the battle. I'm not sure the version in robocode_install even matters, but I'd keep it the same for the sake of argument.
- grumbles*
Unzipped archive. Installed a fresh Robocode into the robocode_install directory. Started up database_server.sh No problems.
First problem on client run:
java.io.FileNotFoundException: settings/properties (No such file or directory)
No settings directory and settings/properties file in the .zip archive. Copied that from my old RR and adjusted the paths accordingly. Could you post the contents of your settings/properties file? Some stuff in there that I'm not sure about, especially that "threads" line.
Second Problem: Bunch of sample.VelociRobot problems? Ah ha! looks like your comment at Talk:Scarlet. I deleted all the sample bots from robocode_bots.
Third problem: It's still yelling about sample.VelociRobot? Grrrrrrrr.
Deleted everything from inside roboresearch/trunk/robocode_install/robots, including non-.jar robots. This eliminated errors about sample.VelociRobot.
Now I'm back to this again....
tom@gecko ~/roboresearch/trunk $ ./cli.sh -S deB108.cfg
Challenge Specifications:
Challenge: deBroglierev108 150-57-95
Bot: tjk.deBroglie rev0108
Alias: null
Rounds: 35
Threads: 1
Type: null
Seasons: 14
(Running using server)
Thread 1: Running tjk.deBroglie rev0108 vs. EBBU.Sim2 1.02
Thead 1: Unrecognized output from robocode, "jeremyreeder.Vincent: Got an error with this class:
java.lang.IllegalStateException: Can't overwrite cause". Killing battle.
Thread 1: will be terminated
java.io.IOException: Stream Closed
at java.io.FileInputStream.readBytes(Native Method)
at java.io.FileInputStream.read(FileInputStream.java:236)
at sun.nio.cs.StreamDecoder.readBytes(StreamDecoder.java:282)
at sun.nio.cs.StreamDecoder.implRead(StreamDecoder.java:324)
at sun.nio.cs.StreamDecoder.read(StreamDecoder.java:176)
at java.io.InputStreamReader.read(InputStreamReader.java:184)
at java.io.BufferedReader.fill(BufferedReader.java:153)
at java.io.BufferedReader.readLine(BufferedReader.java:316)
at java.io.BufferedReader.readLine(BufferedReader.java:379)
at simonton.utils.ReaderByEvents.run(ReaderByEvents.java:30)
Thead 1: battle was terminated
- sigh*
I should note: after that line "Thread 1: Running tjk.deBroglie rev0108 vs. EBBU.Sim2 1.02" there's a LOOONG pause by RoboCode standards..
Deleted both jeremyreeder bots in the challenge file because both of them threw that same error.
Now it's
(Running using server)
Thread 1: Running tjk.deBroglie rev0108 vs. EBBU.Sim2 1.02
Thead 1: Unrecognized output from robocode, "tjk.deBroglie rev0108 stopped successfully.". Killing battle.
Thread 1: will be terminated
java.io.IOException: Stream closed
-- etc etc etc --
Thead 1: battle was terminated
Thread 1: Running tjk.deBroglie rev0108 vs. Ex.Survival 3.7
Hey Voidious, mind zipping your entire current roboresearch directory (sans only trunk/robocode_bots which I can populate from my rumble folder) so I can try a crack at it? I'll have to edit trunk/settings/properties to fit my paths, but otherwise should need to change nothing.
I was thinking of asking you the same... =)
Ok, I cleared out robocode_bots, working_dirs, robocode_install/robots, robocode_install/battles, database/roboresearch.log, and database/roboresearch.script, and here you go: [1]
You do not have permission to edit this page, for the following reasons:
You can view and copy the source of this page.
Return to Thread:User talk:Tkiesel/BedMaker/reply (35).
I'd forgotten about that, but it looks like I modified BattleRunner.java to look in robocode_install/libs instead, so there's no libs directory confusion like I fell victim to. =)
Ah ha!
After a permissions issue of some kind ("user not found" kind of thing) with the db, I just managed to get battle srunnign with one thread. Now trying 3+.....
Huzzah!!!!! Working!!!
Voidious, you are a king, good sir! Thank you a thousand times!
Oh, and I am about to send you an email to let you know about soemthing else that was in that file. Take it down from your hosting ASAP!
You might want to tweak the CPU constant from what I have set. You can just start Robocode from robocode_install and do Options > Recalculate CPU constant (or something like that). The number in my config/robocode.properties was calculated on my system then manually increased a bit, just to be safe with the multiple threads.
Thanks for the tip. I recalculated it just now, and added ~5% just for kicks.
Do you occupy every core on your machine? I've been leaving one free just because I'm paranoid about skipped turns.
Yes, and actually, on my new quad core with hyperthreading, I'm using 6 threads. The OS thinks I have 8 because of hyperthreading, and somewhat surprisingly, 6 or even 8 run measurably faster than 4. For the RoboRumble, I only run 3 because the integrity matters a lot more there. I up my CPU constant by ~25%, which is about how much slower individual battles run going from 4 to 6. There's some talk and benchmarks on User_talk:Voidious#CPU_benchmark_advice_47 if you want to have a look.
Cool. Well, I'm off on fixing up my hitrate normalization.. so that I can choose my firepower more intelligently.
The painful part is that this really screws with my score via mucking with my movement choices... Stat decay and flattener amount run off of the enemy's normalized hitrate already. Ahh, but I can see how my changes influence things against a big group of bots now! It's great!