Be a Supporter!

The Flash 'Reg' Lounge

  • 1,583,845 Views
  • 64,286 Replies
New Topic Respond to this Topic
egg82
egg82
  • Member since: Jun. 24, 2006
  • Offline.
Forum Stats
Member
Level 05
Game Developer
Response to The Flash 'Reg' Lounge Oct. 21st, 2012 @ 02:56 PM Reply

At 10/21/12 02:43 PM, MSGhero wrote: I think I'm just gonna make mine look cool like swish's.

but... That wouldn't be a challenge D:

At 10/21/12 02:44 PM, swishcheese wrote: What is gonna be the name of your bot?? If it does what you say it does I wanna make a special case that goes and nukes your bot in the first 20 frames!!! lol.

so far i've named it H.U.N.T.R. -
Human-like
Unparalleled
and
Nefarious
Tracking
Rover

i'll probably come up with some better words for that anagram later.

coming directly at it in the first 20 frames isn't a good idea, though. It'll track that and beat the crap out of you. You'll have to go for something more unpredictable.


Programming stuffs (tutorials and extras)
PM me (instead of MintPaw) if you're confuzzled.
thank Skaren for the sig :P

BBS Signature
swishcheese
swishcheese
  • Member since: May. 12, 2007
  • Offline.
Forum Stats
Member
Level 14
Programmer
Response to The Flash 'Reg' Lounge Oct. 21st, 2012 @ 03:06 PM Reply

At 10/21/12 02:56 PM, egg82 wrote: coming directly at it in the first 20 frames isn't a good idea, though. It'll track that and beat the crap out of you. You'll have to go for something more unpredictable.

hmmm, maybe zig zagging. And what happens if you test your bots against each other?? Does one come on top based on firsts position or do the just battle forever??


BBS Signature
egg82
egg82
  • Member since: Jun. 24, 2006
  • Offline.
Forum Stats
Member
Level 05
Game Developer
Response to The Flash 'Reg' Lounge Oct. 21st, 2012 @ 03:15 PM Reply

At 10/21/12 03:06 PM, swishcheese wrote: hmmm, maybe zig zagging. And what happens if you test your bots against each other?? Does one come on top based on firsts position or do the just battle forever??

it tracks every bot's movement on every frame and uses pattern recognition to form predictions based on previous patterns. It does not have opinions on each pattern because it does not categorize patterns. It recognizes a pattern when it sees it and is able to predict that pattern's next move, but cannot attach a specific name to that pattern.

zig-zagging is a pattern. moving in a circle is a pattern. Moving toward or away from players and objects is a pattern. Moving in a circle, then a line, then a circle is a pattern.

the problem is, it takes two instances of that pattern to create a recognizable pattern. When it cannot predict a pattern, it will default to an AI "priority list" I created previously. That is its weak point.

the battle will last forever. This is only because I haven't gotten around to making decisions based on predictions yet.
basically it just stands there and analyzes everything.


Programming stuffs (tutorials and extras)
PM me (instead of MintPaw) if you're confuzzled.
thank Skaren for the sig :P

BBS Signature
Sandremss128
Sandremss128
  • Member since: Aug. 22, 2009
  • Offline.
Forum Stats
Supporter
Level 11
Programmer
Response to The Flash 'Reg' Lounge Oct. 21st, 2012 @ 03:18 PM Reply

At 10/21/12 01:28 PM, egg82 wrote: my bot uses prediction, and knows exactly how each AI "thinks" and how the battle will play out.

Good thing I read that, I was thinking about adding random elements to it from the start. Now we all know Math.random() is forbidden, but the great thing about pseudo random algorithms is that they are relatively random, but with the same seed each game it will play out exactly the same all the time.

I'd love to see my bot (which I have yet to make after the majority of my exams) screw up yours by making it believe mine uses strategies which aren't there :P.

egg82
egg82
  • Member since: Jun. 24, 2006
  • Offline.
Forum Stats
Member
Level 05
Game Developer
Response to The Flash 'Reg' Lounge Oct. 21st, 2012 @ 03:22 PM Reply

At 10/21/12 03:18 PM, Sandremss128 wrote: I'd love to see my bot (which I have yet to make after the majority of my exams) screw up yours by making it believe mine uses strategies which aren't there :P.

