Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.


Messages - Peksa

Pages: 1 [2] 3 4 ... 8
16
Darwinbots3 / Make v3 support decimals
« on: May 15, 2008, 06:49:30 PM »
Well, here it is. It took me way too long make, so I hope it helps. If not, at least I've proven it can be done. It's accuracy varies quite a bit. I haven't done extensive testing on it's limits etc.

It takes the first number (20) and approximates it's cube root and stores it in 61. It displays 3 decimals. Ie. for 1331 (11^3) it gives 10882 (as opposed to 11000) and for 20 it gives 2693 (should be 2714).

Code: [Select]
20
10000 mult sqr
10000 mult sqr
dup
10 mult sqr
10000 mult sqr
mult 1000 div dup

10 mult sqr
10000 mult sqr
10 mult sqr
10000 mult sqr
mult 1000 div 61 store

17
Internet Mode Commentary / The State of the Simulation
« on: May 15, 2008, 04:20:29 PM »
How would costs per species sound?

18
Newbie / Hi
« on: May 15, 2008, 04:18:19 PM »
Welcome!

19
Suggestions / Expanding Energy types
« on: May 14, 2008, 03:31:20 AM »
Quote from: gymsum
One thing which stands true to nature but not DB, is a true energy and waste balance. While it is impossible to bring absolute realism to the game, there should be a way to add a new energy type available only to the veggies that convert energy or waste into this new type. The new type is waste to heterotrophs, but can be absorbed via tie feeding of shoot to build a tougher shell and stronger durable ties that allow for fater feeding rates and faster memory useage, proportionally that is.

Minerals were brought up earlier, I could see how they could be a poinson or even form of general waste to a heteroptroph, since they never really leave the body IRL and they collect and eventually cause death (such as lead). I say introduce a new element to the environment to imrpove multibot communications, but its a heavier resource meaning it slows bots down and makes them heavier. The benefit is they can perform better decisions and feed more efficiently with eachother.

What would this gain except an unnecessary complexity? You can already get faster feeding rates by storing a larger value in .shootval or .tieval. Memory usage is hard coded to be one run throught dna per cycle. How do you propose that this would be changed?

As for improving multibot communications, I think that's going to be implemented. Trefvals are going to be populated everytime .readtie changes. That'd allow communication with multiple bots through ties in one cycle.

Quote from: bacillus
Maybe a thing to add to DB3, I think DBII is only fixing errors and minor things at the moment.
Don't veggies recycle waste anyway?

According to EricL's todo-list, there will be new features in DBII, fixing bugs and other things just takes higher priority. Linky.

20
Bot Tavern / The F1 League lives again!
« on: May 12, 2008, 04:52:47 PM »
Quote from: Peter
Quote from: bacillus
Well, to get an unbiased challenging system going, I'm running every single bot against every other bot, and the winner gets a point. This way there won't be some powerful bot rooted on 20th because 19th place uses some rarely-used defense system that prevents any other bot from entering the league.
Since my last post, I was able to finish 3 more bots: HDV4 (32), James 4 (37), and Kyushu (25).
Don't get your hopes up, No bot beat Etch MKII, but Ebola, Multiply4, Locust, and Occura Amplificis (  ) haven't been beaten by anything else.
Nice idea to do, and you're right guardian was protected by stronger bots, martian tank3 was driven to place 20th or something, becouse it couldn't survive my speedys virusus . Lesser point is that it will take much of your time, but that is fine by me  

Multiply4 was, when it was made, the best of F1 and F2. So it will knock out ebola, I suspect  . I am not sure about the others.
Are the other bots only legal to compete in F1, I want to get my hopes up to be the best F2 bot in a F1 league  

I suspect the second version of etch will be using some dirty tricks like ties and/or viruses. And ebola uses virusus. Seems like I am atleast in the running for best F2 bot into F1.

This'n'That 1.01 can beat Ebola, Multiply4 and Occura Amplificis of that list. Yay!

21
F2 bots / This'n'That 1.01 (F2) (Peksa) - 12.05.08
« on: May 12, 2008, 04:39:00 PM »
Bump!

