Archived

This topic is now archived and is closed to further replies.

Survey - for entrants only please

This topic is 5144 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

This is for the 7 of you that participated in the tournament. Since you participated, you have an opportunity to help shape the future of this contest in the non-beta form, and you even get to help decide if there really is a future. Also, I briefly looked at everyone''s source code, and I can see where some of you might not want your code released. If you DO NOT want your bot source code released, then email me and let me know by November 16. Otherwise, your bot source code will be available for download. Take your time with this if you can. I''d like as much feedback as possible before proceeding further. The GameDev: Arena Contest 1. How would you rate your experience in each of the following during this beta contest (1 = low, 5 = high): a. Fun - Did you enjoy yourself? b. Education - Did you learn anything? c. Technical support d. Community support 2. What, if anything, would you change in the contest rules? 3. What, if anything, would you change in the contest format? 4. Do you think this contest is ready to be a regular GameDev.net contest? 5. Any other suggestions for the contest? The GameDev: Arena Framework 1. Do you agree or disagree with the following statements about the GDArena executable (1 = strongly disagree, 5 = strongly agree): a. Easy to program a bot b. Only minor problems c. Stable d. Good documentation e. g_pCore interface is easy to use 2. What, if anything, would you change about the g_pCore interface? 3. What, if anything, would you change in the GDArena documentation? 4. How would you change the gameplay of GameDev: Arena to make it more competitive? 5. How would you change the gameplay of GameDev: Arena to make it more fun? 6. Is GameDev: Arena challenging enough? How would you make it more challenging? 7. Any other suggestions for the arena?
Kevin "Khawk" Hawkins
CEO and News Director, GameDev.net
Software Engineer, Raydon Corporation
Author, OpenGL Game Programming Contributing author, Game Development: Tricks of the Trade, "Using the UML in Game Development" Developer Diary

Share this post


Link to post
Share on other sites
The Contest

1)
a. Yeah, I enjoyed myself. (5)
b. Well, since this is my first time using C or C++, I''d say I learned a lot. (5)
c. I''m sure if I needed any help, GameDev would have been there for me. (5)
d. Since, they''re all competing against me, trying to kill my creation with their creation, I''d have to give it a somewhat lower supportive factor (4)

2) Rules seemed fine... but I would change some timngs in the second (or first??) version. I think it would look sooo cool if you changed all theh textures every time, but kept the bots looking almost the same. That way, it seems like you fighting "in another place" each time. Add snow. And alterable terrain... I want to be able to kill those trees.

3) I think the double elimination is a great way to do the tourney. I think it fits the best.

The Framework
1.
a. Well, since this is my first time using the language... (5)
b. Didn''t have any probs except when I loaded bad code. (5)
c. Yah, was pretty stable... sucked up sys resources though. (4)
d. Okay documentation... had readme with prototypes (very helpful) but otherwise just guessed around.. (4)
e. Pretty good interface. It could use some other functions like GetCurrentWeapon() and LaunchNuke(DustBot). (4)

2. Add more helper functions: GetCurrentWeapon() and possibly others... FlameTree().

5. Documentation was fine.

4. It''s pretty competitive as it is...
change the weapons. Make a new special... add knives...

5. It was really fun, but since we''ll probably have more people next time, you really won''t be able to have the commentary (which was soooo cool). Make it so that you can export battles.

6. Well, since I lost, I guess it''s challenging enough for me...

7. Add water. (isn''t this gameplay stuff). Or some other "big" obstacle that you can shoot across, yet not cross. And make sure to keep some of the suprises: can''t shoot over big rocks, but don''t hide behind small rocks... don''t stand next to tree when enemy is throwing grenade... etc...

Was a great match, though, hope to see you all again once I finish "PressTheLittleRedButtonMushuBot".





You''re entitled to your own opinion, even though it''s wrong..

There is no spoon image.

Share this post


Link to post
Share on other sites
quote:
Original post by Khawk
If you DO NOT want your bot source code released, then email me and let me know by November 16.

Hmm, this needs a new Thread (coming soon )

