<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
		<id>http://wiki.darwinbots.com/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Griz</id>
		<title>WikiManual - User contributions [en]</title>
		<link rel="self" type="application/atom+xml" href="http://wiki.darwinbots.com/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Griz"/>
		<link rel="alternate" type="text/html" href="http://wiki.darwinbots.com/w/Special:Contributions/Griz"/>
		<updated>2026-06-11T03:21:44Z</updated>
		<subtitle>User contributions</subtitle>
		<generator>MediaWiki 1.29.0</generator>

	<entry>
		<id>http://wiki.darwinbots.com/index.php?title=Main_FTP&amp;diff=2354</id>
		<title>Main FTP</title>
		<link rel="alternate" type="text/html" href="http://wiki.darwinbots.com/index.php?title=Main_FTP&amp;diff=2354"/>
				<updated>2006-12-28T22:29:19Z</updated>
		
		<summary type="html">&lt;p&gt;Griz: /* 2.42.9 */  fixed link to Darwin2.42.9r&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__&amp;lt;!-- __NOTOC__ disables Table of Contents (short pages may not require it--&amp;gt;&lt;br /&gt;
== Main Install ==&lt;br /&gt;
&lt;br /&gt;
Download the main install for [http://www.darwinbots.com/FTP/Darwin21.zip DarwinBots 2.1]  This '''must be installed''' prior to installing the patches/updates. See the [[Installation_Instructions|installation instructions]].  This version is rather old, so you should install one of the patches below.&lt;br /&gt;
&lt;br /&gt;
== Recent Releases ==&lt;br /&gt;
&lt;br /&gt;
Unzip these patches to your download folder (wherever you installed it, by default c:\Program File\DarwinbotsII\).  Say yes to all overwrites.  You will need to run the new executable instead of the executable that came with the main install.  If you've run the main install executable before, you should see immediate and noticable differences in the patches.&lt;br /&gt;
&lt;br /&gt;
Please note that higher versions might not necessarily be more stable and bug-free than lower versions. Users are encouraged to download '''both''' of the versions below (2.37.6 and 2.4X).  2.4X settings files aren't backwards compatible with 2.37.6, and but must be installed '''in a seperate installation''' than 2.37.6.  It is 100% backwards compatible otherwise.  All robot files from previous versions will load into the program (though some may act a little weird).&lt;br /&gt;
&lt;br /&gt;
=== 2.37.6 ===&lt;br /&gt;
&lt;br /&gt;
[http://www.darwinbots.com/FTP/DarwinBots2.37.6.zip DarwinBots2.37.6] is a very, very stable release. New users can start with this version or use the latest 2.4 version below.&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;small&amp;gt;NOTE: Sysvars2.21.txt may not be included in Version 2.37.6 It is available here as [[Talk:Sysvars2.21|text]] or as a [http://forum.darwinbots.com/index.php?act=Attach&amp;amp;type=post&amp;amp;id=1346996 download]. Place it in your &amp;quot;DarwinBotsII&amp;quot; folder.&amp;lt;/small&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== 2.37.7b ====&lt;br /&gt;
&lt;br /&gt;
[http://www.darwinbots.com/FTP/Darwin2.37.7b.zip DarwinBots2.37.7b] is a reworking by Endy.&lt;br /&gt;
&lt;br /&gt;
:# Fixed a bug involving limitless waste creation caused by storing negative values into .strvenom and .strpoison&lt;br /&gt;
:# Modified code to allow slime/shell/venom/poison to be unmade for an energy gain&lt;br /&gt;
:# Negative stores/inc/dec are now absoluted&lt;br /&gt;
:# Stores/inc/dec to values greater than 999 are now modified to be within 1-999 range; ie. 31330 would be stored to as 330&lt;br /&gt;
&lt;br /&gt;
=== 2.42.9 ===&lt;br /&gt;
&lt;br /&gt;
[http://www.darwinbots.com/FTP/DarwinBots2.42.9.zip DarwinBots2.42.9] is the latest and greatest release.  It is very stable with some interesting new capabilities.  New users should use this version as should anyone running long term evolution sims.&lt;br /&gt;
&lt;br /&gt;
Some bots may behave differently than they do in the 2.37.6 version due to differences in the underlying physics engines.  Please bring any such differences you notice to the attention of the program authors at the [http://forum.darwinbots.com forum]&lt;br /&gt;
&lt;br /&gt;
Note: Older robots are going to act a little stupid.  You will have a hard time even making them survive.  '''Strongly consider downloading more modern bots in the [http://forum.darwinbots.com/index.php?showforum=13 beastiary].'''  [http://forum.darwinbots.com/index.php?act=ST&amp;amp;f=24&amp;amp;t=157&amp;amp;st=0#entry240895 Animal Minimalis] is a good start, and is used in the [[Robot Tutorial]]s.  Just copy the text into a plain old .txt file, and put the file into your robots directory.&lt;br /&gt;
&lt;br /&gt;
[http://www.darwinbots.com/FTP/Darwin2.42.9r.zip DarwinBots2.42.9r] is the absolute latest and greatest buddy drop.  Buddy drops are generally stable but may have features which are incomplete or not fully tested.  New users are generally advised not to use buddy drops unless and until they are familiar with the program and understand the state of work a buddy drop represents.&lt;br /&gt;
&lt;br /&gt;
== Tutorials ==&lt;br /&gt;
&lt;br /&gt;
The [http://www.darwinbots.com/FTP/DarwinTutorial1+2.zip Darwinbots bot writing tutorial by PY] is a little old but a very good primer to learning how the DNA works.  You can also check out the [[Robot Tutorial]]&lt;br /&gt;
&lt;br /&gt;
== See Also ==&lt;br /&gt;
&lt;br /&gt;
* [[Previous Versions]]&lt;br /&gt;
* [[Source Code]]&lt;br /&gt;
&lt;br /&gt;
== Windows 95 Trouble ==&lt;br /&gt;
There is a report that Darwinbots might cause problems if you are running Windows 95.  If you experience any such problems, please post them to the [http://forum.darwinbots.com forum].&lt;br /&gt;
&lt;br /&gt;
Return to [[Main Page]]&lt;/div&gt;</summary>
		<author><name>Griz</name></author>	</entry>

	<entry>
		<id>http://wiki.darwinbots.com/index.php?title=User_talk:Jez&amp;diff=2351</id>
		<title>User talk:Jez</title>
		<link rel="alternate" type="text/html" href="http://wiki.darwinbots.com/index.php?title=User_talk:Jez&amp;diff=2351"/>
				<updated>2006-12-27T19:26:54Z</updated>
		
		<summary type="html">&lt;p&gt;Griz: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt; &lt;br /&gt;
here's one way to separate/distinguish replies ...&amp;lt;br&amp;gt;&lt;br /&gt;
placing a single &amp;quot;:&amp;quot; as the first character in a line will 'indent' it.&amp;lt;br&amp;gt;&lt;br /&gt;
placing two, will indent it twice, three, thrice ... etc, etc, etc&amp;lt;br&amp;gt;&lt;br /&gt;
example&amp;lt;br&amp;gt;&lt;br /&gt;
none :&amp;lt;br&amp;gt;&lt;br /&gt;
:one&lt;br /&gt;
::two&lt;br /&gt;
:::three&lt;br /&gt;
&lt;br /&gt;
also ... bracketing text with two apostrophes &amp;lt;nowiki&amp;gt;''&amp;lt;/nowiki&amp;gt; calls up ''italics''&amp;lt;br&amp;gt;&lt;br /&gt;
three &amp;lt;nowiki&amp;gt;'''&amp;lt;/nowiki&amp;gt;, '''bold''' ...&amp;lt;br&amp;gt;&lt;br /&gt;
five &amp;lt;nowiki&amp;gt;'''''&amp;lt;/nowiki&amp;gt;, '''''bold italics'''''.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
color is easy too ...&amp;lt;br&amp;gt; &lt;br /&gt;
&amp;lt;nowiki&amp;gt;&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;this is red&amp;lt;/font&amp;gt;&amp;lt;/nowiki&amp;gt; gives you:&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;this is red&amp;lt;/font&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
red, green, blue, yellow, orange also work.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
all this works well to distinguish between replies in ongoing conversations.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
four ---- as the first characters in a line will draw a line&amp;lt;br&amp;gt;&lt;br /&gt;
like so:&lt;br /&gt;
----&lt;br /&gt;
three &amp;lt;nowiki&amp;gt;~~~&amp;lt;/nowiki&amp;gt; a signature, ie {{User:Griz/sig}} &amp;lt;br&amp;gt;&lt;br /&gt;
four &amp;lt;nowiki&amp;gt;~~~~&amp;lt;/nowiki&amp;gt; a sig with time stamp, ie {{User:Griz/sig}} 10:26, 26 Dec 2006 (MST)&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
just a few basics for you to play with if it helps.&lt;br /&gt;
of course clicking on edit ... you can see the code for any of this stuff&amp;lt;br&amp;gt;&lt;br /&gt;
i put here, and use something similar.&lt;br /&gt;
----&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;Good luck fella, I don't think DB is a good place to learn VB, Eric has been good at explaining things so far but I imagine he's much more interested in modifying the code than taking time to teach others how to use it. I imagine DB as a good place to practice some of the VB skill. I don't know how much VB you know or if you know any other languages but certainly if you are any where near as much a starter at VB as I am then this is the wrong place to be. You do seem to have a lot more skill at VB than me I admit but I don't see you getting answers to things you want to know with more than a sporadic frequency.&lt;br /&gt;
Anyway, like I said, best of luck for whatever you decide. [[User:Jez|Jez]] 10:41, 27 Dec 2006 (MST)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
:yup.&lt;br /&gt;
:would have been nice to use DB as a vehicle to learn VB ...&lt;br /&gt;
:as the graphics are what i am interested in figuring out ...&lt;br /&gt;
:and i thought, great ... here's some folks who already know&lt;br /&gt;
:how to do this, and we are all involved in a cooperative &lt;br /&gt;
:effort to write a program so ... what could be better?&lt;br /&gt;
:yeah, well ...&lt;br /&gt;
:seems folks are more interested in doing their own thing ...&lt;br /&gt;
:than in bringing new folks into it.&lt;br /&gt;
:i don't know ...&lt;br /&gt;
:at work, a great deal of my time is spent at bringing new&lt;br /&gt;
:folks up to speed ... so it really does become a team effort.&lt;br /&gt;
:i don't think that exists here.&lt;br /&gt;
:too bad.&lt;br /&gt;
:oh well ... so it goes.&lt;br /&gt;
:onward&lt;br /&gt;
:{{User:Griz/sig}} 12:26, 27 Dec 2006 (MST)&lt;/div&gt;</summary>
		<author><name>Griz</name></author>	</entry>

	<entry>
		<id>http://wiki.darwinbots.com/index.php?title=DeBugging&amp;diff=3566</id>
		<title>DeBugging</title>
		<link rel="alternate" type="text/html" href="http://wiki.darwinbots.com/index.php?title=DeBugging&amp;diff=3566"/>
				<updated>2006-12-27T00:25:11Z</updated>
		
		<summary type="html">&lt;p&gt;Griz: /* Setting Breakpoints */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Compiler Related Recommendations ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== In-game Bug Detecting ==&lt;br /&gt;
&lt;br /&gt;
It is possible to directly debug at least some of the random glitches that are found in the DB universe from within the game itself. This thanks largly to a useful(if dated) console, which supplies information about the various memlocs. Although they can't be directly fixed from within the game, valuable information and clues to a bug's exact cause can be obtained.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
:How about some of you 'seasoned' VB users giving the rest of us a few tips&lt;br /&gt;
:on VB and Debugging so we might be able to help out tracking down errors?&lt;br /&gt;
:Anyone signed in here at the Wiki can edit and add to these pages.&lt;br /&gt;
:Just click on edit and have at it.&lt;br /&gt;
:Not to worry about correct/ideal formatting ... &lt;br /&gt;
:we'll figure it out.&lt;br /&gt;
:{{User:Griz/sig}} 15:04, 24 Dec 2006 (MST)&lt;br /&gt;
&lt;br /&gt;
= Basic Debugging from VB =&lt;br /&gt;
&lt;br /&gt;
== error.sim ==&lt;br /&gt;
From Eric:&amp;lt;br&amp;gt;&lt;br /&gt;
There are two lines where the comment portion of the source code line indicates that line should be commented out when running under the debugger. Just put a single apostrophe at the beginning of the line. This way, the source code won't try to handle the exception (an 'exception' is just a fancy name for a crash, a divide by 0 or something like that) and VB will get the error. When an exception does happen, you should get a pop-up dialog that offers to let you debug the problem. When you hit the debug button, it should highlight the source code line where the exception is occurring.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
This is the only one I know of that has to be commented in/out:&lt;br /&gt;
In MDIForm1 (code), Private Sub simload &lt;br /&gt;
&lt;br /&gt;
:(remove these edit's as you see fit Griz, this is your domain! As far as I can see the two lines to be edited are the same line under two different names as regards Erics post later on)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt; &lt;br /&gt;
Private Sub simload(Optional path As String)&lt;br /&gt;
  Dim I As Integer&lt;br /&gt;
  Dim path2 As String&lt;br /&gt;
  &lt;br /&gt;
On Error GoTo fine ' Uncomment this line in the compiled version error.sim&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Comment this '''''On Error''''' out when using VB and Debugger ...&amp;lt;br&amp;gt;&lt;br /&gt;
or it will abort and go save the error.sim.&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
:(It saves the error sim but also lets you degug as well AFAIK, based on experience it doesn't make a difference, what is the real advantage of doing this?)&lt;br /&gt;
&lt;br /&gt;
::i don't think so, at least it didn't in the past ... or with 2.37 anyway.&lt;br /&gt;
::it may be a little different setup in 2.4X ...&lt;br /&gt;
::but i still think one needs to comment it out ... else why would eric have posted about it?&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Then remember to uncomment it once you have located and fixed an &amp;lt;br&amp;gt;&lt;br /&gt;
error and want to recompile or the recompiled prog won't do it's&amp;lt;br&amp;gt; &lt;br /&gt;
'''''save error.sim'''''&lt;br /&gt;
Also ... once the debugger has sent you to the break ...&amp;lt;br&amp;gt;&lt;br /&gt;
'hovering' the mouse over variables in the code will&amp;lt;br&amp;gt; (variables in the highlighted line of code, if there are no variables there don't worrry, a step by step intro to how you obtain the error can be just as useful)&lt;br /&gt;
give you their value at that time and place in the execution.&amp;lt;br&amp;gt;&lt;br /&gt;
this is helpful in finding overflows or variables out of range.&amp;lt;br&amp;gt;&lt;br /&gt;
using this, even I have been able to locate errors on occasion.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Switching between Compiled and VB for Debugging ===&lt;br /&gt;
:for those running/searching for those errors in long sims ...&lt;br /&gt;
:if you run the compiled version and do an occasional save ...&lt;br /&gt;
:[this can be automatically done, yes?]&lt;br /&gt;
:then hopefully when an error is encountered and an error.sim&lt;br /&gt;
:file produced ...&lt;br /&gt;
:you can then fire it up in VB, ensure the error trapping is&lt;br /&gt;
:commented out, load in the error sim or the save that&lt;br /&gt;
:you captured which occurred just prior to the error ...&lt;br /&gt;
:and then run it from there using the debugger.&lt;br /&gt;
:this may not always work, as there seem to be many variables ...&lt;br /&gt;
:but I have had it do exactly this for me in the past ...&lt;br /&gt;
:even using the generated error.sim ...&lt;br /&gt;
:the error still existing ...&lt;br /&gt;
:which can certainly save a great deal of time debugging.&lt;br /&gt;
:[remember to save/rename the error.sim to keep on file&lt;br /&gt;
:for continued debugging, so it isn't overwritten]&lt;br /&gt;
&lt;br /&gt;
== Search ==&lt;br /&gt;
To search from VB, click on the Binocular icon on the toolbar.&amp;lt;br&amp;gt;&lt;br /&gt;
Select where you wish to search, current modual, current project.&amp;lt;br&amp;gt;&lt;br /&gt;
This will step you thru all occurrences.&lt;br /&gt;
== Highlighting Variables ==&lt;br /&gt;
Once the debugger has sent you to a line containing an error,&amp;lt;br&amp;gt;&lt;br /&gt;
use the mouse to highlight variables to determine their value.&amp;lt;br&amp;gt;&lt;br /&gt;
This may help to determine if a variable is out-of-range.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
:'''''a few notes  from Ulciscor on the Forum &lt;br /&gt;
:'''''http://www.darwinbots.com/Forum/index.php?showtopic=874 &lt;br /&gt;
&lt;br /&gt;
::(Should be up top, if, like me, peeps are VB newbs then the acronym KISS seems appropriate, start with the simple stuff)&lt;br /&gt;
&lt;br /&gt;
:::still just gathering info. will see what all we get and then arrange it ...&lt;br /&gt;
:::assuming anyone is going to ever read it. ;)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If you are running the program from VB, click 'Debug' when the error box appears. This will bring the VB code to focus with the offending code highlighted in yellow. This highlighted code should be copied along with the name of the function it is from (if applicable) and the form or module, which will be shown on the right. (example? I always add a few following lines of code in case the line in question is repeated, don't know if that is needed but it makes me feel better!)&lt;br /&gt;
&lt;br /&gt;
The highlighted code will also display the values of the various variables (if there are variables in that line) and properties, at the point when the program crashed, when you hover your mouse over them. It is a good idea to note down the values of each part of the code and post them up with everything else.&lt;br /&gt;
&lt;br /&gt;
If the error occurs from the EXE, then describe what was happening in the sim or what you did before the glitch, or possibly provide the sim file, which should be zipped to save space. (''Always'' note the steps you took before the error. Standard error reporting info...)&lt;br /&gt;
&lt;br /&gt;
All this info will help us track down the error and its cause, and so to work out possible solutions. (Yay! (sry))&lt;br /&gt;
&lt;br /&gt;
== Setting Breakpoints ==&lt;br /&gt;
pause VB, highlight a line, press F9 &lt;br /&gt;
:(Or use debugger option when it finds error, I'm still not sure why I should use a breakpoint)&lt;br /&gt;
::because you can set them anywhere in the program ... not just where the debugger sends you.&lt;br /&gt;
::this will cause the program to 'break' there ... for testing new code or investigating where&lt;br /&gt;
::you might think there is a problem. &lt;br /&gt;
::an example for you might be ... setting a break point just after the code that is activated&lt;br /&gt;
::when you click that &amp;quot;win&amp;quot; button in leagues. then you could go there and take a look at the&lt;br /&gt;
::variables and maybe see why they increment by something other than &amp;quot;1&amp;quot;.&lt;br /&gt;
::you might even put in a line of code as a delay after clicking the button ...&lt;br /&gt;
::if it turns out the routine is executing so quickly it catches you with your pants, err ... button down. ;) &lt;br /&gt;
::i think you can even 'step' thru the program, watching what happens. {{User:Griz/sig}}&lt;br /&gt;
&lt;br /&gt;
== The Immediate Window ==&lt;br /&gt;
The immediate window in VB is a mostly a place where you can execute code you write on the fly while debugging - code that is not part of the program, but code you want to execute right then for help in debugging. Say you hit a breakpoint and want to step through from there, but with a certain set of variables having a certain set of values, say to reproduce a bug further down the line. Well, instead of waiting for the program to happen upon those values, you can change those variable values manually in the immediate window e.g. x = 5, y = 10, etc. and then proceed. The code you type in the immediate window is, well, immediate. It does not become part of the DB source code - it only executes right there and then is gone. Also useful for things like printing variable values at breakpoints.&lt;br /&gt;
&lt;br /&gt;
== what else? ==&lt;br /&gt;
Breakfast at Tiffany's? Good stuff so far, I would start with a really basic page, downloading relevant stuff and basic reports then expand into the more difficult stuff. Just my opinion, you may ignore it as you see fit!&lt;br /&gt;
(Is there a better way for me to add comments to pages? I'm not used to not getting a new post for my comments, don't want to slow you down by making you search for my comments). (my mistake didn't read your message first!)&lt;br /&gt;
&lt;br /&gt;
:yeah ... seeing as i don't know how to debug myself yet ... i still have no idea what we will put here.&lt;br /&gt;
:so we're reinventing the wheel as we go i guess. this is still the 'info gathering' stage.&lt;br /&gt;
&lt;br /&gt;
:added in context is ok ... &lt;br /&gt;
:just try to use some color or something so i see them. &lt;br /&gt;
:it's all temporary right now anyway.&lt;br /&gt;
:also ... adding &amp;lt;nowiki&amp;gt;~~~ or ~~~~&amp;lt;/nowiki&amp;gt; adds your sig and/or time stamp. then i know who it is and when it was added.&lt;br /&gt;
:like so: {{User:Griz/sig}} 17:13, 26 Dec 2006 (MST)&lt;/div&gt;</summary>
		<author><name>Griz</name></author>	</entry>

	<entry>
		<id>http://wiki.darwinbots.com/index.php?title=DeBugging&amp;diff=2347</id>
		<title>DeBugging</title>
		<link rel="alternate" type="text/html" href="http://wiki.darwinbots.com/index.php?title=DeBugging&amp;diff=2347"/>
				<updated>2006-12-27T00:23:48Z</updated>
		
		<summary type="html">&lt;p&gt;Griz: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Compiler Related Recommendations ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== In-game Bug Detecting ==&lt;br /&gt;
&lt;br /&gt;
It is possible to directly debug at least some of the random glitches that are found in the DB universe from within the game itself. This thanks largly to a useful(if dated) console, which supplies information about the various memlocs. Although they can't be directly fixed from within the game, valuable information and clues to a bug's exact cause can be obtained.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
:How about some of you 'seasoned' VB users giving the rest of us a few tips&lt;br /&gt;
:on VB and Debugging so we might be able to help out tracking down errors?&lt;br /&gt;
:Anyone signed in here at the Wiki can edit and add to these pages.&lt;br /&gt;
:Just click on edit and have at it.&lt;br /&gt;
:Not to worry about correct/ideal formatting ... &lt;br /&gt;
:we'll figure it out.&lt;br /&gt;
:{{User:Griz/sig}} 15:04, 24 Dec 2006 (MST)&lt;br /&gt;
&lt;br /&gt;
= Basic Debugging from VB =&lt;br /&gt;
&lt;br /&gt;
== error.sim ==&lt;br /&gt;
From Eric:&amp;lt;br&amp;gt;&lt;br /&gt;
There are two lines where the comment portion of the source code line indicates that line should be commented out when running under the debugger. Just put a single apostrophe at the beginning of the line. This way, the source code won't try to handle the exception (an 'exception' is just a fancy name for a crash, a divide by 0 or something like that) and VB will get the error. When an exception does happen, you should get a pop-up dialog that offers to let you debug the problem. When you hit the debug button, it should highlight the source code line where the exception is occurring.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
This is the only one I know of that has to be commented in/out:&lt;br /&gt;
In MDIForm1 (code), Private Sub simload &lt;br /&gt;
&lt;br /&gt;
:(remove these edit's as you see fit Griz, this is your domain! As far as I can see the two lines to be edited are the same line under two different names as regards Erics post later on)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt; &lt;br /&gt;
Private Sub simload(Optional path As String)&lt;br /&gt;
  Dim I As Integer&lt;br /&gt;
  Dim path2 As String&lt;br /&gt;
  &lt;br /&gt;
On Error GoTo fine ' Uncomment this line in the compiled version error.sim&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Comment this '''''On Error''''' out when using VB and Debugger ...&amp;lt;br&amp;gt;&lt;br /&gt;
or it will abort and go save the error.sim.&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
:(It saves the error sim but also lets you degug as well AFAIK, based on experience it doesn't make a difference, what is the real advantage of doing this?)&lt;br /&gt;
&lt;br /&gt;
::i don't think so, at least it didn't in the past ... or with 2.37 anyway.&lt;br /&gt;
::it may be a little different setup in 2.4X ...&lt;br /&gt;
::but i still think one needs to comment it out ... else why would eric have posted about it?&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Then remember to uncomment it once you have located and fixed an &amp;lt;br&amp;gt;&lt;br /&gt;
error and want to recompile or the recompiled prog won't do it's&amp;lt;br&amp;gt; &lt;br /&gt;
'''''save error.sim'''''&lt;br /&gt;
Also ... once the debugger has sent you to the break ...&amp;lt;br&amp;gt;&lt;br /&gt;
'hovering' the mouse over variables in the code will&amp;lt;br&amp;gt; (variables in the highlighted line of code, if there are no variables there don't worrry, a step by step intro to how you obtain the error can be just as useful)&lt;br /&gt;
give you their value at that time and place in the execution.&amp;lt;br&amp;gt;&lt;br /&gt;
this is helpful in finding overflows or variables out of range.&amp;lt;br&amp;gt;&lt;br /&gt;
using this, even I have been able to locate errors on occasion.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Switching between Compiled and VB for Debugging ===&lt;br /&gt;
:for those running/searching for those errors in long sims ...&lt;br /&gt;
:if you run the compiled version and do an occasional save ...&lt;br /&gt;
:[this can be automatically done, yes?]&lt;br /&gt;
:then hopefully when an error is encountered and an error.sim&lt;br /&gt;
:file produced ...&lt;br /&gt;
:you can then fire it up in VB, ensure the error trapping is&lt;br /&gt;
:commented out, load in the error sim or the save that&lt;br /&gt;
:you captured which occurred just prior to the error ...&lt;br /&gt;
:and then run it from there using the debugger.&lt;br /&gt;
:this may not always work, as there seem to be many variables ...&lt;br /&gt;
:but I have had it do exactly this for me in the past ...&lt;br /&gt;
:even using the generated error.sim ...&lt;br /&gt;
:the error still existing ...&lt;br /&gt;
:which can certainly save a great deal of time debugging.&lt;br /&gt;
:[remember to save/rename the error.sim to keep on file&lt;br /&gt;
:for continued debugging, so it isn't overwritten]&lt;br /&gt;
&lt;br /&gt;
== Search ==&lt;br /&gt;
To search from VB, click on the Binocular icon on the toolbar.&amp;lt;br&amp;gt;&lt;br /&gt;
Select where you wish to search, current modual, current project.&amp;lt;br&amp;gt;&lt;br /&gt;
This will step you thru all occurrences.&lt;br /&gt;
== Highlighting Variables ==&lt;br /&gt;
Once the debugger has sent you to a line containing an error,&amp;lt;br&amp;gt;&lt;br /&gt;
use the mouse to highlight variables to determine their value.&amp;lt;br&amp;gt;&lt;br /&gt;
This may help to determine if a variable is out-of-range.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
:'''''a few notes  from Ulciscor on the Forum &lt;br /&gt;
:'''''http://www.darwinbots.com/Forum/index.php?showtopic=874 &lt;br /&gt;
&lt;br /&gt;
::(Should be up top, if, like me, peeps are VB newbs then the acronym KISS seems appropriate, start with the simple stuff)&lt;br /&gt;
&lt;br /&gt;
:::still just gathering info. will see what all we get and then arrange it ...&lt;br /&gt;
:::assuming anyone is going to ever read it. ;)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If you are running the program from VB, click 'Debug' when the error box appears. This will bring the VB code to focus with the offending code highlighted in yellow. This highlighted code should be copied along with the name of the function it is from (if applicable) and the form or module, which will be shown on the right. (example? I always add a few following lines of code in case the line in question is repeated, don't know if that is needed but it makes me feel better!)&lt;br /&gt;
&lt;br /&gt;
The highlighted code will also display the values of the various variables (if there are variables in that line) and properties, at the point when the program crashed, when you hover your mouse over them. It is a good idea to note down the values of each part of the code and post them up with everything else.&lt;br /&gt;
&lt;br /&gt;
If the error occurs from the EXE, then describe what was happening in the sim or what you did before the glitch, or possibly provide the sim file, which should be zipped to save space. (''Always'' note the steps you took before the error. Standard error reporting info...)&lt;br /&gt;
&lt;br /&gt;
All this info will help us track down the error and its cause, and so to work out possible solutions. (Yay! (sry))&lt;br /&gt;
&lt;br /&gt;
== Setting Breakpoints ==&lt;br /&gt;
pause VB, highlight a line, press F9 &lt;br /&gt;
:(Or use debugger option when it finds error, I'm still not sure why I should use a breakpoint)&lt;br /&gt;
::because you can set them anywhere in the program ... not just where the debugger sends you.&lt;br /&gt;
::this will cause the program to 'break' there ... for testing new code or investigating where&lt;br /&gt;
::you might think there is a problem. &lt;br /&gt;
::an example for you might be ... setting a break point just after the code that is activated&lt;br /&gt;
::when you click that &amp;quot;win&amp;quot; button in leagues. then you could go there and take a look at the&lt;br /&gt;
::variables and maybe see why they increment by something other than &amp;quot;1&amp;quot;.&lt;br /&gt;
::you might even put in a line of code as a delay after clicking the button ...&lt;br /&gt;
::if it turns out the routine is executing so quickly it catches you with your pants, err ... button down. ;) {{User:Griz/sig}}&lt;br /&gt;
&lt;br /&gt;
== The Immediate Window ==&lt;br /&gt;
The immediate window in VB is a mostly a place where you can execute code you write on the fly while debugging - code that is not part of the program, but code you want to execute right then for help in debugging. Say you hit a breakpoint and want to step through from there, but with a certain set of variables having a certain set of values, say to reproduce a bug further down the line. Well, instead of waiting for the program to happen upon those values, you can change those variable values manually in the immediate window e.g. x = 5, y = 10, etc. and then proceed. The code you type in the immediate window is, well, immediate. It does not become part of the DB source code - it only executes right there and then is gone. Also useful for things like printing variable values at breakpoints.&lt;br /&gt;
&lt;br /&gt;
== what else? ==&lt;br /&gt;
Breakfast at Tiffany's? Good stuff so far, I would start with a really basic page, downloading relevant stuff and basic reports then expand into the more difficult stuff. Just my opinion, you may ignore it as you see fit!&lt;br /&gt;
(Is there a better way for me to add comments to pages? I'm not used to not getting a new post for my comments, don't want to slow you down by making you search for my comments). (my mistake didn't read your message first!)&lt;br /&gt;
&lt;br /&gt;
:yeah ... seeing as i don't know how to debug myself yet ... i still have no idea what we will put here.&lt;br /&gt;
:so we're reinventing the wheel as we go i guess. this is still the 'info gathering' stage.&lt;br /&gt;
&lt;br /&gt;
:added in context is ok ... &lt;br /&gt;
:just try to use some color or something so i see them. &lt;br /&gt;
:it's all temporary right now anyway.&lt;br /&gt;
:also ... adding &amp;lt;nowiki&amp;gt;~~~ or ~~~~&amp;lt;/nowiki&amp;gt; adds your sig and/or time stamp. then i know who it is and when it was added.&lt;br /&gt;
:like so: {{User:Griz/sig}} 17:13, 26 Dec 2006 (MST)&lt;/div&gt;</summary>
		<author><name>Griz</name></author>	</entry>

	<entry>
		<id>http://wiki.darwinbots.com/index.php?title=DeBugging&amp;diff=2346</id>
		<title>DeBugging</title>
		<link rel="alternate" type="text/html" href="http://wiki.darwinbots.com/index.php?title=DeBugging&amp;diff=2346"/>
				<updated>2006-12-27T00:13:48Z</updated>
		
		<summary type="html">&lt;p&gt;Griz: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Compiler Related Recommendations ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== In-game Bug Detecting ==&lt;br /&gt;
&lt;br /&gt;
It is possible to directly debug at least some of the random glitches that are found in the DB universe from within the game itself. This thanks largly to a useful(if dated) console, which supplies information about the various memlocs. Although they can't be directly fixed from within the game, valuable information and clues to a bug's exact cause can be obtained.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
:How about some of you 'seasoned' VB users giving the rest of us a few tips&lt;br /&gt;
:on VB and Debugging so we might be able to help out tracking down errors?&lt;br /&gt;
:Anyone signed in here at the Wiki can edit and add to these pages.&lt;br /&gt;
:Just click on edit and have at it.&lt;br /&gt;
:Not to worry about correct/ideal formatting ... &lt;br /&gt;
:we'll figure it out.&lt;br /&gt;
:{{User:Griz/sig}} 15:04, 24 Dec 2006 (MST)&lt;br /&gt;
&lt;br /&gt;
= Basic Debugging from VB =&lt;br /&gt;
&lt;br /&gt;
== error.sim ==&lt;br /&gt;
From Eric:&amp;lt;br&amp;gt;&lt;br /&gt;
There are two lines where the comment portion of the source code line indicates that line should be commented out when running under the debugger. Just put a single apostrophe at the beginning of the line. This way, the source code won't try to handle the exception (an 'exception' is just a fancy name for a crash, a divide by 0 or something like that) and VB will get the error. When an exception does happen, you should get a pop-up dialog that offers to let you debug the problem. When you hit the debug button, it should highlight the source code line where the exception is occurring.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
This is the only one I know of that has to be commented in/out:&lt;br /&gt;
In MDIForm1 (code), Private Sub simload &lt;br /&gt;
&lt;br /&gt;
:(remove these edit's as you see fit Griz, this is your domain! As far as I can see the two lines to be edited are the same line under two different names as regards Erics post later on)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt; &lt;br /&gt;
Private Sub simload(Optional path As String)&lt;br /&gt;
  Dim I As Integer&lt;br /&gt;
  Dim path2 As String&lt;br /&gt;
  &lt;br /&gt;
On Error GoTo fine ' Uncomment this line in the compiled version error.sim&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Comment this '''''On Error''''' out when using VB and Debugger ...&amp;lt;br&amp;gt;&lt;br /&gt;
or it will abort and go save the error.sim.&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
:(It saves the error sim but also lets you degug as well AFAIK, based on experience it doesn't make a difference, what is the real advantage of doing this?)&lt;br /&gt;
&lt;br /&gt;
::i don't think so, at least it didn't in the past ... or with 2.37 anyway.&lt;br /&gt;
::it may be a little different setup in 2.4X ...&lt;br /&gt;
::but i still think one needs to comment it out ... else why would eric have posted about it?&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Then remember to uncomment it once you have located and fixed an &amp;lt;br&amp;gt;&lt;br /&gt;
error and want to recompile or the recompiled prog won't do it's&amp;lt;br&amp;gt; &lt;br /&gt;
'''''save error.sim'''''&lt;br /&gt;
Also ... once the debugger has sent you to the break ...&amp;lt;br&amp;gt;&lt;br /&gt;
'hovering' the mouse over variables in the code will&amp;lt;br&amp;gt; (variables in the highlighted line of code, if there are no variables there don't worrry, a step by step intro to how you obtain the error can be just as useful)&lt;br /&gt;
give you their value at that time and place in the execution.&amp;lt;br&amp;gt;&lt;br /&gt;
this is helpful in finding overflows or variables out of range.&amp;lt;br&amp;gt;&lt;br /&gt;
using this, even I have been able to locate errors on occasion.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Switching between Compiled and VB for Debugging ===&lt;br /&gt;
:for those running/searching for those errors in long sims ...&lt;br /&gt;
:if you run the compiled version and do an occasional save ...&lt;br /&gt;
:[this can be automatically done, yes?]&lt;br /&gt;
:then hopefully when an error is encountered and an error.sim&lt;br /&gt;
:file produced ...&lt;br /&gt;
:you can then fire it up in VB, ensure the error trapping is&lt;br /&gt;
:commented out, load in the error sim or the save that&lt;br /&gt;
:you captured which occurred just prior to the error ...&lt;br /&gt;
:and then run it from there using the debugger.&lt;br /&gt;
:this may not always work, as there seem to be many variables ...&lt;br /&gt;
:but I have had it do exactly this for me in the past ...&lt;br /&gt;
:even using the generated error.sim ...&lt;br /&gt;
:the error still existing ...&lt;br /&gt;
:which can certainly save a great deal of time debugging.&lt;br /&gt;
:[remember to save/rename the error.sim to keep on file&lt;br /&gt;
:for continued debugging, so it isn't overwritten]&lt;br /&gt;
&lt;br /&gt;
== Search ==&lt;br /&gt;
To search from VB, click on the Binocular icon on the toolbar.&amp;lt;br&amp;gt;&lt;br /&gt;
Select where you wish to search, current modual, current project.&amp;lt;br&amp;gt;&lt;br /&gt;
This will step you thru all occurrences.&lt;br /&gt;
== Highlighting Variables ==&lt;br /&gt;
Once the debugger has sent you to a line containing an error,&amp;lt;br&amp;gt;&lt;br /&gt;
use the mouse to highlight variables to determine their value.&amp;lt;br&amp;gt;&lt;br /&gt;
This may help to determine if a variable is out-of-range.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
:'''''a few notes  from Ulciscor on the Forum &lt;br /&gt;
:'''''http://www.darwinbots.com/Forum/index.php?showtopic=874 &lt;br /&gt;
&lt;br /&gt;
::(Should be up top, if, like me, peeps are VB newbs then the acronym KISS seems appropriate, start with the simple stuff)&lt;br /&gt;
&lt;br /&gt;
:::still just gathering info. will see what all we get and then arrange it ...&lt;br /&gt;
:::assuming anyone is going to ever read it. ;)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If you are running the program from VB, click 'Debug' when the error box appears. This will bring the VB code to focus with the offending code highlighted in yellow. This highlighted code should be copied along with the name of the function it is from (if applicable) and the form or module, which will be shown on the right. (example? I always add a few following lines of code in case the line in question is repeated, don't know if that is needed but it makes me feel better!)&lt;br /&gt;
&lt;br /&gt;
The highlighted code will also display the values of the various variables (if there are variables in that line) and properties, at the point when the program crashed, when you hover your mouse over them. It is a good idea to note down the values of each part of the code and post them up with everything else.&lt;br /&gt;
&lt;br /&gt;
If the error occurs from the EXE, then describe what was happening in the sim or what you did before the glitch, or possibly provide the sim file, which should be zipped to save space. (''Always'' note the steps you took before the error. Standard error reporting info...)&lt;br /&gt;
&lt;br /&gt;
All this info will help us track down the error and its cause, and so to work out possible solutions. (Yay! (sry))&lt;br /&gt;
&lt;br /&gt;
== Setting Breakpoints ==&lt;br /&gt;
pause VB, highlight a line, press F9 (Or use debugger option when it finds error, I'm still not sure why I should use a breakpoint)&lt;br /&gt;
&lt;br /&gt;
== The Immediate Window ==&lt;br /&gt;
The immediate window in VB is a mostly a place where you can execute code you write on the fly while debugging - code that is not part of the program, but code you want to execute right then for help in debugging. Say you hit a breakpoint and want to step through from there, but with a certain set of variables having a certain set of values, say to reproduce a bug further down the line. Well, instead of waiting for the program to happen upon those values, you can change those variable values manually in the immediate window e.g. x = 5, y = 10, etc. and then proceed. The code you type in the immediate window is, well, immediate. It does not become part of the DB source code - it only executes right there and then is gone. Also useful for things like printing variable values at breakpoints.&lt;br /&gt;
&lt;br /&gt;
== what else? ==&lt;br /&gt;
Breakfast at Tiffany's? Good stuff so far, I would start with a really basic page, downloading relevant stuff and basic reports then expand into the more difficult stuff. Just my opinion, you may ignore it as you see fit!&lt;br /&gt;
(Is there a better way for me to add comments to pages? I'm not used to not getting a new post for my comments, don't want to slow you down by making you search for my comments). (my mistake didn't read your message first!)&lt;br /&gt;
&lt;br /&gt;
:yeah ... seeing as i don't know how to debug myself yet ... i still have no idea what we will put here.&lt;br /&gt;
:so we're reinventing the wheel as we go i guess. this is still the 'info gathering' stage.&lt;br /&gt;
&lt;br /&gt;
:added in context is ok ... &lt;br /&gt;
:just try to use some color or something so i see them. &lt;br /&gt;
:it's all temporary right now anyway.&lt;br /&gt;
:also ... adding &amp;lt;nowiki&amp;gt;~~~ or ~~~~&amp;lt;/nowiki&amp;gt; adds your sig and/or time stamp. then i know who it is and when it was added.&lt;br /&gt;
:like so: {{User:Griz/sig}} 17:13, 26 Dec 2006 (MST)&lt;/div&gt;</summary>
		<author><name>Griz</name></author>	</entry>

	<entry>
		<id>http://wiki.darwinbots.com/index.php?title=User_talk:Jez&amp;diff=2348</id>
		<title>User talk:Jez</title>
		<link rel="alternate" type="text/html" href="http://wiki.darwinbots.com/index.php?title=User_talk:Jez&amp;diff=2348"/>
				<updated>2006-12-26T23:58:05Z</updated>
		
		<summary type="html">&lt;p&gt;Griz: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;i see you discovered that &amp;lt;nowiki&amp;gt;'*'&amp;lt;/nowiki&amp;gt; is a control character. ;)&amp;lt;br&amp;gt;&lt;br /&gt;
resulting in &lt;br /&gt;
***&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
here's one way to separate/distinguish replies ...&amp;lt;br&amp;gt;&lt;br /&gt;
placing a single &amp;quot;:&amp;quot; as the first character in a line will 'indent' it.&amp;lt;br&amp;gt;&lt;br /&gt;
placing two, will indent it twice, three, thrice ... etc, etc, etc&amp;lt;br&amp;gt;&lt;br /&gt;
example&amp;lt;br&amp;gt;&lt;br /&gt;
none :&amp;lt;br&amp;gt;&lt;br /&gt;
:one&lt;br /&gt;
::two&lt;br /&gt;
:::three&lt;br /&gt;
&lt;br /&gt;
also ... bracketing text with two apostrophes &amp;lt;nowiki&amp;gt;''&amp;lt;/nowiki&amp;gt; calls up ''italics''&amp;lt;br&amp;gt;&lt;br /&gt;
three &amp;lt;nowiki&amp;gt;'''&amp;lt;/nowiki&amp;gt;, '''bold''' ...&amp;lt;br&amp;gt;&lt;br /&gt;
five &amp;lt;nowiki&amp;gt;'''''&amp;lt;/nowiki&amp;gt;, '''''bold italics'''''.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
color is easy too ...&amp;lt;br&amp;gt; &lt;br /&gt;
&amp;lt;nowiki&amp;gt;&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;this is red&amp;lt;/font&amp;gt;&amp;lt;/nowiki&amp;gt; gives you:&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;this is red&amp;lt;/font&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
red, green, blue, yellow, orange also work.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
all this works well to distinguish between replies in ongoing conversations.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
four ---- as the first characters in a line will draw a line&amp;lt;br&amp;gt;&lt;br /&gt;
like so:&lt;br /&gt;
----&lt;br /&gt;
three &amp;lt;nowiki&amp;gt;~~~&amp;lt;/nowiki&amp;gt; a signature, ie {{User:Griz/sig}} &amp;lt;br&amp;gt;&lt;br /&gt;
four &amp;lt;nowiki&amp;gt;~~~~&amp;lt;/nowiki&amp;gt; a sig with time stamp, ie {{User:Griz/sig}} 10:26, 26 Dec 2006 (MST)&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
just a few basics for you to play with if it helps.&lt;br /&gt;
of course clicking on edit ... you can see the code for any of this stuff&amp;lt;br&amp;gt;&lt;br /&gt;
i put here, and use something similar.&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
Here's one cool thing ... you should be notified if you have messages here when you sign in to the wiki.&amp;lt;br&amp;gt;&lt;br /&gt;
so these talk pages work well for communicating back and forth. mine is {{User:Griz/sig}}&amp;lt;br&amp;gt;&lt;br /&gt;
all users have them ... so you can contact [[User_talk:Numsgil|Nums]] or [[User_talk:EricL|Eric]] or [[User_talk:Endy|Endy]] too.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
:'''''A quick guide to installing VB6.0 first time I tried a full install and clicking ignore for all the bits it didn't have &lt;br /&gt;
:'''''nearly killed me, plus it didn't install at the end :( Need to just install most basic.&lt;br /&gt;
&lt;br /&gt;
:: what should it consist of? can you write up what would have helped you? it's been so long since i&lt;br /&gt;
:: did it that i don't recall. just a few hints, as in your above? i can then put it somewhere ...&lt;br /&gt;
:: maybe a note on the VB6 download page.&lt;br /&gt;
&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;I'm a global mod (it's your birthday!!) ffs damn window focus pinching league reruns :( I doubt I'll ever be an admin as that's reserved for programmers but in the meantime don't hesitate to take advantage of the fact I can edit any post to add info. I'd have to rerun the install but I'll put that on my todo list and try to get the info to you fairly soon, remind me if I don't&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
:'''''Need a link to download latest VB code, I still can only find C++ code source &lt;br /&gt;
::that would be on the [[Source_Code]] page ... the last entry under  Ver 2.4X, Darwinsource2.42.9r (Latest Buddy Drop)&lt;br /&gt;
::actual link is http://www.darwinbots.com/FTP/Darwinsource2.42.9r.zip&lt;br /&gt;
::that's what i've been waiting for ... as now i can go in and play myself with the most up-to-date version.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&amp;lt;font color=#007700&amp;gt;&lt;br /&gt;
:i was really jazzed back when i first discovered it ... and did a lot of work here ...&lt;br /&gt;
:then realized no one cared or even took advantage of it.&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
***&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
That's the thing, people do read it, the last newb to ask for more info, when I pointed to the wiki said he had read most of it. You are not going to get thanked for doing it, unless it's people like me who have been there before and can see the difference. It's more sort of a reverse compliment system, people not re-editing it. The absence of all those old questions about 'how do I do something really simple with my first bot' is praise for the work you put in here.&lt;br /&gt;
I spent hours using the Wiki when I wrote zebedee btw and continued to refer to it as I wrote the other bots after that.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
:i'm not looking to be thanked ... just for someone/anyone to acknowledge it is being used, that i am not wasting my time.&lt;br /&gt;
:actually i would love to see people re-edit. then i would know someone is actually reading/using it!&lt;br /&gt;
:what i get here is nada, naught, nothing. no response whatsoever. that's discouraging. ;)&lt;br /&gt;
:of course what i really hoped for was for many to participate here ... to make it a real forum.&lt;br /&gt;
:i've done a lot of groups in different formats over the years ... and have found wikis work far better for almost&lt;br /&gt;
:everything, precisely because everyone can participate in some way, can add their own thing ...&lt;br /&gt;
:and is certainly more user friendly and conducive to info exchange than the Invision format. imo. ime.&lt;br /&gt;
:but ... whaddaya goin' do? people get used to using something and don't want to change.&lt;br /&gt;
:and now the data base there is too large to abandon, so the best i can do is try to mirror the stuff&lt;br /&gt;
:that remains relevant here ... extract the good info and make it easier to access.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;I hoped for some thanks (same as appreciation) when I did the first bot bestiary. Now I've long since given up hoping for such, as, I think you said, it's a labour of love. It can be discouranging, then, as the programmers find, thanks are few and far between. :( You are not wasting your time (arbitary judgement I admit) the wiki can be useful, just more for newbs than peeps like you and me, I don't expect newbs to re-edit the pages. It's a long held point that a better wiki would make for a better newb experience though. &lt;br /&gt;
Nobody has ever volunteered for fixing the wiki, people, like PY have tried but always given up after one or two updates. :(&lt;br /&gt;
It reminds me of amateur dramatics, I (tended to)get the lead male role, most of the time, the directors got their name on the flyer, the people who actually made the play work were the people (aargh BBQ window's focus) who stood in the wings.&lt;br /&gt;
Heck, the sysvars wiki bit is well out of date now, we don't have a curtains manager who does that stuff.&lt;br /&gt;
Part of the reason I don't mesh well with the wiki is that it needs more ezperience to use than the forum btw.&lt;br /&gt;
If you are willing, stinky, unrecognised job that it might be, to continue, for the love of DB, upkeeping the wiki, then I will push for you to be made a mod on the forum, it's all I can offer in the way of recognition. sry I can't do more.&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
::oh ... no thanks. i don't want to be a mod there. &lt;br /&gt;
::my ideas of where DB should be going are a great deal different than where it is headed. ;)&lt;br /&gt;
::carlos had a good handle on it, imo, but it's strayed far away from being an evosim, imo.&lt;br /&gt;
::i haven't 'used' DB since we abandoned 2.37 ... as it didn't work anymore ...&lt;br /&gt;
::and then went off further in the wrong direction, imo.&lt;br /&gt;
::i'm just using DB as a source to learn some VB now.&lt;br /&gt;
::that's why i'm trying to encourage discussion of DB and VB code here ...&lt;br /&gt;
::so i can learn something.&lt;br /&gt;
::they can take DB in whatever direction they want ... &lt;br /&gt;
::it's already not what i had hoped to see. &lt;br /&gt;
&lt;br /&gt;
:i even began a bot page at one point ... [[BotTxt]]&lt;br /&gt;
:the bot text, hoping to get them all here so folks could ask questions about&lt;br /&gt;
:how various genes worked, and thereby learn a bit about the ins/outs of bot dna.&lt;br /&gt;
:i figured people could put their new creations here and talk about what/why/how their creations work.&lt;br /&gt;
:well, turned out to me just talking to myself ... even tho i put the idea and link at the forum.&lt;br /&gt;
:had a hard time even finding it myself now ... as there is no longer a link to it from anywhere.&lt;br /&gt;
:so again, apparently no interest. that being the case ... why bother?&lt;br /&gt;
:so there's a start on bot textif you are interesting in doing something like this.&lt;br /&gt;
&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;Sry but forum for discussion, wiki for an easily accesible source (/me kicks windows) of information. That's the way it is. Don't worry about the discussions, keep the wiki as a source of facts. (IMO)&amp;lt;/font&amp;gt;&lt;br /&gt;
::well that's just it. nobody 'discusses' code there. the programmers know it already ...&lt;br /&gt;
::and imo, aren't really open to helping others learn it. getting info our of Nums is like getting blood out of a rock. ime. &lt;br /&gt;
::i gave up long ago.&lt;br /&gt;
&lt;br /&gt;
::bottom line ... if i can't get people to discuss code here ... &lt;br /&gt;
::to go about it a logical manner, to ask questions and provide answers ...&lt;br /&gt;
::then there really isn't much point in continuing. &lt;br /&gt;
::i've tried to lure folks in, get them interested in making DB a &lt;br /&gt;
::for real cooperative effort ... but i don't see that happening.&lt;br /&gt;
::i'm here to learn something ... but for that to occur, others have to &lt;br /&gt;
::participate and be willing to share info.&lt;br /&gt;
::if that doesn't begin to happen, and unfortunately, i doubt it will ... &lt;br /&gt;
::then forgetaboutit.&lt;br /&gt;
::i've got other things to give my attention to.&lt;br /&gt;
::so afaic, this is one last experiment.&lt;br /&gt;
::we will see. {{User:Griz/sig}}&lt;br /&gt;
&lt;br /&gt;
***&lt;br /&gt;
&lt;br /&gt;
When it comes to links, the same as I have tried to do with the leagues, I want the relevant information as clearly marked as possible. Can take ages to track stuff down on the forum sometimes. I hate that. The Wiki needs to work in tandem with the forum though and andding links or making stickies (to the forum) seems (to me) the easiest way of doing this. If you are willing to fiddle with the wiki and request relevant links from apppropriate posts then I am more than willing to sort that out. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;font color=#007700&amp;gt;&lt;br /&gt;
:sounds great to me&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Working as a group is always stronger. (If DB evolution doesn't prove me wrong!) &lt;br /&gt;
Eventually a forum post with all the wiki links for newbs info maybe.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font color=#007700&amp;gt;&lt;br /&gt;
:exactly.&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
When it comes to downloading VB, the first time I chose every option, I'm like that, just a reminder to choose the most basic instal might be helpful; the second option on the first choice and no changes to the second choice was (I think) the way that worked for me.&lt;br /&gt;
&lt;br /&gt;
I will add that link for the VB sourc download to the forum soon, in fact if not by tommorow then kick me. Thanks for pointing out it is in wiki not the forum.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font color=#007700&amp;gt;&lt;br /&gt;
:ok. i don't recall the steps i did to install it ... &lt;br /&gt;
:went thru the same as you ... just kept clicking whatever button it was ...&lt;br /&gt;
:and still got error messages but ... it somehow worked.&lt;br /&gt;
:installing and getting DB to work the first time was even more difficult ...&lt;br /&gt;
:as there was little guidance at the time ... &lt;br /&gt;
:having load the old 2.0 first was only mentioned in passing ...&lt;br /&gt;
:and the sysvars thing wasn't explained at all.&lt;br /&gt;
:i had runtime error after runtime error that no one could reproduce ...&lt;br /&gt;
:but of course they all had their paths set correctly ... while i didn't have a clue.&lt;br /&gt;
:i can only imagine how many folks give up before they ever get it up and happening.&lt;br /&gt;
&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
***&lt;br /&gt;
&lt;br /&gt;
Lol, I remember the first update PY done, took me ages to figure out how to make it work. There was talk about adding an installer to the next version of DB, after Eric has fixed most the bugs. Hopefully that will simplify things a bit. Is there not a 'how to install DB first time' on the wiki now?&lt;br /&gt;
All those error messages on VB were the templates/help files/libraries that haven't been included. When I chose a full install the first time I tried it probably took an hour to ignore them all, very dissapointed that it then didn't install properly :D&lt;br /&gt;
&lt;br /&gt;
Anything you put on the forum I will read, I usually check for new posts every day.&lt;br /&gt;
I'm not sure about using the method you suggested to track this bug; I am running the league so not all the info will get saved and it has taken me several days to reproduce outside of the debugger before, would be gutted if I done that and then found the save hadn't kept this overflow error intact.&lt;br /&gt;
It is a good idea though, I hadn't thought of doing it that way.&lt;br /&gt;
&lt;br /&gt;
:yeah ... leagues seems to be a special case ... code is scattered lots of places.&lt;br /&gt;
:i'm still trying to track it all down. {{User:Griz/sig}}&lt;br /&gt;
***&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font color=#007700&amp;gt;&lt;br /&gt;
:well ... you know how to get ahold of me here ...&lt;br /&gt;
:i'll be checking in often and trying to sort out where all the league code is.&lt;br /&gt;
&lt;br /&gt;
:btw ... i posted this at the forum &lt;br /&gt;
:http://www.darwinbots.com/Forum/index.php?showtopic=1837&amp;amp;pid=1369864&amp;amp;st=15&amp;amp;#entry1369864  &lt;br /&gt;
:and will add it to the Debugging page as well but want to get it to you ...&lt;br /&gt;
:as it may be a big help in debugging those long sims:&lt;br /&gt;
&amp;lt;/font&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
for those running/searching for those errors in long sims ...&lt;br /&gt;
if you run the compiled version and do an occasional save ...&lt;br /&gt;
[this can be automatically done, yes?]&lt;br /&gt;
then hopefully when an error is encountered and an error.sim&lt;br /&gt;
file produced ...&lt;br /&gt;
you can then fire it up in VB, ensuring the error trapping is&lt;br /&gt;
commented out, load in the error sim or ideally, the save that&lt;br /&gt;
you captured which occurred just prior to the error ...&lt;br /&gt;
and then run it from there using the debugger.&lt;br /&gt;
this may not always work, as there seem to be many variables ...&lt;br /&gt;
but I have had it do exactly this for me in the past ...&lt;br /&gt;
even using the generated error.sim ...&lt;br /&gt;
the error still existing ...&lt;br /&gt;
which can certainly save a great deal of time debugging.&lt;br /&gt;
[remember to save/rename the error.sim to keep on file&lt;br /&gt;
for continued debugging, so it isn't overwritten]&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
later {{User:Griz/sig}} 16:55, 25 Dec 2006 (MST)&lt;/div&gt;</summary>
		<author><name>Griz</name></author>	</entry>

	<entry>
		<id>http://wiki.darwinbots.com/index.php?title=BotTxt&amp;diff=3605</id>
		<title>BotTxt</title>
		<link rel="alternate" type="text/html" href="http://wiki.darwinbots.com/index.php?title=BotTxt&amp;diff=3605"/>
				<updated>2006-12-26T17:35:10Z</updated>
		
		<summary type="html">&lt;p&gt;Griz: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;DB Bots&lt;br /&gt;
&lt;br /&gt;
The idea here is to collect Bots and their text here ...&amp;lt;br&amp;gt;&lt;br /&gt;
so people can go through and ask questions about how&amp;lt;br&amp;gt;&lt;br /&gt;
various genes work.&amp;lt;br&amp;gt;&lt;br /&gt;
Click on [[Talk:BotTxt|discussion]] and start one. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===C_Circumgirans===&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
' Comisia Circumgirans&lt;br /&gt;
'&lt;br /&gt;
' Robot NanniMorettiano&lt;br /&gt;
' (you'd need to know some italian politics&lt;br /&gt;
' to understand that... I hope you don't)&lt;br /&gt;
' Evolved 2002 from c. ancestralis&lt;br /&gt;
'&lt;br /&gt;
' A very efficient robot, it has the ability&lt;br /&gt;
' to move in swarms (swarms that become&lt;br /&gt;
' round when there is no food in sight,&lt;br /&gt;
' so the name). &lt;br /&gt;
&lt;br /&gt;
cond&lt;br /&gt;
  *.eye6&lt;br /&gt;
  0&lt;br /&gt;
  !=&lt;br /&gt;
start&lt;br /&gt;
  21&lt;br /&gt;
  40&lt;br /&gt;
  store&lt;br /&gt;
  17&lt;br /&gt;
  .aimdx&lt;br /&gt;
  store&lt;br /&gt;
stop&lt;br /&gt;
&lt;br /&gt;
cond&lt;br /&gt;
start&lt;br /&gt;
  16&lt;br /&gt;
  .aimsx&lt;br /&gt;
  store&lt;br /&gt;
stop&lt;br /&gt;
&lt;br /&gt;
cond&lt;br /&gt;
  *.eye8&lt;br /&gt;
 -1&lt;br /&gt;
  !=&lt;br /&gt;
start&lt;br /&gt;
 -4&lt;br /&gt;
  .dn&lt;br /&gt;
  store&lt;br /&gt;
  4&lt;br /&gt;
  .up&lt;br /&gt;
  store&lt;br /&gt;
stop&lt;br /&gt;
&lt;br /&gt;
cond&lt;br /&gt;
  *.aimdx&lt;br /&gt;
  0&lt;br /&gt;
  &amp;gt;&lt;br /&gt;
start&lt;br /&gt;
 -1&lt;br /&gt;
  .shoot&lt;br /&gt;
  store&lt;br /&gt;
  6&lt;br /&gt;
  .nrg&lt;br /&gt;
  store&lt;br /&gt;
stop&lt;br /&gt;
&lt;br /&gt;
cond&lt;br /&gt;
  *.refsx&lt;br /&gt;
  6181&lt;br /&gt;
  !%=&lt;br /&gt;
  *.nrg&lt;br /&gt;
  6181&lt;br /&gt;
  &amp;gt;&lt;br /&gt;
start&lt;br /&gt;
  430&lt;br /&gt;
  .aimdx&lt;br /&gt;
  store&lt;br /&gt;
  50&lt;br /&gt;
  .repro&lt;br /&gt;
  store&lt;br /&gt;
  42&lt;br /&gt;
  .out1&lt;br /&gt;
  store&lt;br /&gt;
  37&lt;br /&gt;
stop&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Devincio_Dominator_Invincibalis===&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
'Devincio_Dominator_Invincibalis&lt;br /&gt;
'uses tie defence system&lt;br /&gt;
'***********************&lt;br /&gt;
&lt;br /&gt;
'initialize&lt;br /&gt;
'*********&lt;br /&gt;
cond&lt;br /&gt;
    *.robage 0 =&lt;br /&gt;
  start&lt;br /&gt;
    42 55 store&lt;br /&gt;
    .tie inc&lt;br /&gt;
stop&lt;br /&gt;
&lt;br /&gt;
cond &lt;br /&gt;
*.robage 1 =&lt;br /&gt;
start&lt;br /&gt;
.deltie inc&lt;br /&gt;
stop&lt;br /&gt;
&lt;br /&gt;
cond &lt;br /&gt;
*.robage 300 &amp;gt;&lt;br /&gt;
*.nrg 3000 &amp;gt;&lt;br /&gt;
*.body 5000 &amp;lt;&lt;br /&gt;
start&lt;br /&gt;
100 .strbody store&lt;br /&gt;
stop&lt;br /&gt;
&lt;br /&gt;
cond&lt;br /&gt;
*.body 100 &amp;gt;&lt;br /&gt;
*.nrg 500 &amp;lt;&lt;br /&gt;
start&lt;br /&gt;
100 .fdbody store&lt;br /&gt;
stop&lt;br /&gt;
&lt;br /&gt;
' move forward &lt;br /&gt;
'****************&lt;br /&gt;
cond&lt;br /&gt;
    *.refeye *.myeye !=&lt;br /&gt;
    *.numties 0 =&lt;br /&gt;
  start&lt;br /&gt;
    *.maxvel *.vel sub .up store&lt;br /&gt;
 stop&lt;br /&gt;
&lt;br /&gt;
'turn towards food&lt;br /&gt;
'*************************&lt;br /&gt;
'avoid other conspecifics&lt;br /&gt;
'****************************&lt;br /&gt;
cond&lt;br /&gt;
start&lt;br /&gt;
mult mult 0 0&lt;br /&gt;
stop&lt;br /&gt;
&lt;br /&gt;
cond&lt;br /&gt;
*.eye4 *.eye6 &amp;gt;&lt;br /&gt;
start&lt;br /&gt;
mult mult -5 -25&lt;br /&gt;
stop&lt;br /&gt;
&lt;br /&gt;
cond&lt;br /&gt;
*.eye6 *.eye4 &amp;gt;&lt;br /&gt;
start&lt;br /&gt;
mult mult 5 25&lt;br /&gt;
stop&lt;br /&gt;
&lt;br /&gt;
cond&lt;br /&gt;
*.eye3 *.eye5 &amp;gt;&lt;br /&gt;
*.eye3 *.eye4 &amp;gt;&lt;br /&gt;
*.eye3 *.eye6 &amp;gt;&lt;br /&gt;
start&lt;br /&gt;
mult mult -8 -80 &lt;br /&gt;
stop&lt;br /&gt;
&lt;br /&gt;
cond&lt;br /&gt;
*.eye7 *.eye5 &amp;gt;&lt;br /&gt;
*.eye7 *.eye6 &amp;gt;&lt;br /&gt;
*.eye7 *.eye4 &amp;gt;&lt;br /&gt;
start&lt;br /&gt;
mult mult 8 80&lt;br /&gt;
stop&lt;br /&gt;
&lt;br /&gt;
cond&lt;br /&gt;
*.eye1 *.eye5 &amp;gt;&lt;br /&gt;
*.eye1 *.eye4 &amp;gt;&lt;br /&gt;
*.eye1 *.eye6 &amp;gt;&lt;br /&gt;
*.eye1 *.eye3 &amp;gt;&lt;br /&gt;
*.eye1 *.eye7 &amp;gt;&lt;br /&gt;
start&lt;br /&gt;
mult mult -14 -140 &lt;br /&gt;
stop&lt;br /&gt;
&lt;br /&gt;
cond&lt;br /&gt;
*.eye9 *.eye5 &amp;gt;&lt;br /&gt;
*.eye9 *.eye4 &amp;gt;&lt;br /&gt;
*.eye9 *.eye6 &amp;gt;&lt;br /&gt;
*.eye9 *.eye3 &amp;gt;&lt;br /&gt;
*.eye9 *.eye7 &amp;gt;&lt;br /&gt;
start&lt;br /&gt;
mult mult 14 140 &lt;br /&gt;
stop&lt;br /&gt;
&lt;br /&gt;
' Avoid conspecifics&lt;br /&gt;
' ***********************&lt;br /&gt;
cond&lt;br /&gt;
    *.refeye *.myeye =&lt;br /&gt;
  start&lt;br /&gt;
    mult mult 0 85 &lt;br /&gt;
stop&lt;br /&gt;
&lt;br /&gt;
'reproduce &lt;br /&gt;
'***********&lt;br /&gt;
cond &lt;br /&gt;
*.robage 50 &amp;lt;&lt;br /&gt;
*.eye5 50 &amp;lt;&lt;br /&gt;
*.nrg 1500 &amp;gt;&lt;br /&gt;
start&lt;br /&gt;
50 .repro store&lt;br /&gt;
mult mult 0 250&lt;br /&gt;
stop&lt;br /&gt;
&lt;br /&gt;
cond&lt;br /&gt;
    *.nrg 5000 &amp;gt; &lt;br /&gt;
    *.eye5 50 &amp;lt;&lt;br /&gt;
  start&lt;br /&gt;
    40 .repro store&lt;br /&gt;
    mult mult 0 250 &lt;br /&gt;
stop&lt;br /&gt;
&lt;br /&gt;
'Feed&lt;br /&gt;
'******&lt;br /&gt;
cond&lt;br /&gt;
*.tiepres *51 !=&lt;br /&gt;
*.numties 0 &amp;gt;&lt;br /&gt;
start&lt;br /&gt;
*.tiepres .tienum store&lt;br /&gt;
1000 .tieval store&lt;br /&gt;
.tieval .tieloc store&lt;br /&gt;
stop&lt;br /&gt;
&lt;br /&gt;
cond&lt;br /&gt;
*.multi 1 =&lt;br /&gt;
start&lt;br /&gt;
*.tiepres .deltie store&lt;br /&gt;
99 .sharenrg store&lt;br /&gt;
stop&lt;br /&gt;
&lt;br /&gt;
cond&lt;br /&gt;
*52 2 =&lt;br /&gt;
start&lt;br /&gt;
*51 .deltie store&lt;br /&gt;
0 52 store&lt;br /&gt;
stop&lt;br /&gt;
&lt;br /&gt;
cond &lt;br /&gt;
   *52 0 &amp;gt;&lt;br /&gt;
  start&lt;br /&gt;
    *51 .tienum store&lt;br /&gt;
    -1000 .tieval store&lt;br /&gt;
    -1 .tieloc store&lt;br /&gt;
52 inc&lt;br /&gt;
stop&lt;br /&gt;
&lt;br /&gt;
' sever ties to conspecifics&lt;br /&gt;
' *****************************&lt;br /&gt;
cond&lt;br /&gt;
    *.trefeye *55 =&lt;br /&gt;
  start&lt;br /&gt;
    *.tiepres .deltie store&lt;br /&gt;
stop&lt;br /&gt;
&lt;br /&gt;
' delete painful tie&lt;br /&gt;
' ******************&lt;br /&gt;
cond&lt;br /&gt;
*.numties 0 &amp;gt;&lt;br /&gt;
*.pain 500 &amp;gt;&lt;br /&gt;
start&lt;br /&gt;
*.tiepres .deltie store&lt;br /&gt;
stop&lt;br /&gt;
&lt;br /&gt;
'Tie to an enemy&lt;br /&gt;
'********************&lt;br /&gt;
cond&lt;br /&gt;
    *.eye5 50 &amp;gt;&lt;br /&gt;
    *.eye6 *.eye4 %=&lt;br /&gt;
    *.refeye *.myeye !=&lt;br /&gt;
    *.robage 0 &amp;gt;&lt;br /&gt;
  start&lt;br /&gt;
    800 rnd 100 add 51 store&lt;br /&gt;
    *51 .tie store&lt;br /&gt;
    *51 .readtie store&lt;br /&gt;
    mult mult 0 0 &lt;br /&gt;
    52 inc&lt;br /&gt;
stop&lt;br /&gt;
&lt;br /&gt;
' Actually rotate&lt;br /&gt;
' *****************&lt;br /&gt;
cond&lt;br /&gt;
start&lt;br /&gt;
    .aimdx store&lt;br /&gt;
    .dx store&lt;br /&gt;
stop&lt;br /&gt;
&lt;br /&gt;
cond&lt;br /&gt;
*.refeye *.myeye !=&lt;br /&gt;
*.refeye 1 !=&lt;br /&gt;
*.eye5 50 &amp;gt;&lt;br /&gt;
start&lt;br /&gt;
-6 .shoot store&lt;br /&gt;
stop&lt;br /&gt;
&lt;br /&gt;
cond&lt;br /&gt;
*.waste 100 &amp;gt;&lt;br /&gt;
start&lt;br /&gt;
1 .backshot store&lt;br /&gt;
-4 .shoot store&lt;br /&gt;
*.waste .shootval store&lt;br /&gt;
stop&lt;br /&gt;
&lt;br /&gt;
cond&lt;br /&gt;
*.poison 1000 &amp;lt;&lt;br /&gt;
*.nrg 1000 &amp;gt;&lt;br /&gt;
start&lt;br /&gt;
10 .strpoison store&lt;br /&gt;
stop&lt;br /&gt;
&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Devincio_Eversor===&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
'Devincio_Eversor&lt;br /&gt;
' *** Tie Destroyerr ***&lt;br /&gt;
'***********************&lt;br /&gt;
&lt;br /&gt;
'initialize&lt;br /&gt;
'*********&lt;br /&gt;
cond&lt;br /&gt;
*.robage 0 =&lt;br /&gt;
start&lt;br /&gt;
8 rnd 2 add 51 store&lt;br /&gt;
45 55 store&lt;br /&gt;
*51 .tie store&lt;br /&gt;
stop&lt;br /&gt;
&lt;br /&gt;
' move forward &lt;br /&gt;
'****************&lt;br /&gt;
cond&lt;br /&gt;
*.refeye *55 !=&lt;br /&gt;
start&lt;br /&gt;
30 *.vel sub .up store&lt;br /&gt;
stop&lt;br /&gt;
&lt;br /&gt;
cond&lt;br /&gt;
*.refeye *55 !=&lt;br /&gt;
*.refeye 0 !=&lt;br /&gt;
*.eye5 80 &amp;gt;&lt;br /&gt;
start&lt;br /&gt;
40 *.vel sub .up store&lt;br /&gt;
stop&lt;br /&gt;
&lt;br /&gt;
cond&lt;br /&gt;
*.refeye *55 =&lt;br /&gt;
*.eye5 50 &amp;gt;&lt;br /&gt;
start&lt;br /&gt;
2 .dn store&lt;br /&gt;
stop&lt;br /&gt;
&lt;br /&gt;
'turn towards food&lt;br /&gt;
'*************************&lt;br /&gt;
'avoid other conspecifics&lt;br /&gt;
'****************************&lt;br /&gt;
cond&lt;br /&gt;
start&lt;br /&gt;
mult 0&lt;br /&gt;
stop&lt;br /&gt;
&lt;br /&gt;
cond&lt;br /&gt;
'*.eye4 *.eye5 &amp;gt;&lt;br /&gt;
*.eye4 *.eye6 &amp;gt;&lt;br /&gt;
start&lt;br /&gt;
mult -15&lt;br /&gt;
stop&lt;br /&gt;
&lt;br /&gt;
cond&lt;br /&gt;
'*.eye6 *.eye5 &amp;gt;&lt;br /&gt;
*.eye6 *.eye4 &amp;gt;&lt;br /&gt;
start&lt;br /&gt;
mult 15&lt;br /&gt;
stop&lt;br /&gt;
&lt;br /&gt;
cond&lt;br /&gt;
*.eye3 *.eye5 &amp;gt;&lt;br /&gt;
*.eye3 *.eye4 &amp;gt;&lt;br /&gt;
*.eye3 *.eye6 &amp;gt;&lt;br /&gt;
start&lt;br /&gt;
mult -50 &lt;br /&gt;
stop&lt;br /&gt;
&lt;br /&gt;
cond&lt;br /&gt;
*.eye7 *.eye5 &amp;gt;&lt;br /&gt;
*.eye7 *.eye6 &amp;gt;&lt;br /&gt;
*.eye7 *.eye4 &amp;gt;&lt;br /&gt;
start&lt;br /&gt;
mult 50&lt;br /&gt;
stop&lt;br /&gt;
&lt;br /&gt;
cond&lt;br /&gt;
*.eye1 *.eye5 &amp;gt;&lt;br /&gt;
*.eye1 *.eye4 &amp;gt;&lt;br /&gt;
*.eye1 *.eye6 &amp;gt;&lt;br /&gt;
*.eye1 *.eye3 &amp;gt;&lt;br /&gt;
*.eye1 *.eye7 &amp;gt;&lt;br /&gt;
start&lt;br /&gt;
mult -100 &lt;br /&gt;
stop&lt;br /&gt;
&lt;br /&gt;
cond&lt;br /&gt;
*.eye9 *.eye5 &amp;gt;&lt;br /&gt;
*.eye9 *.eye4 &amp;gt;&lt;br /&gt;
*.eye9 *.eye6 &amp;gt;&lt;br /&gt;
*.eye9 *.eye3 &amp;gt;&lt;br /&gt;
*.eye9 *.eye7 &amp;gt;&lt;br /&gt;
start&lt;br /&gt;
mult 100 &lt;br /&gt;
stop&lt;br /&gt;
&lt;br /&gt;
' Avoid conspecifics&lt;br /&gt;
' ***********************&lt;br /&gt;
cond&lt;br /&gt;
*.refeye *55 =&lt;br /&gt;
start&lt;br /&gt;
mult 85 &lt;br /&gt;
stop&lt;br /&gt;
&lt;br /&gt;
'reproduce &lt;br /&gt;
'***********&lt;br /&gt;
cond&lt;br /&gt;
*.nrg 4000 &amp;gt; &lt;br /&gt;
*.eye5 0 =&lt;br /&gt;
start&lt;br /&gt;
25 .repro store&lt;br /&gt;
mult 250 &lt;br /&gt;
stop&lt;br /&gt;
&lt;br /&gt;
'Tie to an enemy&lt;br /&gt;
'********************&lt;br /&gt;
cond&lt;br /&gt;
*.eye5 30 &amp;gt;&lt;br /&gt;
*.eye5 *.eye4 =&lt;br /&gt;
*.eye5 *.eye6 =&lt;br /&gt;
*.refeye *55 !=&lt;br /&gt;
start&lt;br /&gt;
*51 .tie store&lt;br /&gt;
mult 0 &lt;br /&gt;
stop&lt;br /&gt;
&lt;br /&gt;
' Actually rotate&lt;br /&gt;
' *****************&lt;br /&gt;
cond&lt;br /&gt;
start&lt;br /&gt;
.aimdx store&lt;br /&gt;
stop&lt;br /&gt;
&lt;br /&gt;
' sever ties to conspecifics&lt;br /&gt;
' *****************************&lt;br /&gt;
cond&lt;br /&gt;
*.trefeye *55 =&lt;br /&gt;
start&lt;br /&gt;
*51 .deltie store&lt;br /&gt;
stop&lt;br /&gt;
&lt;br /&gt;
'Spin when attacked&lt;br /&gt;
'*************************&lt;br /&gt;
cond&lt;br /&gt;
*.shdn 0 &amp;lt;&lt;br /&gt;
*.pleas -10 &amp;lt;&lt;br /&gt;
start&lt;br /&gt;
620 .aimsx store&lt;br /&gt;
stop&lt;br /&gt;
&lt;br /&gt;
cond&lt;br /&gt;
*.hitdn 0 !=&lt;br /&gt;
start&lt;br /&gt;
620 .aimsx store&lt;br /&gt;
stop&lt;br /&gt;
&lt;br /&gt;
'Feed&lt;br /&gt;
'******&lt;br /&gt;
cond &lt;br /&gt;
*.numties 0 &amp;gt;&lt;br /&gt;
start&lt;br /&gt;
*51 .tienum store&lt;br /&gt;
-1000 .tieval store&lt;br /&gt;
-1 .tieloc store&lt;br /&gt;
*51 .readtie store&lt;br /&gt;
stop&lt;br /&gt;
&lt;br /&gt;
cond&lt;br /&gt;
*.numties 0 &amp;gt;&lt;br /&gt;
*.waste 100 &amp;gt;&lt;br /&gt;
*.trefeye 0 =&lt;br /&gt;
start&lt;br /&gt;
1000 .tieval store&lt;br /&gt;
-4 .tieloc store&lt;br /&gt;
stop&lt;br /&gt;
&lt;br /&gt;
cond&lt;br /&gt;
*.slime 90 &amp;lt;&lt;br /&gt;
start&lt;br /&gt;
50 .mkslime store&lt;br /&gt;
stop&lt;br /&gt;
&lt;br /&gt;
cond&lt;br /&gt;
*.refeye *55 !=&lt;br /&gt;
*.eye5 50 &amp;gt;&lt;br /&gt;
start&lt;br /&gt;
-1 .shoot store&lt;br /&gt;
stop&lt;br /&gt;
&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Hunter V2.13===&lt;br /&gt;
&amp;lt;pre&amp;gt; &lt;br /&gt;
'New generation Hunter bot with state of the art features&lt;br /&gt;
'***********************&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'reproduce &lt;br /&gt;
'*********&lt;br /&gt;
cond&lt;br /&gt;
*.nrg 4000 &amp;gt;&lt;br /&gt;
start&lt;br /&gt;
60 .repro store&lt;br /&gt;
628 .aimsx store&lt;br /&gt;
1 40 store&lt;br /&gt;
stop&lt;br /&gt;
&lt;br /&gt;
cond&lt;br /&gt;
*.robage 0 =&lt;br /&gt;
start&lt;br /&gt;
1 .tie store&lt;br /&gt;
stop&lt;br /&gt;
&lt;br /&gt;
cond&lt;br /&gt;
*.robage 1 =&lt;br /&gt;
start&lt;br /&gt;
314 .aimdx store&lt;br /&gt;
stop&lt;br /&gt;
&lt;br /&gt;
cond &lt;br /&gt;
*.robage 3 =&lt;br /&gt;
start&lt;br /&gt;
314 .aimsx store&lt;br /&gt;
stop&lt;br /&gt;
&lt;br /&gt;
cond&lt;br /&gt;
*40 0 !=&lt;br /&gt;
start&lt;br /&gt;
40 inc&lt;br /&gt;
stop&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
cond&lt;br /&gt;
*.eye5 80 &amp;lt;&lt;br /&gt;
*.refeye 18 !=&lt;br /&gt;
start&lt;br /&gt;
30 *.vel sub 3 div .up store&lt;br /&gt;
stop&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'turn towards enemies or food&lt;br /&gt;
'*************************&lt;br /&gt;
&lt;br /&gt;
cond&lt;br /&gt;
*.eye1 *.eye5 &amp;gt;&lt;br /&gt;
*.eye1 *.eye9 &amp;gt;&lt;br /&gt;
start&lt;br /&gt;
100 .aimsx store&lt;br /&gt;
'5 .sx store&lt;br /&gt;
stop&lt;br /&gt;
&lt;br /&gt;
cond&lt;br /&gt;
*.eye9 *.eye5 &amp;gt;&lt;br /&gt;
*.eye9 *.eye1 &amp;gt;&lt;br /&gt;
start&lt;br /&gt;
-100 .aimsx store&lt;br /&gt;
'5 .dx store&lt;br /&gt;
stop&lt;br /&gt;
&lt;br /&gt;
cond&lt;br /&gt;
*.eye3 *.eye5 &amp;gt;&lt;br /&gt;
*.eye3 *.eye7 &amp;gt;&lt;br /&gt;
start&lt;br /&gt;
50 .aimsx store&lt;br /&gt;
'5 .sx store&lt;br /&gt;
stop&lt;br /&gt;
&lt;br /&gt;
cond&lt;br /&gt;
*.eye7 *.eye5 &amp;gt;&lt;br /&gt;
*.eye7 *.eye3 &amp;gt;&lt;br /&gt;
start&lt;br /&gt;
-50 .aimsx store&lt;br /&gt;
'5 .dx store&lt;br /&gt;
stop&lt;br /&gt;
&lt;br /&gt;
cond&lt;br /&gt;
*40 3 =&lt;br /&gt;
start&lt;br /&gt;
628 .aimdx store&lt;br /&gt;
0 40 store&lt;br /&gt;
stop&lt;br /&gt;
&lt;br /&gt;
'avoid conspecifics&lt;br /&gt;
'****************************&lt;br /&gt;
cond&lt;br /&gt;
*.refeye 18 =&lt;br /&gt;
'*.eye5 30 &amp;gt;&lt;br /&gt;
start&lt;br /&gt;
120 .aimsx store&lt;br /&gt;
stop&lt;br /&gt;
&lt;br /&gt;
'shoot at enemy&lt;br /&gt;
'******************&lt;br /&gt;
&lt;br /&gt;
cond&lt;br /&gt;
*.eye5 50 &amp;gt;&lt;br /&gt;
*.refeye 18 !=&lt;br /&gt;
start&lt;br /&gt;
-1 .shoot store&lt;br /&gt;
stop&lt;br /&gt;
&lt;br /&gt;
'delete ties&lt;br /&gt;
'*********&lt;br /&gt;
cond&lt;br /&gt;
*.numties 0 &amp;gt;&lt;br /&gt;
start&lt;br /&gt;
1 .deltie store&lt;br /&gt;
stop&lt;br /&gt;
&lt;br /&gt;
cond&lt;br /&gt;
start&lt;br /&gt;
100 .mkslime store&lt;br /&gt;
stop&lt;br /&gt;
&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===next===&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===next===&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>Griz</name></author>	</entry>

	<entry>
		<id>http://wiki.darwinbots.com/index.php?title=Robot_Tutorial&amp;diff=3391</id>
		<title>Robot Tutorial</title>
		<link rel="alternate" type="text/html" href="http://wiki.darwinbots.com/index.php?title=Robot_Tutorial&amp;diff=3391"/>
				<updated>2006-12-26T17:30:38Z</updated>
		
		<summary type="html">&lt;p&gt;Griz: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;*[[Basic Bot Tutorial | Basic Bot]]&lt;br /&gt;
*[[Elite%27s_Bot_Tutorial|Advanced Shot Bot Tutorial]]&lt;br /&gt;
*[[Tie_Feeder_Tutorial | Introduction to Tie Feeding]]&lt;br /&gt;
*[[Multibot Tutorial | Multibot Tutorial]] (very advanced, be sure you have a firm grasp on the DNA language and the simulation environment)&lt;br /&gt;
*[[PY tutorial | Purple Youko's tutorial (old, but still very good)]]&lt;br /&gt;
*[[Conditionless Bots]]&lt;br /&gt;
*[[Tie Tutorial]]&lt;br /&gt;
*[[BotTxt]] Bot text. Add any bot you would like to explore/talk about.&lt;/div&gt;</summary>
		<author><name>Griz</name></author>	</entry>

	<entry>
		<id>http://wiki.darwinbots.com/index.php?title=User_talk:Jez&amp;diff=2342</id>
		<title>User talk:Jez</title>
		<link rel="alternate" type="text/html" href="http://wiki.darwinbots.com/index.php?title=User_talk:Jez&amp;diff=2342"/>
				<updated>2006-12-26T17:26:54Z</updated>
		
		<summary type="html">&lt;p&gt;Griz: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;i see you discovered that &amp;lt;nowiki&amp;gt;'*'&amp;lt;/nowiki&amp;gt; is a control character. ;)&amp;lt;br&amp;gt;&lt;br /&gt;
resulting in &lt;br /&gt;
***&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
here's one way to separate/distinguish replies ...&amp;lt;br&amp;gt;&lt;br /&gt;
placing a single &amp;quot;:&amp;quot; as the first character in a line will 'indent' it.&amp;lt;br&amp;gt;&lt;br /&gt;
placing two, will indent it twice, three, thrice ... etc, etc, etc&amp;lt;br&amp;gt;&lt;br /&gt;
example&amp;lt;br&amp;gt;&lt;br /&gt;
none :&amp;lt;br&amp;gt;&lt;br /&gt;
:one&lt;br /&gt;
::two&lt;br /&gt;
:::three&lt;br /&gt;
&lt;br /&gt;
also ... bracketing text with two apostrophes &amp;lt;nowiki&amp;gt;''&amp;lt;/nowiki&amp;gt; calls up ''italics''&amp;lt;br&amp;gt;&lt;br /&gt;
three &amp;lt;nowiki&amp;gt;'''&amp;lt;/nowiki&amp;gt;, '''bold''' ...&amp;lt;br&amp;gt;&lt;br /&gt;
five &amp;lt;nowiki&amp;gt;'''''&amp;lt;/nowiki&amp;gt;, '''''bold italics'''''.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
color is easy too ...&amp;lt;br&amp;gt; &lt;br /&gt;
&amp;lt;nowiki&amp;gt;&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;this is red&amp;lt;/font&amp;gt;&amp;lt;/nowiki&amp;gt; gives you:&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;this is red&amp;lt;/font&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
red, green, blue, yellow, orange also work.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
all this works well to distinguish between replies in ongoing conversations.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
four ---- as the first characters in a line will draw a line&amp;lt;br&amp;gt;&lt;br /&gt;
like so:&lt;br /&gt;
----&lt;br /&gt;
three &amp;lt;nowiki&amp;gt;~~~&amp;lt;/nowiki&amp;gt; a signature, ie {{User:Griz/sig}} &amp;lt;br&amp;gt;&lt;br /&gt;
four &amp;lt;nowiki&amp;gt;~~~~&amp;lt;/nowiki&amp;gt; a sig with time stamp, ie {{User:Griz/sig}} 10:26, 26 Dec 2006 (MST)&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
just a few basics for you to play with if it helps.&lt;br /&gt;
of course clicking on edit ... you can see the code for any of this stuff&amp;lt;br&amp;gt;&lt;br /&gt;
i put here, and use something similar.&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
Here's one cool thing ... you should be notified if you have messages here when you sign in to the wiki.&amp;lt;br&amp;gt;&lt;br /&gt;
so these talk pages work well for communicating back and forth. mine is {{User:Griz/sig}}&amp;lt;br&amp;gt;&lt;br /&gt;
all users have them ... so you can contact [[User_talk:Numsgil|Nums]] or [[User_talk:EricL|Eric]] or [[User_talk:Endy|Endy]] too.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
:'''''A quick guide to installing VB6.0 first time I tried a full install and clicking ignore for all the bits it didn't have &lt;br /&gt;
:'''''nearly killed me, plus it didn't install at the end :( Need to just install most basic.&lt;br /&gt;
&lt;br /&gt;
:: what should it consist of? can you write up what would have helped you? it's been so long since i&lt;br /&gt;
:: did it that i don't recall. just a few hints, as in your above? i can then put it somewhere ...&lt;br /&gt;
:: maybe a note on the VB6 download page.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
:'''''Need a link to download latest VB code, I still can only find C++ code source &lt;br /&gt;
::that would be on the [[Source_Code]] page ... the last entry under  Ver 2.4X, Darwinsource2.42.9r (Latest Buddy Drop)&lt;br /&gt;
::actual link is http://www.darwinbots.com/FTP/Darwinsource2.42.9r.zip&lt;br /&gt;
::that's what i've been waiting for ... as now i can go in and play myself with the most up-to-date version.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&amp;lt;font color=#007700&amp;gt;&lt;br /&gt;
:i was really jazzed back when i first discovered it ... and did a lot of work here ...&lt;br /&gt;
:then realized no one cared or even took advantage of it.&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
***&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
That's the thing, people do read it, the last newb to ask for more info, when I pointed to the wiki said he had read most of it. You are not going to get thanked for doing it, unless it's people like me who have been there before and can see the difference. It's more sort of a reverse compliment system, people not re-editing it. The absence of all those old questions about 'how do I do something really simple with my first bot' is praise for the work you put in here.&lt;br /&gt;
I spent hours using the Wiki when I wrote zebedee btw and continued to refer to it as I wrote the other bots after that.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
:i'm not looking to be thanked ... just for someone/anyone to acknowledge it is being used, that i am not wasting my time.&lt;br /&gt;
:actually i would love to see people re-edit. then i would know someone is actually reading/using it!&lt;br /&gt;
:what i get here is nada, naught, nothing. no response whatsoever. that's discouraging. ;)&lt;br /&gt;
:of course what i really hoped for was for many to participate here ... to make it a real forum.&lt;br /&gt;
:i've done a lot of groups in different formats over the years ... and have found wikis work far better for almost&lt;br /&gt;
:everything, precisely because everyone can participate in some way, can add their own thing ...&lt;br /&gt;
:and is certainly more user friendly and conducive to info exchange than the Invision format. imo. ime.&lt;br /&gt;
:but ... whaddaya goin' do? people get used to using something and don't want to change.&lt;br /&gt;
:and now the data base there is too large to abandon, so the best i can do is try to mirror the stuff&lt;br /&gt;
:that remains relevant here ... extract the good info and make it easier to access.&lt;br /&gt;
&lt;br /&gt;
:i even began a bot page at one point ... [[BotTxt]]&lt;br /&gt;
:the bot text, hoping to get them all here so folks could ask questions about&lt;br /&gt;
:how various genes worked, and thereby learn a bit about the ins/outs of bot dna.&lt;br /&gt;
:i figured people could put their new creations here and talk about what/why/how their creations work.&lt;br /&gt;
:well, turned out to me just talking to myself ... even tho i put the idea and link at the forum.&lt;br /&gt;
:had a hard time even finding it myself now ... as there is no longer a link to it from anywhere.&lt;br /&gt;
:so again, apparently no interest. that being the case ... why bother?&lt;br /&gt;
:so there's a start on bot textif you are interesting in doing something like this.&lt;br /&gt;
***&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
When it comes to links, the same as I have tried to do with the leagues, I want the relevant information as clearly marked as possible. Can take ages to track stuff down on the forum sometimes. I hate that. The Wiki needs to work in tandem with the forum though and andding links or making stickies (to the forum) seems (to me) the easiest way of doing this. If you are willing to fiddle with the wiki and request relevant links from apppropriate posts then I am more than willing to sort that out. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;font color=#007700&amp;gt;&lt;br /&gt;
:sounds great to me&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Working as a group is always stronger. (If DB evolution doesn't prove me wrong!) &lt;br /&gt;
Eventually a forum post with all the wiki links for newbs info maybe.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font color=#007700&amp;gt;&lt;br /&gt;
:exactly.&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
When it comes to downloading VB, the first time I chose every option, I'm like that, just a reminder to choose the most basic instal might be helpful; the second option on the first choice and no changes to the second choice was (I think) the way that worked for me.&lt;br /&gt;
&lt;br /&gt;
I will add that link for the VB sourc download to the forum soon, in fact if not by tommorow then kick me. Thanks for pointing out it is in wiki not the forum.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font color=#007700&amp;gt;&lt;br /&gt;
:ok. i don't recall the steps i did to install it ... &lt;br /&gt;
:went thru the same as you ... just kept clicking whatever button it was ...&lt;br /&gt;
:and still got error messages but ... it somehow worked.&lt;br /&gt;
:installing and getting DB to work the first time was even more difficult ...&lt;br /&gt;
:as there was little guidance at the time ... &lt;br /&gt;
:having load the old 2.0 first was only mentioned in passing ...&lt;br /&gt;
:and the sysvars thing wasn't explained at all.&lt;br /&gt;
:i had runtime error after runtime error that no one could reproduce ...&lt;br /&gt;
:but of course they all had their paths set correctly ... while i didn't have a clue.&lt;br /&gt;
:i can only imagine how many folks give up before they ever get it up and happening.&lt;br /&gt;
&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
***&lt;br /&gt;
&lt;br /&gt;
Lol, I remember the first update PY done, took me ages to figure out how to make it work. There was talk about adding an installer to the next version of DB, after Eric has fixed most the bugs. Hopefully that will simplify things a bit. Is there not a 'how to install DB first time' on the wiki now?&lt;br /&gt;
All those error messages on VB were the templates/help files/libraries that haven't been included. When I chose a full install the first time I tried it probably took an hour to ignore them all, very dissapointed that it then didn't install properly :D&lt;br /&gt;
&lt;br /&gt;
Anything you put on the forum I will read, I usually check for new posts every day.&lt;br /&gt;
I'm not sure about using the method you suggested to track this bug; I am running the league so not all the info will get saved and it has taken me several days to reproduce outside of the debugger before, would be gutted if I done that and then found the save hadn't kept this overflow error intact.&lt;br /&gt;
It is a good idea though, I hadn't thought of doing it that way.&lt;br /&gt;
&lt;br /&gt;
:yeah ... leagues seems to be a special case ... code is scattered lots of places.&lt;br /&gt;
:i'm still trying to track it all down. {{User:Griz/sig}}&lt;br /&gt;
***&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font color=#007700&amp;gt;&lt;br /&gt;
:well ... you know how to get ahold of me here ...&lt;br /&gt;
:i'll be checking in often and trying to sort out where all the league code is.&lt;br /&gt;
&lt;br /&gt;
:btw ... i posted this at the forum &lt;br /&gt;
:http://www.darwinbots.com/Forum/index.php?showtopic=1837&amp;amp;pid=1369864&amp;amp;st=15&amp;amp;#entry1369864  &lt;br /&gt;
:and will add it to the Debugging page as well but want to get it to you ...&lt;br /&gt;
:as it may be a big help in debugging those long sims:&lt;br /&gt;
&amp;lt;/font&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
for those running/searching for those errors in long sims ...&lt;br /&gt;
if you run the compiled version and do an occasional save ...&lt;br /&gt;
[this can be automatically done, yes?]&lt;br /&gt;
then hopefully when an error is encountered and an error.sim&lt;br /&gt;
file produced ...&lt;br /&gt;
you can then fire it up in VB, ensuring the error trapping is&lt;br /&gt;
commented out, load in the error sim or ideally, the save that&lt;br /&gt;
you captured which occurred just prior to the error ...&lt;br /&gt;
and then run it from there using the debugger.&lt;br /&gt;
this may not always work, as there seem to be many variables ...&lt;br /&gt;
but I have had it do exactly this for me in the past ...&lt;br /&gt;
even using the generated error.sim ...&lt;br /&gt;
the error still existing ...&lt;br /&gt;
which can certainly save a great deal of time debugging.&lt;br /&gt;
[remember to save/rename the error.sim to keep on file&lt;br /&gt;
for continued debugging, so it isn't overwritten]&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
later {{User:Griz/sig}} 16:55, 25 Dec 2006 (MST)&lt;/div&gt;</summary>
		<author><name>Griz</name></author>	</entry>

	<entry>
		<id>http://wiki.darwinbots.com/index.php?title=User_talk:Jez&amp;diff=2334</id>
		<title>User talk:Jez</title>
		<link rel="alternate" type="text/html" href="http://wiki.darwinbots.com/index.php?title=User_talk:Jez&amp;diff=2334"/>
				<updated>2006-12-26T04:50:24Z</updated>
		
		<summary type="html">&lt;p&gt;Griz: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;hi Jez ...&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Here's one cool thing ... you should be notified if you have messages here when you sign in to the wiki.&amp;lt;br&amp;gt;&lt;br /&gt;
so these talk pages work well for communicating back and forth. mine is {{User:Griz/sig}}&amp;lt;br&amp;gt;&lt;br /&gt;
all users have them ... so you can contact [[User_talk:Numsgil|Nums]] or [[User_talk:EricL|Eric]] or [[User_talk:Endy|Endy]] too.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
i see you put some stuff in the [[Sandbox]] ...&amp;lt;br&amp;gt;&lt;br /&gt;
so will move it here and try to address them.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
also ... this page can always be edited, old matl overwritten ... whatever ...&amp;lt;br&amp;gt;&lt;br /&gt;
so put anything you want here, or at my talk page, in the way of questions.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
i put this page, your talk page, on my watchlist too ...&amp;lt;br&amp;gt;&lt;br /&gt;
so i can go check my watchlist anytime and be advised if any of the pages&amp;lt;br&amp;gt;&lt;br /&gt;
i watch have had any activity. you can add any page, like Debugging, etc.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
btw ... perhaps you know this already, or not ...&amp;lt;br&amp;gt;&lt;br /&gt;
the first page i come to here is [[Special:Recentchanges]]&amp;lt;br&amp;gt;&lt;br /&gt;
gives me a quick look at who is doing what, where.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
so ... is this a list of what you want to see implimented here?&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
:'''''A quick guide to installing VB6.0 first time I tried a full install and clicking ignore for all the bits it didn't have &lt;br /&gt;
:'''''nearly killed me, plus it didn't install at the end :( Need to just install most basic.&lt;br /&gt;
&lt;br /&gt;
:: what should it consist of? can you write up what would have helped you? it's been so long since i&lt;br /&gt;
:: did it that i don't recall. just a few hints, as in your above? i can then put it somewhere ...&lt;br /&gt;
:: maybe a note on the VB6 download page.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
:'''''The post by Ulciscor on bug reporting, I suggest we use to link all the sources of info from, is here: :'''''[http://www.darwinbots.com/Forum/index.php?showtopic=874 Bug Reporting]&lt;br /&gt;
:'''''That is pretty much the only relevant info on the forum, preceeding the topic we are using atm, that I have found so far.&lt;br /&gt;
&lt;br /&gt;
:: ok. so what are you saying? put links there ... leading to relevant pages here?&lt;br /&gt;
:: i absolutely detest the forum layout ... and find it horribly chaotic for finding info ...&lt;br /&gt;
:: or maintaining any kind of continuity, so i'll leave that end up to you.&lt;br /&gt;
:: i know wikis ... so will concentrate my efforts here ... and together maybe we can tie the two together.&lt;br /&gt;
:: what think ye?&lt;br /&gt;
----&lt;br /&gt;
:'''''Need a link to download latest VB code, I still can only find C++ code source &lt;br /&gt;
::that would be on the [[Source_Code]] page ... the last entry under  Ver 2.4X, Darwinsource2.42.9r (Latest Buddy Drop)&lt;br /&gt;
::actual link is http://www.darwinbots.com/FTP/Darwinsource2.42.9r.zip&lt;br /&gt;
::that's what i've been waiting for ... as now i can go in and play myself with the most up-to-date version.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
DB is the only forum I am active on, forgive my ignorance in replying this way:&lt;br /&gt;
&lt;br /&gt;
Until your (welcome) call to look at the wiki. the last time I used it was when I re-returned to DB and used wiki as an aid to designing bots; the reason I feel it is a needed 'newb' resource and, as you pointed out. a much more easily accessible reource for such, is that is it is so much easily used as a source of information than the chaotic forum. (I am not wiki trained btw, maybe part of the reason I dont communicate via it)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font color=#007700&amp;gt;&lt;br /&gt;
:you'll pick it up. what's nice is, it's all editable. you can edit/overwrite/clear this page anytime ...&lt;br /&gt;
:but not only that ... it's still all kept in history ... so anything mistakenly jettisoned can be recovered.&lt;br /&gt;
:i think of wikis as virtual etch-a-sketches. ;)&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
While you: absolutely detest the forum layout ... and find it horribly chaotic for finding info ...&lt;br /&gt;
It is a great place for discussion, I agree absolutely, it is a horrible place to find info, that's why I'm so pleased you are taking an interest in the wiki. All I was trying to do by adding those comments was make sure (for newb's) that the information was as clear and relevant as it could be. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;font color=#007700&amp;gt;&lt;br /&gt;
:i was really jazzed back when i first discovered it ... and did a lot of work here ...&lt;br /&gt;
:then realized no one cared or even took advantage of it.&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
When it comes to links, the same as I have tried to do with the leagues, I want the relevant information as clearly marked as possible. Can take ages to track stuff down on the forum sometimes. I hate that. The Wiki needs to work in tandem with the forum though and andding links or making stickies (to the forum) seems (to me) the easiest way of doing this. If you are willing to fiddle with the wiki and request relevant links from apppropriate posts then I am more than willing to sort that out. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;font color=#007700&amp;gt;&lt;br /&gt;
:sounds great to me&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Working as a group is always stronger. (If DB evolution doesn't prove me wrong!) &lt;br /&gt;
Eventually a forum post with all the wiki links for newbs info maybe.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font color=#007700&amp;gt;&lt;br /&gt;
:exactly.&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
When it comes to downloading VB, the first time I chose every option, I'm like that, just a reminder to choose the most basic instal might be helpful; the second option on the first choice and no changes to the second choice was (I think) the way that worked for me.&lt;br /&gt;
&lt;br /&gt;
I will add that link for the VB sourc download to the forum soon, in fact if not by tommorow then kick me. Thanks for pointing out it is in wiki not the forum.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font color=#007700&amp;gt;&lt;br /&gt;
:ok. i don't recall the steps i did to install it ... &lt;br /&gt;
:went thru the same as you ... just kept clicking whatever button it was ...&lt;br /&gt;
:and still got error messages but ... it somehow worked.&lt;br /&gt;
:installing and getting DB to work the first time was even more difficult ...&lt;br /&gt;
:as there was little guidance at the time ... &lt;br /&gt;
:having load the old 2.0 first was only mentioned in passing ...&lt;br /&gt;
:and the sysvars thing wasn't explained at all.&lt;br /&gt;
:i had runtime error after runtime error that no one could reproduce ...&lt;br /&gt;
:but of course they all had their paths set correctly ... while i didn't have a clue.&lt;br /&gt;
:i can only imagine how many folks give up before they ever get it up and happening.&lt;br /&gt;
&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Regards&lt;br /&gt;
&lt;br /&gt;
Jez&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font color=#007700&amp;gt;&lt;br /&gt;
:well ... you know how to get ahold of me here ...&lt;br /&gt;
:i'll be checking in often and trying to sort out where all the league code is.&lt;br /&gt;
&lt;br /&gt;
:btw ... i posted this at the forum &lt;br /&gt;
:http://www.darwinbots.com/Forum/index.php?showtopic=1837&amp;amp;pid=1369864&amp;amp;st=15&amp;amp;#entry1369864  &lt;br /&gt;
:and will add it to the Debugging page as well but want to get it to you ...&lt;br /&gt;
:as it may be a big help in debugging those long sims:&lt;br /&gt;
&amp;lt;/font&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
for those running/searching for those errors in long sims ...&lt;br /&gt;
if you run the compiled version and do an occasional save ...&lt;br /&gt;
[this can be automatically done, yes?]&lt;br /&gt;
then hopefully when an error is encountered and an error.sim&lt;br /&gt;
file produced ...&lt;br /&gt;
you can then fire it up in VB, ensuring the error trapping is&lt;br /&gt;
commented out, load in the error sim or ideally, the save that&lt;br /&gt;
you captured which occurred just prior to the error ...&lt;br /&gt;
and then run it from there using the debugger.&lt;br /&gt;
this may not always work, as there seem to be many variables ...&lt;br /&gt;
but I have had it do exactly this for me in the past ...&lt;br /&gt;
even using the generated error.sim ...&lt;br /&gt;
the error still existing ...&lt;br /&gt;
which can certainly save a great deal of time debugging.&lt;br /&gt;
[remember to save/rename the error.sim to keep on file&lt;br /&gt;
for continued debugging, so it isn't overwritten]&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
later {{User:Griz/sig}} 16:55, 25 Dec 2006 (MST)&lt;/div&gt;</summary>
		<author><name>Griz</name></author>	</entry>

	<entry>
		<id>http://wiki.darwinbots.com/index.php?title=Leagues&amp;diff=4109</id>
		<title>Leagues</title>
		<link rel="alternate" type="text/html" href="http://wiki.darwinbots.com/index.php?title=Leagues&amp;diff=4109"/>
				<updated>2006-12-26T01:33:43Z</updated>
		
		<summary type="html">&lt;p&gt;Griz: /* F1 Mode */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Code/Debugging/Fixes/Changes for Leagues&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
see also: [[DeBugging]] and [[Bug_Reports]]&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
this is a Work In Progress&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
:Holy crap!!!&lt;br /&gt;
:League code is all over the place!&lt;br /&gt;
&lt;br /&gt;
:Will just keep stashing it here as i find it.&lt;br /&gt;
&lt;br /&gt;
==General Declarations==&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
General &lt;br /&gt;
Declarations&lt;br /&gt;
&lt;br /&gt;
Public Type datispecie&lt;br /&gt;
  Skin(13) As Integer&lt;br /&gt;
  path As String&lt;br /&gt;
  Name As String&lt;br /&gt;
  Stnrg As Integer&lt;br /&gt;
  Veg As Boolean&lt;br /&gt;
  Fixed As Boolean&lt;br /&gt;
  color As Long&lt;br /&gt;
  Colind As Integer&lt;br /&gt;
  Postp As Single&lt;br /&gt;
  Poslf As Single&lt;br /&gt;
  Posdn As Single&lt;br /&gt;
  Posrg As Single&lt;br /&gt;
  qty As Integer&lt;br /&gt;
  Comment As String&lt;br /&gt;
  Leaguefilecomment As String&lt;br /&gt;
  Mutables As mutationprobs&lt;br /&gt;
  CantSee As Boolean                ' Flag indicating eyes should be turned off for this &lt;br /&gt;
&lt;br /&gt;
species&lt;br /&gt;
  DisableDNA As Boolean             ' Flag indicating DNA should not execute for &lt;br /&gt;
&lt;br /&gt;
this species&lt;br /&gt;
  DisableMovementSysvars As Boolean ' Flag indicating movement sysvars &lt;br /&gt;
&lt;br /&gt;
should be disabled for this species&lt;br /&gt;
  CantReproduce As Boolean          ' Flag indicating whether reproduction has &lt;br /&gt;
&lt;br /&gt;
been disabled for this species.&lt;br /&gt;
End Type&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
General&lt;br /&gt;
Declarations&lt;br /&gt;
&lt;br /&gt;
'For League mode: (runs a series of F1 contests, 1 on 1)&lt;br /&gt;
Public LeagueMode As Boolean&lt;br /&gt;
Public Leaguename As String&lt;br /&gt;
Public Leaguererun As Boolean&lt;br /&gt;
Public LeagueEntrants(30) As datispecie 'all those already in the league&lt;br /&gt;
Public numLeagueEntrants As Integer&lt;br /&gt;
Public LeagueChallengers(31) As datispecie 'all those challenging (31 instead of &lt;br /&gt;
&lt;br /&gt;
30 for some loop functions)&lt;br /&gt;
Public Defender As Integer 'couple used to determine which bots are facing &lt;br /&gt;
&lt;br /&gt;
which in League mode&lt;br /&gt;
Public Attacker As Integer&lt;br /&gt;
Private eye11 As Integer 'for eye fudging.  Search 'fudge' to see what I mean&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
==General Startsim==&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
General&lt;br /&gt;
Startsim&lt;br /&gt;
&lt;br /&gt;
If LeagueMode Then&lt;br /&gt;
    LeagueForm.Show&lt;br /&gt;
    SimOpts.TotRunCycle = -1&lt;br /&gt;
  End If&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
==General StartSimul==&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
General&lt;br /&gt;
StartSimul&lt;br /&gt;
&lt;br /&gt;
'Restart&lt;br /&gt;
  'Leaguemode handles restarts differently so only restart here if not in &lt;br /&gt;
&lt;br /&gt;
leaguemode&lt;br /&gt;
  If totnvegs = 0 And RestartMode And Not LeagueMode Then&lt;br /&gt;
  ' totnvegs = 1&lt;br /&gt;
  ' Contests = Contests + 1&lt;br /&gt;
    ReStarts = ReStarts + 1&lt;br /&gt;
  ' Form1.StartSimul&lt;br /&gt;
    StartAnotherRound = True&lt;br /&gt;
  End If&lt;br /&gt;
End Sub&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
==General FindSpecies==&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
General&lt;br /&gt;
FindSpecies&lt;br /&gt;
&lt;br /&gt;
  If TotSpecies = 1 Then&lt;br /&gt;
'    If Not LeagueMode Then&lt;br /&gt;
      ContestMode = False&lt;br /&gt;
      MDIForm1.F1Piccy.Visible = False&lt;br /&gt;
      Contest_Form.Visible = False&lt;br /&gt;
      t = MsgBox(&amp;quot;You have only selected one species for combat. Formula 1 &lt;br /&gt;
&lt;br /&gt;
mode disabled&amp;quot;, vbOKOnly)&lt;br /&gt;
      Exit Sub&lt;br /&gt;
 '   End If&lt;br /&gt;
  End If&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
==MDIForm==&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
MDIForm1 (Code)&lt;br /&gt;
&lt;br /&gt;
Private Sub Leagues_Click()&lt;br /&gt;
 optionsform.SSTab1.Tab = 4&lt;br /&gt;
  NetEvent.Timer1.Enabled = False&lt;br /&gt;
  NetEvent.Hide&lt;br /&gt;
  optionsform.Show vbModal&lt;br /&gt;
End Sub&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
==RerunCheck==&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
RerunCheck&lt;br /&gt;
&lt;br /&gt;
Private Sub RerunCheck_Click()&lt;br /&gt;
  Leaguererun = CBool(RerunCheck.value)&lt;br /&gt;
End Sub&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
==LeagueCheck==&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
LeagueCheck&lt;br /&gt;
&lt;br /&gt;
Private Sub LeagueCheck_Click()&lt;br /&gt;
  If LeagueCheck.value = 1 Then&lt;br /&gt;
    If F1Check.value &amp;lt;&amp;gt; 1 Then&lt;br /&gt;
      F1Check.value = 1&lt;br /&gt;
      F1check_Click&lt;br /&gt;
    End If&lt;br /&gt;
    LeagueMode = True&lt;br /&gt;
    TmpOpts.League = True&lt;br /&gt;
    &lt;br /&gt;
    If Leaguetype(0).value = False Then&lt;br /&gt;
      Leaguetype(0).value = True&lt;br /&gt;
    End If&lt;br /&gt;
  &lt;br /&gt;
  Else&lt;br /&gt;
    TmpOpts.League = False&lt;br /&gt;
    LeagueMode = False&lt;br /&gt;
    'Leaguetype(0).value = False&lt;br /&gt;
  End If&lt;br /&gt;
End Sub&lt;br /&gt;
&lt;br /&gt;
Private Sub LeagueAutoCheck()&lt;br /&gt;
  If LeagueCheck.value &amp;lt;&amp;gt; 1 Then&lt;br /&gt;
    LeagueCheck.value = 1&lt;br /&gt;
    LeagueCheck_Click&lt;br /&gt;
  End If&lt;br /&gt;
End Sub&lt;br /&gt;
&lt;br /&gt;
Private Sub LeagueF1Option_Click()&lt;br /&gt;
  Leaguename.text = &amp;quot;F1&amp;quot;&lt;br /&gt;
  LeagueAutoCheck&lt;br /&gt;
End Sub&lt;br /&gt;
&lt;br /&gt;
Private Sub LeagueF2Option_Click()&lt;br /&gt;
  Leaguename.text = &amp;quot;F2&amp;quot;&lt;br /&gt;
  LeagueAutoCheck&lt;br /&gt;
End Sub&lt;br /&gt;
&lt;br /&gt;
Private Sub LeageSBOption_Click()&lt;br /&gt;
  Leaguename.text = &amp;quot;Shortbot&amp;quot;&lt;br /&gt;
  LeagueAutoCheck&lt;br /&gt;
End Sub&lt;br /&gt;
&lt;br /&gt;
Private Sub LeagueMBOption_Click()&lt;br /&gt;
  Leaguename.text = &amp;quot;Multibot&amp;quot;&lt;br /&gt;
  LeagueAutoCheck&lt;br /&gt;
End Sub&lt;br /&gt;
&lt;br /&gt;
Private Sub Leaguetype_Click(Index As Integer)&lt;br /&gt;
  'If Leaguetype(Index).value = False Then&lt;br /&gt;
  ''  Leaguetype(Index).value = True&lt;br /&gt;
  'End If&lt;br /&gt;
End Sub&lt;br /&gt;
&lt;br /&gt;
Private Sub LightText_lostfocus()&lt;br /&gt;
  Dim a As Single&lt;br /&gt;
  a = val(LightText.text)&lt;br /&gt;
  If a &amp;lt; LightUpDn.Min Then a = LightUpDn.Min&lt;br /&gt;
  If a &amp;gt; LightUpDn.Max Then a = LightUpDn.Max&lt;br /&gt;
  LightUpDn.value = a&lt;br /&gt;
  TmpOpts.LightIntensity = a&lt;br /&gt;
End Sub&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
==StartNew==&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
StartNew&lt;br /&gt;
&lt;br /&gt;
If LeagueMode = True Then LeagueForm.Visible = True ' EricL 3/20/2006 Have &lt;br /&gt;
&lt;br /&gt;
to bring up league form after Options dialog goes away&lt;br /&gt;
  &lt;br /&gt;
  'Form1.Active = True&lt;br /&gt;
  &lt;br /&gt;
    'this just tricks the program into thinking we have enough&lt;br /&gt;
  'species for F1 mode.&lt;br /&gt;
  'If TmpOpts.League = True And TmpOpts.SpeciesNum = 2 Then&lt;br /&gt;
  '  additem TmpOpts.Specie(1).Name&lt;br /&gt;
  '  TmpOpts.SpeciesNum = TmpOpts.SpeciesNum + 1&lt;br /&gt;
  'End If&lt;br /&gt;
  &lt;br /&gt;
  SimOpts = TmpOpts&lt;br /&gt;
  &lt;br /&gt;
  If SimOpts.League = True Then&lt;br /&gt;
    LeagueMode = True 'should be anyway, but sometimes when&lt;br /&gt;
                      'restarting a league it screws up&lt;br /&gt;
    LeagueInputChallengers&lt;br /&gt;
    SetupLeague_Options&lt;br /&gt;
  '  SimOpts.F1 = True&lt;br /&gt;
    LeagueForm.F1ChallengeOption_Click&lt;br /&gt;
  End If&lt;br /&gt;
  &lt;br /&gt;
  &lt;br /&gt;
  If Form1.Active Then Form1.SecTimer.Enabled = True&lt;br /&gt;
  &lt;br /&gt;
  &lt;br /&gt;
  StartAnotherRound = True ' Set true for first simulation.  Will get set true if &lt;br /&gt;
&lt;br /&gt;
running leagues or using auto-restart mode&lt;br /&gt;
  While StartAnotherRound&lt;br /&gt;
    StartAnotherRound = False&lt;br /&gt;
    Form1.StartSimul&lt;br /&gt;
  Wend&lt;br /&gt;
End Sub&lt;br /&gt;
 &lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==F1 Override code as of 2.42.n ==&lt;br /&gt;
(not sure in what modual this is in. {{User:Griz/sig}})&lt;br /&gt;
&lt;br /&gt;
:Eric: I will add max cycles / Max rounds to my list of future work items. &lt;br /&gt;
:These will be post 2.43 however.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
If TmpOpts.F1 = True Then&lt;br /&gt;
&lt;br /&gt;
'Zero out all Costs&lt;br /&gt;
For t = 1 To 70&lt;br /&gt;
TmpOpts.Costs(t) = 0&lt;br /&gt;
Next t&lt;br /&gt;
&lt;br /&gt;
'Now set the ones that matter&lt;br /&gt;
TmpOpts.Costs(SHOTCOST) = 2&lt;br /&gt;
TmpOpts.Costs(COSTSTORE) = 0.04&lt;br /&gt;
TmpOpts.Costs(CONDCOST) = 0.004&lt;br /&gt;
TmpOpts.Costs(MOVECOST) = 0.05&lt;br /&gt;
TmpOpts.Costs(TIECOST) = 2&lt;br /&gt;
TmpOpts.Costs(SHOTCOST) = 2&lt;br /&gt;
TmpOpts.Costs(VENOMCOST) = 1&lt;br /&gt;
TmpOpts.Costs(POISONCOST) = 1&lt;br /&gt;
TmpOpts.Costs(SLIMECOST) = 1&lt;br /&gt;
TmpOpts.Costs(SHELLCOST) = 1&lt;br /&gt;
TmpOpts.Costs(COSTMULTIPLIER) = 1&lt;br /&gt;
TmpOpts.DynamicCosts = False&lt;br /&gt;
&lt;br /&gt;
TmpOpts.CorpseEnabled = False ' No Corpses&lt;br /&gt;
TmpOpts.DayNight = False ' Sun never sets&lt;br /&gt;
TmpOpts.FieldWidth = 9237&lt;br /&gt;
TmpOpts.FieldHeight = 6928&lt;br /&gt;
TmpOpts.FieldSize = 1&lt;br /&gt;
TmpOpts.MaxEnergy = 40 ' Veggy nrg per cycle&lt;br /&gt;
TmpOpts.MaxPopulation = 25 ' Veggy max population&lt;br /&gt;
TmpOpts.MinVegs = 10&lt;br /&gt;
TmpOpts.Pondmode = False&lt;br /&gt;
TmpOpts.PhysBrown = 0 ' Animal Motion&lt;br /&gt;
TmpOpts.Toroidal = True&lt;br /&gt;
&lt;br /&gt;
TmpOpts.BadWastelevel = 10000 ' Pretty high Waste Threshold&lt;br /&gt;
&lt;br /&gt;
For t = 0 To TmpOpts.SpeciesNum - 1&lt;br /&gt;
TmpOpts.Specie(t).Fixed = False 'Nobody is fixed&lt;br /&gt;
TmpOpts.Specie(t).Mutables.Mutations = False 'Nobody can mutate&lt;br /&gt;
TmpOpts.Specie(t).CantSee = False&lt;br /&gt;
TmpOpts.Specie(t).DisableDNA = False&lt;br /&gt;
TmpOpts.Specie(t).CantReproduce = False&lt;br /&gt;
TmpOpts.Specie(t).DisableMovementSysvars = False&lt;br /&gt;
Next t&lt;br /&gt;
&lt;br /&gt;
TmpOpts.Specie(0).Veg = True 'Force the first entry to be a veggy&lt;br /&gt;
TmpOpts.Specie(0).qty = 10 ' Do this so that eye fudge works&lt;br /&gt;
&lt;br /&gt;
TmpOpts.FixedBotRadii = False&lt;br /&gt;
TmpOpts.NoShotDecay = False&lt;br /&gt;
TmpOpts.DisableTies = False&lt;br /&gt;
TmpOpts.RepopAmount = 10&lt;br /&gt;
TmpOpts.RepopCooldown = 1&lt;br /&gt;
TmpOpts.MaxVelocity = 180&lt;br /&gt;
TmpOpts.VegFeedingMethod = 0 ' Straight nrg /cycle feeding method&lt;br /&gt;
TmpOpts.VegFeedingToBody = 0.5 ' 50/50 nrg/body veggy feeding ratio&lt;br /&gt;
TmpOpts.SunUp = False ' Turn off bringing the sun up due to a threshold&lt;br /&gt;
TmpOpts.SunDown = False ' Turn off setting the sun due to a threshold&lt;br /&gt;
TmpOpts.CoefficientElasticity = 0 ' Collisions are soft.&lt;br /&gt;
TmpOpts.Ygravity = 0&lt;br /&gt;
&lt;br /&gt;
' Surface Friction - Metal Option&lt;br /&gt;
TmpOpts.Zgravity = 2&lt;br /&gt;
TmpOpts.CoefficientStatic = 0.6&lt;br /&gt;
TmpOpts.CoefficientKinetic = 0.4&lt;br /&gt;
&lt;br /&gt;
'No Fluid Resistance&lt;br /&gt;
TmpOpts.Viscosity = 0#&lt;br /&gt;
TmpOpts.Density = 0#&lt;br /&gt;
&lt;br /&gt;
'Shot Energy Physics&lt;br /&gt;
TmpOpts.EnergyProp = 1 ' 100% normal shot nrg&lt;br /&gt;
TmpOpts.EnergyExType = True ' Use Proportional shot nrg exchange method&lt;br /&gt;
&lt;br /&gt;
DispSettings&lt;br /&gt;
End If&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== F1 Mode ==&lt;br /&gt;
&lt;br /&gt;
:well ... was hoping to find a way to make Max Rounds actually &lt;br /&gt;
:be max rounds but i can't make any sense of this.  &lt;br /&gt;
:maybe somebody can point me to that?&lt;br /&gt;
:or add more comments to the below so i can might&lt;br /&gt;
:be able to get a grip on the flow here. &lt;br /&gt;
:that would be appreciated. {{User:Griz/sig}} 18:33, 25 Dec 2006 (MST)&lt;br /&gt;
&lt;br /&gt;
F1Mode modual&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Option Explicit&lt;br /&gt;
&lt;br /&gt;
Public Type pop&lt;br /&gt;
  SpName As String&lt;br /&gt;
  Population As Integer&lt;br /&gt;
  Wins As Integer&lt;br /&gt;
  exist As Integer&lt;br /&gt;
End Type&lt;br /&gt;
&lt;br /&gt;
'For F1 Contests:&lt;br /&gt;
Public PopArray(20) As pop&lt;br /&gt;
Public F1count As Single&lt;br /&gt;
Public ContestMode As Boolean&lt;br /&gt;
Public Contests As Integer&lt;br /&gt;
Public TotSpecies As Integer&lt;br /&gt;
Public Maxrounds As Integer&lt;br /&gt;
Public RestartMode As Boolean&lt;br /&gt;
Public ReStarts As Long&lt;br /&gt;
Public FirstCycle As Boolean&lt;br /&gt;
Public SampFreq As Integer&lt;br /&gt;
Public Over As Boolean&lt;br /&gt;
Public MaxRoundsToDraw As Integer&lt;br /&gt;
Public MaxCycles As Long&lt;br /&gt;
&lt;br /&gt;
'For League mode: (runs a series of F1 contests, 1 on 1)&lt;br /&gt;
Public LeagueMode As Boolean&lt;br /&gt;
Public Leaguename As String&lt;br /&gt;
Public Leaguererun As Boolean&lt;br /&gt;
Public LeagueEntrants(30) As datispecie 'all those already in the league&lt;br /&gt;
Public numLeagueEntrants As Integer&lt;br /&gt;
Public LeagueChallengers(31) As datispecie 'all those challenging (31 instead of 30 for some loop functions)&lt;br /&gt;
Public Defender As Integer 'couple used to determine which bots are facing which in League mode&lt;br /&gt;
Public Attacker As Integer&lt;br /&gt;
Private eye11 As Integer 'for eye fudging.  Search 'fudge' to see what I mean&lt;br /&gt;
&lt;br /&gt;
Public StartAnotherRound As Boolean&lt;br /&gt;
&lt;br /&gt;
Public Sub ResetContest()&lt;br /&gt;
  Dim t As Integer&lt;br /&gt;
  Contests = 0&lt;br /&gt;
  Contest_Form.Winner.Caption = &amp;quot;&amp;quot;&lt;br /&gt;
  Contest_Form.Winner1.Caption = &amp;quot;&amp;quot;&lt;br /&gt;
  For t = 1 To 5&lt;br /&gt;
    PopArray(t).SpName = &amp;quot;&amp;quot;&lt;br /&gt;
    PopArray(t).Population = 0&lt;br /&gt;
    PopArray(t).Wins = 0&lt;br /&gt;
  Next t&lt;br /&gt;
End Sub&lt;br /&gt;
&lt;br /&gt;
Public Sub FindSpecies()&lt;br /&gt;
'counts species of robots at beginning of simulation&lt;br /&gt;
  Dim SpeciePointer As Integer&lt;br /&gt;
  Dim t As Integer&lt;br /&gt;
  Dim nd As node&lt;br /&gt;
  Dim robcol(10) As Long&lt;br /&gt;
  Dim realname As String&lt;br /&gt;
  TotSpecies = 0&lt;br /&gt;
  If Contests = 0 Then ResetContest&lt;br /&gt;
  &lt;br /&gt;
  For t = 1 To 20&lt;br /&gt;
    PopArray(t).SpName = &amp;quot;&amp;quot;&lt;br /&gt;
    PopArray(t).Population = 0&lt;br /&gt;
    'If Contests = 0 Then PopArray(t).Wins = 0&lt;br /&gt;
  Next t&lt;br /&gt;
  Contest_Form.Show&lt;br /&gt;
  Contest_Form.Contests.Caption = Str(Contests)&lt;br /&gt;
  &lt;br /&gt;
  For t = 1 To MaxRobs&lt;br /&gt;
    With rob(t)&lt;br /&gt;
      'If Not .Veg And Not .Corpse And Not .wall And .exist Then&lt;br /&gt;
      If Not .Veg And Not .Corpse And .exist Then&lt;br /&gt;
        For SpeciePointer = 1 To 20&lt;br /&gt;
          &lt;br /&gt;
          realname = Left(.FName, Len(.FName) - 4)&lt;br /&gt;
          If realname = PopArray(SpeciePointer).SpName Then&lt;br /&gt;
            PopArray(SpeciePointer).Population = PopArray(SpeciePointer).Population + 1&lt;br /&gt;
            Exit For&lt;br /&gt;
          End If&lt;br /&gt;
          If PopArray(SpeciePointer).SpName = &amp;quot;&amp;quot; Then&lt;br /&gt;
            TotSpecies = TotSpecies + 1&lt;br /&gt;
            PopArray(SpeciePointer).SpName = realname&lt;br /&gt;
            PopArray(SpeciePointer).Population = PopArray(SpeciePointer).Population + 1&lt;br /&gt;
            robcol(SpeciePointer) = .color&lt;br /&gt;
            Exit For&lt;br /&gt;
          End If&lt;br /&gt;
        Next SpeciePointer&lt;br /&gt;
      End If&lt;br /&gt;
    End With&lt;br /&gt;
  Next t&lt;br /&gt;
  If TotSpecies = 1 Then&lt;br /&gt;
'    If Not LeagueMode Then&lt;br /&gt;
      ContestMode = False&lt;br /&gt;
      MDIForm1.F1Piccy.Visible = False&lt;br /&gt;
      Contest_Form.Visible = False&lt;br /&gt;
      t = MsgBox(&amp;quot;You have only selected one species for combat. Formula 1 mode disabled&amp;quot;, vbOKOnly)&lt;br /&gt;
      Exit Sub&lt;br /&gt;
 '   End If&lt;br /&gt;
  End If&lt;br /&gt;
  If PopArray(1).SpName &amp;lt;&amp;gt; &amp;quot;&amp;quot; Then&lt;br /&gt;
    Contest_Form.Robname1.Caption = PopArray(1).SpName&lt;br /&gt;
    Contest_Form.wins1.Caption = Str(PopArray(1).Wins)&lt;br /&gt;
    Contest_Form.Pop1.Caption = Str(PopArray(1).Population)&lt;br /&gt;
    Contest_Form.Robname1.ForeColor = robcol(1)&lt;br /&gt;
    Contest_Form.Option1(1).Visible = True&lt;br /&gt;
  Else&lt;br /&gt;
    Contest_Form.Robname1.Caption = &amp;quot;&amp;quot;&lt;br /&gt;
    Contest_Form.wins1.Caption = &amp;quot;&amp;quot;&lt;br /&gt;
    Contest_Form.Pop1.Caption = &amp;quot;&amp;quot;&lt;br /&gt;
    Contest_Form.Option1(1).Visible = False&lt;br /&gt;
  End If&lt;br /&gt;
  If PopArray(2).SpName &amp;lt;&amp;gt; &amp;quot;&amp;quot; Then&lt;br /&gt;
    Contest_Form.Robname2.Caption = PopArray(2).SpName&lt;br /&gt;
    Contest_Form.Wins2.Caption = Str(PopArray(2).Wins)&lt;br /&gt;
    Contest_Form.Pop2.Caption = Str(PopArray(2).Population)&lt;br /&gt;
    Contest_Form.Robname2.ForeColor = robcol(2)&lt;br /&gt;
    Contest_Form.Option1(2).Visible = True&lt;br /&gt;
  Else&lt;br /&gt;
    Contest_Form.Robname2.Caption = &amp;quot;&amp;quot;&lt;br /&gt;
    Contest_Form.Wins2.Caption = &amp;quot;&amp;quot;&lt;br /&gt;
    Contest_Form.Pop2.Caption = &amp;quot;&amp;quot;&lt;br /&gt;
    Contest_Form.Option1(2).Visible = False&lt;br /&gt;
  End If&lt;br /&gt;
  If PopArray(3).SpName &amp;lt;&amp;gt; &amp;quot;&amp;quot; Then&lt;br /&gt;
    Contest_Form.Robname3.Caption = PopArray(3).SpName&lt;br /&gt;
    Contest_Form.Wins3.Caption = Str(PopArray(3).Wins)&lt;br /&gt;
    Contest_Form.Pop3.Caption = Str(PopArray(3).Population)&lt;br /&gt;
    Contest_Form.Robname3.ForeColor = robcol(3)&lt;br /&gt;
    Contest_Form.Option1(3).Visible = True&lt;br /&gt;
  Else&lt;br /&gt;
    Contest_Form.Robname3.Caption = &amp;quot;&amp;quot;&lt;br /&gt;
    Contest_Form.Wins3.Caption = &amp;quot;&amp;quot;&lt;br /&gt;
    Contest_Form.Pop3.Caption = &amp;quot;&amp;quot;&lt;br /&gt;
    Contest_Form.Option1(3).Visible = False&lt;br /&gt;
  End If&lt;br /&gt;
  If PopArray(4).SpName &amp;lt;&amp;gt; &amp;quot;&amp;quot; Then&lt;br /&gt;
    Contest_Form.Robname4.Caption = PopArray(4).SpName&lt;br /&gt;
    Contest_Form.Wins4.Caption = Str(PopArray(4).Wins)&lt;br /&gt;
    Contest_Form.Pop4.Caption = Str(PopArray(4).Population)&lt;br /&gt;
    Contest_Form.Robname4.ForeColor = robcol(4)&lt;br /&gt;
    Contest_Form.Option1(4).Visible = True&lt;br /&gt;
  Else&lt;br /&gt;
    Contest_Form.Robname4.Caption = &amp;quot;&amp;quot;&lt;br /&gt;
    Contest_Form.Wins4.Caption = &amp;quot;&amp;quot;&lt;br /&gt;
    Contest_Form.Pop4.Caption = &amp;quot;&amp;quot;&lt;br /&gt;
    Contest_Form.Option1(4).Visible = False&lt;br /&gt;
  End If&lt;br /&gt;
  If PopArray(5).SpName &amp;lt;&amp;gt; &amp;quot;&amp;quot; Then&lt;br /&gt;
    Contest_Form.Robname5.Caption = PopArray(5).SpName&lt;br /&gt;
    Contest_Form.Wins5.Caption = Str(PopArray(5).Wins)&lt;br /&gt;
    Contest_Form.Pop5.Caption = Str(PopArray(5).Population)&lt;br /&gt;
    Contest_Form.Robname5.ForeColor = robcol(5)&lt;br /&gt;
    Contest_Form.Option1(5).Visible = True&lt;br /&gt;
  Else&lt;br /&gt;
    Contest_Form.Robname5.Caption = &amp;quot;&amp;quot;&lt;br /&gt;
    Contest_Form.Wins5.Caption = &amp;quot;&amp;quot;&lt;br /&gt;
    Contest_Form.Pop5.Caption = &amp;quot;&amp;quot;&lt;br /&gt;
    Contest_Form.Option1(5).Visible = False&lt;br /&gt;
  End If&lt;br /&gt;
  If ContestMode Then&lt;br /&gt;
    Contest_Form.Visible = True&lt;br /&gt;
    'Contests = 0&lt;br /&gt;
  End If&lt;br /&gt;
End Sub&lt;br /&gt;
Public Sub Countpop()&lt;br /&gt;
'counts population of robots at regular intervals&lt;br /&gt;
'for auto-combat mode and for automatic reset of starting conditions&lt;br /&gt;
  Dim SpeciePointer As Integer&lt;br /&gt;
  Dim SpeciesLeft As Integer&lt;br /&gt;
  Dim t As Integer&lt;br /&gt;
  Dim p As Integer&lt;br /&gt;
  Dim nd As node&lt;br /&gt;
  Dim Winner As String&lt;br /&gt;
  Dim Wins As Single&lt;br /&gt;
  Dim realname As String&lt;br /&gt;
  &lt;br /&gt;
  &lt;br /&gt;
  For t = 1 To 20&lt;br /&gt;
    PopArray(t).Population = 0&lt;br /&gt;
    PopArray(t).exist = 0&lt;br /&gt;
  Next t&lt;br /&gt;
  &lt;br /&gt;
  For t = 1 To MaxRobs&lt;br /&gt;
    With rob(t)&lt;br /&gt;
      'If Not .Veg And Not .Corpse And Not .wall And .exist Then&lt;br /&gt;
      If Not .Veg And Not .Corpse And .exist Then&lt;br /&gt;
        For SpeciePointer = 1 To TotSpecies&lt;br /&gt;
          realname = Left(.FName, Len(.FName) - 4)&lt;br /&gt;
          If realname = PopArray(SpeciePointer).SpName Then&lt;br /&gt;
            PopArray(SpeciePointer).Population = PopArray(SpeciePointer).Population + 1&lt;br /&gt;
            PopArray(SpeciePointer).exist = 1&lt;br /&gt;
            Exit For&lt;br /&gt;
          End If&lt;br /&gt;
        Next SpeciePointer&lt;br /&gt;
      End If&lt;br /&gt;
    End With&lt;br /&gt;
  Next t&lt;br /&gt;
  If Contests &amp;lt; Maxrounds Then&lt;br /&gt;
    Contest_Form.Contests.Caption = Contests + 1&lt;br /&gt;
  End If&lt;br /&gt;
  Contest_Form.Maxrounds.Caption = Maxrounds&lt;br /&gt;
  Contest_Form.Refresh&lt;br /&gt;
  SpeciesLeft = 0&lt;br /&gt;
  For p = 1 To TotSpecies&lt;br /&gt;
    SpeciesLeft = SpeciesLeft + PopArray(p).exist&lt;br /&gt;
  Next p&lt;br /&gt;
  If SpeciesLeft = 1 And Contests + 1 &amp;lt;= Maxrounds And Over = False Then&lt;br /&gt;
    For t = 1 To TotSpecies&lt;br /&gt;
      If PopArray(t).Population &amp;lt;&amp;gt; 0 Then&lt;br /&gt;
        PopArray(t).Wins = PopArray(t).Wins + 1&lt;br /&gt;
      End If&lt;br /&gt;
    Next t&lt;br /&gt;
  End If&lt;br /&gt;
  Contest_Form.Visible = True&lt;br /&gt;
  If PopArray(1).SpName &amp;lt;&amp;gt; &amp;quot;&amp;quot; Then&lt;br /&gt;
    Contest_Form.Robname1.Caption = PopArray(1).SpName&lt;br /&gt;
    Contest_Form.wins1.Caption = Str(PopArray(1).Wins)&lt;br /&gt;
    Contest_Form.Pop1.Caption = Str(PopArray(1).Population)&lt;br /&gt;
  Else&lt;br /&gt;
    Contest_Form.Robname1.Caption = &amp;quot;&amp;quot;&lt;br /&gt;
    Contest_Form.wins1.Caption = &amp;quot;&amp;quot;&lt;br /&gt;
    Contest_Form.Pop1.Caption = &amp;quot;&amp;quot;&lt;br /&gt;
  End If&lt;br /&gt;
  If PopArray(2).SpName &amp;lt;&amp;gt; &amp;quot;&amp;quot; Then&lt;br /&gt;
    Contest_Form.Robname2.Caption = PopArray(2).SpName&lt;br /&gt;
    Contest_Form.Wins2.Caption = Str(PopArray(2).Wins)&lt;br /&gt;
    Contest_Form.Pop2.Caption = Str(PopArray(2).Population)&lt;br /&gt;
  Else&lt;br /&gt;
    Contest_Form.Robname2.Caption = &amp;quot;&amp;quot;&lt;br /&gt;
    Contest_Form.Wins2.Caption = &amp;quot;&amp;quot;&lt;br /&gt;
    Contest_Form.Pop2.Caption = &amp;quot;&amp;quot;&lt;br /&gt;
  End If&lt;br /&gt;
  If PopArray(3).SpName &amp;lt;&amp;gt; &amp;quot;&amp;quot; Then&lt;br /&gt;
    Contest_Form.Robname3.Caption = PopArray(3).SpName&lt;br /&gt;
    Contest_Form.Wins3.Caption = Str(PopArray(3).Wins)&lt;br /&gt;
    Contest_Form.Pop3.Caption = Str(PopArray(3).Population)&lt;br /&gt;
  Else&lt;br /&gt;
    Contest_Form.Robname3.Caption = &amp;quot;&amp;quot;&lt;br /&gt;
    Contest_Form.Wins3.Caption = &amp;quot;&amp;quot;&lt;br /&gt;
    Contest_Form.Pop3.Caption = &amp;quot;&amp;quot;&lt;br /&gt;
  End If&lt;br /&gt;
  If PopArray(4).SpName &amp;lt;&amp;gt; &amp;quot;&amp;quot; Then&lt;br /&gt;
    Contest_Form.Robname4.Caption = PopArray(4).SpName&lt;br /&gt;
    Contest_Form.Wins4.Caption = Str(PopArray(4).Wins)&lt;br /&gt;
    Contest_Form.Pop4.Caption = Str(PopArray(4).Population)&lt;br /&gt;
  Else&lt;br /&gt;
    Contest_Form.Robname4.Caption = &amp;quot;&amp;quot;&lt;br /&gt;
    Contest_Form.Wins4.Caption = &amp;quot;&amp;quot;&lt;br /&gt;
    Contest_Form.Pop4.Caption = &amp;quot;&amp;quot;&lt;br /&gt;
  End If&lt;br /&gt;
  If PopArray(5).SpName &amp;lt;&amp;gt; &amp;quot;&amp;quot; Then&lt;br /&gt;
    Contest_Form.Robname5.Caption = PopArray(5).SpName&lt;br /&gt;
    Contest_Form.Wins5.Caption = Str(PopArray(5).Wins)&lt;br /&gt;
    Contest_Form.Pop5.Caption = Str(PopArray(5).Population)&lt;br /&gt;
  Else&lt;br /&gt;
    Contest_Form.Robname5.Caption = &amp;quot;&amp;quot;&lt;br /&gt;
    Contest_Form.Wins5.Caption = &amp;quot;&amp;quot;&lt;br /&gt;
    Contest_Form.Pop5.Caption = &amp;quot;&amp;quot;&lt;br /&gt;
  End If&lt;br /&gt;
  Contest_Form.Refresh&lt;br /&gt;
  F1count = 0&lt;br /&gt;
  Wins = Sqr(Maxrounds) + (Maxrounds / 2)&lt;br /&gt;
  If SpeciesLeft = 1 And Contests + 1 &amp;lt;= Maxrounds Then&lt;br /&gt;
    If Contests + 1 = Maxrounds And Over = False Then 'contest is over now&lt;br /&gt;
      For t = 1 To TotSpecies&lt;br /&gt;
        If PopArray(t).Wins &amp;gt; Wins Then&lt;br /&gt;
          Winner = PopArray(t).SpName&lt;br /&gt;
          Over = True&lt;br /&gt;
          'set up next league round&lt;br /&gt;
          If LeagueMode Then&lt;br /&gt;
            If Winner + &amp;quot;.txt&amp;quot; = LeagueEntrants(Defender).Name Then&lt;br /&gt;
              'attacker lost, move to next challenger&lt;br /&gt;
              Attacker = -1&lt;br /&gt;
              Defender = 29&lt;br /&gt;
              &lt;br /&gt;
              LeagueEnd&lt;br /&gt;
              &lt;br /&gt;
            ElseIf Attacker &amp;lt; 0 Then&lt;br /&gt;
              'attacker won.  He was in the challenge array, move him to the&lt;br /&gt;
              'league array and the bot he defeated to the challenge array&lt;br /&gt;
              'This defeated bot will have another chance to get back into the&lt;br /&gt;
              'league later.&lt;br /&gt;
              If Winner + &amp;quot;.txt&amp;quot; = LeagueChallengers(-Attacker - 1).Name Then&lt;br /&gt;
                Dim temp As datispecie&lt;br /&gt;
                temp = LeagueChallengers(-Attacker - 1)&lt;br /&gt;
                If LeagueEntrants(Defender).Name &amp;lt;&amp;gt; &amp;quot;EMPTY.TXT&amp;quot; And LeagueEntrants(Defender).Name &amp;lt;&amp;gt; &amp;quot;&amp;quot; Then&lt;br /&gt;
                  LeagueChallengers(-Attacker - 1) = LeagueEntrants(Defender)&lt;br /&gt;
                  LeagueEntrants(Defender) = temp&lt;br /&gt;
                End If&lt;br /&gt;
                &lt;br /&gt;
                Attacker = Defender&lt;br /&gt;
                Defender = Defender - 1&lt;br /&gt;
                &lt;br /&gt;
              End If&lt;br /&gt;
            ElseIf Attacker &amp;gt; 0 Then&lt;br /&gt;
              If Winner + &amp;quot;.txt&amp;quot; = LeagueEntrants(Attacker).Name Then&lt;br /&gt;
              'attacker won, he was in the league already, swap with defender&lt;br /&gt;
                Dim tempa As datispecie&lt;br /&gt;
                tempa = LeagueEntrants(Attacker)&lt;br /&gt;
                LeagueEntrants(Attacker) = LeagueEntrants(Defender)&lt;br /&gt;
                LeagueEntrants(Defender) = tempa&lt;br /&gt;
                Attacker = Defender&lt;br /&gt;
                Defender = Defender - 1&lt;br /&gt;
              End If&lt;br /&gt;
            Else&lt;br /&gt;
              MsgBox &amp;quot;Unknown Winner.  Poor programmer to blame.&amp;quot;, vbOKOnly, &amp;quot;Get a Real Job&amp;quot;&lt;br /&gt;
            End If&lt;br /&gt;
            &lt;br /&gt;
            If Defender = -1 Then&lt;br /&gt;
              'that's it, we've hit the top.  Congrats, start the next round&lt;br /&gt;
              Attacker = -1&lt;br /&gt;
              Defender = 29&lt;br /&gt;
              If LeagueChallengers(0).Name = &amp;quot;&amp;quot; Then LeagueEnd&lt;br /&gt;
            End If&lt;br /&gt;
            Contests = 0&lt;br /&gt;
            ReStarts = 0&lt;br /&gt;
            ResetContest&lt;br /&gt;
            Maxrounds = 5&lt;br /&gt;
            LeagueForm.Erase_League_Highlights&lt;br /&gt;
            If Form1.Active = True Then SetupLeagueRound&lt;br /&gt;
                          &lt;br /&gt;
              'update on screen list&lt;br /&gt;
            If LeagueForm.F1ChallengeOption.value = True Then&lt;br /&gt;
              LeagueForm.F1ChallengeOption_Click&lt;br /&gt;
            Else&lt;br /&gt;
              LeagueForm.ChallengersOption_Click&lt;br /&gt;
            End If&lt;br /&gt;
            &lt;br /&gt;
            If Form1.Active = True Then   'Form1.StartSimul&lt;br /&gt;
              StartAnotherRound = True&lt;br /&gt;
            Else&lt;br /&gt;
              StartAnotherRound = False&lt;br /&gt;
            End If&lt;br /&gt;
          End If&lt;br /&gt;
          Contest_Form.Refresh&lt;br /&gt;
          Exit Sub&lt;br /&gt;
        Else&lt;br /&gt;
          Winner = &amp;quot;Statistical Draw. Extending contest.&amp;quot;&lt;br /&gt;
        End If&lt;br /&gt;
      Next t&lt;br /&gt;
      Contest_Form.Winner.Caption = Winner&lt;br /&gt;
      If Winner &amp;lt;&amp;gt; &amp;quot;Statistical Draw. Extending contest.&amp;quot; Then&lt;br /&gt;
        Contest_Form.Winner1.Caption = &amp;quot;Winner&amp;quot;&lt;br /&gt;
      Else&lt;br /&gt;
        Maxrounds = Maxrounds + 1&lt;br /&gt;
        If MaxRoundsToDraw &amp;lt;&amp;gt; 0 And Maxrounds &amp;gt;= 10 And Maxrounds &amp;gt; MaxRoundsToDraw Then&lt;br /&gt;
          Contest_Form.Winner1.Caption = &amp;quot;Win By Draw&amp;quot;&lt;br /&gt;
          Winner = &amp;quot;Maximum Rounds Reached.&amp;quot;&lt;br /&gt;
          Contest_Form.Refresh&lt;br /&gt;
          Over = True&lt;br /&gt;
          &lt;br /&gt;
          'Declare Defender to have won&lt;br /&gt;
          Attacker = -1&lt;br /&gt;
          Defender = 29&lt;br /&gt;
          LeagueEnd&lt;br /&gt;
          &lt;br /&gt;
          Contests = 0&lt;br /&gt;
          ReStarts = 0&lt;br /&gt;
          ResetContest&lt;br /&gt;
          Maxrounds = 5&lt;br /&gt;
          LeagueForm.Erase_League_Highlights&lt;br /&gt;
          If Form1.Active = True Then SetupLeagueRound&lt;br /&gt;
                          &lt;br /&gt;
          'update on screen list&lt;br /&gt;
          If LeagueForm.F1ChallengeOption.value = True Then&lt;br /&gt;
            LeagueForm.F1ChallengeOption_Click&lt;br /&gt;
          Else&lt;br /&gt;
            LeagueForm.ChallengersOption_Click&lt;br /&gt;
          End If&lt;br /&gt;
            &lt;br /&gt;
          If Form1.Active = True Then   'Form1.StartSimul&lt;br /&gt;
            StartAnotherRound = True&lt;br /&gt;
          Else&lt;br /&gt;
            StartAnotherRound = False&lt;br /&gt;
          End If&lt;br /&gt;
          Contest_Form.Refresh&lt;br /&gt;
          Exit Sub&lt;br /&gt;
        Else&lt;br /&gt;
          Contest_Form.Winner1.Caption = &amp;quot;No Winner&amp;quot;&lt;br /&gt;
          Over = False&lt;br /&gt;
        End If&lt;br /&gt;
      End If&lt;br /&gt;
    End If&lt;br /&gt;
    Contest_Form.Refresh&lt;br /&gt;
    If Contests + 1 &amp;lt;= Maxrounds And Over = False Then&lt;br /&gt;
      Contests = Contests + 1&lt;br /&gt;
      StartAnotherRound = True&lt;br /&gt;
     'Form1.StartSimul&lt;br /&gt;
    Else&lt;br /&gt;
      StartAnotherRound = False&lt;br /&gt;
    End If&lt;br /&gt;
  End If&lt;br /&gt;
End Sub&lt;br /&gt;
&lt;br /&gt;
Public Sub SetupLeague_Options()&lt;br /&gt;
  If optionsform.Leaguename.text &amp;lt;&amp;gt; &amp;quot;&amp;quot; And LeagueMode Then&lt;br /&gt;
    Dim LeagueError As Integer&lt;br /&gt;
    &lt;br /&gt;
    F1Mode.Leaguename = optionsform.Leaguename.text&lt;br /&gt;
    &lt;br /&gt;
    LeagueError = Load_League_File(F1Mode.Leaguename)&lt;br /&gt;
    If LeagueError = -1 Then&lt;br /&gt;
      If MsgBox(&amp;quot;League file does not exist.  Make a new one?&amp;quot;, vbYesNo, &amp;quot;League Undetected&amp;quot;) = vbNo Then&lt;br /&gt;
        Exit Sub&lt;br /&gt;
      Else&lt;br /&gt;
        'make a new league file and directory.&lt;br /&gt;
        'does this automatically when user hits save after&lt;br /&gt;
        'league runs.&lt;br /&gt;
      End If&lt;br /&gt;
    ElseIf LeagueError &amp;gt; 0 Then&lt;br /&gt;
      If MsgBox(&amp;quot;A robot listed doesn't exist.  Delete from league table?&amp;quot;, vbYesNo, &amp;quot;League Robot Not Found&amp;quot;) = vbNo Then&lt;br /&gt;
        Exit Sub&lt;br /&gt;
      Else&lt;br /&gt;
        'delete robot leaguerror from league table&lt;br /&gt;
      End If&lt;br /&gt;
    End If&lt;br /&gt;
    LeagueForm.F1ChallengeOption.Caption = optionsform.Leaguename.text + &amp;quot; Challenge League&amp;quot;&lt;br /&gt;
    'LeagueForm.Visible = True ' EricL 3/20/2006 Moved this to StartNew_Click in the Options Form&lt;br /&gt;
  ElseIf optionsform.Leaguename.text = &amp;quot;&amp;quot; And LeagueMode Then&lt;br /&gt;
    MsgBox &amp;quot;No league name.  League must have a name.&amp;quot;, vbOKOnly, &amp;quot;League Name Needed&amp;quot;&lt;br /&gt;
    Exit Sub&lt;br /&gt;
  ElseIf LeagueMode = False Then&lt;br /&gt;
    LeagueForm.Visible = False&lt;br /&gt;
  End If&lt;br /&gt;
  Attacker = -1&lt;br /&gt;
  Defender = 29&lt;br /&gt;
  &lt;br /&gt;
  If Leaguererun = True Then&lt;br /&gt;
      Dim Index As Integer&lt;br /&gt;
      Dim numLeagueEntrants As Integer&lt;br /&gt;
         &lt;br /&gt;
      numLeagueEntrants = 0&lt;br /&gt;
      For Index = 0 To 29&lt;br /&gt;
        If LeagueEntrants(Index).Name &amp;lt;&amp;gt; &amp;quot;&amp;quot; And LeagueEntrants(Index).Name &amp;lt;&amp;gt; &amp;quot;EMPTY&amp;quot; Then&lt;br /&gt;
          numLeagueEntrants = numLeagueEntrants + 1&lt;br /&gt;
        End If&lt;br /&gt;
      Next Index&lt;br /&gt;
      &lt;br /&gt;
      If numLeagueEntrants &amp;lt;= 1 Then&lt;br /&gt;
        MsgBox &amp;quot;Can't rerun league.  Not enough league entrants.&amp;quot;&lt;br /&gt;
        Leaguererun = False&lt;br /&gt;
        optionsform.RerunCheck.value = 0&lt;br /&gt;
      Else&lt;br /&gt;
        For Index = 0 To 29&lt;br /&gt;
          LeagueChallengers(Index) = LeagueEntrants(Index)&lt;br /&gt;
          LeagueEntrants(Index).Name = &amp;quot;&amp;quot;&lt;br /&gt;
        Next Index&lt;br /&gt;
      End If&lt;br /&gt;
  End If&lt;br /&gt;
  &lt;br /&gt;
  SetupLeagueRound&lt;br /&gt;
End Sub&lt;br /&gt;
&lt;br /&gt;
Public Sub LeagueInputChallengers()&lt;br /&gt;
  Dim Index As Integer&lt;br /&gt;
  Dim offset As Integer&lt;br /&gt;
  Dim blank As datispecie&lt;br /&gt;
    &lt;br /&gt;
  For Index = 0 To SimOpts.SpeciesNum - 1&lt;br /&gt;
    If SimOpts.Specie(Index).Veg = True Then&lt;br /&gt;
      offset = offset + 1&lt;br /&gt;
    Else&lt;br /&gt;
      LeagueChallengers(Index - offset) = SimOpts.Specie(Index)&lt;br /&gt;
      If Index &amp;gt; 2 Then SimOpts.Specie(Index) = blank&lt;br /&gt;
      &lt;br /&gt;
      LeagueChallengers(Index - offset).Mutables.Mutations = False&lt;br /&gt;
    End If&lt;br /&gt;
    &lt;br /&gt;
    If Index - offset &amp;gt; 29 Then&lt;br /&gt;
      MsgBox &amp;quot;Not enough challenger slots to accomodate so many.  Only running the first 30 bots.&amp;quot;, vbOKOnly, &amp;quot;Too Many Challengers&amp;quot;&lt;br /&gt;
      Exit Sub&lt;br /&gt;
    End If&lt;br /&gt;
  Next Index&lt;br /&gt;
    &lt;br /&gt;
End Sub&lt;br /&gt;
&lt;br /&gt;
Public Sub SetupLeagueRound()&lt;br /&gt;
  Dim attackerfound As Boolean&lt;br /&gt;
  Dim defenderfound As Boolean&lt;br /&gt;
  Dim loopdone As Boolean&lt;br /&gt;
    &lt;br /&gt;
  SimOpts.SpeciesNum = 3&lt;br /&gt;
  'SimOpts.Specie(0) = veg spot&lt;br /&gt;
  &lt;br /&gt;
  While Not loopdone&lt;br /&gt;
    DoEvents&lt;br /&gt;
    If Attacker &amp;lt; 0 And Not attackerfound Then&lt;br /&gt;
      SimOpts.Specie(1) = LeagueChallengers(-Attacker - 1)&lt;br /&gt;
    ElseIf Attacker &amp;gt; 0 And Not attackerfound Then&lt;br /&gt;
      SimOpts.Specie(1) = LeagueEntrants(Attacker)&lt;br /&gt;
    End If&lt;br /&gt;
  &lt;br /&gt;
    If Not defenderfound Then&lt;br /&gt;
      SimOpts.Specie(2) = LeagueEntrants(Defender)&lt;br /&gt;
      SimOpts.Specie(2).Posrg = SimOpts.Specie(1).Posrg&lt;br /&gt;
      SimOpts.Specie(2).Posdn = SimOpts.Specie(1).Posdn&lt;br /&gt;
    End If&lt;br /&gt;
  &lt;br /&gt;
    'check to see if attacker and defender are the same&lt;br /&gt;
    'if so, then prompt the user for action&lt;br /&gt;
    &lt;br /&gt;
    If SimOpts.Specie(1).Name = &amp;quot;&amp;quot; Then&lt;br /&gt;
      SimOpts.Specie(1).Name = &amp;quot;EMPTY.TXT&amp;quot;&lt;br /&gt;
      TmpOpts.Specie(1).Name = &amp;quot;EMPTY.TXT&amp;quot;&lt;br /&gt;
    End If&lt;br /&gt;
    If SimOpts.Specie(2).Name = &amp;quot;&amp;quot; Then&lt;br /&gt;
      SimOpts.Specie(2).Name = &amp;quot;EMPTY.TXT&amp;quot;&lt;br /&gt;
      TmpOpts.Specie(2).Name = &amp;quot;EMPTY.TXT&amp;quot;&lt;br /&gt;
    End If&lt;br /&gt;
    &lt;br /&gt;
    If Left(SimOpts.Specie(1).Name, Len(SimOpts.Specie(1).Name) - 4) = &amp;quot;EMPTY&amp;quot; Then&lt;br /&gt;
      attackerfound = False&lt;br /&gt;
      If Attacker &amp;lt; 0 Then&lt;br /&gt;
        Attacker = Attacker + 1&lt;br /&gt;
        If Attacker = 0 Then Attacker = 29&lt;br /&gt;
      Else&lt;br /&gt;
        Attacker = Attacker - 1&lt;br /&gt;
      End If&lt;br /&gt;
    Else&lt;br /&gt;
      attackerfound = True&lt;br /&gt;
    End If&lt;br /&gt;
    &lt;br /&gt;
    If Left(SimOpts.Specie(2).Name, Len(SimOpts.Specie(2).Name) - 4) = &amp;quot;EMPTY&amp;quot; Then&lt;br /&gt;
      defenderfound = False&lt;br /&gt;
      Defender = Defender - 1&lt;br /&gt;
      If Defender &amp;lt; 0 Then&lt;br /&gt;
        Defender = 0&lt;br /&gt;
        defenderfound = True&lt;br /&gt;
      End If&lt;br /&gt;
    Else&lt;br /&gt;
      defenderfound = True&lt;br /&gt;
    End If&lt;br /&gt;
    &lt;br /&gt;
    If attackerfound And defenderfound And SimOpts.Specie(2).Name = SimOpts.Specie(1).Name Then&lt;br /&gt;
      If MsgBox(&amp;quot;Challenger and Defender are the same bot.  Continue with this Challenger?&amp;quot;, vbYesNo, &amp;quot;Identical Bots&amp;quot;) = vbYes Then&lt;br /&gt;
        'run these two bots against each other.&lt;br /&gt;
      Else&lt;br /&gt;
        'bot has lost, move on to next challenger&lt;br /&gt;
      End If&lt;br /&gt;
    End If&lt;br /&gt;
    If attackerfound And defenderfound Then loopdone = True&lt;br /&gt;
  Wend&lt;br /&gt;
&lt;br /&gt;
  'now check to see if we need to move challenger up slots&lt;br /&gt;
  'for an empty league&lt;br /&gt;
  If LeagueEntrants(0).Name = &amp;quot;&amp;quot; Or Left(LeagueEntrants(0).Name, 5) = &amp;quot;EMPTY&amp;quot; Then&lt;br /&gt;
    'empty league file&lt;br /&gt;
    LeagueEntrants(0) = LeagueChallengers(-Attacker - 1)&lt;br /&gt;
    LeagueEnd&lt;br /&gt;
    SetupLeagueRound&lt;br /&gt;
  ElseIf Defender &amp;lt;&amp;gt; 29 And Attacker &amp;lt; 0 Then&lt;br /&gt;
    LeagueEntrants(Defender + 1) = LeagueChallengers(-Attacker - 1)&lt;br /&gt;
    LeagueChallengers(-Attacker - 1).Name = &amp;quot;&amp;quot;&lt;br /&gt;
    Attacker = Defender + 1&lt;br /&gt;
    'empty league&lt;br /&gt;
  End If&lt;br /&gt;
&lt;br /&gt;
 ' If SimOpts.Specie(1).color = vbBlue And SimOpts.Specie(2).color = vbBlue Then&lt;br /&gt;
    SimOpts.Specie(0).color = vbGreen&lt;br /&gt;
    TmpOpts.Specie(0).color = vbGreen&lt;br /&gt;
    SimOpts.Specie(1).color = vbRed&lt;br /&gt;
    TmpOpts.Specie(1).color = vbRed&lt;br /&gt;
    SimOpts.Specie(2).color = vbBlue&lt;br /&gt;
    TmpOpts.Specie(2).color = vbBlue&lt;br /&gt;
 ' End If&lt;br /&gt;
End Sub&lt;br /&gt;
&lt;br /&gt;
Public Function League_Eyefudge(robotnumber As Integer, t As Long)&lt;br /&gt;
'tests to see if two bots have the same number of refeye statements.&lt;br /&gt;
'if so, it adds the following gene at teh end of the DNA&lt;br /&gt;
'This is definately a fudge, both in practice and implementation.&lt;br /&gt;
'A better system will be needed if anything is done to break this&lt;br /&gt;
'(such as a bot not using refeyes for conspec identification)&lt;br /&gt;
'or bots that are so close that this gives a virus bot an undue edge&lt;br /&gt;
'Later: add a prompt for action and a small timer.  If timer runs out then&lt;br /&gt;
'we use the default action below&lt;br /&gt;
&lt;br /&gt;
  If eye11 = rob(robotnumber).occurr(8) Then&lt;br /&gt;
  'If SimOpts.TotRunCycle &amp;lt; 3 And eye11 = rob(robotnumber).occurr(8) Then&lt;br /&gt;
  ReDim Preserve rob(robotnumber).DNA(UBound(rob(robotnumber).DNA) + 6)&lt;br /&gt;
    &lt;br /&gt;
    'cond&lt;br /&gt;
    rob(robotnumber).DNA(t).tipo = 4&lt;br /&gt;
    rob(robotnumber).DNA(t).value = 1&lt;br /&gt;
    t = t + 1&lt;br /&gt;
    &lt;br /&gt;
    '*.eye5&lt;br /&gt;
    rob(robotnumber).DNA(t).tipo = 1&lt;br /&gt;
    rob(robotnumber).DNA(t).value = 505&lt;br /&gt;
    t = t + 1&lt;br /&gt;
    &lt;br /&gt;
    'dup&lt;br /&gt;
    rob(robotnumber).DNA(t).tipo = 2&lt;br /&gt;
    rob(robotnumber).DNA(t).value = 23&lt;br /&gt;
    t = t + 1&lt;br /&gt;
    &lt;br /&gt;
    '!=&lt;br /&gt;
    rob(robotnumber).DNA(t).tipo = 3&lt;br /&gt;
    rob(robotnumber).DNA(t).value = 4&lt;br /&gt;
    t = t + 1&lt;br /&gt;
    &lt;br /&gt;
    'start&lt;br /&gt;
    rob(robotnumber).DNA(t).tipo = 4&lt;br /&gt;
    rob(robotnumber).DNA(t).value = 2&lt;br /&gt;
    t = t + 1&lt;br /&gt;
    &lt;br /&gt;
    'stop&lt;br /&gt;
    rob(robotnumber).DNA(t).tipo = 4&lt;br /&gt;
    rob(robotnumber).DNA(t).value = 3&lt;br /&gt;
    t = t + 1&lt;br /&gt;
    &lt;br /&gt;
    'end&lt;br /&gt;
    rob(robotnumber).DNA(t).tipo = 10       ' EricL - Changed tipo from 4 to 10, March 15, 2006&lt;br /&gt;
    rob(robotnumber).DNA(t).value = 1       ' EricL - Changed value from 4 to 1, March 15, 2006&lt;br /&gt;
  &lt;br /&gt;
    rob(robotnumber).occurr(8) = rob(robotnumber).occurr(8) + 1&lt;br /&gt;
  End If&lt;br /&gt;
End Function&lt;br /&gt;
&lt;br /&gt;
Public Sub Record_11eyes(eyes As Integer)&lt;br /&gt;
  eye11 = eyes&lt;br /&gt;
End Sub&lt;br /&gt;
&lt;br /&gt;
Private Sub LeagueEnd()&lt;br /&gt;
  Dim i As Integer&lt;br /&gt;
  &lt;br /&gt;
  If LeagueChallengers(-Attacker).Name = &amp;quot;EMPTY&amp;quot; Or LeagueChallengers(-Attacker).Name = &amp;quot;&amp;quot; Then&lt;br /&gt;
    LeagueMode = False&lt;br /&gt;
    ContestMode = False&lt;br /&gt;
 '   SimOpts.F1 = False&lt;br /&gt;
    &lt;br /&gt;
    'pause simulation.&lt;br /&gt;
    Form1.Active = False&lt;br /&gt;
    Form1.SecTimer.Enabled = False&lt;br /&gt;
    &lt;br /&gt;
    If MsgBox(&amp;quot;The league has finished running.  Simulation paused.  Save league file?&amp;quot;, vbYesNo, &amp;quot;League Finished.&amp;quot;) = vbYes Then&lt;br /&gt;
      'save results into file&lt;br /&gt;
      Save_League_File Leaguename&lt;br /&gt;
    End If&lt;br /&gt;
    LeagueForm.Hide&lt;br /&gt;
    Contest_Form.Hide&lt;br /&gt;
  &lt;br /&gt;
  Else&lt;br /&gt;
    Dim Index As Integer&lt;br /&gt;
    &lt;br /&gt;
    For Index = 0 To 29&lt;br /&gt;
      LeagueChallengers(Index) = LeagueChallengers(Index + 1)&lt;br /&gt;
    Next Index&lt;br /&gt;
    &lt;br /&gt;
    LeagueChallengers(29).Name = &amp;quot;&amp;quot;&lt;br /&gt;
  End If&lt;br /&gt;
   &lt;br /&gt;
  Attacker = -1&lt;br /&gt;
  Defender = 29&lt;br /&gt;
    &lt;br /&gt;
  'Puts things back the way they were before the league began so that the species list looks okay.&lt;br /&gt;
  TmpOpts = SimOpts&lt;br /&gt;
&lt;br /&gt;
  &lt;br /&gt;
  'Let the sim play again so that it's not paused for the user&lt;br /&gt;
 ' Form1.Active = True&lt;br /&gt;
 ' Form1.SecTimer.Enabled = True&lt;br /&gt;
End Sub&lt;br /&gt;
&lt;br /&gt;
Private Sub stuff()&lt;br /&gt;
&lt;br /&gt;
'move up all challengers&lt;br /&gt;
    Dim Index As Integer&lt;br /&gt;
    For Index = 1 To 29&lt;br /&gt;
      LeagueChallengers(Index - 1) = LeagueChallengers(Index)&lt;br /&gt;
    Next Index&lt;br /&gt;
    &lt;br /&gt;
    Dim empty0 As datispecie&lt;br /&gt;
    LeagueChallengers(29) = empty0&lt;br /&gt;
End Sub&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>Griz</name></author>	</entry>

	<entry>
		<id>http://wiki.darwinbots.com/index.php?title=Leagues&amp;diff=2332</id>
		<title>Leagues</title>
		<link rel="alternate" type="text/html" href="http://wiki.darwinbots.com/index.php?title=Leagues&amp;diff=2332"/>
				<updated>2006-12-26T01:22:33Z</updated>
		
		<summary type="html">&lt;p&gt;Griz: F1Mode code added&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Code/Debugging/Fixes/Changes for Leagues&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
see also: [[DeBugging]] and [[Bug_Reports]]&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
this is a Work In Progress&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
:Holy crap!!!&lt;br /&gt;
:League code is all over the place!&lt;br /&gt;
&lt;br /&gt;
:Will just keep stashing it here as i find it.&lt;br /&gt;
&lt;br /&gt;
==General Declarations==&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
General &lt;br /&gt;
Declarations&lt;br /&gt;
&lt;br /&gt;
Public Type datispecie&lt;br /&gt;
  Skin(13) As Integer&lt;br /&gt;
  path As String&lt;br /&gt;
  Name As String&lt;br /&gt;
  Stnrg As Integer&lt;br /&gt;
  Veg As Boolean&lt;br /&gt;
  Fixed As Boolean&lt;br /&gt;
  color As Long&lt;br /&gt;
  Colind As Integer&lt;br /&gt;
  Postp As Single&lt;br /&gt;
  Poslf As Single&lt;br /&gt;
  Posdn As Single&lt;br /&gt;
  Posrg As Single&lt;br /&gt;
  qty As Integer&lt;br /&gt;
  Comment As String&lt;br /&gt;
  Leaguefilecomment As String&lt;br /&gt;
  Mutables As mutationprobs&lt;br /&gt;
  CantSee As Boolean                ' Flag indicating eyes should be turned off for this &lt;br /&gt;
&lt;br /&gt;
species&lt;br /&gt;
  DisableDNA As Boolean             ' Flag indicating DNA should not execute for &lt;br /&gt;
&lt;br /&gt;
this species&lt;br /&gt;
  DisableMovementSysvars As Boolean ' Flag indicating movement sysvars &lt;br /&gt;
&lt;br /&gt;
should be disabled for this species&lt;br /&gt;
  CantReproduce As Boolean          ' Flag indicating whether reproduction has &lt;br /&gt;
&lt;br /&gt;
been disabled for this species.&lt;br /&gt;
End Type&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
General&lt;br /&gt;
Declarations&lt;br /&gt;
&lt;br /&gt;
'For League mode: (runs a series of F1 contests, 1 on 1)&lt;br /&gt;
Public LeagueMode As Boolean&lt;br /&gt;
Public Leaguename As String&lt;br /&gt;
Public Leaguererun As Boolean&lt;br /&gt;
Public LeagueEntrants(30) As datispecie 'all those already in the league&lt;br /&gt;
Public numLeagueEntrants As Integer&lt;br /&gt;
Public LeagueChallengers(31) As datispecie 'all those challenging (31 instead of &lt;br /&gt;
&lt;br /&gt;
30 for some loop functions)&lt;br /&gt;
Public Defender As Integer 'couple used to determine which bots are facing &lt;br /&gt;
&lt;br /&gt;
which in League mode&lt;br /&gt;
Public Attacker As Integer&lt;br /&gt;
Private eye11 As Integer 'for eye fudging.  Search 'fudge' to see what I mean&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
==General Startsim==&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
General&lt;br /&gt;
Startsim&lt;br /&gt;
&lt;br /&gt;
If LeagueMode Then&lt;br /&gt;
    LeagueForm.Show&lt;br /&gt;
    SimOpts.TotRunCycle = -1&lt;br /&gt;
  End If&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
==General StartSimul==&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
General&lt;br /&gt;
StartSimul&lt;br /&gt;
&lt;br /&gt;
'Restart&lt;br /&gt;
  'Leaguemode handles restarts differently so only restart here if not in &lt;br /&gt;
&lt;br /&gt;
leaguemode&lt;br /&gt;
  If totnvegs = 0 And RestartMode And Not LeagueMode Then&lt;br /&gt;
  ' totnvegs = 1&lt;br /&gt;
  ' Contests = Contests + 1&lt;br /&gt;
    ReStarts = ReStarts + 1&lt;br /&gt;
  ' Form1.StartSimul&lt;br /&gt;
    StartAnotherRound = True&lt;br /&gt;
  End If&lt;br /&gt;
End Sub&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
==General FindSpecies==&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
General&lt;br /&gt;
FindSpecies&lt;br /&gt;
&lt;br /&gt;
  If TotSpecies = 1 Then&lt;br /&gt;
'    If Not LeagueMode Then&lt;br /&gt;
      ContestMode = False&lt;br /&gt;
      MDIForm1.F1Piccy.Visible = False&lt;br /&gt;
      Contest_Form.Visible = False&lt;br /&gt;
      t = MsgBox(&amp;quot;You have only selected one species for combat. Formula 1 &lt;br /&gt;
&lt;br /&gt;
mode disabled&amp;quot;, vbOKOnly)&lt;br /&gt;
      Exit Sub&lt;br /&gt;
 '   End If&lt;br /&gt;
  End If&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
==MDIForm==&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
MDIForm1 (Code)&lt;br /&gt;
&lt;br /&gt;
Private Sub Leagues_Click()&lt;br /&gt;
 optionsform.SSTab1.Tab = 4&lt;br /&gt;
  NetEvent.Timer1.Enabled = False&lt;br /&gt;
  NetEvent.Hide&lt;br /&gt;
  optionsform.Show vbModal&lt;br /&gt;
End Sub&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
==RerunCheck==&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
RerunCheck&lt;br /&gt;
&lt;br /&gt;
Private Sub RerunCheck_Click()&lt;br /&gt;
  Leaguererun = CBool(RerunCheck.value)&lt;br /&gt;
End Sub&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
==LeagueCheck==&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
LeagueCheck&lt;br /&gt;
&lt;br /&gt;
Private Sub LeagueCheck_Click()&lt;br /&gt;
  If LeagueCheck.value = 1 Then&lt;br /&gt;
    If F1Check.value &amp;lt;&amp;gt; 1 Then&lt;br /&gt;
      F1Check.value = 1&lt;br /&gt;
      F1check_Click&lt;br /&gt;
    End If&lt;br /&gt;
    LeagueMode = True&lt;br /&gt;
    TmpOpts.League = True&lt;br /&gt;
    &lt;br /&gt;
    If Leaguetype(0).value = False Then&lt;br /&gt;
      Leaguetype(0).value = True&lt;br /&gt;
    End If&lt;br /&gt;
  &lt;br /&gt;
  Else&lt;br /&gt;
    TmpOpts.League = False&lt;br /&gt;
    LeagueMode = False&lt;br /&gt;
    'Leaguetype(0).value = False&lt;br /&gt;
  End If&lt;br /&gt;
End Sub&lt;br /&gt;
&lt;br /&gt;
Private Sub LeagueAutoCheck()&lt;br /&gt;
  If LeagueCheck.value &amp;lt;&amp;gt; 1 Then&lt;br /&gt;
    LeagueCheck.value = 1&lt;br /&gt;
    LeagueCheck_Click&lt;br /&gt;
  End If&lt;br /&gt;
End Sub&lt;br /&gt;
&lt;br /&gt;
Private Sub LeagueF1Option_Click()&lt;br /&gt;
  Leaguename.text = &amp;quot;F1&amp;quot;&lt;br /&gt;
  LeagueAutoCheck&lt;br /&gt;
End Sub&lt;br /&gt;
&lt;br /&gt;
Private Sub LeagueF2Option_Click()&lt;br /&gt;
  Leaguename.text = &amp;quot;F2&amp;quot;&lt;br /&gt;
  LeagueAutoCheck&lt;br /&gt;
End Sub&lt;br /&gt;
&lt;br /&gt;
Private Sub LeageSBOption_Click()&lt;br /&gt;
  Leaguename.text = &amp;quot;Shortbot&amp;quot;&lt;br /&gt;
  LeagueAutoCheck&lt;br /&gt;
End Sub&lt;br /&gt;
&lt;br /&gt;
Private Sub LeagueMBOption_Click()&lt;br /&gt;
  Leaguename.text = &amp;quot;Multibot&amp;quot;&lt;br /&gt;
  LeagueAutoCheck&lt;br /&gt;
End Sub&lt;br /&gt;
&lt;br /&gt;
Private Sub Leaguetype_Click(Index As Integer)&lt;br /&gt;
  'If Leaguetype(Index).value = False Then&lt;br /&gt;
  ''  Leaguetype(Index).value = True&lt;br /&gt;
  'End If&lt;br /&gt;
End Sub&lt;br /&gt;
&lt;br /&gt;
Private Sub LightText_lostfocus()&lt;br /&gt;
  Dim a As Single&lt;br /&gt;
  a = val(LightText.text)&lt;br /&gt;
  If a &amp;lt; LightUpDn.Min Then a = LightUpDn.Min&lt;br /&gt;
  If a &amp;gt; LightUpDn.Max Then a = LightUpDn.Max&lt;br /&gt;
  LightUpDn.value = a&lt;br /&gt;
  TmpOpts.LightIntensity = a&lt;br /&gt;
End Sub&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
==StartNew==&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
StartNew&lt;br /&gt;
&lt;br /&gt;
If LeagueMode = True Then LeagueForm.Visible = True ' EricL 3/20/2006 Have &lt;br /&gt;
&lt;br /&gt;
to bring up league form after Options dialog goes away&lt;br /&gt;
  &lt;br /&gt;
  'Form1.Active = True&lt;br /&gt;
  &lt;br /&gt;
    'this just tricks the program into thinking we have enough&lt;br /&gt;
  'species for F1 mode.&lt;br /&gt;
  'If TmpOpts.League = True And TmpOpts.SpeciesNum = 2 Then&lt;br /&gt;
  '  additem TmpOpts.Specie(1).Name&lt;br /&gt;
  '  TmpOpts.SpeciesNum = TmpOpts.SpeciesNum + 1&lt;br /&gt;
  'End If&lt;br /&gt;
  &lt;br /&gt;
  SimOpts = TmpOpts&lt;br /&gt;
  &lt;br /&gt;
  If SimOpts.League = True Then&lt;br /&gt;
    LeagueMode = True 'should be anyway, but sometimes when&lt;br /&gt;
                      'restarting a league it screws up&lt;br /&gt;
    LeagueInputChallengers&lt;br /&gt;
    SetupLeague_Options&lt;br /&gt;
  '  SimOpts.F1 = True&lt;br /&gt;
    LeagueForm.F1ChallengeOption_Click&lt;br /&gt;
  End If&lt;br /&gt;
  &lt;br /&gt;
  &lt;br /&gt;
  If Form1.Active Then Form1.SecTimer.Enabled = True&lt;br /&gt;
  &lt;br /&gt;
  &lt;br /&gt;
  StartAnotherRound = True ' Set true for first simulation.  Will get set true if &lt;br /&gt;
&lt;br /&gt;
running leagues or using auto-restart mode&lt;br /&gt;
  While StartAnotherRound&lt;br /&gt;
    StartAnotherRound = False&lt;br /&gt;
    Form1.StartSimul&lt;br /&gt;
  Wend&lt;br /&gt;
End Sub&lt;br /&gt;
 &lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==F1 Override code as of 2.42.n ==&lt;br /&gt;
(not sure in what modual this is in. {{User:Griz/sig}})&lt;br /&gt;
&lt;br /&gt;
:Eric: I will add max cycles / Max rounds to my list of future work items. &lt;br /&gt;
:These will be post 2.43 however.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
If TmpOpts.F1 = True Then&lt;br /&gt;
&lt;br /&gt;
'Zero out all Costs&lt;br /&gt;
For t = 1 To 70&lt;br /&gt;
TmpOpts.Costs(t) = 0&lt;br /&gt;
Next t&lt;br /&gt;
&lt;br /&gt;
'Now set the ones that matter&lt;br /&gt;
TmpOpts.Costs(SHOTCOST) = 2&lt;br /&gt;
TmpOpts.Costs(COSTSTORE) = 0.04&lt;br /&gt;
TmpOpts.Costs(CONDCOST) = 0.004&lt;br /&gt;
TmpOpts.Costs(MOVECOST) = 0.05&lt;br /&gt;
TmpOpts.Costs(TIECOST) = 2&lt;br /&gt;
TmpOpts.Costs(SHOTCOST) = 2&lt;br /&gt;
TmpOpts.Costs(VENOMCOST) = 1&lt;br /&gt;
TmpOpts.Costs(POISONCOST) = 1&lt;br /&gt;
TmpOpts.Costs(SLIMECOST) = 1&lt;br /&gt;
TmpOpts.Costs(SHELLCOST) = 1&lt;br /&gt;
TmpOpts.Costs(COSTMULTIPLIER) = 1&lt;br /&gt;
TmpOpts.DynamicCosts = False&lt;br /&gt;
&lt;br /&gt;
TmpOpts.CorpseEnabled = False ' No Corpses&lt;br /&gt;
TmpOpts.DayNight = False ' Sun never sets&lt;br /&gt;
TmpOpts.FieldWidth = 9237&lt;br /&gt;
TmpOpts.FieldHeight = 6928&lt;br /&gt;
TmpOpts.FieldSize = 1&lt;br /&gt;
TmpOpts.MaxEnergy = 40 ' Veggy nrg per cycle&lt;br /&gt;
TmpOpts.MaxPopulation = 25 ' Veggy max population&lt;br /&gt;
TmpOpts.MinVegs = 10&lt;br /&gt;
TmpOpts.Pondmode = False&lt;br /&gt;
TmpOpts.PhysBrown = 0 ' Animal Motion&lt;br /&gt;
TmpOpts.Toroidal = True&lt;br /&gt;
&lt;br /&gt;
TmpOpts.BadWastelevel = 10000 ' Pretty high Waste Threshold&lt;br /&gt;
&lt;br /&gt;
For t = 0 To TmpOpts.SpeciesNum - 1&lt;br /&gt;
TmpOpts.Specie(t).Fixed = False 'Nobody is fixed&lt;br /&gt;
TmpOpts.Specie(t).Mutables.Mutations = False 'Nobody can mutate&lt;br /&gt;
TmpOpts.Specie(t).CantSee = False&lt;br /&gt;
TmpOpts.Specie(t).DisableDNA = False&lt;br /&gt;
TmpOpts.Specie(t).CantReproduce = False&lt;br /&gt;
TmpOpts.Specie(t).DisableMovementSysvars = False&lt;br /&gt;
Next t&lt;br /&gt;
&lt;br /&gt;
TmpOpts.Specie(0).Veg = True 'Force the first entry to be a veggy&lt;br /&gt;
TmpOpts.Specie(0).qty = 10 ' Do this so that eye fudge works&lt;br /&gt;
&lt;br /&gt;
TmpOpts.FixedBotRadii = False&lt;br /&gt;
TmpOpts.NoShotDecay = False&lt;br /&gt;
TmpOpts.DisableTies = False&lt;br /&gt;
TmpOpts.RepopAmount = 10&lt;br /&gt;
TmpOpts.RepopCooldown = 1&lt;br /&gt;
TmpOpts.MaxVelocity = 180&lt;br /&gt;
TmpOpts.VegFeedingMethod = 0 ' Straight nrg /cycle feeding method&lt;br /&gt;
TmpOpts.VegFeedingToBody = 0.5 ' 50/50 nrg/body veggy feeding ratio&lt;br /&gt;
TmpOpts.SunUp = False ' Turn off bringing the sun up due to a threshold&lt;br /&gt;
TmpOpts.SunDown = False ' Turn off setting the sun due to a threshold&lt;br /&gt;
TmpOpts.CoefficientElasticity = 0 ' Collisions are soft.&lt;br /&gt;
TmpOpts.Ygravity = 0&lt;br /&gt;
&lt;br /&gt;
' Surface Friction - Metal Option&lt;br /&gt;
TmpOpts.Zgravity = 2&lt;br /&gt;
TmpOpts.CoefficientStatic = 0.6&lt;br /&gt;
TmpOpts.CoefficientKinetic = 0.4&lt;br /&gt;
&lt;br /&gt;
'No Fluid Resistance&lt;br /&gt;
TmpOpts.Viscosity = 0#&lt;br /&gt;
TmpOpts.Density = 0#&lt;br /&gt;
&lt;br /&gt;
'Shot Energy Physics&lt;br /&gt;
TmpOpts.EnergyProp = 1 ' 100% normal shot nrg&lt;br /&gt;
TmpOpts.EnergyExType = True ' Use Proportional shot nrg exchange method&lt;br /&gt;
&lt;br /&gt;
DispSettings&lt;br /&gt;
End If&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== F1 Mode ==&lt;br /&gt;
&lt;br /&gt;
F1Mode modual&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Option Explicit&lt;br /&gt;
&lt;br /&gt;
Public Type pop&lt;br /&gt;
  SpName As String&lt;br /&gt;
  Population As Integer&lt;br /&gt;
  Wins As Integer&lt;br /&gt;
  exist As Integer&lt;br /&gt;
End Type&lt;br /&gt;
&lt;br /&gt;
'For F1 Contests:&lt;br /&gt;
Public PopArray(20) As pop&lt;br /&gt;
Public F1count As Single&lt;br /&gt;
Public ContestMode As Boolean&lt;br /&gt;
Public Contests As Integer&lt;br /&gt;
Public TotSpecies As Integer&lt;br /&gt;
Public Maxrounds As Integer&lt;br /&gt;
Public RestartMode As Boolean&lt;br /&gt;
Public ReStarts As Long&lt;br /&gt;
Public FirstCycle As Boolean&lt;br /&gt;
Public SampFreq As Integer&lt;br /&gt;
Public Over As Boolean&lt;br /&gt;
Public MaxRoundsToDraw As Integer&lt;br /&gt;
Public MaxCycles As Long&lt;br /&gt;
&lt;br /&gt;
'For League mode: (runs a series of F1 contests, 1 on 1)&lt;br /&gt;
Public LeagueMode As Boolean&lt;br /&gt;
Public Leaguename As String&lt;br /&gt;
Public Leaguererun As Boolean&lt;br /&gt;
Public LeagueEntrants(30) As datispecie 'all those already in the league&lt;br /&gt;
Public numLeagueEntrants As Integer&lt;br /&gt;
Public LeagueChallengers(31) As datispecie 'all those challenging (31 instead of 30 for some loop functions)&lt;br /&gt;
Public Defender As Integer 'couple used to determine which bots are facing which in League mode&lt;br /&gt;
Public Attacker As Integer&lt;br /&gt;
Private eye11 As Integer 'for eye fudging.  Search 'fudge' to see what I mean&lt;br /&gt;
&lt;br /&gt;
Public StartAnotherRound As Boolean&lt;br /&gt;
&lt;br /&gt;
Public Sub ResetContest()&lt;br /&gt;
  Dim t As Integer&lt;br /&gt;
  Contests = 0&lt;br /&gt;
  Contest_Form.Winner.Caption = &amp;quot;&amp;quot;&lt;br /&gt;
  Contest_Form.Winner1.Caption = &amp;quot;&amp;quot;&lt;br /&gt;
  For t = 1 To 5&lt;br /&gt;
    PopArray(t).SpName = &amp;quot;&amp;quot;&lt;br /&gt;
    PopArray(t).Population = 0&lt;br /&gt;
    PopArray(t).Wins = 0&lt;br /&gt;
  Next t&lt;br /&gt;
End Sub&lt;br /&gt;
&lt;br /&gt;
Public Sub FindSpecies()&lt;br /&gt;
'counts species of robots at beginning of simulation&lt;br /&gt;
  Dim SpeciePointer As Integer&lt;br /&gt;
  Dim t As Integer&lt;br /&gt;
  Dim nd As node&lt;br /&gt;
  Dim robcol(10) As Long&lt;br /&gt;
  Dim realname As String&lt;br /&gt;
  TotSpecies = 0&lt;br /&gt;
  If Contests = 0 Then ResetContest&lt;br /&gt;
  &lt;br /&gt;
  For t = 1 To 20&lt;br /&gt;
    PopArray(t).SpName = &amp;quot;&amp;quot;&lt;br /&gt;
    PopArray(t).Population = 0&lt;br /&gt;
    'If Contests = 0 Then PopArray(t).Wins = 0&lt;br /&gt;
  Next t&lt;br /&gt;
  Contest_Form.Show&lt;br /&gt;
  Contest_Form.Contests.Caption = Str(Contests)&lt;br /&gt;
  &lt;br /&gt;
  For t = 1 To MaxRobs&lt;br /&gt;
    With rob(t)&lt;br /&gt;
      'If Not .Veg And Not .Corpse And Not .wall And .exist Then&lt;br /&gt;
      If Not .Veg And Not .Corpse And .exist Then&lt;br /&gt;
        For SpeciePointer = 1 To 20&lt;br /&gt;
          &lt;br /&gt;
          realname = Left(.FName, Len(.FName) - 4)&lt;br /&gt;
          If realname = PopArray(SpeciePointer).SpName Then&lt;br /&gt;
            PopArray(SpeciePointer).Population = PopArray(SpeciePointer).Population + 1&lt;br /&gt;
            Exit For&lt;br /&gt;
          End If&lt;br /&gt;
          If PopArray(SpeciePointer).SpName = &amp;quot;&amp;quot; Then&lt;br /&gt;
            TotSpecies = TotSpecies + 1&lt;br /&gt;
            PopArray(SpeciePointer).SpName = realname&lt;br /&gt;
            PopArray(SpeciePointer).Population = PopArray(SpeciePointer).Population + 1&lt;br /&gt;
            robcol(SpeciePointer) = .color&lt;br /&gt;
            Exit For&lt;br /&gt;
          End If&lt;br /&gt;
        Next SpeciePointer&lt;br /&gt;
      End If&lt;br /&gt;
    End With&lt;br /&gt;
  Next t&lt;br /&gt;
  If TotSpecies = 1 Then&lt;br /&gt;
'    If Not LeagueMode Then&lt;br /&gt;
      ContestMode = False&lt;br /&gt;
      MDIForm1.F1Piccy.Visible = False&lt;br /&gt;
      Contest_Form.Visible = False&lt;br /&gt;
      t = MsgBox(&amp;quot;You have only selected one species for combat. Formula 1 mode disabled&amp;quot;, vbOKOnly)&lt;br /&gt;
      Exit Sub&lt;br /&gt;
 '   End If&lt;br /&gt;
  End If&lt;br /&gt;
  If PopArray(1).SpName &amp;lt;&amp;gt; &amp;quot;&amp;quot; Then&lt;br /&gt;
    Contest_Form.Robname1.Caption = PopArray(1).SpName&lt;br /&gt;
    Contest_Form.wins1.Caption = Str(PopArray(1).Wins)&lt;br /&gt;
    Contest_Form.Pop1.Caption = Str(PopArray(1).Population)&lt;br /&gt;
    Contest_Form.Robname1.ForeColor = robcol(1)&lt;br /&gt;
    Contest_Form.Option1(1).Visible = True&lt;br /&gt;
  Else&lt;br /&gt;
    Contest_Form.Robname1.Caption = &amp;quot;&amp;quot;&lt;br /&gt;
    Contest_Form.wins1.Caption = &amp;quot;&amp;quot;&lt;br /&gt;
    Contest_Form.Pop1.Caption = &amp;quot;&amp;quot;&lt;br /&gt;
    Contest_Form.Option1(1).Visible = False&lt;br /&gt;
  End If&lt;br /&gt;
  If PopArray(2).SpName &amp;lt;&amp;gt; &amp;quot;&amp;quot; Then&lt;br /&gt;
    Contest_Form.Robname2.Caption = PopArray(2).SpName&lt;br /&gt;
    Contest_Form.Wins2.Caption = Str(PopArray(2).Wins)&lt;br /&gt;
    Contest_Form.Pop2.Caption = Str(PopArray(2).Population)&lt;br /&gt;
    Contest_Form.Robname2.ForeColor = robcol(2)&lt;br /&gt;
    Contest_Form.Option1(2).Visible = True&lt;br /&gt;
  Else&lt;br /&gt;
    Contest_Form.Robname2.Caption = &amp;quot;&amp;quot;&lt;br /&gt;
    Contest_Form.Wins2.Caption = &amp;quot;&amp;quot;&lt;br /&gt;
    Contest_Form.Pop2.Caption = &amp;quot;&amp;quot;&lt;br /&gt;
    Contest_Form.Option1(2).Visible = False&lt;br /&gt;
  End If&lt;br /&gt;
  If PopArray(3).SpName &amp;lt;&amp;gt; &amp;quot;&amp;quot; Then&lt;br /&gt;
    Contest_Form.Robname3.Caption = PopArray(3).SpName&lt;br /&gt;
    Contest_Form.Wins3.Caption = Str(PopArray(3).Wins)&lt;br /&gt;
    Contest_Form.Pop3.Caption = Str(PopArray(3).Population)&lt;br /&gt;
    Contest_Form.Robname3.ForeColor = robcol(3)&lt;br /&gt;
    Contest_Form.Option1(3).Visible = True&lt;br /&gt;
  Else&lt;br /&gt;
    Contest_Form.Robname3.Caption = &amp;quot;&amp;quot;&lt;br /&gt;
    Contest_Form.Wins3.Caption = &amp;quot;&amp;quot;&lt;br /&gt;
    Contest_Form.Pop3.Caption = &amp;quot;&amp;quot;&lt;br /&gt;
    Contest_Form.Option1(3).Visible = False&lt;br /&gt;
  End If&lt;br /&gt;
  If PopArray(4).SpName &amp;lt;&amp;gt; &amp;quot;&amp;quot; Then&lt;br /&gt;
    Contest_Form.Robname4.Caption = PopArray(4).SpName&lt;br /&gt;
    Contest_Form.Wins4.Caption = Str(PopArray(4).Wins)&lt;br /&gt;
    Contest_Form.Pop4.Caption = Str(PopArray(4).Population)&lt;br /&gt;
    Contest_Form.Robname4.ForeColor = robcol(4)&lt;br /&gt;
    Contest_Form.Option1(4).Visible = True&lt;br /&gt;
  Else&lt;br /&gt;
    Contest_Form.Robname4.Caption = &amp;quot;&amp;quot;&lt;br /&gt;
    Contest_Form.Wins4.Caption = &amp;quot;&amp;quot;&lt;br /&gt;
    Contest_Form.Pop4.Caption = &amp;quot;&amp;quot;&lt;br /&gt;
    Contest_Form.Option1(4).Visible = False&lt;br /&gt;
  End If&lt;br /&gt;
  If PopArray(5).SpName &amp;lt;&amp;gt; &amp;quot;&amp;quot; Then&lt;br /&gt;
    Contest_Form.Robname5.Caption = PopArray(5).SpName&lt;br /&gt;
    Contest_Form.Wins5.Caption = Str(PopArray(5).Wins)&lt;br /&gt;
    Contest_Form.Pop5.Caption = Str(PopArray(5).Population)&lt;br /&gt;
    Contest_Form.Robname5.ForeColor = robcol(5)&lt;br /&gt;
    Contest_Form.Option1(5).Visible = True&lt;br /&gt;
  Else&lt;br /&gt;
    Contest_Form.Robname5.Caption = &amp;quot;&amp;quot;&lt;br /&gt;
    Contest_Form.Wins5.Caption = &amp;quot;&amp;quot;&lt;br /&gt;
    Contest_Form.Pop5.Caption = &amp;quot;&amp;quot;&lt;br /&gt;
    Contest_Form.Option1(5).Visible = False&lt;br /&gt;
  End If&lt;br /&gt;
  If ContestMode Then&lt;br /&gt;
    Contest_Form.Visible = True&lt;br /&gt;
    'Contests = 0&lt;br /&gt;
  End If&lt;br /&gt;
End Sub&lt;br /&gt;
Public Sub Countpop()&lt;br /&gt;
'counts population of robots at regular intervals&lt;br /&gt;
'for auto-combat mode and for automatic reset of starting conditions&lt;br /&gt;
  Dim SpeciePointer As Integer&lt;br /&gt;
  Dim SpeciesLeft As Integer&lt;br /&gt;
  Dim t As Integer&lt;br /&gt;
  Dim p As Integer&lt;br /&gt;
  Dim nd As node&lt;br /&gt;
  Dim Winner As String&lt;br /&gt;
  Dim Wins As Single&lt;br /&gt;
  Dim realname As String&lt;br /&gt;
  &lt;br /&gt;
  &lt;br /&gt;
  For t = 1 To 20&lt;br /&gt;
    PopArray(t).Population = 0&lt;br /&gt;
    PopArray(t).exist = 0&lt;br /&gt;
  Next t&lt;br /&gt;
  &lt;br /&gt;
  For t = 1 To MaxRobs&lt;br /&gt;
    With rob(t)&lt;br /&gt;
      'If Not .Veg And Not .Corpse And Not .wall And .exist Then&lt;br /&gt;
      If Not .Veg And Not .Corpse And .exist Then&lt;br /&gt;
        For SpeciePointer = 1 To TotSpecies&lt;br /&gt;
          realname = Left(.FName, Len(.FName) - 4)&lt;br /&gt;
          If realname = PopArray(SpeciePointer).SpName Then&lt;br /&gt;
            PopArray(SpeciePointer).Population = PopArray(SpeciePointer).Population + 1&lt;br /&gt;
            PopArray(SpeciePointer).exist = 1&lt;br /&gt;
            Exit For&lt;br /&gt;
          End If&lt;br /&gt;
        Next SpeciePointer&lt;br /&gt;
      End If&lt;br /&gt;
    End With&lt;br /&gt;
  Next t&lt;br /&gt;
  If Contests &amp;lt; Maxrounds Then&lt;br /&gt;
    Contest_Form.Contests.Caption = Contests + 1&lt;br /&gt;
  End If&lt;br /&gt;
  Contest_Form.Maxrounds.Caption = Maxrounds&lt;br /&gt;
  Contest_Form.Refresh&lt;br /&gt;
  SpeciesLeft = 0&lt;br /&gt;
  For p = 1 To TotSpecies&lt;br /&gt;
    SpeciesLeft = SpeciesLeft + PopArray(p).exist&lt;br /&gt;
  Next p&lt;br /&gt;
  If SpeciesLeft = 1 And Contests + 1 &amp;lt;= Maxrounds And Over = False Then&lt;br /&gt;
    For t = 1 To TotSpecies&lt;br /&gt;
      If PopArray(t).Population &amp;lt;&amp;gt; 0 Then&lt;br /&gt;
        PopArray(t).Wins = PopArray(t).Wins + 1&lt;br /&gt;
      End If&lt;br /&gt;
    Next t&lt;br /&gt;
  End If&lt;br /&gt;
  Contest_Form.Visible = True&lt;br /&gt;
  If PopArray(1).SpName &amp;lt;&amp;gt; &amp;quot;&amp;quot; Then&lt;br /&gt;
    Contest_Form.Robname1.Caption = PopArray(1).SpName&lt;br /&gt;
    Contest_Form.wins1.Caption = Str(PopArray(1).Wins)&lt;br /&gt;
    Contest_Form.Pop1.Caption = Str(PopArray(1).Population)&lt;br /&gt;
  Else&lt;br /&gt;
    Contest_Form.Robname1.Caption = &amp;quot;&amp;quot;&lt;br /&gt;
    Contest_Form.wins1.Caption = &amp;quot;&amp;quot;&lt;br /&gt;
    Contest_Form.Pop1.Caption = &amp;quot;&amp;quot;&lt;br /&gt;
  End If&lt;br /&gt;
  If PopArray(2).SpName &amp;lt;&amp;gt; &amp;quot;&amp;quot; Then&lt;br /&gt;
    Contest_Form.Robname2.Caption = PopArray(2).SpName&lt;br /&gt;
    Contest_Form.Wins2.Caption = Str(PopArray(2).Wins)&lt;br /&gt;
    Contest_Form.Pop2.Caption = Str(PopArray(2).Population)&lt;br /&gt;
  Else&lt;br /&gt;
    Contest_Form.Robname2.Caption = &amp;quot;&amp;quot;&lt;br /&gt;
    Contest_Form.Wins2.Caption = &amp;quot;&amp;quot;&lt;br /&gt;
    Contest_Form.Pop2.Caption = &amp;quot;&amp;quot;&lt;br /&gt;
  End If&lt;br /&gt;
  If PopArray(3).SpName &amp;lt;&amp;gt; &amp;quot;&amp;quot; Then&lt;br /&gt;
    Contest_Form.Robname3.Caption = PopArray(3).SpName&lt;br /&gt;
    Contest_Form.Wins3.Caption = Str(PopArray(3).Wins)&lt;br /&gt;
    Contest_Form.Pop3.Caption = Str(PopArray(3).Population)&lt;br /&gt;
  Else&lt;br /&gt;
    Contest_Form.Robname3.Caption = &amp;quot;&amp;quot;&lt;br /&gt;
    Contest_Form.Wins3.Caption = &amp;quot;&amp;quot;&lt;br /&gt;
    Contest_Form.Pop3.Caption = &amp;quot;&amp;quot;&lt;br /&gt;
  End If&lt;br /&gt;
  If PopArray(4).SpName &amp;lt;&amp;gt; &amp;quot;&amp;quot; Then&lt;br /&gt;
    Contest_Form.Robname4.Caption = PopArray(4).SpName&lt;br /&gt;
    Contest_Form.Wins4.Caption = Str(PopArray(4).Wins)&lt;br /&gt;
    Contest_Form.Pop4.Caption = Str(PopArray(4).Population)&lt;br /&gt;
  Else&lt;br /&gt;
    Contest_Form.Robname4.Caption = &amp;quot;&amp;quot;&lt;br /&gt;
    Contest_Form.Wins4.Caption = &amp;quot;&amp;quot;&lt;br /&gt;
    Contest_Form.Pop4.Caption = &amp;quot;&amp;quot;&lt;br /&gt;
  End If&lt;br /&gt;
  If PopArray(5).SpName &amp;lt;&amp;gt; &amp;quot;&amp;quot; Then&lt;br /&gt;
    Contest_Form.Robname5.Caption = PopArray(5).SpName&lt;br /&gt;
    Contest_Form.Wins5.Caption = Str(PopArray(5).Wins)&lt;br /&gt;
    Contest_Form.Pop5.Caption = Str(PopArray(5).Population)&lt;br /&gt;
  Else&lt;br /&gt;
    Contest_Form.Robname5.Caption = &amp;quot;&amp;quot;&lt;br /&gt;
    Contest_Form.Wins5.Caption = &amp;quot;&amp;quot;&lt;br /&gt;
    Contest_Form.Pop5.Caption = &amp;quot;&amp;quot;&lt;br /&gt;
  End If&lt;br /&gt;
  Contest_Form.Refresh&lt;br /&gt;
  F1count = 0&lt;br /&gt;
  Wins = Sqr(Maxrounds) + (Maxrounds / 2)&lt;br /&gt;
  If SpeciesLeft = 1 And Contests + 1 &amp;lt;= Maxrounds Then&lt;br /&gt;
    If Contests + 1 = Maxrounds And Over = False Then 'contest is over now&lt;br /&gt;
      For t = 1 To TotSpecies&lt;br /&gt;
        If PopArray(t).Wins &amp;gt; Wins Then&lt;br /&gt;
          Winner = PopArray(t).SpName&lt;br /&gt;
          Over = True&lt;br /&gt;
          'set up next league round&lt;br /&gt;
          If LeagueMode Then&lt;br /&gt;
            If Winner + &amp;quot;.txt&amp;quot; = LeagueEntrants(Defender).Name Then&lt;br /&gt;
              'attacker lost, move to next challenger&lt;br /&gt;
              Attacker = -1&lt;br /&gt;
              Defender = 29&lt;br /&gt;
              &lt;br /&gt;
              LeagueEnd&lt;br /&gt;
              &lt;br /&gt;
            ElseIf Attacker &amp;lt; 0 Then&lt;br /&gt;
              'attacker won.  He was in the challenge array, move him to the&lt;br /&gt;
              'league array and the bot he defeated to the challenge array&lt;br /&gt;
              'This defeated bot will have another chance to get back into the&lt;br /&gt;
              'league later.&lt;br /&gt;
              If Winner + &amp;quot;.txt&amp;quot; = LeagueChallengers(-Attacker - 1).Name Then&lt;br /&gt;
                Dim temp As datispecie&lt;br /&gt;
                temp = LeagueChallengers(-Attacker - 1)&lt;br /&gt;
                If LeagueEntrants(Defender).Name &amp;lt;&amp;gt; &amp;quot;EMPTY.TXT&amp;quot; And LeagueEntrants(Defender).Name &amp;lt;&amp;gt; &amp;quot;&amp;quot; Then&lt;br /&gt;
                  LeagueChallengers(-Attacker - 1) = LeagueEntrants(Defender)&lt;br /&gt;
                  LeagueEntrants(Defender) = temp&lt;br /&gt;
                End If&lt;br /&gt;
                &lt;br /&gt;
                Attacker = Defender&lt;br /&gt;
                Defender = Defender - 1&lt;br /&gt;
                &lt;br /&gt;
              End If&lt;br /&gt;
            ElseIf Attacker &amp;gt; 0 Then&lt;br /&gt;
              If Winner + &amp;quot;.txt&amp;quot; = LeagueEntrants(Attacker).Name Then&lt;br /&gt;
              'attacker won, he was in the league already, swap with defender&lt;br /&gt;
                Dim tempa As datispecie&lt;br /&gt;
                tempa = LeagueEntrants(Attacker)&lt;br /&gt;
                LeagueEntrants(Attacker) = LeagueEntrants(Defender)&lt;br /&gt;
                LeagueEntrants(Defender) = tempa&lt;br /&gt;
                Attacker = Defender&lt;br /&gt;
                Defender = Defender - 1&lt;br /&gt;
              End If&lt;br /&gt;
            Else&lt;br /&gt;
              MsgBox &amp;quot;Unknown Winner.  Poor programmer to blame.&amp;quot;, vbOKOnly, &amp;quot;Get a Real Job&amp;quot;&lt;br /&gt;
            End If&lt;br /&gt;
            &lt;br /&gt;
            If Defender = -1 Then&lt;br /&gt;
              'that's it, we've hit the top.  Congrats, start the next round&lt;br /&gt;
              Attacker = -1&lt;br /&gt;
              Defender = 29&lt;br /&gt;
              If LeagueChallengers(0).Name = &amp;quot;&amp;quot; Then LeagueEnd&lt;br /&gt;
            End If&lt;br /&gt;
            Contests = 0&lt;br /&gt;
            ReStarts = 0&lt;br /&gt;
            ResetContest&lt;br /&gt;
            Maxrounds = 5&lt;br /&gt;
            LeagueForm.Erase_League_Highlights&lt;br /&gt;
            If Form1.Active = True Then SetupLeagueRound&lt;br /&gt;
                          &lt;br /&gt;
              'update on screen list&lt;br /&gt;
            If LeagueForm.F1ChallengeOption.value = True Then&lt;br /&gt;
              LeagueForm.F1ChallengeOption_Click&lt;br /&gt;
            Else&lt;br /&gt;
              LeagueForm.ChallengersOption_Click&lt;br /&gt;
            End If&lt;br /&gt;
            &lt;br /&gt;
            If Form1.Active = True Then   'Form1.StartSimul&lt;br /&gt;
              StartAnotherRound = True&lt;br /&gt;
            Else&lt;br /&gt;
              StartAnotherRound = False&lt;br /&gt;
            End If&lt;br /&gt;
          End If&lt;br /&gt;
          Contest_Form.Refresh&lt;br /&gt;
          Exit Sub&lt;br /&gt;
        Else&lt;br /&gt;
          Winner = &amp;quot;Statistical Draw. Extending contest.&amp;quot;&lt;br /&gt;
        End If&lt;br /&gt;
      Next t&lt;br /&gt;
      Contest_Form.Winner.Caption = Winner&lt;br /&gt;
      If Winner &amp;lt;&amp;gt; &amp;quot;Statistical Draw. Extending contest.&amp;quot; Then&lt;br /&gt;
        Contest_Form.Winner1.Caption = &amp;quot;Winner&amp;quot;&lt;br /&gt;
      Else&lt;br /&gt;
        Maxrounds = Maxrounds + 1&lt;br /&gt;
        If MaxRoundsToDraw &amp;lt;&amp;gt; 0 And Maxrounds &amp;gt;= 10 And Maxrounds &amp;gt; MaxRoundsToDraw Then&lt;br /&gt;
          Contest_Form.Winner1.Caption = &amp;quot;Win By Draw&amp;quot;&lt;br /&gt;
          Winner = &amp;quot;Maximum Rounds Reached.&amp;quot;&lt;br /&gt;
          Contest_Form.Refresh&lt;br /&gt;
          Over = True&lt;br /&gt;
          &lt;br /&gt;
          'Declare Defender to have won&lt;br /&gt;
          Attacker = -1&lt;br /&gt;
          Defender = 29&lt;br /&gt;
          LeagueEnd&lt;br /&gt;
          &lt;br /&gt;
          Contests = 0&lt;br /&gt;
          ReStarts = 0&lt;br /&gt;
          ResetContest&lt;br /&gt;
          Maxrounds = 5&lt;br /&gt;
          LeagueForm.Erase_League_Highlights&lt;br /&gt;
          If Form1.Active = True Then SetupLeagueRound&lt;br /&gt;
                          &lt;br /&gt;
          'update on screen list&lt;br /&gt;
          If LeagueForm.F1ChallengeOption.value = True Then&lt;br /&gt;
            LeagueForm.F1ChallengeOption_Click&lt;br /&gt;
          Else&lt;br /&gt;
            LeagueForm.ChallengersOption_Click&lt;br /&gt;
          End If&lt;br /&gt;
            &lt;br /&gt;
          If Form1.Active = True Then   'Form1.StartSimul&lt;br /&gt;
            StartAnotherRound = True&lt;br /&gt;
          Else&lt;br /&gt;
            StartAnotherRound = False&lt;br /&gt;
          End If&lt;br /&gt;
          Contest_Form.Refresh&lt;br /&gt;
          Exit Sub&lt;br /&gt;
        Else&lt;br /&gt;
          Contest_Form.Winner1.Caption = &amp;quot;No Winner&amp;quot;&lt;br /&gt;
          Over = False&lt;br /&gt;
        End If&lt;br /&gt;
      End If&lt;br /&gt;
    End If&lt;br /&gt;
    Contest_Form.Refresh&lt;br /&gt;
    If Contests + 1 &amp;lt;= Maxrounds And Over = False Then&lt;br /&gt;
      Contests = Contests + 1&lt;br /&gt;
      StartAnotherRound = True&lt;br /&gt;
     'Form1.StartSimul&lt;br /&gt;
    Else&lt;br /&gt;
      StartAnotherRound = False&lt;br /&gt;
    End If&lt;br /&gt;
  End If&lt;br /&gt;
End Sub&lt;br /&gt;
&lt;br /&gt;
Public Sub SetupLeague_Options()&lt;br /&gt;
  If optionsform.Leaguename.text &amp;lt;&amp;gt; &amp;quot;&amp;quot; And LeagueMode Then&lt;br /&gt;
    Dim LeagueError As Integer&lt;br /&gt;
    &lt;br /&gt;
    F1Mode.Leaguename = optionsform.Leaguename.text&lt;br /&gt;
    &lt;br /&gt;
    LeagueError = Load_League_File(F1Mode.Leaguename)&lt;br /&gt;
    If LeagueError = -1 Then&lt;br /&gt;
      If MsgBox(&amp;quot;League file does not exist.  Make a new one?&amp;quot;, vbYesNo, &amp;quot;League Undetected&amp;quot;) = vbNo Then&lt;br /&gt;
        Exit Sub&lt;br /&gt;
      Else&lt;br /&gt;
        'make a new league file and directory.&lt;br /&gt;
        'does this automatically when user hits save after&lt;br /&gt;
        'league runs.&lt;br /&gt;
      End If&lt;br /&gt;
    ElseIf LeagueError &amp;gt; 0 Then&lt;br /&gt;
      If MsgBox(&amp;quot;A robot listed doesn't exist.  Delete from league table?&amp;quot;, vbYesNo, &amp;quot;League Robot Not Found&amp;quot;) = vbNo Then&lt;br /&gt;
        Exit Sub&lt;br /&gt;
      Else&lt;br /&gt;
        'delete robot leaguerror from league table&lt;br /&gt;
      End If&lt;br /&gt;
    End If&lt;br /&gt;
    LeagueForm.F1ChallengeOption.Caption = optionsform.Leaguename.text + &amp;quot; Challenge League&amp;quot;&lt;br /&gt;
    'LeagueForm.Visible = True ' EricL 3/20/2006 Moved this to StartNew_Click in the Options Form&lt;br /&gt;
  ElseIf optionsform.Leaguename.text = &amp;quot;&amp;quot; And LeagueMode Then&lt;br /&gt;
    MsgBox &amp;quot;No league name.  League must have a name.&amp;quot;, vbOKOnly, &amp;quot;League Name Needed&amp;quot;&lt;br /&gt;
    Exit Sub&lt;br /&gt;
  ElseIf LeagueMode = False Then&lt;br /&gt;
    LeagueForm.Visible = False&lt;br /&gt;
  End If&lt;br /&gt;
  Attacker = -1&lt;br /&gt;
  Defender = 29&lt;br /&gt;
  &lt;br /&gt;
  If Leaguererun = True Then&lt;br /&gt;
      Dim Index As Integer&lt;br /&gt;
      Dim numLeagueEntrants As Integer&lt;br /&gt;
         &lt;br /&gt;
      numLeagueEntrants = 0&lt;br /&gt;
      For Index = 0 To 29&lt;br /&gt;
        If LeagueEntrants(Index).Name &amp;lt;&amp;gt; &amp;quot;&amp;quot; And LeagueEntrants(Index).Name &amp;lt;&amp;gt; &amp;quot;EMPTY&amp;quot; Then&lt;br /&gt;
          numLeagueEntrants = numLeagueEntrants + 1&lt;br /&gt;
        End If&lt;br /&gt;
      Next Index&lt;br /&gt;
      &lt;br /&gt;
      If numLeagueEntrants &amp;lt;= 1 Then&lt;br /&gt;
        MsgBox &amp;quot;Can't rerun league.  Not enough league entrants.&amp;quot;&lt;br /&gt;
        Leaguererun = False&lt;br /&gt;
        optionsform.RerunCheck.value = 0&lt;br /&gt;
      Else&lt;br /&gt;
        For Index = 0 To 29&lt;br /&gt;
          LeagueChallengers(Index) = LeagueEntrants(Index)&lt;br /&gt;
          LeagueEntrants(Index).Name = &amp;quot;&amp;quot;&lt;br /&gt;
        Next Index&lt;br /&gt;
      End If&lt;br /&gt;
  End If&lt;br /&gt;
  &lt;br /&gt;
  SetupLeagueRound&lt;br /&gt;
End Sub&lt;br /&gt;
&lt;br /&gt;
Public Sub LeagueInputChallengers()&lt;br /&gt;
  Dim Index As Integer&lt;br /&gt;
  Dim offset As Integer&lt;br /&gt;
  Dim blank As datispecie&lt;br /&gt;
    &lt;br /&gt;
  For Index = 0 To SimOpts.SpeciesNum - 1&lt;br /&gt;
    If SimOpts.Specie(Index).Veg = True Then&lt;br /&gt;
      offset = offset + 1&lt;br /&gt;
    Else&lt;br /&gt;
      LeagueChallengers(Index - offset) = SimOpts.Specie(Index)&lt;br /&gt;
      If Index &amp;gt; 2 Then SimOpts.Specie(Index) = blank&lt;br /&gt;
      &lt;br /&gt;
      LeagueChallengers(Index - offset).Mutables.Mutations = False&lt;br /&gt;
    End If&lt;br /&gt;
    &lt;br /&gt;
    If Index - offset &amp;gt; 29 Then&lt;br /&gt;
      MsgBox &amp;quot;Not enough challenger slots to accomodate so many.  Only running the first 30 bots.&amp;quot;, vbOKOnly, &amp;quot;Too Many Challengers&amp;quot;&lt;br /&gt;
      Exit Sub&lt;br /&gt;
    End If&lt;br /&gt;
  Next Index&lt;br /&gt;
    &lt;br /&gt;
End Sub&lt;br /&gt;
&lt;br /&gt;
Public Sub SetupLeagueRound()&lt;br /&gt;
  Dim attackerfound As Boolean&lt;br /&gt;
  Dim defenderfound As Boolean&lt;br /&gt;
  Dim loopdone As Boolean&lt;br /&gt;
    &lt;br /&gt;
  SimOpts.SpeciesNum = 3&lt;br /&gt;
  'SimOpts.Specie(0) = veg spot&lt;br /&gt;
  &lt;br /&gt;
  While Not loopdone&lt;br /&gt;
    DoEvents&lt;br /&gt;
    If Attacker &amp;lt; 0 And Not attackerfound Then&lt;br /&gt;
      SimOpts.Specie(1) = LeagueChallengers(-Attacker - 1)&lt;br /&gt;
    ElseIf Attacker &amp;gt; 0 And Not attackerfound Then&lt;br /&gt;
      SimOpts.Specie(1) = LeagueEntrants(Attacker)&lt;br /&gt;
    End If&lt;br /&gt;
  &lt;br /&gt;
    If Not defenderfound Then&lt;br /&gt;
      SimOpts.Specie(2) = LeagueEntrants(Defender)&lt;br /&gt;
      SimOpts.Specie(2).Posrg = SimOpts.Specie(1).Posrg&lt;br /&gt;
      SimOpts.Specie(2).Posdn = SimOpts.Specie(1).Posdn&lt;br /&gt;
    End If&lt;br /&gt;
  &lt;br /&gt;
    'check to see if attacker and defender are the same&lt;br /&gt;
    'if so, then prompt the user for action&lt;br /&gt;
    &lt;br /&gt;
    If SimOpts.Specie(1).Name = &amp;quot;&amp;quot; Then&lt;br /&gt;
      SimOpts.Specie(1).Name = &amp;quot;EMPTY.TXT&amp;quot;&lt;br /&gt;
      TmpOpts.Specie(1).Name = &amp;quot;EMPTY.TXT&amp;quot;&lt;br /&gt;
    End If&lt;br /&gt;
    If SimOpts.Specie(2).Name = &amp;quot;&amp;quot; Then&lt;br /&gt;
      SimOpts.Specie(2).Name = &amp;quot;EMPTY.TXT&amp;quot;&lt;br /&gt;
      TmpOpts.Specie(2).Name = &amp;quot;EMPTY.TXT&amp;quot;&lt;br /&gt;
    End If&lt;br /&gt;
    &lt;br /&gt;
    If Left(SimOpts.Specie(1).Name, Len(SimOpts.Specie(1).Name) - 4) = &amp;quot;EMPTY&amp;quot; Then&lt;br /&gt;
      attackerfound = False&lt;br /&gt;
      If Attacker &amp;lt; 0 Then&lt;br /&gt;
        Attacker = Attacker + 1&lt;br /&gt;
        If Attacker = 0 Then Attacker = 29&lt;br /&gt;
      Else&lt;br /&gt;
        Attacker = Attacker - 1&lt;br /&gt;
      End If&lt;br /&gt;
    Else&lt;br /&gt;
      attackerfound = True&lt;br /&gt;
    End If&lt;br /&gt;
    &lt;br /&gt;
    If Left(SimOpts.Specie(2).Name, Len(SimOpts.Specie(2).Name) - 4) = &amp;quot;EMPTY&amp;quot; Then&lt;br /&gt;
      defenderfound = False&lt;br /&gt;
      Defender = Defender - 1&lt;br /&gt;
      If Defender &amp;lt; 0 Then&lt;br /&gt;
        Defender = 0&lt;br /&gt;
        defenderfound = True&lt;br /&gt;
      End If&lt;br /&gt;
    Else&lt;br /&gt;
      defenderfound = True&lt;br /&gt;
    End If&lt;br /&gt;
    &lt;br /&gt;
    If attackerfound And defenderfound And SimOpts.Specie(2).Name = SimOpts.Specie(1).Name Then&lt;br /&gt;
      If MsgBox(&amp;quot;Challenger and Defender are the same bot.  Continue with this Challenger?&amp;quot;, vbYesNo, &amp;quot;Identical Bots&amp;quot;) = vbYes Then&lt;br /&gt;
        'run these two bots against each other.&lt;br /&gt;
      Else&lt;br /&gt;
        'bot has lost, move on to next challenger&lt;br /&gt;
      End If&lt;br /&gt;
    End If&lt;br /&gt;
    If attackerfound And defenderfound Then loopdone = True&lt;br /&gt;
  Wend&lt;br /&gt;
&lt;br /&gt;
  'now check to see if we need to move challenger up slots&lt;br /&gt;
  'for an empty league&lt;br /&gt;
  If LeagueEntrants(0).Name = &amp;quot;&amp;quot; Or Left(LeagueEntrants(0).Name, 5) = &amp;quot;EMPTY&amp;quot; Then&lt;br /&gt;
    'empty league file&lt;br /&gt;
    LeagueEntrants(0) = LeagueChallengers(-Attacker - 1)&lt;br /&gt;
    LeagueEnd&lt;br /&gt;
    SetupLeagueRound&lt;br /&gt;
  ElseIf Defender &amp;lt;&amp;gt; 29 And Attacker &amp;lt; 0 Then&lt;br /&gt;
    LeagueEntrants(Defender + 1) = LeagueChallengers(-Attacker - 1)&lt;br /&gt;
    LeagueChallengers(-Attacker - 1).Name = &amp;quot;&amp;quot;&lt;br /&gt;
    Attacker = Defender + 1&lt;br /&gt;
    'empty league&lt;br /&gt;
  End If&lt;br /&gt;
&lt;br /&gt;
 ' If SimOpts.Specie(1).color = vbBlue And SimOpts.Specie(2).color = vbBlue Then&lt;br /&gt;
    SimOpts.Specie(0).color = vbGreen&lt;br /&gt;
    TmpOpts.Specie(0).color = vbGreen&lt;br /&gt;
    SimOpts.Specie(1).color = vbRed&lt;br /&gt;
    TmpOpts.Specie(1).color = vbRed&lt;br /&gt;
    SimOpts.Specie(2).color = vbBlue&lt;br /&gt;
    TmpOpts.Specie(2).color = vbBlue&lt;br /&gt;
 ' End If&lt;br /&gt;
End Sub&lt;br /&gt;
&lt;br /&gt;
Public Function League_Eyefudge(robotnumber As Integer, t As Long)&lt;br /&gt;
'tests to see if two bots have the same number of refeye statements.&lt;br /&gt;
'if so, it adds the following gene at teh end of the DNA&lt;br /&gt;
'This is definately a fudge, both in practice and implementation.&lt;br /&gt;
'A better system will be needed if anything is done to break this&lt;br /&gt;
'(such as a bot not using refeyes for conspec identification)&lt;br /&gt;
'or bots that are so close that this gives a virus bot an undue edge&lt;br /&gt;
'Later: add a prompt for action and a small timer.  If timer runs out then&lt;br /&gt;
'we use the default action below&lt;br /&gt;
&lt;br /&gt;
  If eye11 = rob(robotnumber).occurr(8) Then&lt;br /&gt;
  'If SimOpts.TotRunCycle &amp;lt; 3 And eye11 = rob(robotnumber).occurr(8) Then&lt;br /&gt;
  ReDim Preserve rob(robotnumber).DNA(UBound(rob(robotnumber).DNA) + 6)&lt;br /&gt;
    &lt;br /&gt;
    'cond&lt;br /&gt;
    rob(robotnumber).DNA(t).tipo = 4&lt;br /&gt;
    rob(robotnumber).DNA(t).value = 1&lt;br /&gt;
    t = t + 1&lt;br /&gt;
    &lt;br /&gt;
    '*.eye5&lt;br /&gt;
    rob(robotnumber).DNA(t).tipo = 1&lt;br /&gt;
    rob(robotnumber).DNA(t).value = 505&lt;br /&gt;
    t = t + 1&lt;br /&gt;
    &lt;br /&gt;
    'dup&lt;br /&gt;
    rob(robotnumber).DNA(t).tipo = 2&lt;br /&gt;
    rob(robotnumber).DNA(t).value = 23&lt;br /&gt;
    t = t + 1&lt;br /&gt;
    &lt;br /&gt;
    '!=&lt;br /&gt;
    rob(robotnumber).DNA(t).tipo = 3&lt;br /&gt;
    rob(robotnumber).DNA(t).value = 4&lt;br /&gt;
    t = t + 1&lt;br /&gt;
    &lt;br /&gt;
    'start&lt;br /&gt;
    rob(robotnumber).DNA(t).tipo = 4&lt;br /&gt;
    rob(robotnumber).DNA(t).value = 2&lt;br /&gt;
    t = t + 1&lt;br /&gt;
    &lt;br /&gt;
    'stop&lt;br /&gt;
    rob(robotnumber).DNA(t).tipo = 4&lt;br /&gt;
    rob(robotnumber).DNA(t).value = 3&lt;br /&gt;
    t = t + 1&lt;br /&gt;
    &lt;br /&gt;
    'end&lt;br /&gt;
    rob(robotnumber).DNA(t).tipo = 10       ' EricL - Changed tipo from 4 to 10, March 15, 2006&lt;br /&gt;
    rob(robotnumber).DNA(t).value = 1       ' EricL - Changed value from 4 to 1, March 15, 2006&lt;br /&gt;
  &lt;br /&gt;
    rob(robotnumber).occurr(8) = rob(robotnumber).occurr(8) + 1&lt;br /&gt;
  End If&lt;br /&gt;
End Function&lt;br /&gt;
&lt;br /&gt;
Public Sub Record_11eyes(eyes As Integer)&lt;br /&gt;
  eye11 = eyes&lt;br /&gt;
End Sub&lt;br /&gt;
&lt;br /&gt;
Private Sub LeagueEnd()&lt;br /&gt;
  Dim i As Integer&lt;br /&gt;
  &lt;br /&gt;
  If LeagueChallengers(-Attacker).Name = &amp;quot;EMPTY&amp;quot; Or LeagueChallengers(-Attacker).Name = &amp;quot;&amp;quot; Then&lt;br /&gt;
    LeagueMode = False&lt;br /&gt;
    ContestMode = False&lt;br /&gt;
 '   SimOpts.F1 = False&lt;br /&gt;
    &lt;br /&gt;
    'pause simulation.&lt;br /&gt;
    Form1.Active = False&lt;br /&gt;
    Form1.SecTimer.Enabled = False&lt;br /&gt;
    &lt;br /&gt;
    If MsgBox(&amp;quot;The league has finished running.  Simulation paused.  Save league file?&amp;quot;, vbYesNo, &amp;quot;League Finished.&amp;quot;) = vbYes Then&lt;br /&gt;
      'save results into file&lt;br /&gt;
      Save_League_File Leaguename&lt;br /&gt;
    End If&lt;br /&gt;
    LeagueForm.Hide&lt;br /&gt;
    Contest_Form.Hide&lt;br /&gt;
  &lt;br /&gt;
  Else&lt;br /&gt;
    Dim Index As Integer&lt;br /&gt;
    &lt;br /&gt;
    For Index = 0 To 29&lt;br /&gt;
      LeagueChallengers(Index) = LeagueChallengers(Index + 1)&lt;br /&gt;
    Next Index&lt;br /&gt;
    &lt;br /&gt;
    LeagueChallengers(29).Name = &amp;quot;&amp;quot;&lt;br /&gt;
  End If&lt;br /&gt;
   &lt;br /&gt;
  Attacker = -1&lt;br /&gt;
  Defender = 29&lt;br /&gt;
    &lt;br /&gt;
  'Puts things back the way they were before the league began so that the species list looks okay.&lt;br /&gt;
  TmpOpts = SimOpts&lt;br /&gt;
&lt;br /&gt;
  &lt;br /&gt;
  'Let the sim play again so that it's not paused for the user&lt;br /&gt;
 ' Form1.Active = True&lt;br /&gt;
 ' Form1.SecTimer.Enabled = True&lt;br /&gt;
End Sub&lt;br /&gt;
&lt;br /&gt;
Private Sub stuff()&lt;br /&gt;
&lt;br /&gt;
'move up all challengers&lt;br /&gt;
    Dim Index As Integer&lt;br /&gt;
    For Index = 1 To 29&lt;br /&gt;
      LeagueChallengers(Index - 1) = LeagueChallengers(Index)&lt;br /&gt;
    Next Index&lt;br /&gt;
    &lt;br /&gt;
    Dim empty0 As datispecie&lt;br /&gt;
    LeagueChallengers(29) = empty0&lt;br /&gt;
End Sub&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>Griz</name></author>	</entry>

	<entry>
		<id>http://wiki.darwinbots.com/index.php?title=User_talk:Jez&amp;diff=2333</id>
		<title>User talk:Jez</title>
		<link rel="alternate" type="text/html" href="http://wiki.darwinbots.com/index.php?title=User_talk:Jez&amp;diff=2333"/>
				<updated>2006-12-26T00:15:03Z</updated>
		
		<summary type="html">&lt;p&gt;Griz: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;hi Jez ...&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Here's one cool thing ... you should be notified if you have messages here when you sign in to the wiki.&amp;lt;br&amp;gt;&lt;br /&gt;
so these talk pages work well for communicating back and forth. mine is {{User:Griz/sig}}&amp;lt;br&amp;gt;&lt;br /&gt;
all users have them ... so you can contact [[User_talk:Numsgil|Nums]] or [[User_talk:EricL|Eric]] or [[User_talk:Endy|Endy]] too.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
i see you put some stuff in the [[Sandbox]] ...&amp;lt;br&amp;gt;&lt;br /&gt;
so will move it here and try to address them.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
also ... this page can always be edited, old matl overwritten ... whatever ...&amp;lt;br&amp;gt;&lt;br /&gt;
so put anything you want here, or at my talk page, in the way of questions.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
i put this page, your talk page, on my watchlist too ...&amp;lt;br&amp;gt;&lt;br /&gt;
so i can go check my watchlist anytime and be advised if any of the pages&amp;lt;br&amp;gt;&lt;br /&gt;
i watch have had any activity. you can add any page, like Debugging, etc.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
btw ... perhaps you know this already, or not ...&amp;lt;br&amp;gt;&lt;br /&gt;
the first page i come to here is [[Special:Recentchanges]]&amp;lt;br&amp;gt;&lt;br /&gt;
gives me a quick look at who is doing what, where.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
so ... is this a list of what you want to see implimented here?&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
:'''''A quick guide to installing VB6.0 first time I tried a full install and clicking ignore for all the bits it didn't have &lt;br /&gt;
:'''''nearly killed me, plus it didn't install at the end :( Need to just install most basic.&lt;br /&gt;
&lt;br /&gt;
:: what should it consist of? can you write up what would have helped you? it's been so long since i&lt;br /&gt;
:: did it that i don't recall. just a few hints, as in your above? i can then put it somewhere ...&lt;br /&gt;
:: maybe a note on the VB6 download page.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
:'''''The post by Ulciscor on bug reporting, I suggest we use to link all the sources of info from, is here: :'''''[http://www.darwinbots.com/Forum/index.php?showtopic=874 Bug Reporting]&lt;br /&gt;
:'''''That is pretty much the only relevant info on the forum, preceeding the topic we are using atm, that I have found so far.&lt;br /&gt;
&lt;br /&gt;
:: ok. so what are you saying? put links there ... leading to relevant pages here?&lt;br /&gt;
:: i absolutely detest the forum layout ... and find it horribly chaotic for finding info ...&lt;br /&gt;
:: or maintaining any kind of continuity, so i'll leave that end up to you.&lt;br /&gt;
:: i know wikis ... so will concentrate my efforts here ... and together maybe we can tie the two together.&lt;br /&gt;
:: what think ye?&lt;br /&gt;
----&lt;br /&gt;
:'''''Need a link to download latest VB code, I still can only find C++ code source &lt;br /&gt;
::that would be on the [[Source_Code]] page ... the last entry under  Ver 2.4X, Darwinsource2.42.9r (Latest Buddy Drop)&lt;br /&gt;
::actual link is http://www.darwinbots.com/FTP/Darwinsource2.42.9r.zip&lt;br /&gt;
::that's what i've been waiting for ... as now i can go in and play myself with the most up-to-date version.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
DB is the only forum I am active on, forgive my ignorance in replying this way:&lt;br /&gt;
&lt;br /&gt;
Until your (welcome) call to look at the wiki. the last time I used it was when I re-returned to DB and used wiki as an aid to designing bots; the reason I feel it is a needed 'newb' resource and, as you pointed out. a much more easily accessible reource for such, is that is it is so much easily used as a source of information than the chaotic forum. (I am not wiki trained btw, maybe part of the reason I dont communicate via it)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font color=#007700&amp;gt;&lt;br /&gt;
:you'll pick it up. what's nice is, it's all editable. you can edit/overwrite/clear this page anytime ...&lt;br /&gt;
:but not only that ... it's still all kept in history ... so anything mistakenly jettisoned can be recovered.&lt;br /&gt;
:i think of wikis as virtual etch-a-sketches. ;)&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
While you: absolutely detest the forum layout ... and find it horribly chaotic for finding info ...&lt;br /&gt;
It is a great place for discussion, I agree absolutely, it is a horrible place to find info, that's why I'm so pleased you are taking an interest in the wiki. All I was trying to do by adding those comments was make sure (for newb's) that the information was as clear and relevant as it could be. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;font color=#007700&amp;gt;&lt;br /&gt;
:i was really jazzed back when i first discovered it ... and did a lot of work here ...&lt;br /&gt;
:then realized no one cared or even took advantage of it.&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
When it comes to links, the same as I have tried to do with the leagues, I want the relevant information as clearly marked as possible. Can take ages to track stuff down on the forum sometimes. I hate that. The Wiki needs to work in tandem with the forum though and andding links or making stickies (to the forum) seems (to me) the easiest way of doing this. If you are willing to fiddle with the wiki and request relevant links from apppropriate posts then I am more than willing to sort that out. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;font color=#007700&amp;gt;&lt;br /&gt;
:sounds great to me&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Working as a group is always stronger. (If DB evolution doesn't prove me wrong!) &lt;br /&gt;
Eventually a forum post with all the wiki links for newbs info maybe.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font color=#007700&amp;gt;&lt;br /&gt;
:exactly.&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
When it comes to downloading VB, the first time I chose every option, I'm like that, just a reminder to choose the most basic instal might be helpful; the second option on the first choice and no changes to the second choice was (I think) the way that worked for me.&lt;br /&gt;
&lt;br /&gt;
I will add that link for the VB sourc download to the forum soon, in fact if not by tommorow then kick me. Thanks for pointing out it is in wiki not the forum.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font color=#007700&amp;gt;&lt;br /&gt;
:ok. i don't recall the steps i did to install it ... &lt;br /&gt;
:went thru the same as you ... just kept clicking whatever button it was ...&lt;br /&gt;
:and still got error messages but ... it somehow worked.&lt;br /&gt;
:installing and getting DB to work the first time was even more difficult ...&lt;br /&gt;
:as there was little guidance at the time ... &lt;br /&gt;
:having load the old 2.0 first was only mentioned in passing ...&lt;br /&gt;
:and the sysvars thing wasn't explained at all.&lt;br /&gt;
:i had runtime error after runtime error that no one could reproduce ...&lt;br /&gt;
:but of course they all had their paths set correctly ... while i didn't have a clue.&lt;br /&gt;
:i can only imagine how many folks give up before they ever get it up and happening.&lt;br /&gt;
&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Regards&lt;br /&gt;
&lt;br /&gt;
Jez&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font color=#007700&amp;gt;&lt;br /&gt;
:well ... you know how to get ahold of me here ...&lt;br /&gt;
:i'll be checking in often and trying to sort out where all the league code is.&lt;br /&gt;
&lt;br /&gt;
:btw ... i posted this at the forum &lt;br /&gt;
:http://www.darwinbots.com/Forum/index.php?showtopic=1837&amp;amp;pid=1369864&amp;amp;st=15&amp;amp;#entry1369864  &lt;br /&gt;
:and will add it to the Debugging page as well but want to get it to you ...&lt;br /&gt;
:as it may be a big help in debugging those long sims:&lt;br /&gt;
&amp;lt;/font&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
for those running/searching for those errors in long sims ...&lt;br /&gt;
if you run the compiled version and do an occasional save ...&lt;br /&gt;
[this can be automatically done, yes?]&lt;br /&gt;
then hopefully when an error is encountered and an error.sim&lt;br /&gt;
file produced ...&lt;br /&gt;
you can then fire it up in VB, ensuring the error trapping is&lt;br /&gt;
commented out, load in the error sim or ideally, the save that&lt;br /&gt;
you captured which occurred just prior to the error ...&lt;br /&gt;
and then run it from there using the debugger.&lt;br /&gt;
this may not always work, as there seem to be many varialbles ...&lt;br /&gt;
but I have had it do exactly this for me in the past ...&lt;br /&gt;
even using the generated error.sim ...&lt;br /&gt;
the error still existing ...&lt;br /&gt;
which can certainly save a great deal of time debugging.&lt;br /&gt;
[remember to save/rename the error.sim to keep on file&lt;br /&gt;
for continued debugging, so it isn't overwritten]&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
later {{User:Griz/sig}} 16:55, 25 Dec 2006 (MST)&lt;/div&gt;</summary>
		<author><name>Griz</name></author>	</entry>

	<entry>
		<id>http://wiki.darwinbots.com/index.php?title=DeBugging&amp;diff=2340</id>
		<title>DeBugging</title>
		<link rel="alternate" type="text/html" href="http://wiki.darwinbots.com/index.php?title=DeBugging&amp;diff=2340"/>
				<updated>2006-12-26T00:05:18Z</updated>
		
		<summary type="html">&lt;p&gt;Griz: added debugging tip for those long, long sims&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Compiler Related Recommendations ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== In-game Bug Detecting ==&lt;br /&gt;
&lt;br /&gt;
It is possible to directly debug at least some of the random glitches that are found in the DB universe from within the game itself. This thanks largly to a useful(if dated) console, which supplies information about the various memlocs. Although they can't be directly fixed from within the game, valuable information and clues to a bug's exact cause can be obtained.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
:How about some of you 'seasoned' VB users giving the rest of us a few tips&lt;br /&gt;
:on VB and Debugging so we might be able to help out tracking down errors?&lt;br /&gt;
:Anyone signed in here at the Wiki can edit and add to these pages.&lt;br /&gt;
:Just click on edit and have at it.&lt;br /&gt;
:Not to worry about correct/ideal formatting ... &lt;br /&gt;
:we'll figure it out.&lt;br /&gt;
:{{User:Griz/sig}} 15:04, 24 Dec 2006 (MST)&lt;br /&gt;
&lt;br /&gt;
= Basic Debugging from VB =&lt;br /&gt;
&lt;br /&gt;
== error.sim ==&lt;br /&gt;
From Eric:&amp;lt;br&amp;gt;&lt;br /&gt;
There are two lines where the comment portion of the source code line indicates that line should be commented out when running under the debugger. Just put a single apostrophe at the beginning of the line. This way, the source code won't try to handle the exception (an 'exception' is just a fancy name for a crash, a divide by 0 or something like that) and VB will get the error. When an exception does happen, you should get a pop-up dialog that offers to let you debug the problem. When you hit the debug button, it should highlight the source code line where the exception is occurring.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
This is the only one I know of that has to be commented in/out:&lt;br /&gt;
In MDIForm1 (code), Private Sub simload&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt; &lt;br /&gt;
Private Sub simload(Optional path As String)&lt;br /&gt;
  Dim I As Integer&lt;br /&gt;
  Dim path2 As String&lt;br /&gt;
  &lt;br /&gt;
On Error GoTo fine ' Uncomment this line in the compiled version error.sim&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Comment this '''''On Error''''' out when using VB and Debugger ...&amp;lt;br&amp;gt;&lt;br /&gt;
or it will abort and go save the error.sim.&amp;lt;br&amp;gt;&lt;br /&gt;
Then remember to uncomment it once you have located and fixed an &amp;lt;br&amp;gt;&lt;br /&gt;
error and want to recompile or the recompiled prog won't do it's&amp;lt;br&amp;gt; &lt;br /&gt;
'''''save error.sim'''''&lt;br /&gt;
Also ... once the debugger has sent you to the break ...&amp;lt;br&amp;gt;&lt;br /&gt;
'hovering' the mouse over variables in the code will&amp;lt;br&amp;gt;&lt;br /&gt;
give you their value at that time and place in the execution.&amp;lt;br&amp;gt;&lt;br /&gt;
this is helpful in finding overflows or variables out of range.&amp;lt;br&amp;gt;&lt;br /&gt;
using this, even I have been able to locate errors on occasion.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Switching between Compiled and VB for Debugging ===&lt;br /&gt;
:for those running/searching for those errors in long sims ...&lt;br /&gt;
:if you run the compiled version and do an occasional save ...&lt;br /&gt;
:[this can be automatically done, yes?]&lt;br /&gt;
:then hopefully when an error is encountered and an error.sim&lt;br /&gt;
:file produced ...&lt;br /&gt;
:you can then fire it up in VB, ensure the error trapping is&lt;br /&gt;
:commented out, load in the error sim or the save that&lt;br /&gt;
:you captured which occurred just prior to the error ...&lt;br /&gt;
:and then run it from there using the debugger.&lt;br /&gt;
:this may not always work, as there seem to be many variables ...&lt;br /&gt;
:but I have had it do exactly this for me in the past ...&lt;br /&gt;
:even using the generated error.sim ...&lt;br /&gt;
:the error still existing ...&lt;br /&gt;
:which can certainly save a great deal of time debugging.&lt;br /&gt;
:[remember to save/rename the error.sim to keep on file&lt;br /&gt;
:for continued debugging, so it isn't overwritten]&lt;br /&gt;
&lt;br /&gt;
== Search ==&lt;br /&gt;
To search from VB, click on the Binocular icon on the toolbar.&amp;lt;br&amp;gt;&lt;br /&gt;
Select where you wish to search, current modual, current project.&amp;lt;br&amp;gt;&lt;br /&gt;
This will step you thru all occurrences.&lt;br /&gt;
== Highlighting Variables ==&lt;br /&gt;
Once the debugger has sent you to a line containing an error,&amp;lt;br&amp;gt;&lt;br /&gt;
use the mouse to highlight variables to determine their value.&amp;lt;br&amp;gt;&lt;br /&gt;
This may help to determine if a variable is out-of-range.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
:'''''a few notes  from Ulciscor on the Forum &lt;br /&gt;
:'''''http://www.darwinbots.com/Forum/index.php?showtopic=874 &lt;br /&gt;
&lt;br /&gt;
If you are running the program from VB, click 'Debug' when the error box appears. This will bring the VB code to focus with the offending code highlighted in yellow. This highlighted code should be copied along with the name of the function it is from (if applicable) and the form or module, which will be shown on the right.&lt;br /&gt;
&lt;br /&gt;
The highlighted code will also display the values of the various variables and properties, at the point when the program crashed, when you hover your mouse over them. It is a good idea to note down the values of each part of the code and post them up with everything else.&lt;br /&gt;
&lt;br /&gt;
If the error occurs from the EXE, then describe what was happening in the sim or what you did before the glitch, or possibly provide the sim file, which should be zipped to save space.&lt;br /&gt;
&lt;br /&gt;
All this info will help us track down the error and its cause, and so to work out possible solutions.&lt;br /&gt;
&lt;br /&gt;
== Setting Breakpoints ==&lt;br /&gt;
pause VB, highlight a line, press F9&lt;br /&gt;
&lt;br /&gt;
== The Immediate Window ==&lt;br /&gt;
The immediate window in VB is a mostly a place where you can execute code you write on the fly while debugging - code that is not part of the program, but code you want to execute right then for help in debugging. Say you hit a breakpoint and want to step through from there, but with a certain set of variables having a certain set of values, say to reproduce a bug further down the line. Well, instead of waiting for the program to happen upon those values, you can change those variable values manually in the immediate window e.g. x = 5, y = 10, etc. and then proceed. The code you type in the immediate window is, well, immediate. It does not become part of the DB source code - it only executes right there and then is gone. Also useful for things like printing variable values at breakpoints.&lt;br /&gt;
== what else? ==&lt;/div&gt;</summary>
		<author><name>Griz</name></author>	</entry>

	<entry>
		<id>http://wiki.darwinbots.com/index.php?title=User_talk:Jez&amp;diff=2330</id>
		<title>User talk:Jez</title>
		<link rel="alternate" type="text/html" href="http://wiki.darwinbots.com/index.php?title=User_talk:Jez&amp;diff=2330"/>
				<updated>2006-12-25T23:55:36Z</updated>
		
		<summary type="html">&lt;p&gt;Griz: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;hi Jez ...&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Here's one cool thing ... you should be notified if you have messages here when you sign in to the wiki.&amp;lt;br&amp;gt;&lt;br /&gt;
so these talk pages work well for communicating back and forth. mine is {{User:Griz/sig}}&amp;lt;br&amp;gt;&lt;br /&gt;
all users have them ... so you can contact [[User_talk:Numsgil|Nums]] or [[User_talk:EricL|Eric]] or [[User_talk:Endy|Endy]] too.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
i see you put some stuff in the [[Sandbox]] ...&amp;lt;br&amp;gt;&lt;br /&gt;
so will move it here and try to address them.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
also ... this page can always be edited, old matl overwritten ... whatever ...&amp;lt;br&amp;gt;&lt;br /&gt;
so put anything you want here, or at my talk page, in the way of questions.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
i put this page, your talk page, on my watchlist too ...&amp;lt;br&amp;gt;&lt;br /&gt;
so i can go check my watchlist anytime and be advised if any of the pages&amp;lt;br&amp;gt;&lt;br /&gt;
i watch have had any activity. you can add any page, like Debugging, etc.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
btw ... perhaps you know this already, or not ...&amp;lt;br&amp;gt;&lt;br /&gt;
the first page i come to here is [[Special:Recentchanges]]&amp;lt;br&amp;gt;&lt;br /&gt;
gives me a quick look at who is doing what, where.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
so ... is this a list of what you want to see implimented here?&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
:'''''A quick guide to installing VB6.0 first time I tried a full install and clicking ignore for all the bits it didn't have &lt;br /&gt;
:'''''nearly killed me, plus it didn't install at the end :( Need to just install most basic.&lt;br /&gt;
&lt;br /&gt;
:: what should it consist of? can you write up what would have helped you? it's been so long since i&lt;br /&gt;
:: did it that i don't recall. just a few hints, as in your above? i can then put it somewhere ...&lt;br /&gt;
:: maybe a note on the VB6 download page.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
:'''''The post by Ulciscor on bug reporting, I suggest we use to link all the sources of info from, is here: :'''''[http://www.darwinbots.com/Forum/index.php?showtopic=874 Bug Reporting]&lt;br /&gt;
:'''''That is pretty much the only relevant info on the forum, preceeding the topic we are using atm, that I have found so far.&lt;br /&gt;
&lt;br /&gt;
:: ok. so what are you saying? put links there ... leading to relevant pages here?&lt;br /&gt;
:: i absolutely detest the forum layout ... and find it horribly chaotic for finding info ...&lt;br /&gt;
:: or maintaining any kind of continuity, so i'll leave that end up to you.&lt;br /&gt;
:: i know wikis ... so will concentrate my efforts here ... and together maybe we can tie the two together.&lt;br /&gt;
:: what think ye?&lt;br /&gt;
----&lt;br /&gt;
:'''''Need a link to download latest VB code, I still can only find C++ code source &lt;br /&gt;
::that would be on the [[Source_Code]] page ... the last entry under  Ver 2.4X, Darwinsource2.42.9r (Latest Buddy Drop)&lt;br /&gt;
::actual link is http://www.darwinbots.com/FTP/Darwinsource2.42.9r.zip&lt;br /&gt;
::that's what i've been waiting for ... as now i can go in and play myself with the most up-to-date version.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
DB is the only forum I am active on, forgive my ignorance in replying this way:&lt;br /&gt;
&lt;br /&gt;
Until your (welcome) call to look at the wiki. the last time I used it was when I re-returned to DB and used wiki as an aid to designing bots; the reason I feel it is a needed 'newb' resource and, as you pointed out. a much more easily accessible reource for such, is that is it is so much easily used as a source of information than the chaotic forum. (I am not wiki trained btw, maybe part of the reason I dont communicate via it)&lt;br /&gt;
&lt;br /&gt;
:''you'll pick it up. what's nice is, it's all editable. you can edit/overwrite/clear this page anytime ...&lt;br /&gt;
:''but not only that ... it's still all kept in history ... so anything mistakenly jettisoned can be recovered.&lt;br /&gt;
:''i think of wikis as virtual etch-a-sketches. ;)&lt;br /&gt;
&lt;br /&gt;
While you: absolutely detest the forum layout ... and find it horribly chaotic for finding info ...&lt;br /&gt;
It is a great place for discussion, I agree absolutely, it is a horrible place to find info, that's why I'm so pleased you are taking an interest in the wiki. All I was trying to do by adding those comments was make sure (for newb's) that the information was as clear and relevant as it could be. &lt;br /&gt;
&lt;br /&gt;
:''i was really jazzed back when i first discovered it ... and did a lot of work here ...&lt;br /&gt;
:''then realized no one cared or even took advantage of it.&lt;br /&gt;
&lt;br /&gt;
When it comes to links, the same as I have tried to do with the leagues, I want the relevant information as clearly marked as possible. Can take ages to track stuff down on the forum sometimes. I hate that. The Wiki needs to work in tandem with the forum though and andding links or making stickies (to the forum) seems (to me) the easiest way of doing this. If you are willing to fiddle with the wiki and request relevant links from apppropriate posts then I am more than willing to sort that out. &lt;br /&gt;
&lt;br /&gt;
:''sounds great to me&lt;br /&gt;
&lt;br /&gt;
Working as a group is always stronger. (If DB evolution doesn't prove me wrong!) &lt;br /&gt;
Eventually a forum post with all the wiki links for newbs info maybe.&lt;br /&gt;
&lt;br /&gt;
:''exactly.&lt;br /&gt;
&lt;br /&gt;
When it comes to downloading VB, the first time I chose every option, I'm like that, just a reminder to choose the most basic instal might be helpful; the second option on the first choice and no changes to the second choice was (I think) the way that worked for me.&lt;br /&gt;
&lt;br /&gt;
I will add that link for the VB sourc download to the forum soon, in fact if not by tommorow then kick me. Thanks for pointing out it is in wiki not the forum.&lt;br /&gt;
&lt;br /&gt;
:''ok. i don't recall the steps i did to install it ... &lt;br /&gt;
:''went thru the same as you ... just kept clicking whatever button it was ...&lt;br /&gt;
:''and still got error messages but ... it somehow worked.&lt;br /&gt;
:''installing and getting DB to work the first time was even more difficult ...&lt;br /&gt;
:''as there was little guidance at the time ... &lt;br /&gt;
:''having load the old 2.0 first was only mentioned in passing ...&lt;br /&gt;
:''and the sysvars thing wasn't explained at all.&lt;br /&gt;
:''i had runtime error after runtime error that no one could reproduce ...&lt;br /&gt;
:''but of course they all had their paths set correctly ... while i didn't have a clue.&lt;br /&gt;
:''i can only imagine how many folks give up before they ever get it up and happening.&lt;br /&gt;
&lt;br /&gt;
Regards&lt;br /&gt;
&lt;br /&gt;
Jez&lt;br /&gt;
&lt;br /&gt;
:''well ... you know how to get ahold of me here ...&lt;br /&gt;
:''i'll be checking in often and trying to sort out where all the league code is.&lt;br /&gt;
&lt;br /&gt;
:''btw ... i posted this at the forum &lt;br /&gt;
:''http://www.darwinbots.com/Forum/index.php?showtopic=1837&amp;amp;pid=1369864&amp;amp;st=15&amp;amp;#entry1369864  &lt;br /&gt;
:''and will add it to the Debugging page as well but want to get it to you ...&lt;br /&gt;
:''as it may be a big help in debugging those long sims:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
for those running/searching for those errors in long sims ...&lt;br /&gt;
if you run the compiled version and do an occasional save ...&lt;br /&gt;
[this can be automatically done, yes?]&lt;br /&gt;
then hopefully when an error is encountered and an error.sim&lt;br /&gt;
file produced ...&lt;br /&gt;
you can then fire it up in VB, ensuring the error trapping is&lt;br /&gt;
commented out, load in the error sim or ideally, the save that&lt;br /&gt;
you captured which occurred just prior to the error ...&lt;br /&gt;
and then run it from there using the debugger.&lt;br /&gt;
this may not always work, as there seem to be many varialbles ...&lt;br /&gt;
but I have had it do exactly this for me in the past ...&lt;br /&gt;
even using the generated error.sim ...&lt;br /&gt;
the error still existing ...&lt;br /&gt;
which can certainly save a great deal of time debugging.&lt;br /&gt;
[remember to save/rename the error.sim to keep on file&lt;br /&gt;
for continued debugging, so it isn't overwritten]&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
later {{User:Griz/sig}} 16:55, 25 Dec 2006 (MST)&lt;/div&gt;</summary>
		<author><name>Griz</name></author>	</entry>

	<entry>
		<id>http://wiki.darwinbots.com/index.php?title=DeBugging&amp;diff=2329</id>
		<title>DeBugging</title>
		<link rel="alternate" type="text/html" href="http://wiki.darwinbots.com/index.php?title=DeBugging&amp;diff=2329"/>
				<updated>2006-12-25T17:54:13Z</updated>
		
		<summary type="html">&lt;p&gt;Griz: /* Highlighting Variables */added Ulciscor's note&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Compiler Related Recommendations ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== In-game Bug Detecting ==&lt;br /&gt;
&lt;br /&gt;
It is possible to directly debug at least some of the random glitches that are found in the DB universe from within the game itself. This thanks largly to a useful(if dated) console, which supplies information about the various memlocs. Although they can't be directly fixed from within the game, valuable information and clues to a bug's exact cause can be obtained.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
:How about some of you 'seasoned' VB users giving the rest of us a few tips&lt;br /&gt;
:on VB and Debugging so we might be able to help out tracking down errors?&lt;br /&gt;
:Anyone signed in here at the Wiki can edit and add to these pages.&lt;br /&gt;
:Just click on edit and have at it.&lt;br /&gt;
:Not to worry about correct/ideal formatting ... &lt;br /&gt;
:we'll figure it out.&lt;br /&gt;
:{{User:Griz/sig}} 15:04, 24 Dec 2006 (MST)&lt;br /&gt;
&lt;br /&gt;
= Basic Debugging from VB =&lt;br /&gt;
&lt;br /&gt;
== error.sim ==&lt;br /&gt;
From Eric:&amp;lt;br&amp;gt;&lt;br /&gt;
There are two lines where the comment portion of the source code line indicates that line should be commented out when running under the debugger. Just put a single apostrophe at the beginning of the line. This way, the source code won't try to handle the exception (an 'exception' is just a fancy name for a crash, a divide by 0 or something like that) and VB will get the error. When an exception does happen, you should get a pop-up dialog that offers to let you debug the problem. When you hit the debug button, it should highlight the source code line where the exception is occurring.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
This is the only one I know of that has to be commented in/out:&lt;br /&gt;
In MDIForm1 (code), Private Sub simload&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt; &lt;br /&gt;
Private Sub simload(Optional path As String)&lt;br /&gt;
  Dim I As Integer&lt;br /&gt;
  Dim path2 As String&lt;br /&gt;
  &lt;br /&gt;
On Error GoTo fine ' Uncomment this line in the compiled version error.sim&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Comment this '''''On Error''''' out when using VB and Debugger ...&amp;lt;br&amp;gt;&lt;br /&gt;
or it will abort and go save the error.sim.&amp;lt;br&amp;gt;&lt;br /&gt;
Then remember to uncomment it once you have located and fixed an &amp;lt;br&amp;gt;&lt;br /&gt;
error and want to recompile or the recompiled prog won't do it's&amp;lt;br&amp;gt; &lt;br /&gt;
'''''save error.sim'''''&lt;br /&gt;
Also ... once the debugger has sent you to the break ...&amp;lt;br&amp;gt;&lt;br /&gt;
'hovering' the mouse over variables in the code will&amp;lt;br&amp;gt;&lt;br /&gt;
give you their value at that time and place in the execution.&amp;lt;br&amp;gt;&lt;br /&gt;
this is helpful in finding overflows or variables out of range.&amp;lt;br&amp;gt;&lt;br /&gt;
using this, even I have been able to locate errors on occasion.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Search ==&lt;br /&gt;
To search from VB, click on the Binocular icon on the toolbar.&amp;lt;br&amp;gt;&lt;br /&gt;
Select where you wish to search, current modual, current project.&amp;lt;br&amp;gt;&lt;br /&gt;
This will step you thru all occurrences.&lt;br /&gt;
&lt;br /&gt;
== Highlighting Variables ==&lt;br /&gt;
Once the debugger has sent you to a line containing an error,&amp;lt;br&amp;gt;&lt;br /&gt;
use the mouse to highlight variables to determine their value.&amp;lt;br&amp;gt;&lt;br /&gt;
This may help to determine if a variable is out-of-range.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
:'''''a few notes  from Ulciscor on the Forum &lt;br /&gt;
:'''''http://www.darwinbots.com/Forum/index.php?showtopic=874 &lt;br /&gt;
&lt;br /&gt;
If you are running the program from VB, click 'Debug' when the error box appears. This will bring the VB code to focus with the offending code highlighted in yellow. This highlighted code should be copied along with the name of the function it is from (if applicable) and the form or module, which will be shown on the right.&lt;br /&gt;
&lt;br /&gt;
The highlighted code will also display the values of the various variables and properties, at the point when the program crashed, when you hover your mouse over them. It is a good idea to note down the values of each part of the code and post them up with everything else.&lt;br /&gt;
&lt;br /&gt;
If the error occurs from the EXE, then describe what was happening in the sim or what you did before the glitch, or possibly provide the sim file, which should be zipped to save space.&lt;br /&gt;
&lt;br /&gt;
All this info will help us track down the error and its cause, and so to work out possible solutions.&lt;br /&gt;
&lt;br /&gt;
== Setting Breakpoints ==&lt;br /&gt;
I need some help with this one. ;) {{User:Griz/sig}}&lt;br /&gt;
&lt;br /&gt;
== what else? ==&lt;/div&gt;</summary>
		<author><name>Griz</name></author>	</entry>

	<entry>
		<id>http://wiki.darwinbots.com/index.php?title=User_talk:Jez&amp;diff=2327</id>
		<title>User talk:Jez</title>
		<link rel="alternate" type="text/html" href="http://wiki.darwinbots.com/index.php?title=User_talk:Jez&amp;diff=2327"/>
				<updated>2006-12-25T17:46:37Z</updated>
		
		<summary type="html">&lt;p&gt;Griz: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;hi Jez ...&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Here's one cool thing ... you should be notified if you have messages here when you sign in to the wiki.&amp;lt;br&amp;gt;&lt;br /&gt;
so these talk pages work well for communicating back and forth. mine is {{User:Griz/sig}}&amp;lt;br&amp;gt;&lt;br /&gt;
all users have them ... so you can contact [[User_talk:Numsgil|Nums]] or [[User_talk:EricL|Eric]] or [[User_talk:Endy|Endy]] too.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
i see you put some stuff in the [[Sandbox]] ...&amp;lt;br&amp;gt;&lt;br /&gt;
so will move it here and try to address them.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
also ... this page can always be edited, old matl overwritten ... whatever ...&amp;lt;br&amp;gt;&lt;br /&gt;
so put anything you want here, or at my talk page, in the way of questions.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
i put this page, your talk page, on my watchlist too ...&amp;lt;br&amp;gt;&lt;br /&gt;
so i can go check my watchlist anytime and be advised if any of the pages&amp;lt;br&amp;gt;&lt;br /&gt;
i watch have had any activity. you can add any page, like Debugging, etc.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
btw ... perhaps you know this already, or not ...&amp;lt;br&amp;gt;&lt;br /&gt;
the first page i come to here is [[Special:Recentchanges]]&amp;lt;br&amp;gt;&lt;br /&gt;
gives me a quick look at who is doing what, where.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
so ... is this a list of what you want to see implimented here?&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
:'''''A quick guide to installing VB6.0 first time I tried a full install and clicking ignore for all the bits it didn't have &lt;br /&gt;
:'''''nearly killed me, plus it didn't install at the end :( Need to just install most basic.&lt;br /&gt;
&lt;br /&gt;
:: what should it consist of? can you write up what would have helped you? it's been so long since i&lt;br /&gt;
:: did it that i don't recall. just a few hints, as in your above? i can then put it somewhere ...&lt;br /&gt;
:: maybe a note on the VB6 download page.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
:'''''The post by Ulciscor on bug reporting, I suggest we use to link all the sources of info from, is here: :'''''[http://www.darwinbots.com/Forum/index.php?showtopic=874 Bug Reporting]&lt;br /&gt;
:'''''That is pretty much the only relevant info on the forum, preceeding the topic we are using atm, that I have found so far.&lt;br /&gt;
&lt;br /&gt;
:: ok. so what are you saying? put links there ... leading to relevant pages here?&lt;br /&gt;
:: i absolutely detest the forum layout ... and find it horribly chaotic for finding info ...&lt;br /&gt;
:: or maintaining any kind of continuity, so i'll leave that end up to you.&lt;br /&gt;
:: i know wikis ... so will concentrate my efforts here ... and together maybe we can tie the two together.&lt;br /&gt;
:: what think ye?&lt;br /&gt;
----&lt;br /&gt;
:'''''Need a link to download latest VB code, I still can only find C++ code source &lt;br /&gt;
::that would be on the [[Source_Code]] page ... the last entry under  Ver 2.4X, Darwinsource2.42.9r (Latest Buddy Drop)&lt;br /&gt;
::actual link is http://www.darwinbots.com/FTP/Darwinsource2.42.9r.zip&lt;br /&gt;
::that's what i've been waiting for ... as now i can go in and play myself with the most up-to-date version.&lt;/div&gt;</summary>
		<author><name>Griz</name></author>	</entry>

	<entry>
		<id>http://wiki.darwinbots.com/index.php?title=User_talk:Jez&amp;diff=2325</id>
		<title>User talk:Jez</title>
		<link rel="alternate" type="text/html" href="http://wiki.darwinbots.com/index.php?title=User_talk:Jez&amp;diff=2325"/>
				<updated>2006-12-25T17:34:19Z</updated>
		
		<summary type="html">&lt;p&gt;Griz: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;hi Jez ...&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Here's one cool thing ... you should be notified if you have messages here when you sign in to the wiki.&amp;lt;br&amp;gt;&lt;br /&gt;
so these talk pages work well for communicating back and forth. mine is {{User:Griz/sig}}&amp;lt;br&amp;gt;&lt;br /&gt;
all users have them ... so you can contact Numbs or Eric or Endy ...&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
i see you put some stuff in the sandbox ...&amp;lt;br&amp;gt;&lt;br /&gt;
so will move it here and try to address it.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
also ... this page can always be edited, old matl overwritten ... whatever ...&amp;lt;br&amp;gt;&lt;br /&gt;
so put anything you want here, or at my talk page, in the way of questions.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
i put this page, your talk page, on my watchlist too ...&amp;lt;br&amp;gt;&lt;br /&gt;
so i can go check my watchlist anytime and be advised if any of the pages&amp;lt;br&amp;gt;&lt;br /&gt;
i watch have had any activity. you can add any page, like Debugging, etc.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
btw ... perhaps you know this already, or not ...&amp;lt;br&amp;gt;&lt;br /&gt;
the first page i come to here is [[Special:Recentchanges]]&amp;lt;br&amp;gt;&lt;br /&gt;
gives me a quick look at who is doing what, where.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
so ... is this a list of what you want to see implimented here?&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
:'''''A quick guide to installing VB6.0 first time I tried a full install and clicking ignore for all the bits it didn't have &lt;br /&gt;
:'''''nearly killed me, plus it didn't install at the end :( Need to just install most basic.&lt;br /&gt;
&lt;br /&gt;
:: what should it consist of? can you write up what would have helped you? it's been so long since i&lt;br /&gt;
:: did it that i don't recall. just a few hints, as in your above? i can then put it somewhere ...&lt;br /&gt;
:: maybe a note on the VB6 download page.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
:'''''The post by Ulciscor on bug reporting, I suggest we use to link all the sources of info from, is here: :'''''[http://www.darwinbots.com/Forum/index.php?showtopic=874 Bug Reporting]&lt;br /&gt;
:'''''That is pretty much the only relevant info on the forum, preceeding the topic we are using atm, that I have found so far.&lt;br /&gt;
&lt;br /&gt;
:: ok. so what are you saying? put links there ... leading to relevant pages here?&lt;br /&gt;
:: i absolutely detest the forum layout ... and find it horribly chaotic for finding info ...&lt;br /&gt;
:: or maintaining any kind of continuity, so i'll leave that end up to you.&lt;br /&gt;
:: i know wikis ... so will concentrate my efforts here ... and together maybe we can tie the two together.&lt;br /&gt;
:: what think ye?&lt;br /&gt;
----&lt;br /&gt;
:'''''Need a link to download latest VB code, I still can only find C++ code source &lt;br /&gt;
::that would be on the [[Source_Code]] page ... the last entry under  Ver 2.4X, Darwinsource2.42.9r (Latest Buddy Drop)&lt;br /&gt;
::actual link is http://www.darwinbots.com/FTP/Darwinsource2.42.9r.zip&lt;br /&gt;
::that's what i've been waiting for ... as now i can go in and play myself with the most up-to-date version.&lt;/div&gt;</summary>
		<author><name>Griz</name></author>	</entry>

	<entry>
		<id>http://wiki.darwinbots.com/index.php?title=User_talk:Jez&amp;diff=2324</id>
		<title>User talk:Jez</title>
		<link rel="alternate" type="text/html" href="http://wiki.darwinbots.com/index.php?title=User_talk:Jez&amp;diff=2324"/>
				<updated>2006-12-25T17:29:11Z</updated>
		
		<summary type="html">&lt;p&gt;Griz: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;hi Jez ...&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Here's one cool thing ... you should be notified if you have messages here when you sign in to the wiki.&amp;lt;br&amp;gt;&lt;br /&gt;
so these talk pages work well for communicating back and forth. mine is {{User:Griz/sig}}&lt;br /&gt;
&lt;br /&gt;
i see you put some stuff in the sandbox ...&amp;lt;br&amp;gt;&lt;br /&gt;
so will move it here and try to address it.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
btw ... perhaps you know this already, or not ...&amp;lt;br&amp;gt;&lt;br /&gt;
the first page i come to here is [[Special:Recentchanges]]&amp;lt;br&amp;gt;&lt;br /&gt;
gives me a quick look at who is doing what, where.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
so ... is this a list of what you want to see implimented here?&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
:'''''A quick guide to installing VB6.0 first time I tried a full install and clicking ignore for all the bits it didn't have &lt;br /&gt;
:'''''nearly killed me, plus it didn't install at the end :( Need to just install most basic.&lt;br /&gt;
&lt;br /&gt;
:: what should it consist of? can you write up what would have helped you? it's been so long since i&lt;br /&gt;
:: did it that i don't recall. just a few hints, as in your above? i can then put it somewhere ...&lt;br /&gt;
:: maybe a note on the VB6 download page.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
:'''''The post by Ulciscor on bug reporting, I suggest we use to link all the sources of info from, is here: :'''''[http://www.darwinbots.com/Forum/index.php?showtopic=874 Bug Reporting]&lt;br /&gt;
:'''''That is pretty much the only relevant info on the forum, preceeding the topic we are using atm, that I have found so far.&lt;br /&gt;
&lt;br /&gt;
:: ok. so what are you saying? put links there ... leading to relevant pages here?&lt;br /&gt;
:: i absolutely detest the forum layout ... and find it horribly chaotic for finding info ...&lt;br /&gt;
:: or maintaining any kind of continuity, so i'll leave that end up to you.&lt;br /&gt;
:: i know wikis ... so will concentrate my efforts here ... and together maybe we can tie the two together.&lt;br /&gt;
:: what think ye?&lt;br /&gt;
----&lt;br /&gt;
:'''''Need a link to download latest VB code, I still can only find C++ code source &lt;br /&gt;
::that would be on the [[Source_Code]] page ... the last entry under  Ver 2.4X, Darwinsource2.42.9r (Latest Buddy Drop)&lt;br /&gt;
::actual link is http://www.darwinbots.com/FTP/Darwinsource2.42.9r.zip&lt;br /&gt;
::that's what i've been waiting for ... as now i can go in and play myself with the most up-to-date version.&lt;/div&gt;</summary>
		<author><name>Griz</name></author>	</entry>

	<entry>
		<id>http://wiki.darwinbots.com/index.php?title=Sandbox&amp;diff=2321</id>
		<title>Sandbox</title>
		<link rel="alternate" type="text/html" href="http://wiki.darwinbots.com/index.php?title=Sandbox&amp;diff=2321"/>
				<updated>2006-12-24T23:14:27Z</updated>
		
		<summary type="html">&lt;p&gt;Griz: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Griz</name></author>	</entry>

	<entry>
		<id>http://wiki.darwinbots.com/index.php?title=Sandbox&amp;diff=2320</id>
		<title>Sandbox</title>
		<link rel="alternate" type="text/html" href="http://wiki.darwinbots.com/index.php?title=Sandbox&amp;diff=2320"/>
				<updated>2006-12-24T23:08:05Z</updated>
		
		<summary type="html">&lt;p&gt;Griz: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Griz</name></author>	</entry>

	<entry>
		<id>http://wiki.darwinbots.com/index.php?title=Leagues&amp;diff=2331</id>
		<title>Leagues</title>
		<link rel="alternate" type="text/html" href="http://wiki.darwinbots.com/index.php?title=Leagues&amp;diff=2331"/>
				<updated>2006-12-24T23:02:41Z</updated>
		
		<summary type="html">&lt;p&gt;Griz: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Code/Debugging/Fixes/Changes for Leagues&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
see also: [[DeBugging]] and [[Bug_Reports]]&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
this is a Work In Progress&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
:Holy crap!!!&lt;br /&gt;
:League code is all over the place!&lt;br /&gt;
&lt;br /&gt;
:Will just keep stashing it here as i find it.&lt;br /&gt;
&lt;br /&gt;
==General Declarations==&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
General &lt;br /&gt;
Declarations&lt;br /&gt;
&lt;br /&gt;
Public Type datispecie&lt;br /&gt;
  Skin(13) As Integer&lt;br /&gt;
  path As String&lt;br /&gt;
  Name As String&lt;br /&gt;
  Stnrg As Integer&lt;br /&gt;
  Veg As Boolean&lt;br /&gt;
  Fixed As Boolean&lt;br /&gt;
  color As Long&lt;br /&gt;
  Colind As Integer&lt;br /&gt;
  Postp As Single&lt;br /&gt;
  Poslf As Single&lt;br /&gt;
  Posdn As Single&lt;br /&gt;
  Posrg As Single&lt;br /&gt;
  qty As Integer&lt;br /&gt;
  Comment As String&lt;br /&gt;
  Leaguefilecomment As String&lt;br /&gt;
  Mutables As mutationprobs&lt;br /&gt;
  CantSee As Boolean                ' Flag indicating eyes should be turned off for this &lt;br /&gt;
&lt;br /&gt;
species&lt;br /&gt;
  DisableDNA As Boolean             ' Flag indicating DNA should not execute for &lt;br /&gt;
&lt;br /&gt;
this species&lt;br /&gt;
  DisableMovementSysvars As Boolean ' Flag indicating movement sysvars &lt;br /&gt;
&lt;br /&gt;
should be disabled for this species&lt;br /&gt;
  CantReproduce As Boolean          ' Flag indicating whether reproduction has &lt;br /&gt;
&lt;br /&gt;
been disabled for this species.&lt;br /&gt;
End Type&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
General&lt;br /&gt;
Declarations&lt;br /&gt;
&lt;br /&gt;
'For League mode: (runs a series of F1 contests, 1 on 1)&lt;br /&gt;
Public LeagueMode As Boolean&lt;br /&gt;
Public Leaguename As String&lt;br /&gt;
Public Leaguererun As Boolean&lt;br /&gt;
Public LeagueEntrants(30) As datispecie 'all those already in the league&lt;br /&gt;
Public numLeagueEntrants As Integer&lt;br /&gt;
Public LeagueChallengers(31) As datispecie 'all those challenging (31 instead of &lt;br /&gt;
&lt;br /&gt;
30 for some loop functions)&lt;br /&gt;
Public Defender As Integer 'couple used to determine which bots are facing &lt;br /&gt;
&lt;br /&gt;
which in League mode&lt;br /&gt;
Public Attacker As Integer&lt;br /&gt;
Private eye11 As Integer 'for eye fudging.  Search 'fudge' to see what I mean&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
==General Startsim==&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
General&lt;br /&gt;
Startsim&lt;br /&gt;
&lt;br /&gt;
If LeagueMode Then&lt;br /&gt;
    LeagueForm.Show&lt;br /&gt;
    SimOpts.TotRunCycle = -1&lt;br /&gt;
  End If&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
==General StartSimul==&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
General&lt;br /&gt;
StartSimul&lt;br /&gt;
&lt;br /&gt;
'Restart&lt;br /&gt;
  'Leaguemode handles restarts differently so only restart here if not in &lt;br /&gt;
&lt;br /&gt;
leaguemode&lt;br /&gt;
  If totnvegs = 0 And RestartMode And Not LeagueMode Then&lt;br /&gt;
  ' totnvegs = 1&lt;br /&gt;
  ' Contests = Contests + 1&lt;br /&gt;
    ReStarts = ReStarts + 1&lt;br /&gt;
  ' Form1.StartSimul&lt;br /&gt;
    StartAnotherRound = True&lt;br /&gt;
  End If&lt;br /&gt;
End Sub&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
==General FindSpecies==&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
General&lt;br /&gt;
FindSpecies&lt;br /&gt;
&lt;br /&gt;
  If TotSpecies = 1 Then&lt;br /&gt;
'    If Not LeagueMode Then&lt;br /&gt;
      ContestMode = False&lt;br /&gt;
      MDIForm1.F1Piccy.Visible = False&lt;br /&gt;
      Contest_Form.Visible = False&lt;br /&gt;
      t = MsgBox(&amp;quot;You have only selected one species for combat. Formula 1 &lt;br /&gt;
&lt;br /&gt;
mode disabled&amp;quot;, vbOKOnly)&lt;br /&gt;
      Exit Sub&lt;br /&gt;
 '   End If&lt;br /&gt;
  End If&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
==MDIForm==&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
MDIForm1 (Code)&lt;br /&gt;
&lt;br /&gt;
Private Sub Leagues_Click()&lt;br /&gt;
 optionsform.SSTab1.Tab = 4&lt;br /&gt;
  NetEvent.Timer1.Enabled = False&lt;br /&gt;
  NetEvent.Hide&lt;br /&gt;
  optionsform.Show vbModal&lt;br /&gt;
End Sub&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
==RerunCheck==&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
RerunCheck&lt;br /&gt;
&lt;br /&gt;
Private Sub RerunCheck_Click()&lt;br /&gt;
  Leaguererun = CBool(RerunCheck.value)&lt;br /&gt;
End Sub&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
==LeagueCheck==&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
LeagueCheck&lt;br /&gt;
&lt;br /&gt;
Private Sub LeagueCheck_Click()&lt;br /&gt;
  If LeagueCheck.value = 1 Then&lt;br /&gt;
    If F1Check.value &amp;lt;&amp;gt; 1 Then&lt;br /&gt;
      F1Check.value = 1&lt;br /&gt;
      F1check_Click&lt;br /&gt;
    End If&lt;br /&gt;
    LeagueMode = True&lt;br /&gt;
    TmpOpts.League = True&lt;br /&gt;
    &lt;br /&gt;
    If Leaguetype(0).value = False Then&lt;br /&gt;
      Leaguetype(0).value = True&lt;br /&gt;
    End If&lt;br /&gt;
  &lt;br /&gt;
  Else&lt;br /&gt;
    TmpOpts.League = False&lt;br /&gt;
    LeagueMode = False&lt;br /&gt;
    'Leaguetype(0).value = False&lt;br /&gt;
  End If&lt;br /&gt;
End Sub&lt;br /&gt;
&lt;br /&gt;
Private Sub LeagueAutoCheck()&lt;br /&gt;
  If LeagueCheck.value &amp;lt;&amp;gt; 1 Then&lt;br /&gt;
    LeagueCheck.value = 1&lt;br /&gt;
    LeagueCheck_Click&lt;br /&gt;
  End If&lt;br /&gt;
End Sub&lt;br /&gt;
&lt;br /&gt;
Private Sub LeagueF1Option_Click()&lt;br /&gt;
  Leaguename.text = &amp;quot;F1&amp;quot;&lt;br /&gt;
  LeagueAutoCheck&lt;br /&gt;
End Sub&lt;br /&gt;
&lt;br /&gt;
Private Sub LeagueF2Option_Click()&lt;br /&gt;
  Leaguename.text = &amp;quot;F2&amp;quot;&lt;br /&gt;
  LeagueAutoCheck&lt;br /&gt;
End Sub&lt;br /&gt;
&lt;br /&gt;
Private Sub LeageSBOption_Click()&lt;br /&gt;
  Leaguename.text = &amp;quot;Shortbot&amp;quot;&lt;br /&gt;
  LeagueAutoCheck&lt;br /&gt;
End Sub&lt;br /&gt;
&lt;br /&gt;
Private Sub LeagueMBOption_Click()&lt;br /&gt;
  Leaguename.text = &amp;quot;Multibot&amp;quot;&lt;br /&gt;
  LeagueAutoCheck&lt;br /&gt;
End Sub&lt;br /&gt;
&lt;br /&gt;
Private Sub Leaguetype_Click(Index As Integer)&lt;br /&gt;
  'If Leaguetype(Index).value = False Then&lt;br /&gt;
  ''  Leaguetype(Index).value = True&lt;br /&gt;
  'End If&lt;br /&gt;
End Sub&lt;br /&gt;
&lt;br /&gt;
Private Sub LightText_lostfocus()&lt;br /&gt;
  Dim a As Single&lt;br /&gt;
  a = val(LightText.text)&lt;br /&gt;
  If a &amp;lt; LightUpDn.Min Then a = LightUpDn.Min&lt;br /&gt;
  If a &amp;gt; LightUpDn.Max Then a = LightUpDn.Max&lt;br /&gt;
  LightUpDn.value = a&lt;br /&gt;
  TmpOpts.LightIntensity = a&lt;br /&gt;
End Sub&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
==StartNew==&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
StartNew&lt;br /&gt;
&lt;br /&gt;
If LeagueMode = True Then LeagueForm.Visible = True ' EricL 3/20/2006 Have &lt;br /&gt;
&lt;br /&gt;
to bring up league form after Options dialog goes away&lt;br /&gt;
  &lt;br /&gt;
  'Form1.Active = True&lt;br /&gt;
  &lt;br /&gt;
    'this just tricks the program into thinking we have enough&lt;br /&gt;
  'species for F1 mode.&lt;br /&gt;
  'If TmpOpts.League = True And TmpOpts.SpeciesNum = 2 Then&lt;br /&gt;
  '  additem TmpOpts.Specie(1).Name&lt;br /&gt;
  '  TmpOpts.SpeciesNum = TmpOpts.SpeciesNum + 1&lt;br /&gt;
  'End If&lt;br /&gt;
  &lt;br /&gt;
  SimOpts = TmpOpts&lt;br /&gt;
  &lt;br /&gt;
  If SimOpts.League = True Then&lt;br /&gt;
    LeagueMode = True 'should be anyway, but sometimes when&lt;br /&gt;
                      'restarting a league it screws up&lt;br /&gt;
    LeagueInputChallengers&lt;br /&gt;
    SetupLeague_Options&lt;br /&gt;
  '  SimOpts.F1 = True&lt;br /&gt;
    LeagueForm.F1ChallengeOption_Click&lt;br /&gt;
  End If&lt;br /&gt;
  &lt;br /&gt;
  &lt;br /&gt;
  If Form1.Active Then Form1.SecTimer.Enabled = True&lt;br /&gt;
  &lt;br /&gt;
  &lt;br /&gt;
  StartAnotherRound = True ' Set true for first simulation.  Will get set true if &lt;br /&gt;
&lt;br /&gt;
running leagues or using auto-restart mode&lt;br /&gt;
  While StartAnotherRound&lt;br /&gt;
    StartAnotherRound = False&lt;br /&gt;
    Form1.StartSimul&lt;br /&gt;
  Wend&lt;br /&gt;
End Sub&lt;br /&gt;
 &lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==F1 Override code as of 2.42.n ==&lt;br /&gt;
(not sure in what modual this is in. {{User:Griz/sig}})&lt;br /&gt;
&lt;br /&gt;
:Eric: I will add max cycles / Max rounds to my list of future work items. &lt;br /&gt;
:These will be post 2.43 however.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
If TmpOpts.F1 = True Then&lt;br /&gt;
&lt;br /&gt;
'Zero out all Costs&lt;br /&gt;
For t = 1 To 70&lt;br /&gt;
TmpOpts.Costs(t) = 0&lt;br /&gt;
Next t&lt;br /&gt;
&lt;br /&gt;
'Now set the ones that matter&lt;br /&gt;
TmpOpts.Costs(SHOTCOST) = 2&lt;br /&gt;
TmpOpts.Costs(COSTSTORE) = 0.04&lt;br /&gt;
TmpOpts.Costs(CONDCOST) = 0.004&lt;br /&gt;
TmpOpts.Costs(MOVECOST) = 0.05&lt;br /&gt;
TmpOpts.Costs(TIECOST) = 2&lt;br /&gt;
TmpOpts.Costs(SHOTCOST) = 2&lt;br /&gt;
TmpOpts.Costs(VENOMCOST) = 1&lt;br /&gt;
TmpOpts.Costs(POISONCOST) = 1&lt;br /&gt;
TmpOpts.Costs(SLIMECOST) = 1&lt;br /&gt;
TmpOpts.Costs(SHELLCOST) = 1&lt;br /&gt;
TmpOpts.Costs(COSTMULTIPLIER) = 1&lt;br /&gt;
TmpOpts.DynamicCosts = False&lt;br /&gt;
&lt;br /&gt;
TmpOpts.CorpseEnabled = False ' No Corpses&lt;br /&gt;
TmpOpts.DayNight = False ' Sun never sets&lt;br /&gt;
TmpOpts.FieldWidth = 9237&lt;br /&gt;
TmpOpts.FieldHeight = 6928&lt;br /&gt;
TmpOpts.FieldSize = 1&lt;br /&gt;
TmpOpts.MaxEnergy = 40 ' Veggy nrg per cycle&lt;br /&gt;
TmpOpts.MaxPopulation = 25 ' Veggy max population&lt;br /&gt;
TmpOpts.MinVegs = 10&lt;br /&gt;
TmpOpts.Pondmode = False&lt;br /&gt;
TmpOpts.PhysBrown = 0 ' Animal Motion&lt;br /&gt;
TmpOpts.Toroidal = True&lt;br /&gt;
&lt;br /&gt;
TmpOpts.BadWastelevel = 10000 ' Pretty high Waste Threshold&lt;br /&gt;
&lt;br /&gt;
For t = 0 To TmpOpts.SpeciesNum - 1&lt;br /&gt;
TmpOpts.Specie(t).Fixed = False 'Nobody is fixed&lt;br /&gt;
TmpOpts.Specie(t).Mutables.Mutations = False 'Nobody can mutate&lt;br /&gt;
TmpOpts.Specie(t).CantSee = False&lt;br /&gt;
TmpOpts.Specie(t).DisableDNA = False&lt;br /&gt;
TmpOpts.Specie(t).CantReproduce = False&lt;br /&gt;
TmpOpts.Specie(t).DisableMovementSysvars = False&lt;br /&gt;
Next t&lt;br /&gt;
&lt;br /&gt;
TmpOpts.Specie(0).Veg = True 'Force the first entry to be a veggy&lt;br /&gt;
TmpOpts.Specie(0).qty = 10 ' Do this so that eye fudge works&lt;br /&gt;
&lt;br /&gt;
TmpOpts.FixedBotRadii = False&lt;br /&gt;
TmpOpts.NoShotDecay = False&lt;br /&gt;
TmpOpts.DisableTies = False&lt;br /&gt;
TmpOpts.RepopAmount = 10&lt;br /&gt;
TmpOpts.RepopCooldown = 1&lt;br /&gt;
TmpOpts.MaxVelocity = 180&lt;br /&gt;
TmpOpts.VegFeedingMethod = 0 ' Straight nrg /cycle feeding method&lt;br /&gt;
TmpOpts.VegFeedingToBody = 0.5 ' 50/50 nrg/body veggy feeding ratio&lt;br /&gt;
TmpOpts.SunUp = False ' Turn off bringing the sun up due to a threshold&lt;br /&gt;
TmpOpts.SunDown = False ' Turn off setting the sun due to a threshold&lt;br /&gt;
TmpOpts.CoefficientElasticity = 0 ' Collisions are soft.&lt;br /&gt;
TmpOpts.Ygravity = 0&lt;br /&gt;
&lt;br /&gt;
' Surface Friction - Metal Option&lt;br /&gt;
TmpOpts.Zgravity = 2&lt;br /&gt;
TmpOpts.CoefficientStatic = 0.6&lt;br /&gt;
TmpOpts.CoefficientKinetic = 0.4&lt;br /&gt;
&lt;br /&gt;
'No Fluid Resistance&lt;br /&gt;
TmpOpts.Viscosity = 0#&lt;br /&gt;
TmpOpts.Density = 0#&lt;br /&gt;
&lt;br /&gt;
'Shot Energy Physics&lt;br /&gt;
TmpOpts.EnergyProp = 1 ' 100% normal shot nrg&lt;br /&gt;
TmpOpts.EnergyExType = True ' Use Proportional shot nrg exchange method&lt;br /&gt;
&lt;br /&gt;
DispSettings&lt;br /&gt;
End If&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>Griz</name></author>	</entry>

	<entry>
		<id>http://wiki.darwinbots.com/index.php?title=Leagues&amp;diff=2318</id>
		<title>Leagues</title>
		<link rel="alternate" type="text/html" href="http://wiki.darwinbots.com/index.php?title=Leagues&amp;diff=2318"/>
				<updated>2006-12-24T22:51:18Z</updated>
		
		<summary type="html">&lt;p&gt;Griz: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Code/Debugging/Fixes/Changes for Leagues&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
see also: [[DeBugging]] and [[Bug_Reports]]&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
this is a Work In Progress&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
:Holy crap!!!&lt;br /&gt;
:League code is all over the place!&lt;br /&gt;
&lt;br /&gt;
:Will just keep stashing it here as i find it.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
General &lt;br /&gt;
Declarations&lt;br /&gt;
&lt;br /&gt;
Public Type datispecie&lt;br /&gt;
  Skin(13) As Integer&lt;br /&gt;
  path As String&lt;br /&gt;
  Name As String&lt;br /&gt;
  Stnrg As Integer&lt;br /&gt;
  Veg As Boolean&lt;br /&gt;
  Fixed As Boolean&lt;br /&gt;
  color As Long&lt;br /&gt;
  Colind As Integer&lt;br /&gt;
  Postp As Single&lt;br /&gt;
  Poslf As Single&lt;br /&gt;
  Posdn As Single&lt;br /&gt;
  Posrg As Single&lt;br /&gt;
  qty As Integer&lt;br /&gt;
  Comment As String&lt;br /&gt;
  Leaguefilecomment As String&lt;br /&gt;
  Mutables As mutationprobs&lt;br /&gt;
  CantSee As Boolean                ' Flag indicating eyes should be turned off for this &lt;br /&gt;
&lt;br /&gt;
species&lt;br /&gt;
  DisableDNA As Boolean             ' Flag indicating DNA should not execute for &lt;br /&gt;
&lt;br /&gt;
this species&lt;br /&gt;
  DisableMovementSysvars As Boolean ' Flag indicating movement sysvars &lt;br /&gt;
&lt;br /&gt;
should be disabled for this species&lt;br /&gt;
  CantReproduce As Boolean          ' Flag indicating whether reproduction has &lt;br /&gt;
&lt;br /&gt;
been disabled for this species.&lt;br /&gt;
End Type&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
General&lt;br /&gt;
Declarations&lt;br /&gt;
&lt;br /&gt;
'For League mode: (runs a series of F1 contests, 1 on 1)&lt;br /&gt;
Public LeagueMode As Boolean&lt;br /&gt;
Public Leaguename As String&lt;br /&gt;
Public Leaguererun As Boolean&lt;br /&gt;
Public LeagueEntrants(30) As datispecie 'all those already in the league&lt;br /&gt;
Public numLeagueEntrants As Integer&lt;br /&gt;
Public LeagueChallengers(31) As datispecie 'all those challenging (31 instead of &lt;br /&gt;
&lt;br /&gt;
30 for some loop functions)&lt;br /&gt;
Public Defender As Integer 'couple used to determine which bots are facing &lt;br /&gt;
&lt;br /&gt;
which in League mode&lt;br /&gt;
Public Attacker As Integer&lt;br /&gt;
Private eye11 As Integer 'for eye fudging.  Search 'fudge' to see what I mean&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
General&lt;br /&gt;
Startsim&lt;br /&gt;
&lt;br /&gt;
If LeagueMode Then&lt;br /&gt;
    LeagueForm.Show&lt;br /&gt;
    SimOpts.TotRunCycle = -1&lt;br /&gt;
  End If&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
General&lt;br /&gt;
StartSimul&lt;br /&gt;
&lt;br /&gt;
'Restart&lt;br /&gt;
  'Leaguemode handles restarts differently so only restart here if not in &lt;br /&gt;
&lt;br /&gt;
leaguemode&lt;br /&gt;
  If totnvegs = 0 And RestartMode And Not LeagueMode Then&lt;br /&gt;
  ' totnvegs = 1&lt;br /&gt;
  ' Contests = Contests + 1&lt;br /&gt;
    ReStarts = ReStarts + 1&lt;br /&gt;
  ' Form1.StartSimul&lt;br /&gt;
    StartAnotherRound = True&lt;br /&gt;
  End If&lt;br /&gt;
End Sub&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
General&lt;br /&gt;
FindSpecies&lt;br /&gt;
&lt;br /&gt;
  If TotSpecies = 1 Then&lt;br /&gt;
'    If Not LeagueMode Then&lt;br /&gt;
      ContestMode = False&lt;br /&gt;
      MDIForm1.F1Piccy.Visible = False&lt;br /&gt;
      Contest_Form.Visible = False&lt;br /&gt;
      t = MsgBox(&amp;quot;You have only selected one species for combat. Formula 1 &lt;br /&gt;
&lt;br /&gt;
mode disabled&amp;quot;, vbOKOnly)&lt;br /&gt;
      Exit Sub&lt;br /&gt;
 '   End If&lt;br /&gt;
  End If&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
MDIForm1 (Code)&lt;br /&gt;
&lt;br /&gt;
Private Sub Leagues_Click()&lt;br /&gt;
 optionsform.SSTab1.Tab = 4&lt;br /&gt;
  NetEvent.Timer1.Enabled = False&lt;br /&gt;
  NetEvent.Hide&lt;br /&gt;
  optionsform.Show vbModal&lt;br /&gt;
End Sub&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
RerunCheck&lt;br /&gt;
&lt;br /&gt;
Private Sub RerunCheck_Click()&lt;br /&gt;
  Leaguererun = CBool(RerunCheck.value)&lt;br /&gt;
End Sub&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
LeagueCheck&lt;br /&gt;
&lt;br /&gt;
Private Sub LeagueCheck_Click()&lt;br /&gt;
  If LeagueCheck.value = 1 Then&lt;br /&gt;
    If F1Check.value &amp;lt;&amp;gt; 1 Then&lt;br /&gt;
      F1Check.value = 1&lt;br /&gt;
      F1check_Click&lt;br /&gt;
    End If&lt;br /&gt;
    LeagueMode = True&lt;br /&gt;
    TmpOpts.League = True&lt;br /&gt;
    &lt;br /&gt;
    If Leaguetype(0).value = False Then&lt;br /&gt;
      Leaguetype(0).value = True&lt;br /&gt;
    End If&lt;br /&gt;
  &lt;br /&gt;
  Else&lt;br /&gt;
    TmpOpts.League = False&lt;br /&gt;
    LeagueMode = False&lt;br /&gt;
    'Leaguetype(0).value = False&lt;br /&gt;
  End If&lt;br /&gt;
End Sub&lt;br /&gt;
&lt;br /&gt;
Private Sub LeagueAutoCheck()&lt;br /&gt;
  If LeagueCheck.value &amp;lt;&amp;gt; 1 Then&lt;br /&gt;
    LeagueCheck.value = 1&lt;br /&gt;
    LeagueCheck_Click&lt;br /&gt;
  End If&lt;br /&gt;
End Sub&lt;br /&gt;
&lt;br /&gt;
Private Sub LeagueF1Option_Click()&lt;br /&gt;
  Leaguename.text = &amp;quot;F1&amp;quot;&lt;br /&gt;
  LeagueAutoCheck&lt;br /&gt;
End Sub&lt;br /&gt;
&lt;br /&gt;
Private Sub LeagueF2Option_Click()&lt;br /&gt;
  Leaguename.text = &amp;quot;F2&amp;quot;&lt;br /&gt;
  LeagueAutoCheck&lt;br /&gt;
End Sub&lt;br /&gt;
&lt;br /&gt;
Private Sub LeageSBOption_Click()&lt;br /&gt;
  Leaguename.text = &amp;quot;Shortbot&amp;quot;&lt;br /&gt;
  LeagueAutoCheck&lt;br /&gt;
End Sub&lt;br /&gt;
&lt;br /&gt;
Private Sub LeagueMBOption_Click()&lt;br /&gt;
  Leaguename.text = &amp;quot;Multibot&amp;quot;&lt;br /&gt;
  LeagueAutoCheck&lt;br /&gt;
End Sub&lt;br /&gt;
&lt;br /&gt;
Private Sub Leaguetype_Click(Index As Integer)&lt;br /&gt;
  'If Leaguetype(Index).value = False Then&lt;br /&gt;
  ''  Leaguetype(Index).value = True&lt;br /&gt;
  'End If&lt;br /&gt;
End Sub&lt;br /&gt;
&lt;br /&gt;
Private Sub LightText_lostfocus()&lt;br /&gt;
  Dim a As Single&lt;br /&gt;
  a = val(LightText.text)&lt;br /&gt;
  If a &amp;lt; LightUpDn.Min Then a = LightUpDn.Min&lt;br /&gt;
  If a &amp;gt; LightUpDn.Max Then a = LightUpDn.Max&lt;br /&gt;
  LightUpDn.value = a&lt;br /&gt;
  TmpOpts.LightIntensity = a&lt;br /&gt;
End Sub&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
StartNew&lt;br /&gt;
&lt;br /&gt;
If LeagueMode = True Then LeagueForm.Visible = True ' EricL 3/20/2006 Have &lt;br /&gt;
&lt;br /&gt;
to bring up league form after Options dialog goes away&lt;br /&gt;
  &lt;br /&gt;
  'Form1.Active = True&lt;br /&gt;
  &lt;br /&gt;
    'this just tricks the program into thinking we have enough&lt;br /&gt;
  'species for F1 mode.&lt;br /&gt;
  'If TmpOpts.League = True And TmpOpts.SpeciesNum = 2 Then&lt;br /&gt;
  '  additem TmpOpts.Specie(1).Name&lt;br /&gt;
  '  TmpOpts.SpeciesNum = TmpOpts.SpeciesNum + 1&lt;br /&gt;
  'End If&lt;br /&gt;
  &lt;br /&gt;
  SimOpts = TmpOpts&lt;br /&gt;
  &lt;br /&gt;
  If SimOpts.League = True Then&lt;br /&gt;
    LeagueMode = True 'should be anyway, but sometimes when&lt;br /&gt;
                      'restarting a league it screws up&lt;br /&gt;
    LeagueInputChallengers&lt;br /&gt;
    SetupLeague_Options&lt;br /&gt;
  '  SimOpts.F1 = True&lt;br /&gt;
    LeagueForm.F1ChallengeOption_Click&lt;br /&gt;
  End If&lt;br /&gt;
  &lt;br /&gt;
  &lt;br /&gt;
  If Form1.Active Then Form1.SecTimer.Enabled = True&lt;br /&gt;
  &lt;br /&gt;
  &lt;br /&gt;
  StartAnotherRound = True ' Set true for first simulation.  Will get set true if &lt;br /&gt;
&lt;br /&gt;
running leagues or using auto-restart mode&lt;br /&gt;
  While StartAnotherRound&lt;br /&gt;
    StartAnotherRound = False&lt;br /&gt;
    Form1.StartSimul&lt;br /&gt;
  Wend&lt;br /&gt;
End Sub&lt;br /&gt;
 &lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>Griz</name></author>	</entry>

	<entry>
		<id>http://wiki.darwinbots.com/index.php?title=Leagues&amp;diff=2317</id>
		<title>Leagues</title>
		<link rel="alternate" type="text/html" href="http://wiki.darwinbots.com/index.php?title=Leagues&amp;diff=2317"/>
				<updated>2006-12-24T22:46:26Z</updated>
		
		<summary type="html">&lt;p&gt;Griz: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Code/Debugging/Fixes/Changes for Leagues&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
:Holy crap!!!&lt;br /&gt;
:League code is all over the place!&lt;br /&gt;
&lt;br /&gt;
:Will just keep stashing it here as i find it.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
General &lt;br /&gt;
Declarations&lt;br /&gt;
&lt;br /&gt;
Public Type datispecie&lt;br /&gt;
  Skin(13) As Integer&lt;br /&gt;
  path As String&lt;br /&gt;
  Name As String&lt;br /&gt;
  Stnrg As Integer&lt;br /&gt;
  Veg As Boolean&lt;br /&gt;
  Fixed As Boolean&lt;br /&gt;
  color As Long&lt;br /&gt;
  Colind As Integer&lt;br /&gt;
  Postp As Single&lt;br /&gt;
  Poslf As Single&lt;br /&gt;
  Posdn As Single&lt;br /&gt;
  Posrg As Single&lt;br /&gt;
  qty As Integer&lt;br /&gt;
  Comment As String&lt;br /&gt;
  Leaguefilecomment As String&lt;br /&gt;
  Mutables As mutationprobs&lt;br /&gt;
  CantSee As Boolean                ' Flag indicating eyes should be turned off for this &lt;br /&gt;
&lt;br /&gt;
species&lt;br /&gt;
  DisableDNA As Boolean             ' Flag indicating DNA should not execute for &lt;br /&gt;
&lt;br /&gt;
this species&lt;br /&gt;
  DisableMovementSysvars As Boolean ' Flag indicating movement sysvars &lt;br /&gt;
&lt;br /&gt;
should be disabled for this species&lt;br /&gt;
  CantReproduce As Boolean          ' Flag indicating whether reproduction has &lt;br /&gt;
&lt;br /&gt;
been disabled for this species.&lt;br /&gt;
End Type&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
General&lt;br /&gt;
Declarations&lt;br /&gt;
&lt;br /&gt;
'For League mode: (runs a series of F1 contests, 1 on 1)&lt;br /&gt;
Public LeagueMode As Boolean&lt;br /&gt;
Public Leaguename As String&lt;br /&gt;
Public Leaguererun As Boolean&lt;br /&gt;
Public LeagueEntrants(30) As datispecie 'all those already in the league&lt;br /&gt;
Public numLeagueEntrants As Integer&lt;br /&gt;
Public LeagueChallengers(31) As datispecie 'all those challenging (31 instead of &lt;br /&gt;
&lt;br /&gt;
30 for some loop functions)&lt;br /&gt;
Public Defender As Integer 'couple used to determine which bots are facing &lt;br /&gt;
&lt;br /&gt;
which in League mode&lt;br /&gt;
Public Attacker As Integer&lt;br /&gt;
Private eye11 As Integer 'for eye fudging.  Search 'fudge' to see what I mean&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
General&lt;br /&gt;
Startsim&lt;br /&gt;
&lt;br /&gt;
If LeagueMode Then&lt;br /&gt;
    LeagueForm.Show&lt;br /&gt;
    SimOpts.TotRunCycle = -1&lt;br /&gt;
  End If&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
General&lt;br /&gt;
StartSimul&lt;br /&gt;
&lt;br /&gt;
'Restart&lt;br /&gt;
  'Leaguemode handles restarts differently so only restart here if not in &lt;br /&gt;
&lt;br /&gt;
leaguemode&lt;br /&gt;
  If totnvegs = 0 And RestartMode And Not LeagueMode Then&lt;br /&gt;
  ' totnvegs = 1&lt;br /&gt;
  ' Contests = Contests + 1&lt;br /&gt;
    ReStarts = ReStarts + 1&lt;br /&gt;
  ' Form1.StartSimul&lt;br /&gt;
    StartAnotherRound = True&lt;br /&gt;
  End If&lt;br /&gt;
End Sub&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
General&lt;br /&gt;
FindSpecies&lt;br /&gt;
&lt;br /&gt;
  If TotSpecies = 1 Then&lt;br /&gt;
'    If Not LeagueMode Then&lt;br /&gt;
      ContestMode = False&lt;br /&gt;
      MDIForm1.F1Piccy.Visible = False&lt;br /&gt;
      Contest_Form.Visible = False&lt;br /&gt;
      t = MsgBox(&amp;quot;You have only selected one species for combat. Formula 1 &lt;br /&gt;
&lt;br /&gt;
mode disabled&amp;quot;, vbOKOnly)&lt;br /&gt;
      Exit Sub&lt;br /&gt;
 '   End If&lt;br /&gt;
  End If&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
MDIForm1 (Code)&lt;br /&gt;
&lt;br /&gt;
Private Sub Leagues_Click()&lt;br /&gt;
 optionsform.SSTab1.Tab = 4&lt;br /&gt;
  NetEvent.Timer1.Enabled = False&lt;br /&gt;
  NetEvent.Hide&lt;br /&gt;
  optionsform.Show vbModal&lt;br /&gt;
End Sub&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
RerunCheck&lt;br /&gt;
&lt;br /&gt;
Private Sub RerunCheck_Click()&lt;br /&gt;
  Leaguererun = CBool(RerunCheck.value)&lt;br /&gt;
End Sub&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
LeagueCheck&lt;br /&gt;
&lt;br /&gt;
Private Sub LeagueCheck_Click()&lt;br /&gt;
  If LeagueCheck.value = 1 Then&lt;br /&gt;
    If F1Check.value &amp;lt;&amp;gt; 1 Then&lt;br /&gt;
      F1Check.value = 1&lt;br /&gt;
      F1check_Click&lt;br /&gt;
    End If&lt;br /&gt;
    LeagueMode = True&lt;br /&gt;
    TmpOpts.League = True&lt;br /&gt;
    &lt;br /&gt;
    If Leaguetype(0).value = False Then&lt;br /&gt;
      Leaguetype(0).value = True&lt;br /&gt;
    End If&lt;br /&gt;
  &lt;br /&gt;
  Else&lt;br /&gt;
    TmpOpts.League = False&lt;br /&gt;
    LeagueMode = False&lt;br /&gt;
    'Leaguetype(0).value = False&lt;br /&gt;
  End If&lt;br /&gt;
End Sub&lt;br /&gt;
&lt;br /&gt;
Private Sub LeagueAutoCheck()&lt;br /&gt;
  If LeagueCheck.value &amp;lt;&amp;gt; 1 Then&lt;br /&gt;
    LeagueCheck.value = 1&lt;br /&gt;
    LeagueCheck_Click&lt;br /&gt;
  End If&lt;br /&gt;
End Sub&lt;br /&gt;
&lt;br /&gt;
Private Sub LeagueF1Option_Click()&lt;br /&gt;
  Leaguename.text = &amp;quot;F1&amp;quot;&lt;br /&gt;
  LeagueAutoCheck&lt;br /&gt;
End Sub&lt;br /&gt;
&lt;br /&gt;
Private Sub LeagueF2Option_Click()&lt;br /&gt;
  Leaguename.text = &amp;quot;F2&amp;quot;&lt;br /&gt;
  LeagueAutoCheck&lt;br /&gt;
End Sub&lt;br /&gt;
&lt;br /&gt;
Private Sub LeageSBOption_Click()&lt;br /&gt;
  Leaguename.text = &amp;quot;Shortbot&amp;quot;&lt;br /&gt;
  LeagueAutoCheck&lt;br /&gt;
End Sub&lt;br /&gt;
&lt;br /&gt;
Private Sub LeagueMBOption_Click()&lt;br /&gt;
  Leaguename.text = &amp;quot;Multibot&amp;quot;&lt;br /&gt;
  LeagueAutoCheck&lt;br /&gt;
End Sub&lt;br /&gt;
&lt;br /&gt;
Private Sub Leaguetype_Click(Index As Integer)&lt;br /&gt;
  'If Leaguetype(Index).value = False Then&lt;br /&gt;
  ''  Leaguetype(Index).value = True&lt;br /&gt;
  'End If&lt;br /&gt;
End Sub&lt;br /&gt;
&lt;br /&gt;
Private Sub LightText_lostfocus()&lt;br /&gt;
  Dim a As Single&lt;br /&gt;
  a = val(LightText.text)&lt;br /&gt;
  If a &amp;lt; LightUpDn.Min Then a = LightUpDn.Min&lt;br /&gt;
  If a &amp;gt; LightUpDn.Max Then a = LightUpDn.Max&lt;br /&gt;
  LightUpDn.value = a&lt;br /&gt;
  TmpOpts.LightIntensity = a&lt;br /&gt;
End Sub&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
StartNew&lt;br /&gt;
&lt;br /&gt;
If LeagueMode = True Then LeagueForm.Visible = True ' EricL 3/20/2006 Have &lt;br /&gt;
&lt;br /&gt;
to bring up league form after Options dialog goes away&lt;br /&gt;
  &lt;br /&gt;
  'Form1.Active = True&lt;br /&gt;
  &lt;br /&gt;
    'this just tricks the program into thinking we have enough&lt;br /&gt;
  'species for F1 mode.&lt;br /&gt;
  'If TmpOpts.League = True And TmpOpts.SpeciesNum = 2 Then&lt;br /&gt;
  '  additem TmpOpts.Specie(1).Name&lt;br /&gt;
  '  TmpOpts.SpeciesNum = TmpOpts.SpeciesNum + 1&lt;br /&gt;
  'End If&lt;br /&gt;
  &lt;br /&gt;
  SimOpts = TmpOpts&lt;br /&gt;
  &lt;br /&gt;
  If SimOpts.League = True Then&lt;br /&gt;
    LeagueMode = True 'should be anyway, but sometimes when&lt;br /&gt;
                      'restarting a league it screws up&lt;br /&gt;
    LeagueInputChallengers&lt;br /&gt;
    SetupLeague_Options&lt;br /&gt;
  '  SimOpts.F1 = True&lt;br /&gt;
    LeagueForm.F1ChallengeOption_Click&lt;br /&gt;
  End If&lt;br /&gt;
  &lt;br /&gt;
  &lt;br /&gt;
  If Form1.Active Then Form1.SecTimer.Enabled = True&lt;br /&gt;
  &lt;br /&gt;
  &lt;br /&gt;
  StartAnotherRound = True ' Set true for first simulation.  Will get set true if &lt;br /&gt;
&lt;br /&gt;
running leagues or using auto-restart mode&lt;br /&gt;
  While StartAnotherRound&lt;br /&gt;
    StartAnotherRound = False&lt;br /&gt;
    Form1.StartSimul&lt;br /&gt;
  Wend&lt;br /&gt;
End Sub&lt;br /&gt;
 &lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>Griz</name></author>	</entry>

	<entry>
		<id>http://wiki.darwinbots.com/index.php?title=Sandbox&amp;diff=2319</id>
		<title>Sandbox</title>
		<link rel="alternate" type="text/html" href="http://wiki.darwinbots.com/index.php?title=Sandbox&amp;diff=2319"/>
				<updated>2006-12-24T22:22:08Z</updated>
		
		<summary type="html">&lt;p&gt;Griz: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Griz</name></author>	</entry>

	<entry>
		<id>http://wiki.darwinbots.com/index.php?title=Bas&amp;diff=4072</id>
		<title>Bas</title>
		<link rel="alternate" type="text/html" href="http://wiki.darwinbots.com/index.php?title=Bas&amp;diff=4072"/>
				<updated>2006-12-24T22:12:11Z</updated>
		
		<summary type="html">&lt;p&gt;Griz: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;The idea here is to list Moduals/Bugs/Fixes as they are discovered.&amp;lt;br&amp;gt;&lt;br /&gt;
See also [[Bug Reports]].&amp;lt;br&amp;gt;&lt;br /&gt;
Bugs/Errors in '''Moduals:'''&lt;br /&gt;
*[[Leagues|Leagues.bas]]&lt;br /&gt;
*[[Senses|Senses.bas]]&lt;br /&gt;
*[[Robots|Robots.bas]]&lt;br /&gt;
*[[Mutations|Mutations.bas]]&lt;br /&gt;
*[[Optionsform|Optionsform.bas]]&lt;br /&gt;
*[[Physics|Physics.bas]]&lt;/div&gt;</summary>
		<author><name>Griz</name></author>	</entry>

	<entry>
		<id>http://wiki.darwinbots.com/index.php?title=Bas&amp;diff=2314</id>
		<title>Bas</title>
		<link rel="alternate" type="text/html" href="http://wiki.darwinbots.com/index.php?title=Bas&amp;diff=2314"/>
				<updated>2006-12-24T22:11:31Z</updated>
		
		<summary type="html">&lt;p&gt;Griz: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;The idea here is to list Moduals/Bugs/Fixes as they are discovered.&amp;lt;br&amp;gt;&lt;br /&gt;
See also [[Bug Reports]].&amp;lt;br&amp;gt;&lt;br /&gt;
Bugs/Errors in '''Moduals:'''&lt;br /&gt;
*[[Leagues|Leagues.bas&lt;br /&gt;
*[[Senses|Senses.bas]]&lt;br /&gt;
*[[Robots|Robots.bas]]&lt;br /&gt;
*[[Mutations|Mutations.bas]]&lt;br /&gt;
*[[Optionsform|Optionsform.bas]]&lt;br /&gt;
*[[Physics|Physics.bas]]&lt;/div&gt;</summary>
		<author><name>Griz</name></author>	</entry>

	<entry>
		<id>http://wiki.darwinbots.com/index.php?title=Leagues&amp;diff=2316</id>
		<title>Leagues</title>
		<link rel="alternate" type="text/html" href="http://wiki.darwinbots.com/index.php?title=Leagues&amp;diff=2316"/>
				<updated>2006-12-24T22:10:11Z</updated>
		
		<summary type="html">&lt;p&gt;Griz: page for League code&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Code/Debugging/Fixes/Changes for Leagues&lt;/div&gt;</summary>
		<author><name>Griz</name></author>	</entry>

	<entry>
		<id>http://wiki.darwinbots.com/index.php?title=DeBugging&amp;diff=2326</id>
		<title>DeBugging</title>
		<link rel="alternate" type="text/html" href="http://wiki.darwinbots.com/index.php?title=DeBugging&amp;diff=2326"/>
				<updated>2006-12-24T22:04:00Z</updated>
		
		<summary type="html">&lt;p&gt;Griz: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Compiler Related Recommendations ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== In-game Bug Detecting ==&lt;br /&gt;
&lt;br /&gt;
It is possible to directly debug at least some of the random glitches that are found in the DB universe from within the game itself. This thanks largly to a useful(if dated) console, which supplies information about the various memlocs. Although they can't be directly fixed from within the game, valuable information and clues to a bug's exact cause can be obtained.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
:How about some of you 'seasoned' VB users giving the rest of us a few tips&lt;br /&gt;
:on VB and Debugging so we might be able to help out tracking down errors?&lt;br /&gt;
:Anyone signed in here at the Wiki can edit and add to these pages.&lt;br /&gt;
:Just click on edit and have at it.&lt;br /&gt;
:Not to worry about correct/ideal formatting ... &lt;br /&gt;
:we'll figure it out.&lt;br /&gt;
:{{User:Griz/sig}} 15:04, 24 Dec 2006 (MST)&lt;br /&gt;
&lt;br /&gt;
= Basic Debugging from VB =&lt;br /&gt;
&lt;br /&gt;
== error.sim ==&lt;br /&gt;
From Eric:&amp;lt;br&amp;gt;&lt;br /&gt;
There are two lines where the comment portion of the source code line indicates that line should be commented out when running under the debugger. Just put a single apostrophe at the beginning of the line. This way, the source code won't try to handle the exception (an 'exception' is just a fancy name for a crash, a divide by 0 or something like that) and VB will get the error. When an exception does happen, you should get a pop-up dialog that offers to let you debug the problem. When you hit the debug button, it should highlight the source code line where the exception is occurring.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
This is the only one I know of that has to be commented in/out:&lt;br /&gt;
In MDIForm1 (code), Private Sub simload&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt; &lt;br /&gt;
Private Sub simload(Optional path As String)&lt;br /&gt;
  Dim I As Integer&lt;br /&gt;
  Dim path2 As String&lt;br /&gt;
  &lt;br /&gt;
On Error GoTo fine ' Uncomment this line in the compiled version error.sim&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Comment this '''''On Error''''' out when using VB and Debugger ...&amp;lt;br&amp;gt;&lt;br /&gt;
or it will abort and go save the error.sim.&amp;lt;br&amp;gt;&lt;br /&gt;
Then remember to uncomment it once you have located and fixed an &amp;lt;br&amp;gt;&lt;br /&gt;
error and want to recompile or the recompiled prog won't do it's&amp;lt;br&amp;gt; &lt;br /&gt;
'''''save error.sim'''''&lt;br /&gt;
Also ... once the debugger has sent you to the break ...&amp;lt;br&amp;gt;&lt;br /&gt;
'hovering' the mouse over variables in the code will&amp;lt;br&amp;gt;&lt;br /&gt;
give you their value at that time and place in the execution.&amp;lt;br&amp;gt;&lt;br /&gt;
this is helpful in finding overflows or variables out of range.&amp;lt;br&amp;gt;&lt;br /&gt;
using this, even I have been able to locate errors on occasion.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Search ==&lt;br /&gt;
To search from VB, click on the Binocular icon on the toolbar.&amp;lt;br&amp;gt;&lt;br /&gt;
Select where you wish to search, current modual, current project.&amp;lt;br&amp;gt;&lt;br /&gt;
This will step you thru all occurrences.&lt;br /&gt;
&lt;br /&gt;
== Highlighting Variables ==&lt;br /&gt;
Once the debugger has sent you to a line containing an error,&amp;lt;br&amp;gt;&lt;br /&gt;
use the mouse to highlight variables to determine their value.&amp;lt;br&amp;gt;&lt;br /&gt;
This may help to determine if a variable is out-of-range.&lt;br /&gt;
&lt;br /&gt;
== Setting Breakpoints ==&lt;br /&gt;
I need some help with this one. ;) {{User:Griz/sig}}&lt;br /&gt;
&lt;br /&gt;
== what else? ==&lt;/div&gt;</summary>
		<author><name>Griz</name></author>	</entry>

	<entry>
		<id>http://wiki.darwinbots.com/index.php?title=Talk:RoundTable&amp;diff=3554</id>
		<title>Talk:RoundTable</title>
		<link rel="alternate" type="text/html" href="http://wiki.darwinbots.com/index.php?title=Talk:RoundTable&amp;diff=3554"/>
				<updated>2006-12-24T15:53:35Z</updated>
		
		<summary type="html">&lt;p&gt;Griz: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Griz</name></author>	</entry>

	<entry>
		<id>http://wiki.darwinbots.com/index.php?title=User_talk:Griz&amp;diff=2385</id>
		<title>User talk:Griz</title>
		<link rel="alternate" type="text/html" href="http://wiki.darwinbots.com/index.php?title=User_talk:Griz&amp;diff=2385"/>
				<updated>2006-12-24T15:32:57Z</updated>
		
		<summary type="html">&lt;p&gt;Griz: update&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;click on the [[User_talk:Griz&amp;amp;action=edit|Edit]] or [[User_talk:Griz&amp;amp;action=edit&amp;amp;section=new|+]] above to add your comments.&lt;br /&gt;
----&lt;/div&gt;</summary>
		<author><name>Griz</name></author>	</entry>

	<entry>
		<id>http://wiki.darwinbots.com/index.php?title=User:Griz&amp;diff=2417</id>
		<title>User:Griz</title>
		<link rel="alternate" type="text/html" href="http://wiki.darwinbots.com/index.php?title=User:Griz&amp;diff=2417"/>
				<updated>2006-12-24T15:23:52Z</updated>
		
		<summary type="html">&lt;p&gt;Griz: restoration&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;greetz&lt;br /&gt;
&lt;br /&gt;
My main hangout is at [http://peace.wikicities.com/wiki/User:-ts- PeaceWiki] as '''-ts-'''...&amp;lt;br&amp;gt;&lt;br /&gt;
but feel free to talk to me about DB or wiki stuff here by clicking the [[User_talk:Griz|discussion]] tab above.&amp;lt;br&amp;gt;&lt;br /&gt;
We also have a general discussion area: [[RoundTable]]&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Image:DB1_100.gif]]&amp;lt;br&amp;gt;&lt;br /&gt;
[http://www.darwinbots.com/WikiManual/index.php?title=Image:DB1.gif full size 1.5MB]&lt;/div&gt;</summary>
		<author><name>Griz</name></author>	</entry>

	<entry>
		<id>http://wiki.darwinbots.com/index.php?title=DeBugging&amp;diff=2312</id>
		<title>DeBugging</title>
		<link rel="alternate" type="text/html" href="http://wiki.darwinbots.com/index.php?title=DeBugging&amp;diff=2312"/>
				<updated>2006-12-24T15:19:53Z</updated>
		
		<summary type="html">&lt;p&gt;Griz: how about some VB debugging tips?&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Compiler Related Recommendations ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== In-game Bug Detecting ==&lt;br /&gt;
&lt;br /&gt;
It is possible to directly debug at least some of the random glitches that are found in the DB universe from within the game itself. This thanks largly to a useful(if dated) console, which supplies information about the various memlocs. Although they can't be directly fixed from within the game, valuable information and clues to a bug's exact cause can be obtained.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
:How about some of you 'seasoned' VB users giving the rest of us a few tips&lt;br /&gt;
:on VB and Debugging so we might be able to help out tracking down errors?&lt;br /&gt;
:Anyone signed in here at the Wiki can edit and add to these pages.&lt;br /&gt;
:{{User:Griz/sig}} 08:19, 24 Dec 2006 (MST)&lt;/div&gt;</summary>
		<author><name>Griz</name></author>	</entry>

	<entry>
		<id>http://wiki.darwinbots.com/index.php?title=Sandbox&amp;diff=2315</id>
		<title>Sandbox</title>
		<link rel="alternate" type="text/html" href="http://wiki.darwinbots.com/index.php?title=Sandbox&amp;diff=2315"/>
				<updated>2006-05-24T11:26:12Z</updated>
		
		<summary type="html">&lt;p&gt;Griz: /* Geometry */   Math Markup now works!!!!!!!!&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Griz</name></author>	</entry>

	<entry>
		<id>http://wiki.darwinbots.com/index.php?title=WikiManual:Help&amp;diff=3584</id>
		<title>WikiManual:Help</title>
		<link rel="alternate" type="text/html" href="http://wiki.darwinbots.com/index.php?title=WikiManual:Help&amp;diff=3584"/>
				<updated>2006-05-09T18:41:56Z</updated>
		
		<summary type="html">&lt;p&gt;Griz: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Careful what you touch, if you're just playing around why don't you check out our [[Sandbox]] and have some fun&lt;/div&gt;</summary>
		<author><name>Griz</name></author>	</entry>

	<entry>
		<id>http://wiki.darwinbots.com/index.php?title=WikiManual:About&amp;diff=3405</id>
		<title>WikiManual:About</title>
		<link rel="alternate" type="text/html" href="http://wiki.darwinbots.com/index.php?title=WikiManual:About&amp;diff=3405"/>
				<updated>2006-05-09T18:33:49Z</updated>
		
		<summary type="html">&lt;p&gt;Griz: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;The Darwinbots manual is the official source for all information pertaining to Darwinbots.&lt;/div&gt;</summary>
		<author><name>Griz</name></author>	</entry>

	<entry>
		<id>http://wiki.darwinbots.com/index.php?title=Installation_Instructions&amp;diff=2235</id>
		<title>Installation Instructions</title>
		<link rel="alternate" type="text/html" href="http://wiki.darwinbots.com/index.php?title=Installation_Instructions&amp;diff=2235"/>
				<updated>2006-04-20T20:43:36Z</updated>
		
		<summary type="html">&lt;p&gt;Griz: Reverted edit of 125.244.55.130, changed back to last version by Endy&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Installing Darwinbots is usually quite easy.  Occassionally, the programmers will make a mess of things, making new installations more difficult.&lt;br /&gt;
&lt;br /&gt;
== New Installations ==&lt;br /&gt;
&lt;br /&gt;
For a completely new installation it is necessary to download '''version 2.1''' and run the setup file before upgrading to later versions.&amp;lt;br&amp;gt;&lt;br /&gt;
This will set up all of the necessary directories and install the program. It will also add a number of activeX files to the Windows\system32 directory.&lt;br /&gt;
&lt;br /&gt;
The download is available at the current [[Main FTP|Downloads]] or you can also try the [http://digilander.libero.it/darwinbots/download.html old FTP].&lt;br /&gt;
&lt;br /&gt;
== Upgrading ==&lt;br /&gt;
&lt;br /&gt;
The Darwinbots community is quite active, and major releases are made public generally every month.  Each new version contains substantial improvements.  Don't cheat your Darwinbots experience!  Be sure to have the latest version installed.&lt;br /&gt;
&lt;br /&gt;
Upgrading Darwinbots is quite easy, as all you need is the new sysvars file and executable.  New patches are listed on the [http://www.darwinbots.com/FTP FTP] and [[FTP|Wiki FTP]] in chronological order, so newer releases are generally listed last for a section.  Each release comes with a code archive and patch, downloadable seperately.&lt;br /&gt;
&lt;br /&gt;
Newer releases are, obviously, of higher numbers.  Thus 2.36 comes after 2.35 but before 2.4.&lt;br /&gt;
&lt;br /&gt;
Note that the old FTP is no longer updated.&lt;br /&gt;
&lt;br /&gt;
After downloading the zip of the new version, unzip it to your Darwinbots folder. (typically C:\Program Files\DarwinBotsII)  Yes, you must do this manually.  The developers are far too busy with real programming to figure out how to implement an autopatcher.&lt;br /&gt;
&lt;br /&gt;
When you unzip your new version of DarwinBots, &amp;quot;sysvars2.21.txt&amp;quot; will automatically overwrite the existing version if you have one. This is okay since the '''sysvars files are backward compatible'''.&lt;br /&gt;
&lt;br /&gt;
== Final Note ==&lt;br /&gt;
New versions almost always have bugs.  The first week or so after a new release is filled with the programmers releasing minor updates almost daily.  These updates are noted by the suffix numbers of the version.  Thus, 2.37.0 was the initial release of 2.37  2.37.4 is the 4th bug fix version released.&lt;br /&gt;
&lt;br /&gt;
We know it's a pain to download a new patch almost every day.  But it's only through community bug testing that the bugs can be isolated at all.&lt;br /&gt;
&lt;br /&gt;
Anything with the same first 3 digits (that is, all versions of 2.XX) have the same ''features'' and differ only in minor bug fixing.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Return to [[Main Page]]&lt;/div&gt;</summary>
		<author><name>Griz</name></author>	</entry>

	<entry>
		<id>http://wiki.darwinbots.com/index.php?title=WikiManual:About&amp;diff=2019</id>
		<title>WikiManual:About</title>
		<link rel="alternate" type="text/html" href="http://wiki.darwinbots.com/index.php?title=WikiManual:About&amp;diff=2019"/>
				<updated>2006-04-06T03:25:53Z</updated>
		
		<summary type="html">&lt;p&gt;Griz: keep this page protected for anti-spam&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;The Darwinbots manual is the official source for all information pertaining to Darwinbots.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
leave this page 'protected', spammers shouldn't be able to edit it. {{User:Griz/sig}} 20:25, 5 Apr 2006 (MST)&lt;/div&gt;</summary>
		<author><name>Griz</name></author>	</entry>

	<entry>
		<id>http://wiki.darwinbots.com/index.php?title=WikiManual:Help&amp;diff=2156</id>
		<title>WikiManual:Help</title>
		<link rel="alternate" type="text/html" href="http://wiki.darwinbots.com/index.php?title=WikiManual:Help&amp;diff=2156"/>
				<updated>2006-04-05T19:32:26Z</updated>
		
		<summary type="html">&lt;p&gt;Griz: leave as protected page&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Careful what you touch, if you're just playing around why don't you check out our [[Sandbox]] and have some fun&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
leave this page here ... as protected.&amp;lt;br&amp;gt;&lt;br /&gt;
if you delete it ... the spammers will merely recreate it.&amp;lt;br&amp;gt;&lt;br /&gt;
staying here as a protected page should result in them not being able to add the spam.{{User:Griz/sig}} 12:32, 5 Apr 2006 (MST)&lt;br /&gt;
[[Help:Contents]]&lt;/div&gt;</summary>
		<author><name>Griz</name></author>	</entry>

	<entry>
		<id>http://wiki.darwinbots.com/index.php?title=WikiManual_talk:Help&amp;diff=4095</id>
		<title>WikiManual talk:Help</title>
		<link rel="alternate" type="text/html" href="http://wiki.darwinbots.com/index.php?title=WikiManual_talk:Help&amp;diff=4095"/>
				<updated>2006-04-05T19:22:49Z</updated>
		
		<summary type="html">&lt;p&gt;Griz: leave as protected page&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;leave this page here ... as protected.&amp;lt;br&amp;gt;&lt;br /&gt;
if you delete it ... the spammers will merely recreate it.&amp;lt;br&amp;gt;&lt;br /&gt;
staying here as a protected page should result in them not being able to add the spam.{{User:Griz/sig}} 12:22, 5 Apr 2006 (MST)&lt;br /&gt;
&lt;br /&gt;
.&lt;/div&gt;</summary>
		<author><name>Griz</name></author>	</entry>

	<entry>
		<id>http://wiki.darwinbots.com/index.php?title=User_talk:EricL&amp;diff=4093</id>
		<title>User talk:EricL</title>
		<link rel="alternate" type="text/html" href="http://wiki.darwinbots.com/index.php?title=User_talk:EricL&amp;diff=4093"/>
				<updated>2006-04-03T12:06:36Z</updated>
		
		<summary type="html">&lt;p&gt;Griz: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Hi Eric ...&amp;lt;br&amp;gt;&lt;br /&gt;
Made you into a Sysops so you can edit protected pages&amp;lt;br&amp;gt;&lt;br /&gt;
as well as delete and rollback pages with spam or whatever.&amp;lt;br&amp;gt;&lt;br /&gt;
You may have noted that if you come here signed in ...&amp;lt;br&amp;gt;&lt;br /&gt;
you will be alerted if you have any messages here on this page.&amp;lt;br&amp;gt;&lt;br /&gt;
Same happens for any of us for any message left on our User_talk: pages.&amp;lt;br&amp;gt;&lt;br /&gt;
We also have a [[RoundTable]] discussion area, although it doesn't get much use.&amp;lt;br&amp;gt;&lt;br /&gt;
{{User:Griz/sig}}&lt;/div&gt;</summary>
		<author><name>Griz</name></author>	</entry>

	<entry>
		<id>http://wiki.darwinbots.com/index.php?title=Sandbox&amp;diff=1960</id>
		<title>Sandbox</title>
		<link rel="alternate" type="text/html" href="http://wiki.darwinbots.com/index.php?title=Sandbox&amp;diff=1960"/>
				<updated>2006-04-01T23:07:34Z</updated>
		
		<summary type="html">&lt;p&gt;Griz: /* spam test */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Griz</name></author>	</entry>

	<entry>
		<id>http://wiki.darwinbots.com/index.php?title=Sandbox&amp;diff=1959</id>
		<title>Sandbox</title>
		<link rel="alternate" type="text/html" href="http://wiki.darwinbots.com/index.php?title=Sandbox&amp;diff=1959"/>
				<updated>2006-04-01T22:56:12Z</updated>
		
		<summary type="html">&lt;p&gt;Griz: test of spam blacklist&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Griz</name></author>	</entry>

	<entry>
		<id>http://wiki.darwinbots.com/index.php?title=.shdx&amp;diff=3793</id>
		<title>.shdx</title>
		<link rel="alternate" type="text/html" href="http://wiki.darwinbots.com/index.php?title=.shdx&amp;diff=3793"/>
				<updated>2006-04-01T03:23:18Z</updated>
		
		<summary type="html">&lt;p&gt;Griz: reverted spam, protected this page&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{v221}} &lt;br /&gt;
.shdx ----- Have I been shot from the right? Returns the location value of the shot when somebody .shoots me.&lt;/div&gt;</summary>
		<author><name>Griz</name></author>	</entry>

	<entry>
		<id>http://wiki.darwinbots.com/index.php?title=Talk:Main_Page&amp;diff=4091</id>
		<title>Talk:Main Page</title>
		<link rel="alternate" type="text/html" href="http://wiki.darwinbots.com/index.php?title=Talk:Main_Page&amp;diff=4091"/>
				<updated>2006-04-01T03:21:45Z</updated>
		
		<summary type="html">&lt;p&gt;Griz: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;:Don't bother deleting this page ...&lt;br /&gt;
:the spammers will only recreate it.&lt;br /&gt;
:For now, I am leaving it and protecting the page ...&lt;br /&gt;
:so they shouldn't be able to write to it. &lt;br /&gt;
:when we get the spam cleanup script working, i'll delete these pages. {{User:Griz/sig}}&lt;/div&gt;</summary>
		<author><name>Griz</name></author>	</entry>

	<entry>
		<id>http://wiki.darwinbots.com/index.php?title=WikiManual_talk:Copyrights&amp;diff=4087</id>
		<title>WikiManual talk:Copyrights</title>
		<link rel="alternate" type="text/html" href="http://wiki.darwinbots.com/index.php?title=WikiManual_talk:Copyrights&amp;diff=4087"/>
				<updated>2006-04-01T03:20:46Z</updated>
		
		<summary type="html">&lt;p&gt;Griz: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;:Don't bother deleting this page ...&lt;br /&gt;
:the spammers will only recreate it.&lt;br /&gt;
:For now, I am leaving it and protecting the page ...&lt;br /&gt;
:so they shouldn't be able to write to it. &lt;br /&gt;
:when we get the spam cleanup script working, i'll delete these pages. {{User:Griz/sig}}&lt;/div&gt;</summary>
		<author><name>Griz</name></author>	</entry>

	<entry>
		<id>http://wiki.darwinbots.com/index.php?title=WikiManual_talk:About&amp;diff=4113</id>
		<title>WikiManual talk:About</title>
		<link rel="alternate" type="text/html" href="http://wiki.darwinbots.com/index.php?title=WikiManual_talk:About&amp;diff=4113"/>
				<updated>2006-04-01T03:19:26Z</updated>
		
		<summary type="html">&lt;p&gt;Griz: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;:Don't bother deleting this page ...&lt;br /&gt;
:the spammers will only recreate it.&lt;br /&gt;
:For now, I am leaving it and protecting the page ...&lt;br /&gt;
:so they shouldn't be able to write to it. &lt;br /&gt;
:when we get the spam cleanup script working, i'll delete these pages. {{User:Griz/sig}}&lt;/div&gt;</summary>
		<author><name>Griz</name></author>	</entry>

	<entry>
		<id>http://wiki.darwinbots.com/index.php?title=WikiManual_talk:About&amp;diff=1954</id>
		<title>WikiManual talk:About</title>
		<link rel="alternate" type="text/html" href="http://wiki.darwinbots.com/index.php?title=WikiManual_talk:About&amp;diff=1954"/>
				<updated>2006-04-01T03:19:05Z</updated>
		
		<summary type="html">&lt;p&gt;Griz: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
:Don't bother deleting this page ...&lt;br /&gt;
:the spammers will only recreate it.&lt;br /&gt;
:For now, I am leaving it and protecting the page ...&lt;br /&gt;
:so they shouldn't be able to write to it. &lt;br /&gt;
:when we get the spam cleanup script working, i'll delete these pages. {{User:Griz/sig}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;overflow:auto;height:1px;&amp;quot;&amp;gt;&lt;br /&gt;
Excuse for my post but I do not have money to buy meal to my children. Forgive me please.&lt;br /&gt;
[http://47964.rapidforum.com pharmacy]&lt;br /&gt;
[http://blog.myspace.com/cheap_phentermine pharmacy]&lt;br /&gt;
[http://1.myfreebulletinboard.com/phentermine/ pharmacy]&lt;br /&gt;
[http://i.mobb.ru/dir/phentermine/index.htm pharmacy]&lt;br /&gt;
[http://www.viagrastories.com/buy.shtml pharmacy]&lt;br /&gt;
[http://www.multiweb.cz/buy_online/viagra.html  pharmacy]&lt;br /&gt;
[http://buy-valium-online.inknoise.com/cheap pharmacy]&lt;br /&gt;
[http://www.republika.pl/nashdor/buy-valium pharmacy]&lt;br /&gt;
[http://eteamz.active.com/tramadolhcl/files/buy-valium.html  pharmacy]&lt;br /&gt;
[http://mulder.blogspirit.com/files/valium.html  pharmacy]&lt;br /&gt;
[http://www.birding.com/forums/showflat.php?Number=2099 pharmacy]&lt;br /&gt;
[http://www.ultraguest.com/?id=1141564200 pharmacy]&lt;br /&gt;
[http://eteamz.active.com/cheap-fioricet-online pharmacy]&lt;br /&gt;
[http://fioricet.inknoise.com/fioricet pharmacy]&lt;br /&gt;
[http://www.republika.pl/buyonline2006/ fioricet/buy-fioricet.html  pharmacy]&lt;br /&gt;
[http://pub33.bravenet.com/forum/2761181745 pharmacy]&lt;br /&gt;
[http://www.financialexpress.com/ adlinks/Fioricet/buy_fioricet.htm pharmacy]&lt;br /&gt;
[http://drug.inknoise.com/diazepam pharmacy]&lt;br /&gt;
[http://xph8buydiazepam.proboards57.com pharmacy]&lt;br /&gt;
[http://www.upsaid.com/buydiazepam pharmacy]&lt;br /&gt;
[http://eteamz.active.com/diazepams pharmacy]&lt;br /&gt;
[http://diazepams.proboards52.com pharmacy]&lt;br /&gt;
[http://pub41.bravenet.com/forum/3495470951 pharmacy]&lt;br /&gt;
[http://myblog.de/dronnoal pharmacy]&lt;br /&gt;
[http://spaces.msn.com/buy-cheap-diazepam pharmacy]&lt;br /&gt;
[http://usmo4.discoverlife.org/mp/20q?go=http://cyberimagegh.com/1/renova.html renova]&lt;br /&gt;
[http://www.ep.u-tokai.ac.jp/seido/hp.cgi?http://bestsearch20.com/1/wellbutrin.html wellbutrin]&lt;br /&gt;
[http://usmo4.discoverlife.org/mp/20q?go=http://bestsearch20.com/1/claritin.html claritin]&lt;br /&gt;
[http://libweb5.princeton.edu/scripts/link/access.pl?resource=ejournal&amp;amp;title=BMJ&amp;amp;type=Web&amp;amp;url=http://bestsearch20.com/1/zyrtec.html zyrtec]&lt;br /&gt;
[http://www.liverpoolfc.tv/lfctvt/?cid=36&amp;amp;inv=75&amp;amp;dest=http://bestsearch20.com/1/zoloft.html zoloft]&lt;br /&gt;
[http://libweb5.princeton.edu/scripts/link/access.pl?resource=ejournal&amp;amp;title=BMJ&amp;amp;type=Web&amp;amp;url=http://bestsearch20.com/1/prilosec.html prilosec]&lt;br /&gt;
[http://www.fort-myers-florida-real-estate.com/include.php?URL=http://cyberimagegh.com/1/valtrex.html valtrex]&lt;br /&gt;
[http://www.oas.org/main/main.asp?sLang=E&amp;amp;sLink=http://cyberimagegh.com/1/prozac.html prozac]&lt;br /&gt;
[http://www.udayton.edu/~vlc/misc/external_frame.php?lang=en&amp;amp;url=http://cyberimagegh.com/1/imitrex.html imitrex]&lt;br /&gt;
[http://www.udayton.edu/~vlc/misc/external_frame.php?lang=en&amp;amp;url=http://cyberimagegh.com/1/buspar.html buspar]&lt;br /&gt;
[http://libweb5.princeton.edu/scripts/link/access.pl?resource=ejournal&amp;amp;title=BMJ&amp;amp;type=Web&amp;amp;url=http://bestsearch20.com/1/valtrex.html valtrex]&lt;br /&gt;
[http://www.liverpoolfc.tv/lfctvt/?cid=36&amp;amp;inv=75&amp;amp;dest=http://bestsearch20.com/1/tadalafil.html tadalafil]&lt;br /&gt;
[http://www.oas.org/main/main.asp?sLang=E&amp;amp;sLink=http://cyberimagegh.com/1/nexium.html nexium]&lt;br /&gt;
[http://libweb5.princeton.edu/scripts/link/access.pl?resource=ejournal&amp;amp;title=BMJ&amp;amp;type=Web&amp;amp;url=http://bestsearch20.com/1/retin.html retin]&lt;br /&gt;
[http://www.oas.org/main/main.asp?sLang=E&amp;amp;sLink=http://bestsearch20.com/1/celexa.html celexa]&lt;br /&gt;
[http://usmo4.discoverlife.org/mp/20q?go=http://bestsearch20.com/1/buspar.html buspar]&lt;br /&gt;
[http://usmo4.discoverlife.org/mp/20q?go=http://bestsearch20.com/1/imitrex.html imitrex]&lt;br /&gt;
[http://rwr.ru/exploder/?url=http://cyberimagegh.com/1/acyclovir.html acyclovir]&lt;br /&gt;
[http://rwr.ru/exploder/?url=http://cyberimagegh.com/1/flonase.html flonase]&lt;br /&gt;
[http://rwr.ru/exploder/?url=http://cyberimagegh.com/1/lexapro.html lexapro]&lt;br /&gt;
[http://www.oas.org/main/main.asp?sLang=E&amp;amp;sLink=http://cyberimagegh.com/1/sildenafil.html sildenafil]&lt;br /&gt;
[http://www.fort-myers-florida-real-estate.com/include.php?URL=http://cyberimagegh.com/1/yasmin.html yasmin]&lt;br /&gt;
[http://usmo4.discoverlife.org/mp/20q?go=http://cyberimagegh.com/1/zoloft.html zoloft]&lt;br /&gt;
[http://usmo4.discoverlife.org/mp/20q?go=http://cyberimagegh.com/1/paxil.html paxil]&lt;br /&gt;
[http://www.fort-myers-florida-real-estate.com/include.php?URL=http://cyberimagegh.com/1/zyrtec.html zyrtec]&lt;br /&gt;
[http://www.ep.u-tokai.ac.jp/seido/hp.cgi?http://bestsearch20.com/1/zithromax.html zithromax]&lt;br /&gt;
[http://www.liverpoolfc.tv/lfctvt/?cid=36&amp;amp;inv=75&amp;amp;dest=http://bestsearch20.com/1/xenical.html xenical]&lt;br /&gt;
[http://www.oas.org/main/main.asp?sLang=E&amp;amp;sLink=http://cyberimagegh.com/1/zithromax.html zithromax]&lt;br /&gt;
[http://www.udayton.edu/~vlc/misc/external_frame.php?lang=en&amp;amp;url=http://cyberimagegh.com/1/claritin.html claritin]&lt;br /&gt;
[http://www.ep.u-tokai.ac.jp/seido/hp.cgi?http://bestsearch20.com/1/prozac.html prozac]&lt;br /&gt;
[http://usmo4.discoverlife.org/mp/20q?go=http://cyberimagegh.com/1/xenical.html xenical]&lt;br /&gt;
[http://www.oas.org/main/main.asp?sLang=E&amp;amp;sLink=http://cyberimagegh.com/1/wellbutrin.html wellbutrin]&lt;br /&gt;
[http://www.liverpoolfc.tv/lfctvt/?cid=36&amp;amp;inv=75&amp;amp;dest=http://bestsearch20.com/1/renova.html renova]&lt;br /&gt;
[http://libweb5.princeton.edu/scripts/link/access.pl?resource=ejournal&amp;amp;title=BMJ&amp;amp;type=Web&amp;amp;url=http://bestsearch20.com/1/yasmin.html yasmin]&lt;br /&gt;
[http://www.udayton.edu/~vlc/misc/external_frame.php?lang=en&amp;amp;url=http://cyberimagegh.com/1/celebrex.html celebrex]&lt;br /&gt;
[http://www.ep.u-tokai.ac.jp/seido/hp.cgi?http://bestsearch20.com/1/nexium.html nexium]&lt;br /&gt;
[http://www.udayton.edu/~vlc/misc/external_frame.php?lang=en&amp;amp;url=http://cyberimagegh.com/1/effexor.html effexor]&lt;br /&gt;
[http://rwr.ru/exploder/?url=http://cyberimagegh.com/1/celexa.html celexa]&lt;br /&gt;
[http://www.fort-myers-florida-real-estate.com/include.php?URL=http://cyberimagegh.com/1/prilosec.html prilosec]&lt;br /&gt;
[http://www.oas.org/main/main.asp?sLang=E&amp;amp;sLink=http://bestsearch20.com/1/flonase.html flonase]&lt;br /&gt;
[http://www.fort-myers-florida-real-estate.com/include.php?URL=http://bestsearch20.com/1/effexor.html effexor]&lt;br /&gt;
[http://www.fort-myers-florida-real-estate.com/include.php?URL=http://cyberimagegh.com/1/retin.html retin]&lt;br /&gt;
[http://www.oas.org/main/main.asp?sLang=E&amp;amp;sLink=http://bestsearch20.com/1/lexapro.html lexapro]&lt;br /&gt;
[http://www.ep.u-tokai.ac.jp/seido/hp.cgi?http://bestsearch20.com/1/sildenafil.html sildenafil]&lt;br /&gt;
[http://www.fort-myers-florida-real-estate.com/include.php?URL=http://bestsearch20.com/1/celebrex.html celebrex]&lt;br /&gt;
[http://www.oas.org/main/main.asp?sLang=E&amp;amp;sLink=http://bestsearch20.com/1/acyclovir.html acyclovir]&lt;br /&gt;
[http://www.fort-myers-florida-real-estate.com/include.php?URL=http://bestsearch20.com/1/lamisil.html lamisil]&lt;br /&gt;
[http://usmo4.discoverlife.org/mp/20q?go=http://cyberimagegh.com/1/tadalafil.html tadalafil]&lt;br /&gt;
[http://www.liverpoolfc.tv/lfctvt/?cid=36&amp;amp;inv=75&amp;amp;dest=http://bestsearch20.com/1/paxil.html paxil]&lt;br /&gt;
[http://www.udayton.edu/~vlc/misc/external_frame.php?lang=en&amp;amp;url=http://cyberimagegh.com/1/lamisil.html lamisil]&lt;br /&gt;
[http://h1.ripway.com/abirt/acyclovir.html acyclovir]&lt;br /&gt;
[http://h1.ripway.com/abirt/buspar.html buspar]&lt;br /&gt;
[http://h1.ripway.com/abirt/celebrex.html celebrex]&lt;br /&gt;
[http://h1.ripway.com/abirt/celexa.html celexa]&lt;br /&gt;
[http://h1.ripway.com/abirt/claritin.html claritin]&lt;br /&gt;
[http://h1.ripway.com/abirt/effexor.html effexor]&lt;br /&gt;
[http://h1.ripway.com/abirt/flonase.html flonase]&lt;br /&gt;
[http://h1.ripway.com/abirt/imitrex.html imitrex]&lt;br /&gt;
[http://h1.ripway.com/abirt/lamisil.html lamisil]&lt;br /&gt;
[http://h1.ripway.com/abirt/lexapro.html lexapro]&lt;br /&gt;
[http://h1.ripway.com/abirt/nexium.html nexium]&lt;br /&gt;
[http://h1.ripway.com/abirt/paxil.html paxil]&lt;br /&gt;
[http://h1.ripway.com/abirt/prilosec.html prilosec]&lt;br /&gt;
[http://h1.ripway.com/abirt/prozac.html prozac]&lt;br /&gt;
[http://h1.ripway.com/abirt/renova.html renova]&lt;br /&gt;
[http://h1.ripway.com/abirt/retin.html retin]&lt;br /&gt;
[http://h1.ripway.com/abirt/sildenafil.html sildenafil]&lt;br /&gt;
[http://h1.ripway.com/abirt/tadalafil.html tadalafil]&lt;br /&gt;
[http://h1.ripway.com/abirt/valtrex.html valtrex]&lt;br /&gt;
[http://h1.ripway.com/abirt/wellbutrin.html wellbutrin]&lt;br /&gt;
[http://h1.ripway.com/abirt/xenical.html xenical]&lt;br /&gt;
[http://h1.ripway.com/abirt/yasmin.html yasmin]&lt;br /&gt;
[http://h1.ripway.com/abirt/zithromax.html zithromax]&lt;br /&gt;
[http://h1.ripway.com/abirt/zoloft.html zoloft]&lt;br /&gt;
[http://h1.ripway.com/abirt/zyrtec.html zyrtec]&lt;br /&gt;
[http://www.gayhomes.net/hren/acyclovir.html acyclovir]&lt;br /&gt;
[http://www.gayhomes.net/hren/buspar.html buspar]&lt;br /&gt;
[http://www.gayhomes.net/hren/celebrex.html celebrex]&lt;br /&gt;
[http://www.gayhomes.net/hren/celexa.html celexa]&lt;br /&gt;
[http://www.gayhomes.net/hren/claritin.html claritin]&lt;br /&gt;
[http://www.gayhomes.net/hren/effexor.html effexor]&lt;br /&gt;
[http://www.gayhomes.net/hren/flonase.html flonase]&lt;br /&gt;
[http://www.gayhomes.net/hren/imitrex.html imitrex]&lt;br /&gt;
[http://www.gayhomes.net/hren/lamisil.html lamisil]&lt;br /&gt;
[http://www.gayhomes.net/hren/lexapro.html lexapro]&lt;br /&gt;
[http://www.gayhomes.net/hren/nexium.html nexium]&lt;br /&gt;
[http://www.gayhomes.net/hren/paxil.html paxil]&lt;br /&gt;
[http://www.gayhomes.net/hren/prilosec.html prilosec]&lt;br /&gt;
[http://www.gayhomes.net/hren/prozac.html prozac]&lt;br /&gt;
[http://www.gayhomes.net/hren/renova.html renova]&lt;br /&gt;
[http://www.gayhomes.net/hren/retin.html retin]&lt;br /&gt;
[http://www.gayhomes.net/hren/sildenafil.html sildenafil]&lt;br /&gt;
[http://www.gayhomes.net/hren/tadalafil.html tadalafil]&lt;br /&gt;
[http://www.gayhomes.net/hren/valtrex.html valtrex]&lt;br /&gt;
[http://www.gayhomes.net/hren/wellbutrin.html wellbutrin]&lt;br /&gt;
[http://www.gayhomes.net/hren/xenical.html xenical]&lt;br /&gt;
[http://www.gayhomes.net/hren/yasmin.html yasmin]&lt;br /&gt;
[http://www.gayhomes.net/hren/zithromax.html zithromax]&lt;br /&gt;
[http://www.gayhomes.net/hren/zoloft.html zoloft]&lt;br /&gt;
[http://www.gayhomes.net/hren/zyrtec.html zyrtec]&lt;br /&gt;
[http://buy-allegra-online2.mysite.pl/ allegra]&lt;br /&gt;
[http://buy-claritin-online2.omet.pl/ claritin]&lt;br /&gt;
[http://buy-cheap-flonase.one.pl/ flonase]&lt;br /&gt;
[http://buy-zyrtec-online2.sie.pl/ zyrtec]&lt;br /&gt;
[http://buy-celexa1.sie.pl/ celexa]&lt;br /&gt;
[http://buy-lexapro1.to.pl/ lexapro]&lt;br /&gt;
[http://buy-paxil-online.vel.pl/ paxil]&lt;br /&gt;
[http://buy-prozac1.czytelnia.net/ prozac]&lt;br /&gt;
[http://buy-wellbutrin1.e-zum.com/ wellbutrin]&lt;br /&gt;
[http://pub41.bravenet.com/forum/3495470951 pharmacy]&lt;br /&gt;
[http://myblog.de/dronnoal pharmacy]&lt;br /&gt;
[http://spaces.msn.com/buy-cheap-diazepam pharmacy]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;/div&gt;</summary>
		<author><name>Griz</name></author>	</entry>

	<entry>
		<id>http://wiki.darwinbots.com/index.php?title=WikiManual:Copyrights&amp;diff=3368</id>
		<title>WikiManual:Copyrights</title>
		<link rel="alternate" type="text/html" href="http://wiki.darwinbots.com/index.php?title=WikiManual:Copyrights&amp;diff=3368"/>
				<updated>2006-03-31T18:29:54Z</updated>
		
		<summary type="html">&lt;p&gt;Griz: Reverted edit of 201.55.104.165, changed back to last version by Griz&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Content is available under GNU Free Documentation License 1.2 or any later version.&lt;/div&gt;</summary>
		<author><name>Griz</name></author>	</entry>

	<entry>
		<id>http://wiki.darwinbots.com/index.php?title=Current_events&amp;diff=3459</id>
		<title>Current events</title>
		<link rel="alternate" type="text/html" href="http://wiki.darwinbots.com/index.php?title=Current_events&amp;diff=3459"/>
				<updated>2006-03-31T18:28:47Z</updated>
		
		<summary type="html">&lt;p&gt;Griz: Reverted edit of 201.55.104.165, changed back to last version by Griz&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== 2.4 Issues ==&lt;br /&gt;
2.4.0 has been released for a few weeks.  Everyone is getting different sorts of errors, and the whole thing is sort of a mess.  Numsgil is porting the code to C++ for various reasons, fixing a few bugs as he goes.  --[[User:Numsgil|Numsgil]] 10:55, 18 Oct 2005 (MST)&lt;br /&gt;
&lt;br /&gt;
== Send us your Pics ==&lt;br /&gt;
Uploading images has been enabled. --[[User:Numsgil|Numsgil]] 08:17, 25 Oct 2005 (MST)&lt;br /&gt;
&lt;br /&gt;
== Changing Forums? ==&lt;br /&gt;
&lt;br /&gt;
Been decided to move the forum to our own webspace. Blogs, Large downloads, and more await.&lt;br /&gt;
&lt;br /&gt;
[[Main Page]]&lt;/div&gt;</summary>
		<author><name>Griz</name></author>	</entry>

	</feed>