News Archive
 Nov 19, 2001
Modified Newest Bot Uploads section
The Newest Bot Uploads section of the Bots page now uses a slightly modified technique for deciding which bots to display. The old method was to simply display all the bots uploaded today or the last 5 uploaded bots (if less than 5 bots were uploaded today). The new method will display at least the last 5 bots uploaded - but will look at the date of the last bot displayed and show all other bots uploaded on the same date. This way the Newest Bot Uploads always breaks on even date boundries rather than arbitrarily skipping some bots uploaded on the same day as the last bot displayed. This seems to be a more logical technique. What do you think? Let us know in the forums!

 Nov 8, 2001
New popularity rating system
The Top Five Downloads section of the Bots page has been changed to Most Popular Downloads. This section now displays the bots which are ranked as most popular by dividing the total number of downloads by the number of days since the bot was uploaded. This popularity ranking is the result of a great suggestion in the forums. It should help hilite newly uploaded bots which are being avidly downloaded. In addition to the popularity rating, the total number of downloads are also displayed. Any comments on the new rating system will be greatly appreciated in the forums. This change added one hour to the total project time.

 Nov 2, 2001
Version 0.97 Released! Major Enhancements!
Download the new version of Robocode here.

This isn't just a small bugfix release. This is the real thing. Some of the major new enhancements include:
  • Robot Packager - puts all the files associated with a bot in a single location.
  • Robot Description - info such as bot description, author name, Robocode version, etc is stored with the bot in the JAR by the Robot Packager.
  • Robot Database - allows you to more easily manage bots made up of multiple files.
  • API Changes - Added getEnergy() on HitRobotEvent, changed getLife() to getEnergy(), changed all getXxxTurnRemaining() methods.
  • Scoring - the scoring methodology has changed dramatically and now battle results can be redirected to a file for automated statistics gathering.
  • Updated Original Bots - updated for use with new version.
The full list of changes can be found here.

 Nov 1, 2001
Shorrockin releases source for Rapture v2.11
Shorrockin has the most popular bot around and he has decided to once again make the source available to everyone in the Robocode community. Due to the nature of his bot there are a great number of source and class files. Thus, the entire source and class file distribution is available in the single downloadable ZIP file. Click here to download Rapture v2.11 now.

 Oct 9, 2001
New Robocode Update Available!  by Mathew Nelson
I just released Version 0.96.2, which is a vast improvement over 0.94 and 0.95... if you haven't upgraded yet, now's the time! You can now write to a data directory to store persistent data, the help system uses your favorite browser, event priorities are much better, there's a fun new setInterruptible() call for event handlers, collisions are better, you get Bullet objects, a gazillion bugs have been fixed...

