One of the attractions of writing AI programs is that the resulting library assembly (.dll) files can be
easily shared with friends in the spirit of collaboration and competition, so you can see how well
your bots do against, or teamed up with, each other.
Accordingly, because you can include other people's AI in the games you set up in the Game
Viewer, some firm restrictions are in place to limit what they can do to help ensure a safe
environment for playing with other people's creations.
Each bot's AI program runs in a separate process, and is executed in its own "sandboxed"
application domain, which is granted only minimal execution permissions.
The intention of the security pattern we implemented is that an AI program can't do things like see
or access the computer's file system, network, or Internet; it can't perform any kind of remoting; it
can't access process information; it can't display a UI (User Interface); and so on, and that any
such attempts fail with security errors because those permissions are never granted to AI
programs, so that they are only able to do what they are supposed to do: control the bots.
Recommended Topics