<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
		<id>http://wiki.darwinbots.com/index.php?action=history&amp;feed=atom&amp;title=Talk%3ABotTxt</id>
		<title>Talk:BotTxt - Revision history</title>
		<link rel="self" type="application/atom+xml" href="http://wiki.darwinbots.com/index.php?action=history&amp;feed=atom&amp;title=Talk%3ABotTxt"/>
		<link rel="alternate" type="text/html" href="http://wiki.darwinbots.com/index.php?title=Talk:BotTxt&amp;action=history"/>
		<updated>2026-04-19T22:12:32Z</updated>
		<subtitle>Revision history for this page on the wiki</subtitle>
		<generator>MediaWiki 1.29.0</generator>

	<entry>
		<id>http://wiki.darwinbots.com/index.php?title=Talk:BotTxt&amp;diff=5409&amp;oldid=prev</id>
		<title>MysticalDumpling: Created page with &quot;==Cachebot?== How would you create a bot that creates caches and stores them in epigenetic memory? I tried, but it failed:                    'Nomad  'Shotbot designed for hug...&quot;</title>
		<link rel="alternate" type="text/html" href="http://wiki.darwinbots.com/index.php?title=Talk:BotTxt&amp;diff=5409&amp;oldid=prev"/>
				<updated>2014-02-14T22:34:54Z</updated>
		
		<summary type="html">&lt;p&gt;Created page with &amp;quot;==Cachebot?== How would you create a bot that creates caches and stores them in epigenetic memory? I tried, but it failed:                    &amp;#039;Nomad  &amp;#039;Shotbot designed for hug...&amp;quot;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;==Cachebot?==&lt;br /&gt;
How would you create a bot that creates caches and stores them in epigenetic memory?&lt;br /&gt;
I tried, but it failed:&lt;br /&gt;
&lt;br /&gt;
                  'Nomad&lt;br /&gt;
 'Shotbot designed for huge sims with little food&lt;br /&gt;
 'Saves 3 &amp;quot;caches&amp;quot; or food sights in epigenetic memory&lt;br /&gt;
&lt;br /&gt;
 'When each cache is depleted (bots have less than 100 nrg), move on to the next one.&lt;br /&gt;
 'Follow conspecs to get at their caches&lt;br /&gt;
&lt;br /&gt;
 &lt;br /&gt;
 'Share caches on i/o&lt;br /&gt;
&lt;br /&gt;
 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0&lt;br /&gt;
 'defs&lt;br /&gt;
 def cachex1 971&lt;br /&gt;
 def cachey1 972&lt;br /&gt;
 def cachex2 973&lt;br /&gt;
 def cachey2 974&lt;br /&gt;
 def cachex3 975&lt;br /&gt;
 def cachey3 976&lt;br /&gt;
&lt;br /&gt;
 'Temps&lt;br /&gt;
 def tempcache 21&lt;br /&gt;
 def tcx 22&lt;br /&gt;
 def tcy 23&lt;br /&gt;
&lt;br /&gt;
 'Nrg-saving mode (hibernate)&lt;br /&gt;
 def code9 24&lt;br /&gt;
&lt;br /&gt;
 'Am I moving?&lt;br /&gt;
 def mov 25&lt;br /&gt;
&lt;br /&gt;
 'As many genes as possible will be sg-ified&lt;br /&gt;