well, you can see the changes here:
http://robocode.alphaworks.ibm.com/home/versions.txt
You can download the latest here:
http://robocode.alphaworks.ibm.com/install/Install.html
There are already over 50 robots at the Robocode Repository (again, linked from http://robocode.net) for you to battle with.

I'm working on a Robot Packager to help robot distribution, as well as team support and objects in the battlefield. There are a ton of ideas flowing in, a number of which are listed on my todo/wishlist, here:
http://robocode.net/robocode.todo.txt
I want to implement them all!

 Oct 3, 2001
Bug Fix Update
Fixed two bugs. The prev/next buttons should now work when you click on a bot in the Newest Bot Uploads or Top Five Downloads sections of the Bots Summary page. The other bug is the nasty one that a couple people ran into while uploading their bots. Under just the right sequence of events, a new bot upload could over-write an existing bot - Yikes! This should now be fixed. I'd like to thank the members of the Robocode community that helped us figure this one out (it was not an easy bug to find). See ya in the forums!

 Sep 30, 2001
New Bots Section!
Go explore the new Bots section. This combines the previous Search and Categories sections into one central place to serve your bot browsing needs.

The main page of the Bots section is the Bots Summary. This page shows the 'Newest Bot Uploads', 'Top Five Downloads', and 'Categories' lists. The Categories list gives a breakdown by category the total number of bots and latest upload in each category. Clicking on the category names will take you to a list of bots in that category.

The search page is available from any of the Bots pages via a 'Search' button found at the top of each page. The search page no longer defaults to showing the list of all bots that have ever been uploaded. Now, it waits until you click the 'Search' button before showing any search results.

By the way, this is a pretty big change, so there might be a few bugs that we haven't caught yet. If there is anything too nasty then we'll switch back to the old format until we get them resolved. Hit the forums and let us know what you think about the new Bots section organization. All of this added about 16 hours to the total project time.

 Sep 27, 2001
Categories section started
Go check out the new Categories section. We currently only have the first summary section that shows a list of all the new bots for the current day or at least the 5 most recently uploaded bots. But will soon be adding the list of top 5 downloads, and a summary stats on each bot category. This section will allow you to drill down into each category to browse through the bots contained in each. We'll be finishing this section off pretty quick. Working up exactly what we wanted to do in the Categories section and implementing the first part added about 2.5 hours to the total project time. By the way, the forums section only took about 2.5 hours to integrate into the site too!

Jason has added a new forum called 'Robocode Game Bot Discussion'. You should add a topic to this forum with the same name as a particular bot that you want to talk about. This forum's topic list will essentially be a list of bot names. Under each topic (bot name) you can discuss various aspects of that bot such as design, weaknesses, bugs, etc. Eventually, this discussion group will appear in a third tab of each bot detail page (also). Thus, the bot detail page will not only describe the bot and show its categories and tribes - but it will also contain a forum dedicated to talking about just that one bot.

The 'Bots' section has been renamed 'Bot Search' since that is really what it has always been intended to be. As soon as the Categories section is finished off the Bot Search will be tweaked so that it no longer defaults to showing every bot uploaded when the page initially appears. You'll have to hit the search button first. Besides, the best place to browse for bots will soon be the Categories section.

What does everyone think about adding a peer rating system for the bots? It could be implemented like a poll on each bot's detail page then the results could be posted in the Categories page as a Best Bots sub-section. Let us know what you think in the forums!

 Sep 25, 2001
Forum section is IMPROVED!
Added new forums for a total of six. Keep those suggestions coming! Also, code snippets in the forums are now syntax colored. Plus the bold, italic, underline tags now work.

 Sep 25, 2001
Forum section is ALIVE!! (beta)
Danger! Danger! It seems solid, but Jason just pulled this thing together today - so there is minimal testing. Think of yourselves as really big guinea pigs. The look and feel of the forum is in flux - so you will notice some odd color choices and layouts for a while.

Warning! Jason is still wiring the authentication system together. Therefore, if you add a login in the forum then you better make sure that it matches exactly the name and password of your regular Robocode Repository login. Otherwise, when Jason is finished wiring, you won't be able to access your forum account settings anymore. When finished, your Robocode Repository login will be the single point of authentication. Besides, you probably won't need to create a forum login because there are no authenticated forums right now.

The forum section currently contains a single 'General Discussion' forum. We're looking for you guys to let us know (with posts to that forum) what other forums we should add. Since this is a public access forum, you shouldn't need to login to post to it.

Post your comments in the 'General Discussion' forum. If you find any bugs then send them to robocode@developerforge.com

 Sep 24, 2001
Two New Categories + Formatting
I have added the categories of 'Newbies' and 'Expert' to the bots. Some of the bots that have been uploaded are incredibly sophisticated. I'm afraid that these expert bots may be intimidating the new-to-Java crowd that is exploring Java through Robocode for the first time. In order to encourage newbies to compete with other newbies, I've added a 'Newbies' category. On the other end of the spectrum is the 'Expert' category. This is definitely the deep end of the Java pool. Everybody might want to update their own bot on the Bot Detail page to accomodate the two new categories. Let us know what you think at robocode@developerforge.com

Also, we've added some sneaky formatting to the description field on the Bot Detail screen. If you've figured out that you can enter fancy HTML in this field then the description will save exactly as you entered it. However, if you don't have any HTML tags at all in your description then all line-feeds are turned into <BR> tags so that the formatting will appear correct to other users who are viewing it in regular HTML form rather than in an HTML text field. The funny thing is that for those who enter their descriptions oblivious to any HTML tags, the tags are then stripped back out when they go back in to modify their bot. Thus, they never realize that their description was being modified on the back end. All this added 2 hours to the total project time. Are we insane to be doing this? Tell us at robocode@developerforge.com

 Sep 23, 2001
Bot Ratings?
What does everyone think about adding a bot rating to the Bot Detail screen? This would allow everyone to rate each bot on a scale (1-5?) for things like defense, attack, intelligence, and an overall general rating. Is this too complicated? Maybe just the general rating? Let us know what you think at robocode@developerforge.com

 Sep 21, 2001
Request for feedback
Before the gratuitous plea for feedback, two words "Syntax Coloring"! Go check it out. Should we force the code to wrap hard at 80 chars or not? Let us know what you think. Also added some background graphics to some of the screens (try to find 'em). All this added about 2 hours to the total project time.

We're working on the news section and are wondering if everybody in the community would like to be able to submit new news stories? All the stories will be submitted pending approval by one of the News Admins. (Anybody wanna volunteer to be a news admin?)

Also, does anybody think that it might be usefull to be able to search for bots by the contents of their source file?

Send your comments to robocode@developerforge.com

 Sep 19, 2001
WE ARE ONLINE! (New & Improved!)
The first wave of bugs were fixed. Thanks for all the feedback. Time to start sending in the next wave of bugs! Send them to robocode@developerforge.com

 Sep 18, 2001
WE ARE ONLINE!
You may now upload bots into the repository and create your own accounts. All bots default to the Public tribe right now - but you can click that off on the 'Tribes' tab of the Bot Detail screen if you don't want anyone to have access to your bot.

Next, we'll allow you to create your own tribes. The creator of the tribe is also the admin for that tribe and is the only one that can add and remove users from their tribe. Give us a few days to implement this. The clean-up that we did after the bug kill, added another 3 hours to the project time.

This is an initial test release. Therefore, there are probably some bugs sprinkled around that still need to be swept up. So, if you run across one, let us know at robocode@developerforge.com

 Sep 18, 2001
Bug fixed! Check back later tonight?
Driver bugs are particularly nasty when they make it look like the bug is occuring elsewhere. Well, we uncovered its hiding place and gave it a healthy dose of Raid. Now to clean-up some of the HTML, remove a ton of debug code, and perform a little code re-factoring. Add about 4 hours to the project time for pest control. We should have enough time to slip a release in later tonight. :-)

(Yes, we realize that we just jinxed ourselves terribly)

 Sep 17, 2001
Ready? Not!
Ran into a couple bugs testing the upload/download. One was particularly nasty. I'll take a look at it again Tuesday night. Sorry for getting everyone's hopes up. Nasty bugs have a way of showing up at the most in-opportune times.

Send rants to robocode@developerforge.com

 Sep 16, 2001
Ready Monday Night! (No, really!)
All the account maintenance screens have been completed. Also, the bot maintenance screens have been fully tested now. However, we didn't have time to test the upload/download stuff yet. The upload/download along with all the other changes will be posted Monday night (really!). All the account and bot maintenance stuff along with the testing has added another 18 hours to the total project time.

After this is released, we'll concentrate on the Public 'Categories' page then the 'My Tribes' pages. Jason, in the mean time will be testing the integration of the account maintenance with his Jive-based discussion forum.

We'll most likely be posting the source for the account maintenance screens as well as the login screen Monday night. We'll wait and see if any changes are needed to the bot maintenance or upload/download screens before posting them.

Question: Should we add a third tab to the Bot Detail page showing a date-stamped list of the various versions of the bot that have been uploaded? These older versions could be downloaded instead of just the latest version. Currently, the author of a bot can pull up that bot's record and hit the 'Save & Upload' button to upload a newer version of the bot. If we do keep a history of these older versions, then we should probably also have a change-log message for each.

Let me know what you think at robocode@developerforge.com

 Sep 13, 2001
Almost ready!
The upload/download is being tested. However, since you must be logged-in in order to upload a bot, I'm working on the account entry/edit screens. Also, various changes were made to the login screen giving instructions on where to go to create a new account or change your existing account's info (like password). Now, Admins won't be the only ones with an Admin section under the navigation bar on the left - every user will have a 'My Account' link after logging in. This is where users can go to modify their own account info.

Jason is also putting the pressure on me to finish the account maintenance pages so that he can tie-in his new Jive based discussion forum and bring it online in the next few days. Cool!

Looking for feedback on whether or not the 'My Tribes' section on the navigation bar should be hidden until you have logged-in. I kindof like the idea that casual users can see the additional features of the site before actually creating an account. What do you think?

Check back this weekend for the upload/download and possibly the initial release of the discussion forums. As always, if anybody has any ideas or suggestions for the site, send them to: robocode@developerforge.com

By the way, a user notified us of a bug in the Bot List page where the 'Since Date' search field was not being properly validated as a real date. Ten minutes later, it was fixed and a new release was being pushed out to the server. Thanks!

 Sep 10, 2001
Whew! 35,000 hits since last night
Thanks for the stress test slashdot. Our happy Linux developement server never appeared to break a sweat. If you encountered any problems with accessing the site or found any bugs, please let us know at robocode@developerforge.com

Due to the intense interest in the site, I'm increasing the priority of the work on this site and will be attempting to enable the upload/download feature on Tuesday night. So, check back Wednesday and see how it looks.

 Sep 9, 2001
Oh Nooooo! Here comes slashdot!
If you noticed my comment on SlashDot about this site, please be kind. This is a development server and is not designed to take the intensity of a SlashDot attack. :-)

