do you realy need the "*.counter 0 !=" line since thats taken care of in the next gene?
That gene deals with *.counter being 1-19 when there are no ties, because they have snapped or target died etc
The last gene I put in in case you are writing a competitive bot, it deals with *.counter being a negative value or a value over 19. Just in case another bot fires something that changes the value of .counter to something outside the range of values you are using.
Next, is extracting nrg the same with a hardened tie as is with a unhardened one? or do you have to use a different command, such as .sharenrg?
A hardened tie is the same as unhardened when it comes to sharing energy; .sharenrg calculates the total energy for all the bots you are tied to and then the number you put into .sharenrg becomes the percentage of the total energy you receive, it doesn't need .tienum to do this. I presume that you can only share at 1000 nrg per cycle max but I don't know this.
Would this gene (modified from a gene in symbioticus v2.5) need to come before, or after the energy feeding gene?
cond
*.numties 0 >
*.treffixed 1 =
start
1 .tienum store
.fixpos .tieloc store
0 .tieval store
stop
Firstly you need to have stored a value in .readtie before you can use *.treffixed,(is a fixed value and only needs to be set once unless you wish to change it). Second I would put this gene after the energy feeding gene, it changes the values of .tieloc and .tieval and the DNA will only use the last value entered for each cycle. Third, if it is after the energy feeding gene it will mean you no longer get any energy through that tie.
I think changing the condition to *.treffixed 0 = because this gene would only work atm if target bot was fixed. Maybe adding *.treffixed 1 = to the energy feeding gene would then make them fire individually. I presume you want to fix the target and then feed off it. Many competitive bots have an unfix gene which would make this gene keep firing though.
And how would I make it not pay attention to the veggies its tied to?
Basically something like cond/*.trefeye 0 = would identify the bot on the end of tie as a veg.
What you are now talking about is multiple ties by the sound of it though. AFAIK you need a different tie number for each tie, if you called them all tie1 then the DNA would think you are talking about the last tie created. If you are going to stick to a veg until you see a target bot and then once tied to that bot deal with that bot without firing anymore ties then it might not be that hard.
/me waits for someone like Num's to come correct any mistakes...