Compiled but can't see...
I set up a robot project on my NetBeans. I loaded the robocode libraries, etc. All this seemed to go successfully. I can even compile my robot class with success. I also pointed robocode to the directory my robot class is in.
But my robot doesn't show up in the robot list for fights!
Any ideas? Thanks.
Hi! How you "pointed robocode to the directory my robot class is in"? What this directory contents? Do you added ${robot.name}.properties file? Which package are you use?
Thanks for the reply!
I added the directory, "C:\MyRobots\build\classes\zjk", to development options. In that directory is only the class file, "drag0.class"
Okay, since you mentioned properties file, I looked around (I don't see any ${robot.name}.properties file). I tried adding the other directories above the one mentioned above and it still doesn't work. how is a .properties file generated and what is its purpose?
The .properties file is added to the JAR when you package your bot, but it shouldn't be needed in order to see a development version of your bot. I'm not sure, but I think you'll need to add the top level directory in Robocode - e.g., if your bot is zjk.MyRobot, under ...\build\classes\zjk\MyRobot.java, you'd need to point Robocode to ...\build\classes.
I have my things setup the other way, with Eclipse compiling the .class files into robocode/robots/, but that's kind of a stupid setup that I've just never bothered to change.
Not that stupid. Many times I saw a development version working, only to generate a non-working JAR. Wrong .properties file, security violations, wrong file names...
And the opposite problem (non-working development versions) arises when you use the engine API directly instead of the GUI . i.e. genetic tuning with full battles.
I also develop and test using JARs instead of raw .class files.
There was one time when codesize calculated the wrong size for a nanobot, adding the size of 2 development bots together.
I ended trying to shrink the code a lot only to discover it did already fit in the nanobot category before with lots of room for more code.
Okay, so I took the .class file and folder and threw it in the native Robocode folder and it works fine. So I know that's okay.
But still when I have it in my dev folder it doesn't show. In Robocode I have added: C:\MyRobots\build\classes\zjk C:\MyRobots\build\classes\ C:\MyRobots\build\ C:\MyRobots\
...and none of them work! :/
Did you add them all at the same time? I had problems with multiple classpath folders.
And the correct path should be C:\MyRobots\build\classes
Thanks I got it to work.
I am taking a course which is based on robocode and I found this thread in Google but @Therealdrag0 didn't mention how to actually solve the problem.
So the correct path must be the same as the package of the java class. For example, if the robot has package com.example.robot.MyRobot
then the only way robocode will see the robot is if you add a folder, let's say main, and inside there are folders com/example/robot containing MyRobot.class
so if my robot is compiled to build/classes/java/main/com/example/robot/MyRobot.class I have to add build/classes/java/main as a source ¯\_(ツ)_/¯
Thanks anyways.