I am looking for feedback on design and features, tho. Notice that the most interesting link on the navigation bar is the public Bots link. That section is fairly well finished. The only thing that is not enabled is the saving of info and the upload/download.

Please read through the news items on this page in order to get a feel for the ideas that have gone into the site design so far. As always, any comments or ideas about the site would be greatly appreciated at robocode@developerforge.com

 Sep 9, 2001
Made compatible with Netscape 4.x and 6.x
Since, I posted a comment on slashdot, I figured that I ought to brush-up the Netscape compatibility of the site. I primarily test with IE, but now everything should look acceptable and work under Netscape 4.x and 6.x. (Add about 30 minutes to the project time)

 Sep 5, 2001
Added a little content
I added another website to the 'Other Sites' section and added the source code for the BotList page to the 'Website Source' section. (Add about 30 minutes to the project time)

 Sep 4, 2001
A few minor tweaks
I added the current database schema to the Website Source page. I also modified the BotList page so that if you click on an author's name in the result list, it will search for all of that authors bots. Fixed a bug on the BotDetail page where the author's name and tribes were not being displayed when creating a new bot record. These amazing tasks added another 1 hour to the project time.

As always, if anyone has any cool ideas or bug reports, share them at: robocode@developerforge.com

 Sep 3, 2001
Whoa! Site Security Implemented
No, the upload and download feature isn't done yet. I tend to focus on the most complex stuff first and let the easy stuff fall into place as the project progresses. But, I'll try to do the upload/download next.

