Codename: Gamma

Come in here to talk about your sky-net style world-destroying super bots!

Moderator: Defcon moderators

User avatar
Ace Rimmer
level5
level5
Posts: 10803
Joined: Thu Dec 07, 2006 9:46 pm
Location: The Multiverse

Codename: Gamma

Postby Ace Rimmer » Tue Jan 12, 2010 4:33 pm

Γ

Goal #1: Complete! Figure out where in the world to start. That is, which language should I try and tackle.
Goal #2: Complete! Lua, that's the one. Now, to figure out what in the world I'm doing. Actually, to figure out the simple tasks, like placement.
Goal #3: Complete! Now that I can place units, determine which territories are involved, and even make units switch states/perform actions, I need to figure out how to properly reference specific units. Damn that infernal 'attempt to index ('51') a nill value' error! How can 51 be a nill value?!

Goal #4 : Learn how to get fleet to react to situations. As of this moment, I can place all units (ground and naval) and move units, but only statically, not dynamically. That is, place ship at x/y, move ship to x/y. I need to be able to see enemy ships/ground units (like Radar) and approach/avoid as necessary.
Goal #5: Learn how to launch appropriate planes and move them dynamically.
Goal #6: Learn to use the OnEvent() function to launch silos.

Help #1: Complete! I need a name for this Bot, and being the creatively handicapped person I am, I look to you for suggestions.

Helpful Tips:
  1. BM's (nukes) will inflict damage to a radius of 1.8 from ground zero.
  2. Minimum placement distance for ground units is 3.6 (radius from center of existing unit).
  3. GetAllUnits() does not gather information about enemy silos that are only visible because they have launched. I.e., silos that have not been seen by radar.
  4. OnEvent (eventtype, sourceID, targetID, unittype, longitude, latitude) =
    1. eventtype: see the DEFCON AI Luabot Reference for eventtypes
    2. sourceID: The ID of the gunshot or missile if eventtype is Destroyed or Hit. ID of the unit causing the eventtype
    3. targetID: ID of the unit getting Destroyed or Hit.
    4. unittype: Not sure about this, only prints 'Invalid'. For units, I just use targetID:GetUnitType().
    5. longitude: x coordinates of eventtype location. E.g., the spot your carrier, Silo, etc dies.
    6. latitude: y coordinates of eventtype location


Alright boys and girls, I'm going to try my hand at making a Defcon Bot. I have zero coding skills (well, slightly above zero, negligible at best) but loads of willingness to attempt to learn whatever is needed to create a Bot to crush it's human and perhaps fellow Bot opponents.

I keep waiting and waiting for something to appear Bot-wise, and have been surprisingly disappointed. Of necessity, I'll make this a public work log and solicit your help where needed. Read that as, "you that have real coding skills".

Once this bot is functional, I'll try to work out some way to host a Bot enabled server for those interested to test out it's skills. I do not anticipate having anything functional for quiet some time, but promise to provide a Bot of Bots.

Let the (Defcon) world tremble in fear. :twisted:
Last edited by Ace Rimmer on Mon Feb 15, 2010 11:48 pm, edited 7 times in total.
User avatar
Montyphy
level5
level5
Posts: 6745
Joined: Tue Apr 19, 2005 2:28 pm
Location: London, England

Postby Montyphy » Tue Jan 12, 2010 4:44 pm

I'd be happy to help where possible. Been wanting to work on one but the one I had in mind requires quite a lot of research and development.

As for a name, Γ is nice and geeky.
Uplink help: Check out the Guide or FAQ.
Latest Uplink patch is v1.55.
User avatar
DTNC Vicious
Site Admin
Posts: 1780
Joined: Sat Mar 14, 2009 1:48 am
Location: North of the Wall
Contact:

Postby DTNC Vicious » Tue Jan 12, 2010 8:05 pm

[ a Bot to crush it's human and perhaps fellow Bot opponents. ]

Now that would be a interesting tourney :D
-Vic
User avatar
Schubdüse
level5
level5
Posts: 1210
Joined: Tue May 08, 2007 10:00 pm
Location: Seoul

Postby Schubdüse » Tue Jan 12, 2010 9:49 pm

Brainstorming:

HalBot (Heuristically programmed ALgorithmic Bot)

N00Bot

Bot-terbrot :lol:

ρ-Bot

(BOT)"Bots birthday"

bot|Mike

Motor-Bot

U-Bot (a U-Boot is a submarine) :lol:


"insert names of your kids here"_2.0

Rimmerstein
Why?
level5
level5
Posts: 1371
Joined: Thu Jun 26, 2008 11:34 pm
Location: Verona

Postby Why? » Wed Jan 13, 2010 1:15 am

Schubdüse wrote:(BOT)"Bots birthday"

bot|Mike

Rimmerstein


lol


Bot?
Blackbeard
level4
level4
Posts: 930
Joined: Fri Aug 31, 2007 1:05 pm

Postby Blackbeard » Wed Jan 13, 2010 1:34 pm

Being able to code the thing so that it can (at Defcon 3) launch all initial Carrier fighters, ping all (combat) Subs, and prepare to launch all Carrier Bombers (leaving a few carriers to sweep of coirse :) ) simultaneously would make it a pretty tough naval opponent.

