------------------------------------------------------------------------- PhIL's guide to Advanced T Robots Version 2 -------------------------------------------------------------------------- ----------------- Intro ---------------- This is a guide to working with ATR2 and programming robots for it. This guide is for those unacustom with programming, computers, and the logic and thinking that goes with them. Why someone like you would be reading this is beyond me at the moment, but, eh, why not. ATR2 is a nice, if brutal, way to break into the programming field; It gives a clear goal, it doesn't beat around the bush, and there's room to grow. Programming in ATR2 requires both knowledge of the system (which I'm working on) and a stratagy for the tank. A programming wiz couldn't write a good bot if he doesn't understand the concept of "dodge" and a general couldn't either if he can't control the bloody lille thing. So it's balanced. --------- Steps to Enlightenment -------- Things to do: 1: Have ATR2. This is important. I got it at Necrobones.com look under software, ai, or something like that. Whatever, just find it. 2: Play. I expect you to be like any inquisitive mind and play with what you get. Run all the executables (the ones with .exe) Some will work, some won't. Chill. You have to come to expect that. Read some of the text files (txt) and push the buttons at the main screen. -see the lille ships moving around? this is the game -the progamming manual is a bit confusing eh? -know that Ed T. Toton the third made this. hurrah 3: Don't panic. I did this the first time I read the manual. It's scary I know. But if you stick with it then you can start to make sense of it. This guide should help. Things to know: 1. The program ATR2.exe or ATROBS.exe take robot files, (the .AT2 files) compiles them, (turns them into code it can use) and puts them into an arena where they both run simultaniously against each other. 2. The .AT2 files can be opened in any old text veiwer, I perfer Notepad. What can I say, I'm a purist. 3. The Robot will do NOTHING without being told to. It can be told to remember the value of certain things, but won't keep an eye on it. You have to tell it to look at it again if you want it to look at it again. 4. Speed. speed is always a reletive thing. A simple AT2 program will be repeated over and over several times a second. The Manual ---------- Ok, for me, it's ATR2.doc (.doc as in document, meaning it's text) it's about 102 KB and it opens in word, almost. Word wants to install special, I ignore it, it opens fine. So I open it. Oye. The introduction is nice. It tells you what it is and gives some history. good. After that it gets a bit hectic. So let me help. Skip the bit about running the program, it's easier then that. Skip the bit about the specs of your tank and heat, for now. Skip the bit about the hexidecimal number, you'll be back. Glance at the first bit about programming your robot. you'll see: -"The programming language consists of several basic types of statements." This is important. Let me repeat that, THIS IS IMPORTANT, START READING HERE! When it says statements it means anything in a .AT2 file. There are only five things in ATR2 that you need to know about: There are Remarks. These are notes. Anything you see with a ; after it can be read normally in your language of choice (if that language is in fact ATR2 code then you'd have a very interesting file...) There are Directives. uh, ok, I guess these set up your bot before going into battle. Like setting up your own personal variables, as in #def whateveryouwantrighthere and #config partofyourship=somenumber The #config option let's you detail your bot. ATR2 gives you twelve points to assign various parts of your tank. 0 is worst, 5 is best. The various parts are: Weapon, Scanner, Armor, Engine, Shield, Mines, Heatsink. So if you give Heatsink a 5, your tank will cool down faster. This much is written in the .doc, however, there are additional facts that hinder you. If you give your weapon a 0, your shots will do less damage, but will also move slower. If you have less armor, you will also go faster. If you don't assign any points, your bot will have the standard setup. Commands. These are anything that you want done. If you want to add two numbers, increse the throttle, or check which round you're in, you have to use a command. The list of commands are in the ART2.doc, PRINT THEM! Two specific types of commands are the opo/ipo and the int. These are output/input and interups. They each have thier own list, find them and PRTINT THEM TOO. I'll get to them later. There are Labels. These are markers that let you jump to other parts of the code. They look like :1 or !label There are more specific rules about which jump command can goto what and how and why, but I don't know them yet... ok, when shifting my bots, the de-evolved one without the special toys did better against the one's with, but the souped up one did best agaist a skilled bot. So, what does this tell us? hell if I know... int 5 does the same thing as ipo 1 but one cycle longer, and your speed always goes towards dx give some simple code for heat, if it's still a problem, beef heatsink, or reduce weapon power the request for input acutally performs a scan...