Ok, the BotList and BotDetail pages are now fully integrated into the security model. If you click on the public 'Bots' link on the nav bar then it will take you to the BotList page where you can search for bots then click on the resulting list items to view the details about each bot.

I know - doesn't sound that hard. Well, it is. For instance, the BotList search uses three different base queries depending on whether or not you are logged-in and if you are authenticated as an Admin. Admins can see all bots no matter what. Other users can only see bots that Public or associated with a tribe that the user belongs to. Non-logged-in users can only see bots that are publicly accessible. Try it out - there are three logins for the system right now. Their passwords are the same as their names. Examine the list of users below and the list of bots then login as each of the users and see how your view of the bot repository changes.
username=robocode
password=robocode
tribes={Public, Bots-R-Us, DeveloperForge}

username=Dan Lynn
password=Dan Lynn
tribes={Public, Admin, DeveloperForge}

username=Jason
password=Jason
tribes={Public,Admin}


botName=Tracker3
tribes={Public, DeveloperForge}

botName=SnackBot
tribes={Public}

botName=JazzBot3
tribes={Bots-R-Us}
The BotList is not the only page that changes depending on your authorizations. The BotDetail page is the king of authorizational reconfiguration. For instance, when not logged-in, all of the bots fields are non-editable and you only have the choices of downloading or creating a new bot from each page. Actually, the 'New' button will trigger a login if you aren't already logged-in.