&lt;br /&gt;
 'Oculus&lt;br /&gt;
 start&lt;br /&gt;
 -4 *.eye1 *.eye9 sub sgn 0 floor mult *.eye1 *.eye8 sub sgn 0 floor mult *.eye1 *.eye7 sub sgn 0 floor mult *.eye1 *.eye6 sub sgn 0 floor   mult *.eye1 *.eye5 sub sgn 0 floor mult *.eye1 *.eye4 sub sgn 0 floor mult *.eye1 *.eye3 sub sgn 0 floor mult *.eye1 *.eye2 sub sgn 0 floor mult 4 *.eye9 *.eye8 sub sgn 0 floor mult *.eye9 *.eye7 sub sgn 0 floor mult *.eye9 *.eye6 sub sgn 0 floor mult *.eye9 *.eye5 sub sgn 0 floor mult *.eye9 *.eye4 sub sgn 0 floor mult *.eye9 *.eye3 sub sgn 0 floor mult *.eye9 *.eye2 sub sgn 0 floor mult *.eye9 *.eye1 sub sgn ++ sgn mult add -3 *.eye2 *.eye9 sub sgn ++ sgn mult *.eye2 *.eye8 sub sgn 0 floor mult *.eye2 *.eye7 sub sgn 0 floor mult *.eye2 *.eye6 sub sgn 0 floor mult *.eye2 *.eye5 sub sgn 0 floor mult *.eye2 *.eye4 sub sgn 0 floor mult *.eye2 *.eye3 sub sgn 0 floor mult *.eye2 *.eye1 sub sgn ++ sgn mult add 3 *.eye8 *.eye9 sub sgn ++ sgn mult *.eye8 *.eye7 sub sgn 0 floor mult *.eye8 *.eye6 sub sgn 0 floor mult *.eye8 *.eye5 sub sgn 0 floor mult *.eye8 *.eye4 sub sgn 0 floor mult *.eye8 *.eye3 sub sgn 0 floor mult *.eye8 *.eye2 sub sgn ++ sgn mult *.eye8 *.eye1 sub sgn ++ sgn mult add -2 *.eye3 *.eye9 sub sgn ++ sgn mult *.eye3 *.eye8 sub sgn ++ sgn mult *.eye3 *.eye7 sub sgn 0 floor mult *.eye3 *.eye6 sub sgn 0 floor mult *.eye3 *.eye5 sub sgn 0 floor mult *.eye3 *.eye4 sub sgn 0 floor mult *.eye3 *.eye2 sub sgn ++ sgn mult *.eye3 *.eye1 sub sgn ++ sgn mult add 2 *.eye7 *.eye9 sub sgn ++ sgn mult *.eye7 *.eye8 sub sgn ++ sgn mult *.eye7 *.eye7 sub sgn 0 floor mult *.eye7 *.eye6 sub sgn 0 floor mult *.eye7 *.eye5 sub sgn 0 floor mult *.eye7 *.eye4 sub sgn ++ sgn mult *.eye7 *.eye2 sub sgn ++ sgn mult *.eye7 *.eye1 sub sgn ++ sgn mult add -1 *.eye4 *.eye9 sub sgn ++ sgn mult *.eye4 *.eye8 sub sgn ++ sgn mult *.eye4 *.eye7 sub sgn ++ sgn mult *.eye4 *.eye6 sub sgn 0 floor mult *.eye4 *.eye5 sub sgn 0 floor mult *.eye4 *.eye3 sub sgn ++ sgn mult *.eye4 *.eye2 sub sgn ++ sgn mult *.eye4 *.eye1 sub sgn ++ sgn mult add 1 *.eye6 *.eye9 sub sgn ++ sgn mult *.eye6 *.eye8 sub sgn ++ sgn mult *.eye6 *.eye7 sub sgn ++ sgn mult *.eye6 *.eye6 sub sgn ++ sgn mult *.eye6 *.eye5 sub sgn 0 floor mult *.eye6 *.eye3 sub sgn ++ sgn mult *.eye6 *.eye2 sub sgn ++ sgn mult *.eye6 *.eye1 sub sgn ++ sgn mult add 4 add *.focuseye 4 add sub dup sgn -- sgn ++ .focuseye mult inc -- dup sgn -- sgn ++ .focuseye mult inc -- dup sgn -- sgn ++ .focuseye mult inc -- dup sgn -- sgn ++ .focuseye mult inc -- dup sgn -- sgn ++ .focuseye mult inc -- dup sgn -- sgn ++ .focuseye mult inc -- dup sgn -- sgn ++ .focuseye mult inc -- dup sgn -- sgn ++ .focuseye mult inc -- dup sgn -- sgn ++ .focuseye mult inc -- 9 add - dup sgn -- sgn ++ .focuseye mult dec -- dup sgn -- sgn ++ .focuseye mult dec -- dup sgn -- sgn ++ .focuseye mult dec -- dup sgn -- sgn ++ .focuseye mult dec -- dup sgn -- sgn ++ .focuseye mult dec -- dup sgn -- sgn ++  .focuseye mult dec -- dup sgn -- sgn ++ .focuseye mult dec -- dup sgn -- sgn ++ .focuseye mult dec -- dup sgn -- sgn ++ .focuseye mult dec    --&lt;br /&gt;
 stop&lt;br /&gt;
&lt;br /&gt;
 'Actions&lt;br /&gt;
 'Find and save caches&lt;br /&gt;
  'Follow cons as well as just going one way&lt;br /&gt;
 'Go between caches&lt;br /&gt;
 'Reproduce&lt;br /&gt;
 'Feed on caches (-6 shots) without killing it&lt;br /&gt;
 'Save as much nrg as possible b/w caches (code9)&lt;br /&gt;