22
Untagged bots / Collosus v1.1
« on: May 12, 2008, 04:20:10 PM »
Are you sure? I'm using 2.43.1k and the Etch Mk II from here and the score is 25-0 for Etch.

23
DNA - General / Rape bots
« on: May 10, 2008, 11:09:28 AM »
Yep, sounds good.

24
F2 bots / This'n'That 1.01 (F2) (Peksa) - 12.05.08
« on: May 09, 2008, 03:24:22 AM »
Quote from: goffrie
Anyways, nice bot
Thanks! I did notice the conspec DNA thing after posting, but it doesn't affect the performance of bot, so I didn't feel overwhelmed by it  Thanks for the other bits as well. They don't affect behaviour, but make DNA just a little bit nicer to read.

Quote from: bacillus
Once again, if you want to start a new set of conditions, you have to clear the boolean stack first with clearbool.

Actually you don't, as Numsigil explained in the other topic.

25
Oops, my bad. It does work, I tested it.

26
Hmm.. When you put it that way, I say go for it. And if you go for it, go all the way. No artificial limitations for how many times you can change eyes. All nine eyes should implemented. No other artificial limitations on DNA. You could maybe add an optional cost for switching eyes, but I don't really see the point.

I still think that most of the old bots are going to be overrun after this, but that's not necassarily a bad thing. It show's that things move forward (or at least somewhere ).

Ps. If this can be done, it could be done for every sysvar. That might be too much though, even if it would do wonders for evolved DNA.

Example:
Code: [Select]
cond
*.eyef 50 >
start
10 .up store
stop

A bunch of unrelated DNA here.

cond
*.up 10 >=
start
-1 .shoot store
stop

27
DNA - General / Rape bots
« on: May 08, 2008, 05:57:27 PM »
As far as I know, info shots set their values *after* DNA execution. So, if a bot has .fertilized another one and the next cycle shoots an info shot that forces .sexrepro, there is no defence against it, is there? 0 .sexrepro store doesn't help becouse, the info shot overwrites that store.

Doesn't that make a rape bot a bit too powerful for leagues? Remember that if there's no common DNA, there's 50-50 chance of the new bot getting all of the rapists DNA. A good example of this is Moonfisher's Lovebot.

28
F2 bots / This'n'That 1.01 (F2) (Peksa) - 12.05.08
« on: May 08, 2008, 05:48:46 PM »
New news:
This changed so little that it doesn't deserve a new thread. I'm planning on updating this bot if need be, but I'll try to keep it a basic bot that's easy to read.

Old news:
This beats both old leagues and some of the newer bots. It uses default eye settings and uses no "tricks" to win. Just a well written basic bot.

I just realized, it's also my first submitted bot. Yay!

Code: [Select]
'This'n'That 1.01 (F2) (Peksa) 12.09.08
'By Peksa
'Designed for 2.43.1k
'This'n'That does little, but does it quite well. It's a very simple bot that has nothing fancy in it.
'Conspec recognition idea is from Aura by abyaly, otherwise DNA should be as original as a bot of this kind can be.
'A very slight modification, fares better against venom-using bots.


def friend 81
def shottype 82

start

'Cautions
 *.delgene 0 !=
 *.genes 1 = and
  0 .delgene store
 
 *.thisgene 1 !=
  *.thisgene 1 sub .delgene store
 *.thisgene *.genes !=
  *.thisgene 1 add .delgene store
 
 *.sexrepro 0 !=
 *.fertilized 0 != or
  0 .sexrepro store
  
 *.fixed 0 !=
  0 .fixpos store
  
 *.focuseye 0 !=
  0 .focuseye store
  
 *.backshot 0 !=
  0 .backshot store

'Ties
 *.robage 0 =
  .tie inc

 *.robage 1 =
  .deltie inc
  
 *.numties 0 >
  *.tiepres .deltie store
  
'Conspec recognition
 true
  *.dnalen *.robage *.dnalen mod sub dup .out7 store .tieval store
  
 *.in7 *.refage *.dnalen mod add *.dnalen sub abs 10 <
  1 .friend store

 not
 *.eye5 0 = or
  0 .friend store