If you are logged-in as a normal user then the BotDetail pages still appear as they do when not logged-in until you browse to a bot that you are the author of. If you are the author, then all the fields become editable and a bunch of additional button appear at the top {'Save & Upload...', 'Save', 'Delete'} in addition to the normal {'Download', 'New', 'Cancel}.

In addition, the items in the Categories and Tribes tabs become editable (selectable). When you aren't the author of a bot, all the standard categories are listed with a graphical checkmark next to the categories that the bot belongs to. If you are the author, then these turn into regular checkboxes and can be clicked on/off as you please. The Tribes tab is a little more tricky. When you are the author of the bot, you see all the tribes that you are currently a member of listed which editable checkboxes next to each to allow access to either the source or classes to the specified tribe. If you aren't the author of the bot then only the tribes that have access to either the source or the class files will be listed. This way, you can't tell for sure what tribes the author is a member of. Also, as in the Categories tab, all the checkboxes turn into un-editable graphic checkmarks.

I've been sort of debating what tribes should be shown when looking at somebody else's bot. I like the idea, that you can see the bot because at least its class files are accessible by the Public tribe and then notice that you will need to become a member of one of the listed tribes in order to get the source. However, on the security side of things, I kind of don't want anybody to see any tribes that they aren't already a member of. Let me know what you think! robocode@developerforge.com

In addition to all these changes, you will notice subtle informational messages, fields, and navigational items that appear or disappear based on your authentication and relationship with the bots. For instance, when authenticated as an Admin, a bunch of extra navigational items appear in the margin for doing site maintenance. Another example is that the upload date and count of downloads don't appear on bots which have not had their source or class files uploaded yet. Those same bots show 'Not Uploaded' in the Upload Date and Downloads columns of the BotList page.

Another feature which is now enabled is the prev/next buttons at the top of each BotDetail page now work. They traverse through the list of bots on the preceeding list page. When at either end of the traversal list, the corresponding button disables itself.

I spent more time on this than I wanted - but, I needed to figure-out something for a 'paid' project with sub-panels/parent page interactions and this project was far simpler than that one. So I used this project as a test bed to work-out the technique. Thus, chalk-up another 16 hours to this project.

As always, if anybody has any suggestions, questions, or ideas, share them at: robocode@developerforge.com

 Aug 29, 2001
Split Bot Detail page in two!
The fact that none of the browsers allow you to assign values to file input fields prompted me to split off the source and class file fields from Bot Detail into a second page called Bot Upload. Otherwise, the file input fields kept being cleared every time you were bumped back for validation or switched between the folder tabs at the bottom. I found that very annoying. Also, the having the source and class file fields on their own page allows us to provide lots of instructions on how to format your uploads. This process added another 3 hours to the total project time (mostly figuring out how I wanted to do it)

This URL will take you to the Bot Detail page: BotDetail.jsp Try {robocode, robocode} if you don't already have a login.

As always, if anybody has any more great suggestions, share them at: robocode@developerforge.com

 Aug 28, 2001
Preview of Bot Detail Page
Stayed up a little late and stubbed-in most of the Bot Detail page. Add another 4 hours to the project time. Since there are no existing bots or Bot List page, you will need to jump directly to the Bot Detail page to view it. Also, since no bot ID is provided, the page assumes that it is in file-upload mode for a new bot and requires that you be logged-in. Try {robocode, robocode} if you don't already have a login. The sub-panels are hard-coded with data right now. The JSP page comments are listed below for your reading pleasure. This URL will take you to the Bot Detail page: BotDetail.jsp Let me know what you think: robocode@developerforge.com

This page allows the user to browse the detail records for the bots. Traversal from record to record is controlled by the < > buttons. These buttons traverse through the list of records from the page that lead to this one. If the current user is the author of the current bot then the "Re-upload" button appears and the file fields appear on the form.

Note that this page is made up of several sub-panels that are included via static jsp include directives. There are two version of the section that displays the fields. The first version displays all the fields as static text with indented borders that make them look like fields. The second version shows the fields as actual editable form fields. The editable fields are displayed when the page is in file-upload mode.

The bottom of this screen holds a sub-panel which displays the list of groups to make this bot available to. There are two versions of this section. The first version displays the public groups that this bot is a member of. The second version only displays when in file-upload mode. In this mode, the list of groups that the current user is a member of is displayed with checkboxes allowing them to specify whether the source or class files will be available to each group.

Note that when in file-upload mode, the user may choose to simply update the bot detail record without re-uploading the bot by clicking the "Just update changes to fields" checkbox at the top. This checkbox is not available when adding new records. This feature also allows admins to modify bot data without having to worry about not having the file available locally for upload.

 Aug 27, 2001
Changed Section Names
Looks like everyone liked the term 'Tribes' better than groups. So, I've changed the 'Private' section to 'My Tribes' and change the private 'Groups' to 'Tribes'. I changed the public 'Groups' to 'Categories' because I see this as being the list of public categories that people can upload bots into (like: 'Trackers', 'Dozers', 'Avoiders', 'Top Ten', etc.) If you look closely, I darkened up the section titles from #666666 to #333333. Add another 4 hours to exploring a wonderful JSP component for doing upload/download and doing some of the PageBeans. Let me know if anybody has any more great suggestions: robocode@developerforge.com

 Aug 25, 2001
Robocode Repository goes online!
It's been a long 8 hours of work, but we are finally online! Right now, the only pages that are working are the Home Page and Other Sites pages (not including the various support pages for login, privilege failures, auto-logout warnings, etc.) The database has been setup and populated with just a few users and groups. By the way, does anyone have a better name for "Groups"? - (maybe 'Clans'?)