good job! Pseudo random numbers would completely screw with my bot's pattern recognition until it was able to see the larger pattern that the pseudo-random generates. That'll buy you some more time.


Programming stuffs (tutorials and extras)
PM me (instead of MintPaw) if you're confuzzled.
thank Skaren for the sig :P

BBS Signature
PSvils
PSvils
  • Member since: Feb. 3, 2010
  • Offline.
Forum Stats
Member
Level 01
Game Developer
Response to The Flash 'Reg' Lounge Oct. 21st, 2012 @ 03:39 PM Reply

At 10/21/12 03:22 PM, egg82 wrote: Pseudo random numbers would completely screw with my bot's pattern recognition until it was able to see the larger pattern that the pseudo-random generates.

Which I doubt is likely...

egg82
egg82
  • Member since: Jun. 24, 2006
  • Offline.
Forum Stats
Member
Level 05
Game Developer
Response to The Flash 'Reg' Lounge Oct. 21st, 2012 @ 04:06 PM Reply

At 10/21/12 03:39 PM, PSvils wrote: Which I doubt is likely...

it'll eventually see a pattern, because there is a pattern there. It may take a long-ass time, though :P

the pattern recognition I created works like this:
it groups similar numbers together and looks for patterns within those groups. If it finds a pattern, it makes a note of it and keeps going. Eventually it winds up with a vector of usable number patterns. The only issue after that is finding out which order the patterns persist, and making a prediction based on the current position of the bot and that set of patterns.

how does it group numbers?
it rounds the numbers in the main vector and looks between some simple number buffers.

how does it find a pattern?
simple math. Looking for addition and subtraction between direction a and direction b and averaging it out.