'Waste
 *.waste 1000 >
 *.waste .shootval store
  -4 .shoot store
 
'Targeting and shooting
 true
  11 rnd .shottype store

 *.eye5 0 >
 *.friend 1 != and dupbool dupbool dupbool
  *.refxpos *.refypos angle .setaim store
  *.refxpos *.refypos dist 10 div 50 sub 50 ceil 0 floor .refvelup add .up store
  *.refveldx .dx store
  -16 .shootval store
 *.refpoison 0 >
 *.refshell 0 = or and
  -6 .shoot store dropbool
 *.refpoison 0 = and
 *.refshell 0 > and
  -1 .shoot store dropbool
 *.shottype 3 <= and
 *.refeye 0 > and
  *.venom .shootval store
  -3 .shoot store dropbool

 *.eye5 50 >
 *.friend 1 != and
  *.refvelup .up store
 *.shootval *.venom != and
  32 .shootval store
  
 *.eye5 0 =
 *.friend 1 = or
 *.shflav 0 =
 *.shflav -2 = or and
  *.aim 418 rnd add .setaim store
 4 rnd 1  = and
  *.maxvel .dn store
  
 *.eye5 0 =
 *.friend 1 = or
 *.shflav 0 != and
 *.shflav -2 != and
  *.aim *.shang sub .setaim store
  16 .shootval store
  -6 .shoot store
  0 .shflav store
  
 *.paralyzed 0 != or
  0 .shootval store

 *.eye1 *.eye9 !=
 *.eye5 0 = and
  140 *.eye1 *.eye9 sub sgn mult *.aim add .setaim store
  
 *.eye2 *.eye8 !=
 *.eye5 0 = and
  105 *.eye2 *.eye8 sub sgn mult *.aim add .setaim store
 
 *.eye3 *.eye7 !=
 *.eye5 0 = and
  75 *.eye3 *.eye7 sub sgn mult *.aim add .setaim store
  
 *.eye4 *.eye6 !=
 *.eye5 0 = and
  30 *.eye4 *.eye6 sub sgn mult *.aim add .setaim store
 
'Body/nrg management
 *.nrg *.body !%= dupbool
 *.nrg *.body > and
  *.nrg *.body sub 100 ceil .strbody store dropbool
 *.body *.nrg > and
  *.body *.nrg sub 100 ceil .fdbody store

'Repro
 *.body 1000 >
 *.nrg 1000 > and
 *.totalbots 2 div 15 floor 30 ceil *.totalmyspecies < and
 *.eye5 0 = and
  50 .repro store
  
 *.body 500 >
 *.nrg 500 > and
 *.totalbots 2 div 15 floor 30 ceil *.totalmyspecies >= and
 *.eye5 0 = and
  50 .repro store
  
'Defences
 *.ploc .shoot !=
  .shoot .ploc store
 
 *.vloc .shoot !=
  .shoot .vloc store
  
 *.venval -2 !=
  -2 .venval store
  
 *.nrg 150 > dupbool dupbool
 *.poison 1000 < and
  50 .strpoison store dropbool
  
 *.shell 500 < and
  75 .mkshell store dropbool
    
 *.venom 15 < and
  15 *.venom sub 0 floor .strvenom store

stop
end

29
Bot Challenges / Conspec Challenge
« on: May 06, 2008, 03:20:55 PM »
I guess that's why Aura's got %= instead of =. %= returns two if the first value is within 10% of the second one.

30
Bot Challenges / Conspec Challenge
« on: May 06, 2008, 02:45:59 PM »
Actually, .refup and .refdn refer to number of .up or .dn commands in the DNA. It's .refvelup etc. that you're thinking of. Interesting thought though, to use speed for conspec.

Aura had an interesting conspec recognition system:

Code: [Select]
cond
start
1234 *.robage 1234 mod sub .out1 store
start

cond
1234 *.refage 1234 mod sub *.in1 %=
start
1 .botisafriend store
stop

Something like that at least, I can't remember exactly.

Pages: 1 [2] 3 4 ... 8