The GameDev: Arena Contest
>a. Fun - Did you enjoy yourself?
fine , for me it was something different (i didnt need to do the gfx etc), ive also try''d to use max 4weeks for the pre midterm version (and therefore ive not used much time after the announcement, my bot was nearly up-to-date) just to see how much i could manage in this timeperiod (and i think for the realcontest i could manage a complete rewrite, when not occupied by my studies...) (read it as a 5)

>b. Education - Did you learn anything?
yep, ive learned that making a neural-network solo for the bot with all inputs/outputs isnt as easy as writing some finite-state-machine (havent got it working and it took more time than given at runtime), then there is the ammount of code, more than 3k of lines (if you count the polygon class in more than 4k, yay thats my hugest piece of crap that works...), ive also had the opportunity to test some strange methods to reduce cpu-load (yeah my first version took 240%or something in this region at startup...) and ive also plans how to make my mapping system even better, not limited to the 320x240 boundarys... and some other things i cant remember now, ... hmm lets say a 4 (add some components that need more abstract thinking etc and it will become more educational)

>c. Technical support
my nades dont work as excepted, i think its a fault of the arena (several fixes...) but could also be my code, but most of the other issues where fixed relatively fast, so i would rate it with a 3.5

>d. Community support
not needed much, but there is competition so you cant count with this sort of support, all in all 4

>2. What, if anything, would you change in the contest rules?
ok first, dustbot was a good example on how you should be DQ''ed, nothing against the bot, but i dont want to see bogus bots in a price contest that crash everytime they see your bot and then after midterm they show there full potential (iam fine with it for this contest...) and then there is the time-limit stuff, we need some sort of clear definition, independent from running system etc. i dont know how to make this but its sort of unfair for people using some 500mhz computer and not seeing how much cpu time they really could use compared to 2,xxxGhz users not knowing if they are already over the limit (my bot is clamped to 70% of allowed time, so it will run very different on different machines, not the fighting but the searching... and i cant really know what will happen in the contest...)

>3. What, if anything, would you change in the contest format?
hmm first, we need a replay function, then there is the double-elemination, i dont like it, but i will be fine when there are at least 3runs per match (2 of 3), i think thats the minimum there should be. But if there isnt to much time involved i would do all-vs-all and then keep track of the wins(+1), loses(-1) per match as total score.

>4. Do you think this contest is ready to be a regular >GameDev.net contest?
nearly, add the replay functionality, some nice prices and later some updates...

>5. Any other suggestions for the contest?
yep, will write it in the framework (the interface shouldnt be singleton, or should have some alternatives to identify the bot itself), some of my competitors cant fight themself...

The GameDev: Arena Framework

>a. Easy to program a bot
5, as long as you can program (hehe), see LuckyBot for example
>b. Only minor problems
4, dont know if the nades are a minor problem, is it me or do they do more damage when more grenades are on the field (70dmg isnt normal i think, and ive seen it more than once and the remaining grenades exploded regularly...so no nade causes nade to explode simultanously)
>c. Stable
5, yep, no crashes caused by the arena (only my gfx freezes sometimes under heavy cpu load, but thats a driverfault...)
>d. Good documentation
5, there is not much to document, so...
>e. g_pCore interface is easy to use
5

>2. What, if anything, would you change about the g_pCore >interface?
non singleton to make it possible that bots can fight eachother without renaming the dll or doing some other suff etc...oh and how about some usefull functions like: whats_my_current_weapon and how_long_have_i_to_wait_till_i_can_call_the_next_shooting_command etc (a bit more informations about the current botstat''s)

>3. What, if anything, would you change in the GDArena >documentation?
i would add the speed of the bullets...

>4. How would you change the gameplay of GameDev: Arena to make >it more competitive?
i like small walls big walls, walls with windows, walls without windows etc (as inmap objects, where the bot has to know how to shoot a nade...), then i would like a non uniform map with more area (hey my bot needs ~10 secs to find the enemy) but this are major changes...

>5. How would you change the gameplay of GameDev: Arena to make >it more fun?
some healthpacks, mines or some weapons that need more than just aim (sometimes predict) and shoot