&lt;br /&gt;
 'On birth, set dir&lt;br /&gt;
 start&lt;br /&gt;
 *.robage 0 =&lt;br /&gt;
 0 618 rnd .setaim store&lt;br /&gt;
 stop&lt;br /&gt;
&lt;br /&gt;
 'Turn away from cons&lt;br /&gt;
 cond&lt;br /&gt;
 *.code9 0 =&lt;br /&gt;
 start&lt;br /&gt;
 *.eye5 0 =&lt;br /&gt;
 10 .up store&lt;br /&gt;
 *.myeye *.refeye =&lt;br /&gt;
 618 .aimsx store&lt;br /&gt;
 stop&lt;br /&gt;
&lt;br /&gt;
 'Save cache locs once I come across them&lt;br /&gt;
 cond&lt;br /&gt;
 *.myeye *.refeye !=&lt;br /&gt;
 *.cachex1 *.cachey1 mult &lt;br /&gt;
 *.cachex2 mult *.cachey2 mult &lt;br /&gt;
 *.cachex3 mult *.cachey3 mult 0 != &lt;br /&gt;
 start&lt;br /&gt;
 *.cachex1 *.cachey1 mult 0 =&lt;br /&gt;
 *.refxpos *.cachex2 !=&lt;br /&gt;
 *.refypos *.cachey2 !=&lt;br /&gt;
 *.refxpos *.cachex3 !=&lt;br /&gt;
 *.refypos *.cachey3 !=&lt;br /&gt;
 *.refxpos .cachex1 store&lt;br /&gt;
 *.refypos .cachey1 store&lt;br /&gt;
 *.cachex2 *.cachey2 mult 0 =&lt;br /&gt;
 *.refxpos *.cachex1 !=&lt;br /&gt;
 *.refypos *.cachey1 !=&lt;br /&gt;
 *.refxpos *.cachex3 !=&lt;br /&gt;
 *.refypos *.cachey3 !=&lt;br /&gt;
 *.refxpos .cachex2 store&lt;br /&gt;
 *.refypos .cachey2 store&lt;br /&gt;
 *.cachex3 *.cachey3 mult 0 =&lt;br /&gt;
 *.refxpos *.cachex1 !=&lt;br /&gt;
 *.refypos *.cachey1 !=&lt;br /&gt;
 *.refxpos *.cachex2 !=&lt;br /&gt;
 *.refypos *.cachey2 !=&lt;br /&gt;
 *.refxpos .cachex3 store&lt;br /&gt;
 *.refypos .cachey3 store&lt;br /&gt;
 stop&lt;br /&gt;
&lt;br /&gt;
 'If I see food, eat it (almost)&lt;br /&gt;
 cond&lt;br /&gt;
 *.eyef 0 &amp;gt;&lt;br /&gt;
 *.refeye *.myeye !=&lt;br /&gt;
 start&lt;br /&gt;
 *.refveldx .dx store&lt;br /&gt;
 *.refvelup 30 add .up store&lt;br /&gt;
 stop&lt;br /&gt;
&lt;br /&gt;
 cond&lt;br /&gt;
 *.myeye *.refeye !=&lt;br /&gt;
 *.eyef 40 &amp;gt;&lt;br /&gt;
 *.refbody 10 &amp;gt;&lt;br /&gt;
 *.refnrg 1000 &amp;gt;&lt;br /&gt;
 start&lt;br /&gt;
 -6 .shoot store&lt;br /&gt;
 stop &lt;br /&gt;
&lt;br /&gt;
 'Share cache locs/save shared locs&lt;br /&gt;
 cond&lt;br /&gt;
 *.code9 0 =&lt;br /&gt;
 start&lt;br /&gt;
 *.cachex1 *.cachey1 mult 0 !=&lt;br /&gt;
 *.cachex1 .out1 store&lt;br /&gt;
 *.cachey1 .out2 store&lt;br /&gt;
 *.cachex2 *.cachey2 mult 0 !=&lt;br /&gt;
 *.cachex2 .out3 store&lt;br /&gt;
 *.cachey2 .out4 store&lt;br /&gt;
 *.cachex3 *.cachey3 mult 0 !=&lt;br /&gt;
 *.cachex3 .out5 store&lt;br /&gt;
 *.cachey3 .out6 store&lt;br /&gt;
 clearbool&lt;br /&gt;
 *.cachex1 *.cachey1 mult 0 =&lt;br /&gt;
 *.in1 .cachex1 store&lt;br /&gt;
 *.in2 .cachey1 store&lt;br /&gt;
 *.cachex2 *.cachey2 mult 0 =&lt;br /&gt;
 *.in3 .cachex2 store&lt;br /&gt;
 *.in4 .cachey2 store&lt;br /&gt;
 *.cachex3 *.cachey3 mult 0 =&lt;br /&gt;
 *.in5 .cachex3 store&lt;br /&gt;
 *.in6 .cachey3 store&lt;br /&gt;
 stop&lt;br /&gt;
&lt;br /&gt;
 'Clear cache locs if there is nothing there&lt;br /&gt;
 cond&lt;br /&gt;
 *.eyef 0 =&lt;br /&gt;
 *.xpos *.tcx 10 %=&lt;br /&gt;
 *.ypos *.tcy 10 %=&lt;br /&gt;
 start&lt;br /&gt;
 25 .dn store&lt;br /&gt;
 *.tempcache 1 =&lt;br /&gt;
 0 .cachex1 store&lt;br /&gt;
 0 .cachey1 store&lt;br /&gt;
 *.tempcache 2 =&lt;br /&gt;
 0 .cachex2 store&lt;br /&gt;
 0 .cachey2 store&lt;br /&gt;
 *.tempcache 3 =&lt;br /&gt;
 0 .cachex3 store&lt;br /&gt;
 0 .cachey3 store&lt;br /&gt;
 stop&lt;br /&gt;
&lt;br /&gt;
 'Set Code 9 when nrg gets too low&lt;br /&gt;
 cond&lt;br /&gt;
 *.nrg 100 &amp;lt;&lt;br /&gt;
 start&lt;br /&gt;
 .code9 inc&lt;br /&gt;
 stop&lt;br /&gt;
 else&lt;br /&gt;
 0 .code9 store&lt;br /&gt;
 stop&lt;br /&gt;
&lt;br /&gt;
 'Choose a cache&lt;br /&gt;
 start&lt;br /&gt;
 *.cachex1 0 !=&lt;br /&gt;
 *.cachey1 0 !=&lt;br /&gt;
 *.cachex2 0 !=&lt;br /&gt;
 *.cachey2 0 !=&lt;br /&gt;
 *.cachex3 0 !=&lt;br /&gt;
 *.cachey3 0 !=&lt;br /&gt;
 1 3 rnd .tempcache store&lt;br /&gt;
 *.tempcache 0 =&lt;br /&gt;
 *.tempcache inc&lt;br /&gt;
 *.tempcache 4 =&lt;br /&gt;
 1 *.tempcache store&lt;br /&gt;
 stop&lt;br /&gt;
&lt;br /&gt;
 'Head towards the chosen cache&lt;br /&gt;
 cond&lt;br /&gt;
 *.tempcache 0 !=&lt;br /&gt;
 start&lt;br /&gt;
 *.tempcache 1 =&lt;br /&gt;
 *.cachex1 .tcx store&lt;br /&gt;
 *.cachey1 .tcy store&lt;br /&gt;
 *.tempcache 2 =&lt;br /&gt;
 *.cachex2 .tcx store&lt;br /&gt;
 *.cachey2 .tcy store&lt;br /&gt;
 *.tempcache 3 =&lt;br /&gt;
 *.cachex3 .tcx store&lt;br /&gt;
 *.cachey3 .tcy store&lt;br /&gt;
 clearbool&lt;br /&gt;
 *.tcx *.tcy angle .setaim store&lt;br /&gt;
 *.tcx *.tcy dist .up store&lt;br /&gt;
 stop&lt;br /&gt;
&lt;br /&gt;
 'Turn towards everything&lt;br /&gt;
 start&lt;br /&gt;
 *.eyef 0 !=&lt;br /&gt;
 *.myeye *.refeye !=&lt;br /&gt;
 *.eyef 39 &amp;gt;&lt;br /&gt;
 *.refxpos *.refypos angle .setaim store&lt;br /&gt;
 stop&lt;br /&gt;
&lt;br /&gt;
 'Repro&lt;br /&gt;
 start&lt;br /&gt;
 *.code9 0 !=&lt;br /&gt;
 *.nrg 2300 &amp;gt;=&lt;br /&gt;
 *.body 100 &amp;gt;=&lt;br /&gt;
 15 .repro store&lt;br /&gt;
 stop&lt;/div&gt;</summary>
		<author><name>MysticalDumpling</name></author>	</entry>

	</feed>