User talk:CrazyBassoonist
Contents
EliteTournament
Because doing well in the roborumble often involves crushing bad/old bots by a large percentage instead of beating strong new contenders, I started wondering about how all of the newer robots stack up against each other. So, assuming there's interest, I think I'll start running my own informal tournament weekly (when time permits). I think it's an interesting idea and will be a lot of fun. The rules will be as follows:
1. There will be six categories: Mega, Mini, Micro, Nano, Extends Robot, and Implements Droid. Robots will only fight against other robots in their own category (I.E. Megas won't fight Nanos and Micros won't fight Minis). Each robot will fight every other robot in its category in one 35-round battle on an 800 by 600 field. I realize that only one battle per robot combination won't be the most accurate way to do it, but it would save time and I feel that it is more in the spirit of the tournament idea.
2. Every user participating in the tournament will be allowed to put a maximum of one robot into each category, for a total of six robots. Users can get points for winning certain segments of the tournament:
- 1 point for Mega APS king
- 1 point for Mega PL king
- 1 point for Mini APS king
- 1 point for Mini PL king
- 1 point for Micro APS king
- 1 point for Micro PL king
- 1 point for Nano APS king
- 1 point for Nano PL king
- 1 point for Extends Robot APS king
- 1 point for Implements Droid APS king
The User with the most overall points will be declared the winner of the tournament. This means that people with a wide variety of robots will tend to do better in this challenge.
3. You may not add bots that are not your own. This means that inactive bot authors will not be able to add their robots to the EliteTournament. Of course, nothing prevents you from adding your own old(or even ancient!) robots. I simply want robots made by people who still peek at the wiki now and again.
Note: I realize that this doesn't contain any melee rankings, but I couldn't think of a simple way to rank the different melee robots. If anyone has a good idea for how I can do this, I will include it in the tournament.
Well, that's the EliteTournament. Keep in mind that it is a just for fun thing, and the scores from it shouldn't be taken too seriously. This should be an exciting addition to the scores obtained from the RoboRumble though. All you have to do is tell me what robots to run in it, and I'll provide the scores. Thoughts? Comments? Criticism?--CrazyBassoonist 17:55, 19 February 2011 (UTC)
Seems like a neat idea. I'm not sure an "overall winner" is such a great idea, since so few people have enough bots to cover all the categories, but maybe it would encourage some of us to write some. In general, I definitely like the idea of focusing on beating each other instead of crushing the weak. Though crushing the weak may still work in this format, to a degree. =) I still want to do a bracket tourney of the top of the main RoboRumble, basically run how the Twin Duel was - round robin to seed a bracket tourney. Not sure if that will happen by month's end... --Voidious 14:35, 21 February 2011 (UTC)
Help???
For some reason, when I save in eclipse it updates the file in the src folder, but not the bin folder. This means that I can create new bots and update the ones I have, but I can't change what's in the bin folder so the robocode robots always stay the same. Does anyone have any idea what to do about this?--CrazyBassoonist 05:36, 12 February 2011 (UTC)
Hi! I didn't understand your question completely. Do you mean, that Eclipse did not compile your code when you press ctrl+s? Try to execute "make" or "build" command (i don't remeber for sure, because i don't use eclipse for 3 years) --Jdev 05:51, 12 February 2011 (UTC)
Eclipse still compiles my code when I press ctrl+s. The problem is that when I save, normally two things happen: eclipse creates a .java file in the src folder, and a .jar or .class(don't remember which) in the bin folder, which is what robocode actually uses. Right now, when I press save, all that happens is that a .java file is created or edited in the src folder, and the bin folder remains unchanged.--CrazyBassoonist 13:17, 12 February 2011 (UTC)
That means Eclipse doesn't compile your code. Try to make sure that Project > Build automatically
is checked. Otherwise you have to build the project yourself (Project > Build all
). --Nat Pavasant 13:47, 12 February 2011 (UTC)
That fixed it! Thanks a lot:-)--CrazyBassoonist 14:01, 12 February 2011 (UTC)
Mercutio
I'm about to release yet another micro melee bot: Mercutio. I decided that with all the HOT-dodging movements going on at the top of the rumble, I might try something similar but at a more comfortable codesize level. Mercutio has an Anti-Gravity movement (technically a minimum risk movement with a max distance of 36) that focuses on dodging simple targeting. My tests indicate it should be about top ten in micro melee, and while I haven't tested it much in one-on-one it might be decent as its movement dodges fast targeting really well.--CrazyBassoonist 15:26, 20 December 2009 (UTC)
Suspicious Scores
This: http://darkcanuck.net/rumble/BattleDetails?game=minimeleerumble&name=oog.melee.Capulet%200.1&vs=dmsr.MiniR101%200.4--CrazyBassoonist 23:55, 2 December 2009 (UTC)
I Just added some debug in my User_talk:DavidR#Melee_client_problem.3F page about the problems with my meleerumble client. --DavidR 09:07, 3 December 2009 (UTC)
A Droid????
Some info about CapuletDroid: Its a nano-sized droid based on Capulet. The only way its movement differs from Capulet's is that its movement does not take perpendicularity into account; it also has a decent targeting/energy management system that uses the angles from bullets that hit it to figure out where to aim. I'm pretty proud of this bot, as it took a lot of squeezing and innovations to get it to work. I doubt if it'll be very competitive, but it should be at least in the top half of the nano melee rankings. I commented the code out, as it seems to me like a pretty good source of Droid-related information--CrazyBassoonist 03:10, 9 November 2009 (UTC)
That's neat! Always fun to see someone exploring new territory. =) Those Melee scores are looking pretty respectable. You going to keep working on it, or just a one-off experiment? I wonder how high it can go... --Voidious 16:34, 9 November 2009 (UTC)
I have same idea=) So may be, sometime, when i finish UltraMarine, i will build rival for CapuletDroid and we will give life for new league=) --Jdev 17:29, 9 November 2009 (UTC)
Yes, I do plan to keep working on this (of course, I think this for every robot....) and it would be nice to have another droid to compete against=)--CrazyBassoonist 23:20, 9 November 2009 (UTC)
There are several Droids out there if you search well enough... --Nat Pavasant 13:28, 10 November 2009 (UTC)
Hmm... I looked, but Bvh.hdr.hodur was the only one I could find (in the rumble), and it isn't even in the meleerumble. So some more competition would be nice=)--CrazyBassoonist 02:04, 11 November 2009 (UTC)
The only one I've played with is Tiresias, by Kawigi. You can find some download links to Droids at oldwiki:ImplementsDroidCompetition/Participants. --Voidious 02:32, 11 November 2009 (UTC)
Uh oh
Haha big problem: I just noticed there are now exactly 666 articles. Notice how this coincides with the kinsens nanobot...... Haha just joking--CrazyBassoonist 01:11, 4 October 2009 (UTC)
Melee scoring
I have a question... Will releasing my new robot at the same time as a shadow version affect it's score at all? I mean because they'll both be getting run a lot, and having an awesome robot like that in the same battle affects how well it does a ton--CrazyBassoonist 23:40, 7 September 2009 (UTC)
No, don't worry, they won't run all their battles together. The client appears to pick one of the bots that needs battles and run a random battle for that one bot. You'll just get battles half as fast as you would if you were the only bot needing battles. --Voidious 23:47, 7 September 2009 (UTC)
Ah, well that's good(Sorry ABC). I'm excited about this robot, it scored ahead of GlowBlowMelee consistently against one group of robots =). I'm hoping top ten for it--CrazyBassoonist 23:50, 7 September 2009 (UTC)
Note though, that it could have a slight affect, because that new version of Shadow would be in 3.something% of your battles by chance, and if it's hugely better/worse than the old version it would have a little affect on your score, but... well nothing big. While it's tiny between two increments of a bot, it's theoretically nonzero. A newly introduced bot (particularly something like a second sitting duck...) would likely have a bigger affect than a different version of Shadow, but still probably not big. Intoducing a second sitting duck to rumble is probably the worst-case for how much a single newly introduced bot could affect the rumble. Unless... you count something diabolic like a rambot specifically designed to attack Shadow and nobody else... --Rednaxela 04:28, 8 September 2009 (UTC)
Well I'm quite happy with how it appears to be doing now, no matter how the melee scoring works--CrazyBassoonist 22:28, 8 September 2009 (UTC)
Deep Robocoders
Haha, I just found this page on the old wiki: http://old.robowiki.net/cgi-bin/robowiki?MultiThreading/Ethics. It was very interesting to see robocoders arguing philosophy:-)--CrazyBassoonist 01:06, 1 September 2009 (UTC)
- If you look at oldwiki:ABC, you will find Robocoder discuss football (soccer) =) » Nat | Talk » 02:59, 1 September 2009 (UTC)
Repository
I'm getting this message when I try to go to the bots page on the repository:
Exception: JspTagException Message: SQLState = 28000 ErrorCode = 1045 Message = Access denied for user 'robocode'@'localhost' (using password: YES) StackTrace: java.sql.SQLException: Access denied for user 'robocode'@'localhost' (using password: YES) at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:2928) at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:771) at com.mysql.jdbc.MysqlIO.secureAuth411(MysqlIO.java:3649) at com.mysql.jdbc.MysqlIO.doHandshake(MysqlIO.java:1176) at com.mysql.jdbc.Connection.createNewIO(Connection.java:2558) at com.mysql.jdbc.Connection.(Connection.java:1485) at com.mysql.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:266) at java.sql.DriverManager.getConnection(DriverManager.java:525) at java.sql.DriverManager.getConnection(DriverManager.java:171) at com.pvi.sql.ConnectionResolver.getConnection(ConnectionResolver.java:227) at com.pvi.sql.ConnectionResolver.getConnection(ConnectionResolver.java:199) at com.robocode.sql.RoboCodeDatabaseUtil.getConnection(RoboCodeDatabaseUtil.java:80) at com.robocode.apps.repository.pagebeans.Categories.pageAccess(Categories.java:148) at com.pvi.servlet.jsp.PageBeanUtils.pageAccessRecurse(PageBeanUtils.java:721) at com.pvi.servlet.jsp.PageBeanUtils.pageAccess(PageBeanUtils.java:382) at com.pvi.servlet.jsp.Controller.pageAccess(Controller.java:1047) at com.df.servlet.jsp.tag.PageAccessTag.doEndTag(PageAccessTag.java:88) at org.apache.jsp.Categories_jsp._jspService(Categories_jsp.java:193) at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:98) at javax.servlet.http.HttpServlet.service(HttpServlet.java:729) at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:331) at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:329) at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:265) at javax.servlet.http.HttpServlet.service(HttpServlet.java:729) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:269) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:172) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:108) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:174) at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:875) at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:665) at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:528) at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:81) at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:689) at java.lang.Thread.run(Thread.java:613) Page: error.jsp User: 66.98.164.89 Time: 8-18-09 10:48:51 AM URL: http://git-danlynn.dyndns.org:8081/error.jsp Referer: http://robocoderepository.com/ Query: null Stack Trace: javax.servlet.jsp.JspTagException: SQLState = 28000 ErrorCode = 1045 Message = Access denied for user 'robocode'@'localhost' (using password: YES) StackTrace: java.sql.SQLException: Access denied for user 'robocode'@'localhost' (using password: YES) at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:2928) at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:771) at com.mysql.jdbc.MysqlIO.secureAuth411(MysqlIO.java:3649) at com.mysql.jdbc.MysqlIO.doHandshake(MysqlIO.java:1176) at com.mysql.jdbc.Connection.createNewIO(Connection.java:2558) at com.mysql.jdbc.Connection.(Connection.java:1485) at com.mysql.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:266) at java.sql.DriverManager.getConnection(DriverManager.java:525) at java.sql.DriverManager.getConnection(DriverManager.java:171) at com.pvi.sql.ConnectionResolver.getConnection(ConnectionResolver.java:227) at com.pvi.sql.ConnectionResolver.getConnection(ConnectionResolver.java:199) at com.robocode.sql.RoboCodeDatabaseUtil.getConnection(RoboCodeDatabaseUtil.java:80) at com.robocode.apps.repository.pagebeans.Categories.pageAccess(Categories.java:148) at com.pvi.servlet.jsp.PageBeanUtils.pageAccessRecurse(PageBeanUtils.java:721) at com.pvi.servlet.jsp.PageBeanUtils.pageAccess(PageBeanUtils.java:382) at com.pvi.servlet.jsp.Controller.pageAccess(Controller.java:1047) at com.df.servlet.jsp.tag.PageAccessTag.doEndTag(PageAccessTag.java:88) at org.apache.jsp.Categories_jsp._jspService(Categories_jsp.java:193) at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:98) at javax.servlet.http.HttpServlet.service(HttpServlet.java:729) at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:331) at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:329) at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:265) at javax.servlet.http.HttpServlet.service(HttpServlet.java:729) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:269) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:172) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:108) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:174) at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:875) at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:665) at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:528) at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:81) at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:689) at java.lang.Thread.run(Thread.java:613) at com.df.servlet.jsp.tag.PageAccessTag.doEndTag(PageAccessTag.java:92) at org.apache.jsp.Categories_jsp._jspService(Categories_jsp.java:193) at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:98) at javax.servlet.http.HttpServlet.service(HttpServlet.java:729) at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:331) at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:329) at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:265) at javax.servlet.http.HttpServlet.service(HttpServlet.java:729) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:269) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:172) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:108) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:174) at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:875) at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:665) at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:528) at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:81) at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:689) at java.lang.Thread.run(Thread.java:613)
Anyone know how to deal with this?--CrazyBassoonist 14:54, 18 August 2009 (UTC)
- Well... nothing you can do about it except not use robocoderepository.com and possibly make sure that site's maintainer knows about the problem. It's never really seemed reliable ever so I don't think I could really recommend using it anyway. --Rednaxela 15:01, 18 August 2009 (UTC)
- From what I had heard, supposedly the owner of RobocodeRepository.com was working on a remake in Ruby on Rails, however no news has been heard in a long time, so that would count as inactive yeah. --Rednaxela 16:03, 18 August 2009 (UTC)
- [View source↑]
- [History↑]
You cannot post new threads to this discussion page because it has been protected from new threads, or you do not currently have permission to edit.
Contents
Thread title | Replies | Last modified |
---|---|---|
Welcome back :) | 2 | 21:47, 5 May 2012 |
micro/nano melee rumble | 1 | 03:58, 28 April 2012 |
supersample bots | 3 | 01:50, 6 September 2011 |
Man, this is great to see that you have changed Capulet. Hopefully this means you got a little interest in robocode again. Sorry my whole system crashed today but i will bring my contribution server asap back online and so we can see how it works :).
take care
Thanks! It was only a minor change(I switched one variable from .72 to .5), but I do plan to keep trying to make improvements as you've been hard at work beating me; congratulations by the way! It takes most people much longer to take one of the thrones. I'm downloading the roborumble pack right now (I had an older version) and once that's finished I'll run some battles to try to relieve some of the strain.
Yes it was indeed a lot of work to make wallaby running and i hope you enjoy the challenge. Thanks for appreciate my work. I'm well excited to see a new version of capulet and i'm sure you will come with something that blow my mind :). I have some idears how to improve wallaby, and there are some things i don't like. Mostly the engagement of stronger (more energy left) robots and wall hitting. Right now i have hugh problems with my computer so it will take a while to fix this. But after this i'm back at the game. Till then take care.
Man, you give me hard times :). I finally thought i have something new to conquer Capulet but it turned out you allready had the same idear. My last version (wallaby 1.9) did very well and i was quite excited about this, but then showed Mercutio as major threat up in the ranking table. And it turned out you have the same movement concept. The main idear was to combine the previous antigrav and the oscillation to something compact and still hold the close combat idear. I was hopeing to give you something exciting but well, you know it already.
One question would be how to decide if the bot is good enought for the competition. I test my new bots against 9 other bots from every part of the rumble (i mean 9x5 not only 9), with a couple of 1000 runs. After this i check some special cases (closecombat - smaller battlefield, and endgame- just the best 4 of each field part). If i win with a certain percentage i put it on the rumble. But unfortunatly is this kind of check not working very well. I'm always surprised how bad/good it worked out. So the question is, what would be a good benchmark check to deside if the bot is worth the rumble. I hope i can interest you in a little discussion.
btw. sorry for my bad english take care
I've never found a sure-fire way to know how a melee bot will do before it is released; I think there's a certain degree of randomness to melee scores as each individual battle has its own unique combination of bots that affects score outcome differently. That said, in order to determine if my robots are fit for the rumble I usually do basically what you do(long battles against 9 other bots that have been randomly selected from the different melee fields) except that instead of worrying about percentages I just check and see how it does in comparison to the bots I want it to beat. For example, I released Capulet when I noticed it was consistently beating other good micro's such as HawkOnFire and Shiz when they were paired together. I think being able to consistently bots that are good is an indicator that a bot will be good, as PL score almost always tends to exactly follow APS scores in melee fields.--CrazyBassoonist 02:58, 28 April 2012 (UTC)
I added the supersample bots in the rumble. Feel free to move the packages to somewhere else. I couldn't upload them to the Robocode Repository.
I am not able to run battles with SuperCrazy, keeps telling me it can't find that bot. It is present however, but with capitals in the packagename.
Delete the jar you have of it. In all his wisdom MN added a new version with exactly the same version string, and the RR is not case sensitive but the files are. So meaning you need to either lowercase the jar name or delete it.
Removed the new version...