From Robowiki
Jump to navigation Jump to search

First serious C# bot?

Interesting to see what appears to be the first serious C# bot. One quick note is, don't expect C# bots to be able to run in rumble any time soon probably. Still interesting though :) --Rednaxela 15:01, 15 March 2010 (UTC)

Yeah, cool. =) I'm also skeptical we'll ever open the rumble to them. So many of us run Mac or Linux... That would mean a lack of RoboRumble power for .NET bots, plus we would be unable to test against those bots, which is pretty unfair. But if enough people start writing .NET bots, obviously we could pursue some kind of solution. --Voidious 15:31, 15 March 2010 (UTC)

Thanks for your quick comments. Yes, .NET is still a problem at other operation systems than windows. I developed this bot with .NET 2.0, so possibly it will run with Mono on linux. I'll give it a try and will report my test-results here. :) But it can still take a week or two. But I'm acutally wondering why this bot is much weaker than the java-version. Still haven't found the bug yet I apperently build in. In a 1000-round match against GFTargetingBot it scores about 40%, the java-version still scores about 60%, so it can't be a normal fluctuation. I still tested the movement and the gun and the performance of both still got worse. The main differences are like followed:

  • Point2D.Double is now an own written class "RobotPosition", because the object Point is (int, int) at .NET
  • Rectangle2D.Double is now an own written class "RobotRectangle", because the object Rectangle is (int, int, int, int) at .NET. But this class is just used for movement and has nothing to do with the gun. Probably this can't be the main bug in the bot.

I just tested it out with the native classes of .NET, but the bot still got no way better. I would be very glad, if someone has a hint for me. :-) --FromHell 13:10, 18 March 2010 (UTC)

Actually it won't run with Mono on linux, because jni4net (the Java/.NET bridge used in Robocode) doesn't yet support Mono. Also, .NET 3.5 should be fine once it does I'd imagine [1]. Anyway, I don't think any of those 'main differences' would cause it probably. I'd suspect there was some subtle bug introduced somewhere in the porting process. --Rednaxela 14:50, 18 March 2010 (UTC)

Looking at jni4net svn, it looks like there is a start on Mono support, so... that working probably isn't as far off as I had thought. :) --Rednaxela 19:18, 18 March 2010 (UTC)
There are no threads on this page yet.