Also, if it could triangulate your silo positons from perfunctory data, then you would always be in fear of a pre-emptive attack on your silos.

...And if its own Silo (and Bomber nukes) launches were always made up of perfect missile packs, then it would get maximum kills every time.

Edit: Lol, just posted that ^ without reading some of the other Topics here. /me goes to have a good read :roll: .
User avatar
martin
level5
level5
Posts: 3210
Joined: Fri Nov 19, 2004 8:37 pm
Location: ::1
Contact:

Postby martin » Wed Jan 13, 2010 3:14 pm

Rimmermatic 1000

I'll be happy to help wherever I can, I really want to make a defcon bot I just never quite get the time :(

Have you considered hosting the source code on an svn (code.google.com is free, for example) - other people can get hold of it easily then. And you can add teammembers to your SVN and they can commit changes etc.
GENERATION 22:The first time you see this, copy it into your sig on any forum and add 1 to the generation. Social experiment.
User avatar
Ace Rimmer
level5
level5
Posts: 10803
Joined: Thu Dec 07, 2006 9:46 pm
Location: The Multiverse

Postby Ace Rimmer » Wed Jan 13, 2010 3:42 pm

martin wrote:I'll be happy to help wherever I can, I really want to make a defcon bot I just never quite get the time :(

Have you considered hosting the source code on an svn (code.google.com is free, for example) - other people can get hold of it easily then. And you can add teammembers to your SVN and they can commit changes etc.

I did not think about that, but of course will, when I get to a point that it's worth posting. :P
Smoke me a kipper, I'll be back for breakfast...
User avatar
(MOR)
level5
level5
Posts: 2799
Joined: Sat Jul 28, 2007 9:00 pm
Location: Morocco
Contact:

Postby (MOR) » Wed Jan 13, 2010 5:20 pm

Schubdüse wrote:(BOT)"Bots birthday"



You will suffer



What about "Level'6" ?
iRadiated
level2
level2
Posts: 234
Joined: Mon Jan 21, 2008 12:41 am
Location: UK

Postby iRadiated » Thu Jan 14, 2010 11:16 pm

One piece of essential code:

if ident='MOR' then
min_speed = 5
end if
User avatar
Ace Rimmer
level5
level5
Posts: 10803
Joined: Thu Dec 07, 2006 9:46 pm
Location: The Multiverse

Postby Ace Rimmer » Thu Jan 14, 2010 11:35 pm

iRadiated wrote:One piece of essential code:

if ident='MOR' then
min_speed = 5
end if

Hehe, naah. I want to give (MOR) the best opportunity to "beat himself". :P
Smoke me a kipper, I'll be back for breakfast...
User avatar
trickser
level5
level5
Posts: 1823
Joined: Thu Mar 06, 2008 2:15 pm
Location: The Senate ; GMT+1
Contact:

Postby trickser » Fri Jan 15, 2010 12:05 am

I can think of some nasty, "unhuman" tricks like: power turns for bombers and ships. Always returning fighters to ships/base. Counting ships/planes and if number is low enough just hold the timer and hunt them. Would be no fun to play. But kinda useful for the unbeatable approach.
User avatar
Ace Rimmer
level5
level5
Posts: 10803
Joined: Thu Dec 07, 2006 9:46 pm
Location: The Multiverse

Postby Ace Rimmer » Mon Jan 18, 2010 6:03 am

Interesting thoughts.

Just an update, I've gone with Lua, and have figured out some of the basics (you might have seen the Bot server online). Now, I just need to actually learn how to use the code/functions and get the Bot to place fleet. Thanks to Robin's whiteboard functions, I have some interesting new ideas

I've got a tutorial on C++ and Lua; will be starting there. Not sure how long it's going to take me to get the Bot into action, but at least I'm movin'!
User avatar
martin
level5
level5
Posts: 3210
Joined: Fri Nov 19, 2004 8:37 pm
Location: ::1
Contact:

Postby martin » Mon Jan 18, 2010 11:03 pm

I still have a copy of the old lua code for Joshua around somewhere, would you like a copy to get you started? It's really shitty code but it's a start.
GENERATION 22:The first time you see this, copy it into your sig on any forum and add 1 to the generation. Social experiment.
User avatar
Ace Rimmer
level5
level5
Posts: 10803
Joined: Thu Dec 07, 2006 9:46 pm
Location: The Multiverse

Postby Ace Rimmer » Tue Jan 19, 2010 1:17 am

Yes, I'm sure that would help quiet a bit. :D
Smoke me a kipper, I'll be back for breakfast...

Return to “AI Bots”

Who is online

Users browsing this forum: No registered users and 4 guests