for example: say your bot moves in a circle (example bot)
it calculates the direction between point a and point b on each frame (the last position of the bot and the current position of the bot) - each directional movement between the two points increments by 2 degrees (just guessing), which is well between the buffers (the buffers grow if there's too many pattern groups) - and I end up with: 2, 2, 2, 2, 2, etc.
once it sees this pattern, it predicts the next point will be add 2 degrees (and 5 pixels) from where it is now.

now let's say example bot's circle algorithm grows:
I end up with: 2, 4, 6, 8, 10
4-2 = 2, 6-4 = 2, 8-6 = 2, etc.
and once again I can predict where it's going to land next.

of course, this works with multiple patterns as well:
a circle is 2, 2, 2, 2, etc.
a line is 0, 0, 0, 0, etc.
a circle is 2, 2, 2, 2, etc.
2, 0, 2 - means I need to get the average of how long it travels in a circle (let's say 10 frames) and get the next number in the pattern. If we happen to be on frame 1 of the new pattern, it's probably a 2. If we're on frame 10, the next one is probably a 0.


Programming stuffs (tutorials and extras)
PM me (instead of MintPaw) if you're confuzzled.
thank Skaren for the sig :P

BBS Signature
Sandremss128
Sandremss128
  • Member since: Aug. 22, 2009
  • Offline.
Forum Stats
Supporter
Level 11
Programmer
Response to The Flash 'Reg' Lounge Oct. 21st, 2012 @ 04:27 PM Reply

So, egg82: What if our bots are positioned facing each other and your bot starts firing at mine, my bot doesn't move until the very last second to dodge the bullet, does this mean that all the current bullets on the screen will already miss (so far the 'pattern' of my bot would have been to not move)? If so you're at a considerable disadvantage already.
I'm not making a bot that does the same pattern every time, it will react on your moves and by the time that you've cracked the pattern (which I doubt to what extend you're able to do this, it might actually be more complex than making a strong bot) your bot is at such a disadvantage mine will be able to take your fire because of the advantage in resources it has accumulated.

I'm just interested to know what your strategies are considering this.

Also the pattern you've build during the 4 or 3 bot FFA (free for all) might become obsolete as I have very different ideas about each situation (4 FFA, 3FFA, and 1v1).

egg82
egg82
  • Member since: Jun. 24, 2006
  • Offline.
Forum Stats
Member
Level 05
Game Developer
Response to The Flash 'Reg' Lounge Oct. 21st, 2012 @ 04:51 PM Reply

This bot... I need some aspirin -.-'

At 10/21/12 04:27 PM, Sandremss128 wrote: So, egg82: What if our bots are positioned facing each other and your bot starts firing at mine, my bot doesn't move until the very last second to dodge the bullet, does this mean that all the current bullets on the screen will already miss (so far the 'pattern' of my bot would have been to not move)? If so you're at a considerable disadvantage already.

I thought about something like that before. My initial strategy was to categorize the different behaviors of bots, and i'll be using some of that here. I know I said there's no categorization with my bot, so i'll amend that to: there's very little categorization with my bot.

A bullet dodge is a bullet dodge is a bullet dodge to my bot.

I'm not making a bot that does the same pattern every time, it will react on your moves and by the time that you've cracked the pattern (which I doubt to what extend you're able to do this, it might actually be more complex than making a strong bot) your bot is at such a disadvantage mine will be able to take your fire because of the advantage in resources it has accumulated.

again, this is where the basic categorization comes in. Here are the categories:
away from player
toward payer
away from mine
toward mine
away from bullet
toward bullet
time

minus looking at opposites, each one is a separate category and each has its own point value. Decisions about attacking are based partially on this.

I'm just interested to know what your strategies are considering this.

mhm, I want my bot to get beaten :3
(but of course, i'm not going to make it easy)

Also the pattern you've build during the 4 or 3 bot FFA (free for all) might become obsolete as I have very different ideas about each situation (4 FFA, 3FFA, and 1v1).

the bot was designed with different situations in mind. It handles any type of situation well, as long as some basic rules stay the same:
1. That there's another bot of any kind on the screen.
2. That there's bullets
3. That there's mines
4. That there's no other additions to the game

remember: it analyzes and predicts on-the-fly, so changing strategies isn't an issue.

also, be aware that tracking and predicting movement isn't going to be its only trick. It tracks and analyzes literally everything that happens.


Programming stuffs (tutorials and extras)
PM me (instead of MintPaw) if you're confuzzled.
thank Skaren for the sig :P

BBS Signature
egg82
egg82
  • Member since: Jun. 24, 2006
  • Offline.
Forum Stats
Member
Level 05
Game Developer
Response to The Flash 'Reg' Lounge Oct. 21st, 2012 @ 06:54 PM Reply

I got a headache trying to do all this prediction stuff, so i'm going to do something easier for the rest of the day. I feel i've made enough progress to call it a day on that project, anyway.

maybe i'll get back to work on loading 3D objects from a server, or even go for my dynamic mesh idea.

Programming stuffs (tutorials and extras)
PM me (instead of MintPaw) if you're confuzzled.
thank Skaren for the sig :P

BBS Signature
MSGhero
MSGhero
  • Member since: Dec. 15, 2010
  • Offline.
Forum Stats
Supporter
Level 16
Game Developer
Response to The Flash 'Reg' Lounge Oct. 21st, 2012 @ 09:19 PM Reply

At 10/21/12 06:54 PM, egg82 wrote: easier
maybe i'll get back to work on loading 3D objects from a server, or even go for my dynamic mesh idea.

Wut?

Easier for me is playing Dota 2...The only reason I'm not doing a major in computer science is because I HATE staring at code all day long. And Java hw this week is annoying cuz they won't let me code it how I want. Idk why, but I have a thing against swapping array elements and making that temporary var. I'll do it if I have to, but they want us to use the tips n' tricks from class instead of creativity or experience :(

egg82
egg82
  • Member since: Jun. 24, 2006
  • Offline.
Forum Stats
Member
Level 05
Game Developer
Response to The Flash 'Reg' Lounge Oct. 21st, 2012 @ 09:38 PM Reply

At 10/21/12 09:19 PM, MSGhero wrote: Wut?

have you ever tried making an AI that can predict the outcome of a battle with other AI within 20 moves? I think learning rocket science would be easier O.o

but in all seriousness, i've talked to a few knowledgeable people on the subject and i'm surprised at the amount of people who don't believe that I can do something like this. In fact, i've gotten exactly zilch for information from these people, and it just adds to the frustration -.-'

Easier for me is playing Dota 2...The only reason I'm not doing a major in computer science is because I HATE staring at code all day long. And Java hw this week is annoying cuz they won't let me code it how I want. Idk why, but I have a thing against swapping array elements and making that temporary var. I'll do it if I have to, but they want us to use the tips n' tricks from class instead of creativity or experience :(

i'm kinda with you there. I'm more the guy that writes pseudo-code and solves all the run-ins with logic that everybody has. I can design an AI like this just fine and even bring it down to the code level, but when I try to write it I run into problems like "how do I get the angle from point a to point b?" and I spend most of my time testing math equations that i've never even heard of before. (the hell is a sine?)

as for the whole "you have to do this" thing, I agree with the fact that you should be allowed some more freedom, but at the same time the school does have a standard which they have to meet (or they risk being shut down)


Programming stuffs (tutorials and extras)
PM me (instead of MintPaw) if you're confuzzled.
thank Skaren for the sig :P

BBS Signature
MSGhero
MSGhero
  • Member since: Dec. 15, 2010
  • Offline.
Forum Stats
Supporter
Level 16
Game Developer
Response to The Flash 'Reg' Lounge Oct. 21st, 2012 @ 10:20 PM Reply

At 10/21/12 09:38 PM, egg82 wrote: i'm kinda with you there. I'm more the guy that writes pseudo-code and solves all the run-ins with logic that everybody has. I can design an AI like this just fine and even bring it down to the code level, but when I try to write it I run into problems like "how do I get the angle from point a to point b?" and I spend most of my time testing math equations that i've never even heard of before. (the hell is a sine?)

I have a hard time bringing logic like AI down to the code level when there's too much freedom. Like, non-tile-based pathfinding makes me sad. The most I've done was behavior of enemies in my RPG, but I can't really test if it's good or not because I don't have all the skills worked out with my writer yet! I'm fine with math :D

Innermike
Innermike
  • Member since: Sep. 11, 2009
  • Offline.
Forum Stats
Member
Level 14
Audiophile
Response to The Flash 'Reg' Lounge Oct. 21st, 2012 @ 10:43 PM Reply

At 10/21/12 09:38 PM, egg82 wrote:
At 10/21/12 09:19 PM, MSGhero wrote: Wut?
have you ever tried making an AI that can predict the outcome of a battle with other AI within 20 moves? I think learning rocket science would be easier O.o

Confidence is one thing but this is getting ridiculous. If your AS wars bot doesn't cure cancer and fix my sink I'll be disappointed.


Concerned Joe (not mine but still cool)

BBS Signature
egg82
egg82
  • Member since: Jun. 24, 2006
  • Offline.
Forum Stats
Member
Level 05
Game Developer
Response to The Flash 'Reg' Lounge Oct. 21st, 2012 @ 10:47 PM Reply

At 10/21/12 10:20 PM, MSGhero wrote: I have a hard time bringing logic like AI down to the code level when there's too much freedom. Like, non-tile-based pathfinding makes me sad. The most I've done was behavior of enemies in my RPG, but I can't really test if it's good or not because I don't have all the skills worked out with my writer yet! I'm fine with math :D

well, i'm not really the "idea guy" but if I see or think of a good idea that wasn't in the design specs, i'll usually try to find a way to worm it in. Otherwise I leave all that to whoever else.

I never passed highschool (Good Enough Degree) and I never made it through algebra 2, so i'm definitely lacking in the math department.


Programming stuffs (tutorials and extras)
PM me (instead of MintPaw) if you're confuzzled.
thank Skaren for the sig :P

BBS Signature
egg82
egg82
  • Member since: Jun. 24, 2006
  • Offline.
Forum Stats
Member
Level 05
Game Developer
Response to The Flash 'Reg' Lounge Oct. 21st, 2012 @ 10:55 PM Reply

At 10/21/12 10:43 PM, Innermike wrote: Confidence is one thing but this is getting ridiculous. If your AS wars bot doesn't cure cancer and fix my sink I'll be disappointed.

what a coincidence, I was just working on my "cure cancer" function!
I named it "saveGrandma" to be cute.


Programming stuffs (tutorials and extras)
PM me (instead of MintPaw) if you're confuzzled.
thank Skaren for the sig :P

BBS Signature
egg82
egg82
  • Member since: Jun. 24, 2006
  • Offline.
Forum Stats
Member
Level 05
Game Developer
Response to The Flash 'Reg' Lounge Oct. 21st, 2012 @ 11:11 PM Reply

still easier than a "predictor" AI

The Flash 'Reg' Lounge


Programming stuffs (tutorials and extras)
PM me (instead of MintPaw) if you're confuzzled.
thank Skaren for the sig :P

BBS Signature
Toast
Toast
  • Member since: Apr. 2, 2005
  • Offline.
Forum Stats
Member
Level 09
Blank Slate
Response to The Flash 'Reg' Lounge Oct. 22nd, 2012 @ 02:37 AM Reply

For next AS war of "shoot, move, heal" type, I suggest circle bots and square/rectangle bots with ability to rotate.


BBS Signature
egg82
egg82
  • Member since: Jun. 24, 2006
  • Offline.
Forum Stats
Member
Level 05
Game Developer
Response to The Flash 'Reg' Lounge Oct. 22nd, 2012 @ 11:19 AM Reply

At 10/22/12 02:37 AM, Toast wrote: For next AS war of "shoot, move, heal" type, I suggest circle bots and square/rectangle bots with ability to rotate.

why would you waste your turn rotating?


Programming stuffs (tutorials and extras)
PM me (instead of MintPaw) if you're confuzzled.
thank Skaren for the sig :P

BBS Signature
Toast
Toast
  • Member since: Apr. 2, 2005
  • Offline.
Forum Stats
Member
Level 09
Blank Slate
Response to The Flash 'Reg' Lounge Oct. 22nd, 2012 @ 11:49 AM Reply

At 10/22/12 11:19 AM, egg82 wrote: why would you waste your turn rotating?

You're trying to build a Skynet for your AS bot, and yet you want me to explain to you the merit of adding an extra degree of freedom to make bullet dodging slightly more elaborate?


BBS Signature
egg82
egg82
  • Member since: Jun. 24, 2006
  • Offline.
Forum Stats
Member
Level 05
Game Developer
Response to The Flash 'Reg' Lounge Oct. 22nd, 2012 @ 11:57 AM Reply

At 10/22/12 11:49 AM, Toast wrote: You're trying to build a Skynet for your AS bot, and yet you want me to explain to you the merit of adding an extra degree of freedom to make bullet dodging slightly more elaborate?

mhm.
It just doesn't make much sense, and would result in the battles becoming slower and more clunky.
(plus that's another thing that i'd have to track)


Programming stuffs (tutorials and extras)
PM me (instead of MintPaw) if you're confuzzled.
thank Skaren for the sig :P

BBS Signature
Archawn
Archawn
  • Member since: Sep. 9, 2007
  • Offline.
Forum Stats
Member
Level 27
Game Developer
Response to The Flash 'Reg' Lounge Oct. 22nd, 2012 @ 12:08 PM Reply

At 10/20/12 12:08 PM, Innermike wrote: Also, can we start an argument about how 'haXe' is pronounced please?

Hacksay :D

More controversial is the pronunciation of 'LaTeX'
MSGhero
MSGhero
  • Member since: Dec. 15, 2010
  • Offline.
Forum Stats
Supporter
Level 16
Game Developer
Response to The Flash 'Reg' Lounge Oct. 22nd, 2012 @ 02:27 PM Reply

At 10/22/12 11:49 AM, Toast wrote: You're trying to build a Skynet for your AS bot

What began intended as a simple weekend programming challenge eventually took over the world...

At least it also cures cancer. Who knew it was as simple as returning a blank Cure vector?

Rustygames
Rustygames
  • Member since: May. 7, 2005
  • Offline.
Forum Stats
Member
Level 19
Programmer
Response to The Flash 'Reg' Lounge Oct. 22nd, 2012 @ 04:43 PM Reply

At 10/19/12 07:59 AM, Toast wrote: Stuff

Hey toast!


- Matt, Rustyarcade.com

Toast
Toast
  • Member since: Apr. 2, 2005
  • Offline.
Forum Stats
Member
Level 09
Blank Slate
Response to The Flash 'Reg' Lounge Oct. 22nd, 2012 @ 04:47 PM Reply

At 10/22/12 04:43 PM, Rustygames wrote:
At 10/19/12 07:59 AM, Toast wrote: Stuff
Hey toast!

Hey buddy, what've you been up to? Seen you a couple times here throughout the years but I don't think we talked. Btw, is it true you met Keith IRL at work?


BBS Signature
egg82
egg82
  • Member since: Jun. 24, 2006
  • Offline.
Forum Stats
Member
Level 05
Game Developer
Response to The Flash 'Reg' Lounge Oct. 22nd, 2012 @ 05:36 PM Reply

At 10/22/12 02:27 PM, MSGhero wrote: What began intended as a simple weekend programming challenge eventually took over the world...

mwahahahaha >:D

At least it also cures cancer. Who knew it was as simple as returning a blank Cure vector?

it cures everything from 1 to fish!


Programming stuffs (tutorials and extras)
PM me (instead of MintPaw) if you're confuzzled.
thank Skaren for the sig :P

BBS Signature
Rustygames
Rustygames
  • Member since: May. 7, 2005
  • Offline.
Forum Stats
Member
Level 19
Programmer
Response to The Flash 'Reg' Lounge Oct. 22nd, 2012 @ 06:25 PM Reply

At 10/22/12 04:47 PM, Toast wrote:
At 10/22/12 04:43 PM, Rustygames wrote:
At 10/19/12 07:59 AM, Toast wrote: Stuff
Hey toast!
Hey buddy, what've you been up to? Seen you a couple times here throughout the years but I don't think we talked. Btw, is it true you met Keith IRL at work?

Ah yeah. That was a few years ago now. He came for an interview at the company I worked for and was a little shy! Awkward moment all around. Also didn't get the job :(


- Matt, Rustyarcade.com

Toast
Toast
  • Member since: Apr. 2, 2005
  • Offline.
Forum Stats
Member
Level 09
Blank Slate
Response to The Flash 'Reg' Lounge Oct. 22nd, 2012 @ 06:26 PM Reply

It's nice that we are still having community efforts like AS wars given the less active state of these forums. I'll give this one a try. How do I start writing my run function and "instantiate" my bot in the AS2 framework provided?


BBS Signature
Rustygames
Rustygames
  • Member since: May. 7, 2005
  • Offline.
Forum Stats
Member
Level 19
Programmer
Response to The Flash 'Reg' Lounge Oct. 22nd, 2012 @ 06:30 PM Reply

At 10/22/12 06:26 PM, Toast wrote: It's nice that we are still having community efforts like AS wars given the less active state of these forums. I'll give this one a try. How do I start writing my run function and "instantiate" my bot in the AS2 framework provided?

Whatever happened to Inglor?


- Matt, Rustyarcade.com

Toast
Toast
  • Member since: Apr. 2, 2005
  • Offline.
Forum Stats
Member
Level 09
Blank Slate
Response to The Flash 'Reg' Lounge Oct. 22nd, 2012 @ 07:23 PM Reply

At 10/22/12 06:30 PM, Rustygames wrote:
At 10/22/12 06:26 PM, Toast wrote: It's nice that we are still having community efforts like AS wars given the less active state of these forums. I'll give this one a try. How do I start writing my run function and "instantiate" my bot in the AS2 framework provided?
Whatever happened to Inglor?

Man, god, I'm knee-deep in reading through old posts again from nostalgia. All the shenanigans with Inglor were freaking hilarious. The days of msn raids and mass spam. Last time Inglor posted here, I asked him what he's up to and if he'd stay a while on NG, but he said he's just popping to say hi and he doesn't have time to stay here. Gave no answer about his whereabouts or what he's up to, though. And so much was going on! I'm pretty sure he moved to israel at some point, and also we had this big party thing about his engagement - though now that I look back at it and I'm not 12 anymore, it seems a bit weird. He was 19 at the time. Christ, I'm 19 right now. No way he was really engaged to his girlfriend.

Almost all the regs are gone by now, and many of them come for a "yearly post" on the reg lounge. I don't even see Paranoia around anymore, and he's been here pretty much non-stop since 05 except a few months of intensive uni courses. Liam has been gone for a year or two, also. I felt like Gust was still around, just not posting much. But further inquiry shows he hasn't been active in 1.5 years O_o Glaiel posts here from times to times about closure or gay stuff like his smart algorithms and programming work. Even Luis barely comes around.

Mostly current regs are 2-3 generations from the 05 boom. Oh yea and Sam (saza) is still here.


BBS Signature