>6. Is GameDev: Arena challenging enough? How would you make it >more challenging?
see 4, and add some multiplayer functionality (2vs2 etc)

>7. Any other suggestions for the arena?
yep i need some testmodes that will show the long-runtime-behavior of my bot:
-mode where there is no hp stop at 0 (match goes on forever if i want (uses the whoule range of a char, so it starts after 0 again at 255...or something like that), and no ammo limit(stays at startup conditions)
-another mode could be a die-respawn mode where the dead bot gets respawned with a special command that gives him his new relative position...


ps: iam no longer an ai noob


T2k

Share this post


Link to post
Share on other sites
Guest Anonymous Poster
You can help the next contest by advertising it. I remember hearing something about it at the start of summer, and now seeing this subject on the home page was the first time I''ve seen it since.

I would have loved to compete, but unfortunately knew very little about this thing until just now.

Share this post


Link to post
Share on other sites
quote:
Original post by Anonymous Poster
You can help the next contest by advertising it. I remember hearing something about it at the start of summer, and now seeing this subject on the home page was the first time I''ve seen it since.

I would have loved to compete, but unfortunately knew very little about this thing until just now.


It wasn''t advertised on purpose. It''s our first time doing a contest like this, and I wanted to work out the kinks before making it even bigger.

Share this post


Link to post
Share on other sites
The GameDev: Arena Contest

1)
a. Sure did (5)
b. Yeah, I tried out GDI and a few other things... (4)
c. Excellent (5)
d. Pretty good...their bots are better than HuBot (mostly), so... (4)

2)
They're fine as is...

3)
The ability to save and replay matches would be cool..

4)
Yep

5)
Nope

The GameDev: Arena Framework

1)
a. For a bot like mine... (5)
b. A few annoying bugs (4)
c. Fairly stable (4)
d. From what I can tell, it doesn't have anything missing..that I care about ... (5)

2)
Nothing that I can think of..

3)
Again, fine as it is

4)
More weapons, some water, larger arena, and possibly some vehicles...

5)
Hand-to-hand combat

6)
The features that I listed in 4) would make it quite difficult, I believe..

7)
Lots of blood...oh, and gibs when a player dies-by-grenade

[edited by - Dcower on November 13, 2003 1:23:38 AM]

Share this post


Link to post
Share on other sites
Ok here''s my email with the feedback.. not sure how to get the commented bot source to you, upload through FTP?


________________________________________
From: Greg Pringle
Sent: November 12, 2003 3:36 AM
To: ''kevin@gamedev.net''
Subject:

Hi Kevin, not sure if you wanted the feedback public or not.
Also I am attaching commented source for my Tailslide bot please release this instead it’s much easier to follow.
I changed as little code as possible should function 99% the same as the contest bot.

Thanks for the great contest I haven’t had that much fun programming since I was in school.

Greg

The GameDev: Arena Contest

1. How would you rate your experience in each of the following during this beta contest (1 = low, 5 = high):
a. Fun - Did you enjoy yourself? 5
b. Education - Did you learn anything? 1
c. Technical support - didn’t require any
d. Community support – haven’t been around long everybody seems nice so far

2. What, if anything, would you change in the contest rules? nothing

3. What, if anything, would you change in the contest format?
it would be nice to see some kind of movie of the battles not sure how doable that is
I remember seeing some program where you could record the output of a windows program
and replay it over the web but can’t remember what it was called.

4. Do you think this contest is ready to be a regular GameDev.net contest?
No some problems with the framework need to be ironed out

5. Any other suggestions for the contest?
I suspect some way of automating the program through the command line so you
could run the entire contest from a batch file would make your life easier.

The GameDev: Arena Framework

1. Do you agree or disagree with the following statements about the GDArena executable (1 = strongly disagree, 5 = strongly agree):
a. Easy to program a bot - 5
b. Only minor problems - 2
c. Stable -5
d. Good documentation - 3
e. g_pCore interface is easy to use - 4

2. What, if anything, would you change about the g_pCore interface?

