= Sandbox = The [[Sandbox]] scenario provides the user a general testbed for testing code at all levels of abstraction, new maps, et cetera. == Quagents Implementation == [[Sandbox]] is implemented as a bare-bones [http://www.cs.rochester.edu/trac/quagents/wiki/Scenarios scenario]. The scenario contains several blank code blocks, in which the user may insert his own code for testing. == User Notes == The sandbox does not have extensive use for users, unless prior development has been undertaken by the user. It is intended to be used mainly for testing new code. When functional, break code off into a new scenario. See the [[Scenario Creation Tutorial]]. == Development Notes == The sandbox is a useful tool for developers. It is implemented, as noted above, as a skeleton extension of the Scenario class. While this extension may be freely modified depending on the developers need, the simplest way to test code is by inserting code into '''Adding Maps''' To add a newly created map: * First, place your created map .bsp and .aas files in the ioquake3/build/release*/quagents/3/maps directory. Alternatively, you may add the map .bsp and .aas to the pak map file located in the same directory. * Secondly, add the map to the Sandbox class. Do this by adding a new element, with the same name as your map, to the ''maps'' array located at the top of the file. E.g., if your map is defined by foo.bsp and foo.aas, you would add "foo" to the static array. '''Adding Code''' For most intents and purposes, adding code to QuagentsSandbox.java will suffice for sandbox testing. Specifically, the constructor and the executeCode() function will automatically called by the sandbox scenario, so the developer may use these blocks to test code. '''Miscellaneous''' Due to its intended use, developers using the repository may run into version conflicts of this file. For now, we recommend that developers simply maintain a local copy of their sandbox when using svn update or commit.