sab39

... indistinguishable from magic
effing the ineffable since 1977
"Wa Eebots Peas!"

"Wa Eebots Peas!"

5/19/2005
I finally got around to bundling up the last few months worth of work on NRobot, checking it in and calling it a release. There are a bunch of new features, but the most important is that if you're running under .NET robots are run in a sandbox - they are no longer given complete control over your system. This means that it's actually reasonable to download a robot written by someone you don't know or trust, and attempt to shoot the crap out of it - as long as you don't pass the "-insecure" option on the command line.

Another significant improvement in 0.20 is that it now ships with a sample robot written in Java. This isn't actually an improvement in NRobot at all, but an improvement in IKVM. As of IKVM 0.14 it is now possible to apply custom attributes to Java code, which was the only remaining feature required for use in NRobot. So at last I'm posting something on my blog that's actually vaguely on topic for Planet Classpath ;) All you Java programmers, go download it and start writing robots ;)

Unfortunately there are a couple of catches.

Currently Mono's security support is not complete enough for me to confidently guarantee your safety if you are running untrusted robot code in it. Work is ongoing on adding this support and I'm confident that it will eventually be safe, but if you're running NRobot under Mono today, I recommend using a user account with restricted permissions.

The other big catch is that IKVM can't currently generate code that will run inside a sandbox. Jeroen has done some work proving that this isn't impossible in theory, but will require very careful auditing of IKVM code to be certain that no security holes have been introduced. So for now, you must pass the -insecure option in order to run robots written in Java - in which case you again ought to run NRobot under a user account with restricted permissions.

Oh, the other big improvement in 0.20 is a feature that was actually requested - the ability to fine-tune the strengths and weaknesses of your robot. You can adjust 8 different properties (roughly categorized into 4 offensive and 4 defensive) to be either "better", "worse" or "neutral", but you must be sure that your choices balance out. That is to say, for every property you make better, you must make another one worse.

Here's my own robot DLL. Unzip it into the Bots/Win or Bots/Mono directory (as appropriate) of your NRobot installation. Naturally, unless you trust me implicitly, you shouldn't do this if you're running under Mono or with the -insecure flag unless you've taken other precautions to safeguard your system.

So what the heck does "Wa Eebots Peas!" mean? Well, Alexa loves watching games of NRobot play themselves. If she sees me working on my laptop, she'll come over, stare at the screen, and say her best impression of "Want Robots Please!".
thank you!
By scristian (Email) at 2005/05/21 05:15

Thank very much for this game.

Add a comment:
Subject:
Name:
Email:
Url:
Title: Don't enter anything here if you're a human.
CAPTCHA: Don't enter anything here if you're a human.
Comment: