Welcome To Darwinbots > Newbie

A Few Questions

(1/2) > >>

Slavakion:
If I'm designing an F1 bot, is the current league table still valid? I saw that PY had said it was horribly out of date. If it is, my bot could place in the top 15. (yay)

Is .shoot a free action? I didn't think it was, but I've seen some bots that seem to constantly shoot.

Are viruses stopped by shells like normal shoot? And what is the cost for making/shooting a virus? Could a virus be realistically implemented as another weapon alongside .shoot and .tie?

If I used an initialization gene to set a number for .out, could that work as an ID to avoid conspecifics? How accurate is the reading of .out? If I used that, and Dad happened to swim by while Junior was fighting competition, would Junior all of a sudden think he was shooting family and stop?

Eh, I'm sure I'll think of some more. :)

Thanks

Numsgil:
Hey, welcome.

The F1 table is up to date I think.  There might be one or two bots not entered in yet.

Shooting cost is defined as a chemical emission cost, which is defined in the physics and costs page of the options screen.  It's default is 2, which is quite low, so shooting nonstop won't be a huge energy drain.

Viruses are stopped by slime.  There's an attack-defense for every attack.  Ties and Viruses -> Slime.  -6 shots -> shell, -1 shots -> poison.  I forget which is which for info shots (positive shots) and venom.  If anything in the previous sentence didn't make sense to you yet, don't worry, it's fairly advanced stuff.  If you build 100 of each you'll be fairly safe (if not a bit slow and built like a tank).

.in works like refnrg, or any other ref variables.  They only update when your eye5 is looking at something.  Then they update for what you're looking at.  The only problem with using it as a conspec recognition system is bots who reflect whatever they see in their .ins into their .outs.  There aren't many, but there are some.

A better way is using memloc/memval.  You set memloc to a memory location, then use memval to read back everyone's values at that location.  Much harder to spoof (it's what I use).

Viruses can be constructed that work like a regular weapon, but after a while it ends up just degrading everyone in the field (Helios is a good example of this).  A better way is just to create a self replicating virus that you're immune to.  I've done some posts and bots playing with that idea.  Spanish Conquistador has such a virus, but it's fairly complex, even if you're pretty good with the stack (although I did try to comment it well).

Tetll me if there's something you want me to go over more thoroughly.

Slavakion:
How do you use memloc? Just something like this?

--- Code: ---def species_id 600
77 .species_id store
...
cond
  *.memloc *.species_id !=
start
  shoot sum stuff
--- End code ---

I'll see if I can figure out that Spanish Conquistador... Sometimes it'll have some crazy comebacks, and cancer explosions are always fun to watch.

Oh, and can an internal value like my .species_id be used as an immunity to my own virus by having a condition in the gene be that .species_id != whatever?

Light:
Welcome to darwinbots

memloc - selects the memory location from another bot that you want to be able to read the address from
memval - tells you the value from the location stored specified in memloc

so you would need

--- Code: ---'define address 600 as species_id
  def species_id 600

'store 77 in species_id
  77 .species_id store

'set species_id as the address you want to read
  .species_id .memloc store


cond
   *.memval *.species_id !=
start
   shoot sum stuff
stop
--- End code ---

or you could just compare refvariables such as myeye and refeye

ie *.myeye *.refeye !=


--- Quote ---Oh, and can an internal value like my .species_id be used as an immunity to my own virus by having a condition in the gene be that .species_id != whatever?
--- End quote ---

yes

Slavakion:

--- Quote ---or you could just compare refvariables such as myeye and refeye

ie *.myeye *.refeye !=
--- End quote ---
I had been doing it that way, but what if another bot had the same amount of eye references, unlikely as it'd be? And if I'm going to tinker with a virus system, this will help.

Now I need to figure out how to clean up my stores without borking the navigation...

EDIT: Figured that one out -- aimdx instead of aimsx...

Do -6 shots trigger poison?

Navigation

[0] Message Index

[#] Next page

Go to full version