a. It seems there is some kind of problem in the code to ‘see’ objects.
My bot can get stuck running straight into things it can’t ‘see’
I also have trouble seeing walls sometime unless I have a bug
in my code which is entirely possible. This sort of turns the contest
into a ‘program around the bugs’ contest rather than working on tactics.

b. It would be nice to tell how much distance you’ve traveled since the last cycle
This would make it fairly easy to tell when you’ve run into something.

c. Turn to direction.. have a mechanism so you can turn to a certain direction and
the bot would continue to do this unless you gave it an order to stop. Otherwise
you would have to write a bunch of convoluted code to figure out where everything
is from the wall positions.

d. The ability to determine what direction damage is coming from

e. change to a COM interface so that VB programmers could compete

f. ability to automatically run from command line and specify any two robots

g. a callable routine to dump to a debug window that can be shown or hidden from the framework

h. option to pause, single step the battle with keyboard shortcuts

i. some kind of debugger so you could browse the list of objects each robot sees

j. ability to save and replay battles.

3. What, if anything, would you change in the GDArena documentation?

a. It seemed to work fine as a reference for me, I’m probably not the best person to ask.

4. How would you change the gameplay of GameDev: Arena to make it more competitive?
a. fix the vision bug I mentioned above.. it will level the playing field more for newer programmers.


5. How would you change the gameplay of GameDev: Arena to make it more fun?

a. fix the vision bug above

b. user designable maps.. add walls so you can create buildings, etc.

c. health packs

d. more than 2 robot combat.. have 4 of them in there, free for all or teams..
one bot could be a medic or something

e. destructible scenery

f. more weapons

g. have the battle viewable in 3d..heheh


6. Is GameDev: Arena challenging enough? How would you make it more challenging?
a. Yeah as long as people keep making bots it’ll be challenging
b. Make it more challenging by adding more of the fun features above it would also open the door to more complicated tactics.

7. Any other suggestions for the arena?

Keep up the great work!
Maybe open source the arena code so others could add onto it if you are open to that idea at all.

Greg


--
Greg Pringle
Firelight Software, Inc.
403.540.7729
greg@firelightsoftware.com
www.firelightsoftware.com

Share this post


Link to post
Share on other sites

Great! I see a couple of my requests in there.

I get this error when I start it though..

gdalaunch.exe ModName: ntdll.dll ModVer: 5.1.2600.121 Offset:00019ecd

Exception Information Code: 0xc0000005

Share this post


Link to post
Share on other sites
quote:
Original post by Tailslide

Great! I see a couple of my requests in there.

I get this error when I start it though..

gdalaunch.exe ModName: ntdll.dll ModVer: 5.1.2600.121 Offset:00019ecd

Exception Information Code: 0xc0000005




hehe no ntdll is not a bot dll , try to ´put the executable in the same folder where the arena executable is... (sry for nearly threadjacking , but this forum has no pn/pm''s etc...)


T2k

----- back ontopic here-----

Share this post


Link to post
Share on other sites
The GameDev: Arena Contest
1.
a)5, lots of fun!
b)3, i put into practice a bunch of stuff that i already knew. so I definitely learned something.
c)4
d)5

2. hmm, can't really think of anything. definitely need to clear up exactly what happens when a bot uses up it's allotted time for an update...other than that i dunno. Perhaps clarify exactly what is expected in the midterm entry vs. final entry (i.e., T2K seems to think that the midterm bot should be very similar to the final entry bot. should it be? if there is to be a rule as to similarity between midterm and final entry how are you going to quantify the differences between entries?).

3. definitely not just double elim. need to have at *least* best of 5 for each bracket. the more the better...
maybe not even brackets at all...more of a pool like T2K suggests.

4. almost.

5. not that i can think of...

The GameDev: Arena Framework
1.
a)easy to do a reactive bot (5), harder to go beyond that because of certain limitations of the arena (discussed below) (2)
b)4
c)5
d)5
e)5

2.This is from a previous post of mine:
Previously, I said that i was fine with the proximity LOS not giving a definite direction, however, after playing with it a bit, I believe that it would be much better (both in terms of someone learning how to use the interface, and in terms of improving bot functionality) to stick with a perceptual scheme that is fully consistent (i.e. the proximity LOS and regular LOS should return the same types of information...should detect the same types of objects and give accurate direction/distance information). The key word here, i think, is consistancy. Either this, or if the LOS zones are going to be treated separately (in terms of the type of info returned) there should be two separate queries (GetObjectsInSight() and GetObjectsInProximity()). This would help alert people to the fact that these two queries do, in fact, return different types of info.

4.fix the problems with the arena before adding gameplay.

5.see #4

6.see #4

7.This is from a previous post of mine:
Although i think the current wall detection scheme is definitely "workable", i can see that it will probably be a major sticking point in the actual competition. The process of wall detection may be confusing to someone just trying to get into the competition. I think the ideal wall detection situation would be one in which visible wall segments are returned (i know, i know, the current query isn't set up to return this type of data...i'm just throwing out ideas). So, for example, if you were looking towards a corner and saw two walls, you would have returned to you two different wall segments. each segment would have the distance and angle to the first visible point of the wall and the dist/angle to the last visible point. As i said, this is the ideal...i have no idea how practical it is. However, as far as implementation is concerned, this could be done with a simple frustum/segment intersection test between a trapezoidal approximation of the bot's FOV and the walls.

Oh yeah, also, for everyone interested in machine learning techniques (neural nets, genetic algs, reinforcement learning, etc.) it is ESSENTIAL for there to be another mode for running the arena. Currently there is a release and debug mode. I'm gonna call this hypothetical mode learn mode. In learn mode, the arena could be run in a "fast forward" mode, and you would have access (only in learn mode!!) to information that you would not have otherwise, stuff such as (but not limited to): the enemy's health, your bot's accuracy, if your bot has collided with something, etc.

This depends on Khawks standpoint on the "fairness" of machine learning techniques in a competition like this. However, I'd like to point out that although many people tend to view these techniques as somehow magical, able to produce "ultimate" AI agents, machine learning techniques are simply that...alternate techniques. It can be just as difficult to create and tune a machine learning structure that successfully performs a task as it might be to "hard-code" a successful agent. I believe it takes just as much hard work and creativity as traditional AI techniques, so it shouldn't be disqualified on the basis that it is somehow taking the easy way out.

One major problem i have with the arena (which Tailslide, i believe, brought up) is that if part of an obstacle intersects the bots view angle (but not the center of the obstacle) your bot DOESN'T SEE IT. This results in some fairly annoying problems with obstacle avoidance/navigation. PLEASE PLEASE PLEASE fix this. one simple work around would be to include direction information on proximity objects. however, i would prefer the more elegent & consistent solution of just returning the object as seen if any part of it intersects the bot's view frustum.

there is also definitely a bug with gernades. if a grenade is in the air while another is exploding, the gernade in the air is instantly teleported to the location of the exploding gernade and explodes at the same time (this is why you are seeing bots sometimes take much more damage from a nade than expected). oh yeah, this only works for gernades fired from the same bot (i.e. if bot A's nade is about to explode and bot B fires one, this won't happen)


-------------------------------------------------------
A headache, ancillary; an hourglass auxiliary.

"something witty, blah, blah, blah"
--That One Witty Guy (remember? that one dude?)

(author of DustBot)



[edited by - drreagan on November 17, 2003 7:12:58 PM]

Share this post


Link to post
Share on other sites
The GameDev: Arena Contest
1a. Yep - 5
b. Well, yeah - 3
c. 5
d. 4

2. Nothing

3. Mrm... maybe it should be done in such a way that the contestants should be grouped, and then matches are run for each group, and the top two in the group will advance to the next round. More like soccer, the world cup.

4. Yes

5. No


The GameDev: Arena Framework
1a. 5
b. 2
c. 4
d. 4
e. 4

2. Nothing

3. Nothing

4. Larger map/field of play.

5. More weapons, team battle, 8 to 16 player deathmatch on larger field.

6. Yeah. More challenging? Er.. nothing really.

7. No.

"Never met an American that didn''t like guns."
"Santa Claus would pick up a gun to save his friend."

InitGames Software | InitGames Software forums

Share this post


Link to post
Share on other sites