IPB

Welcome Guest ( Log In | Register )

Guests, read this to find out why you can't see most topics any more.

2 Pages V  1 2 >  
Reply to this topicStart new topic
> I have always had a dream...., LEt's build our own gunbound player!
Gilligan
post Feb 11 2007, 02:38 PM
Post #1


Old Skool
Group Icon

Group: Members
Posts: 27
Joined: 18-January 07
From: Michigan
Member No.: 156

IGN: gilligan128
Guild: Honor

Clan: None



I have had this dream for years. It is time to show it to the public:

Background: I gradutaed from Lawrence Tech. with BS in Computer Science. Through this "college process" I took a Masters course called "Intelligent Systems" which taught some intensive studies on AI and machine learning.

Dream: In the above-mentioned course, my eyes would widen with glee on learnign the amazing things you could do and how much more powerful comptuer thinking will be in the future (need evidence, lok at the DARPA challenge). As a result I always thought it would be supercool to create a "Gunbound player" program. Here would be the program details:

Goal:
To experiment with machine learning by creating a program that automates the entire playing process of Gunbound. However, this oudl not be done through extensive formula use, etc. It would be done through Nueral Netoworks and other techniques of machine learning (like Genetic algorithms. I lvoe genetic algorithms).

Features:

- A driver that simulates keyboard strokes, mouse-clicks, etc. so that the program can simulate a player on the deepest level.

- Shooting Brain: An Aritficial Neural Network that will start as a blank slate (which means it will completely suck at first) that contains the following input: a grid of the current game screen where each cell has one of 6 values: non-Target opponent, ally, terrain, space, target, self; the current wind and its power in the x direction and y direction (simple trig); the current delay of all players; the health of all players; any other inputs that emerge or that I am currently forgetting. The outputs would be: The angle of the shot, power of the shot, and what shot to use. The feedback algorithm would involve the location of the shot in relation to the target (0 being perfect), the damage done to the target, and the avg damage range determined by the shot category network.

- The mobile Chooser: This is an algorithm that chooses a mobile based upon a random factor, and the strengths and weaknesses of each mobile.

- The Target Chooser: This is an algorithm that chooses a target (that can differ every turn) based upon certain factors, such as the health of all players, the mobiles of all players, the delay of all players, the position of all players and terrain, whether ss is available, etc. This could easily turn into another Aritficial Neural Network (ANN).

- The Game Chooser: A small algorithm that uses mostly randomness (to represent certain moods) to determine whether to start a game or join a game and what type of game to join. This is mostly a fun algorithm that is made to give the rpogram a "personality". Other inputs may easily include the avg lenght of previous game creation attempts (per type of game), whether a game is available with friends on its buddy list, the amount of players in a game room, etc.

- The ELIZA Interface: ELIZA was one of the first AI programs (written in Lisp, I believe) and it attempted to hold conversations with real people, trying to pass the Turing Test. This interface would hold respectful conversations with other guild members. There are some open source frameworks for doing this out there already. This would also include strategical information to allies and such.

- General algorithms to logon to its account, check buddy lists, scan rooms, create rooms, enter/leave a room, buy avatars (another potentially fun algorithm), etc.

- Guideline algorithm. This algorithm is probably the most improtant. It will basically make sure the program follows external guidelines. If I were ever to create such a program as is described, I would Definitely make sure that the idea is cleared by any administrators of the game. Ideally (so, not Ijji), the idea would be discussed and a compromise would be reached. One compromise could be that the program can only log on for a certain lenght of time every day (eliminating unfairness from being a computer and not needing sleep or school, etc.).

Who knows what else this progrma may contian. I have also thought it would be an insanely complex yet fun project, but have never had the motivation to actually carry it through.

From you guys, I would like to know what you all think of such a project. Is it immoral, like an aimbot? Is it a great idea, is it something that would never work?

Discuss.

DISCLAIMER - I AM NOT in the process of making such a program and would NEVER do so without discussion with the administrators of whichever GB server the program would use. The purpose of such a program would be purely academic. The program also would NEVER know any information that was not publicly available to any player, such as wind direction and speed, etc.
User is offlineProfile CardPM
Go to the top of the page
+Quote Post
xF4talIgni7ionx
post Feb 11 2007, 02:42 PM
Post #2


A Little Chick
Group Icon

Group: Members
Posts: 15
Joined: 11-February 07
Member No.: 249
Guild: None
Main: Boomer



With my little experience with the game, I have come to this conclusion.

To do such a project would require alot of time, for something that reads pixels on a screen and those could change with an update of the game or patch or something, that would require you to go back into the programming phase of things and change alot of values and such.

Basically: I think it is doable just would be ALOT of work to do and I would consider it immoral.
User is offlineProfile CardPM
Go to the top of the page
+Quote Post
Gilligan
post Feb 11 2007, 03:04 PM
Post #3


Old Skool
Group Icon

Group: Members
Posts: 27
Joined: 18-January 07
From: Michigan
Member No.: 156

IGN: gilligan128
Guild: Honor

Clan: None



Thanks for the reply!

Would you mind explaining while you feel its immoral? Thank you.
User is offlineProfile CardPM
Go to the top of the page
+Quote Post
Toneh
post Feb 11 2007, 03:23 PM
Post #4


Bitches don't know 'bout my particular set of skills
Group Icon

Group: Members
Posts: 1,562
Joined: 13-January 07
From: Quebec City, Canada
Member No.: 115

Clan: Jean Chrétien stole my bike





We build robots to do the ingrate work for us in many factories already.

I don't see why it would be immoral. It's not an aimbot, it's just another GB player, but made of steel.

Go for it.


--------------------
IPB Image
User is offlineProfile CardPM
Go to the top of the page
+Quote Post
hellic
post Feb 11 2007, 03:29 PM
Post #5


Mess with the head, and you'll get the shaft!
Group Icon

Group: Members
Posts: 2,974
Joined: 10-January 07
From: Near Chicago, IL
Member No.: 3

IGN: hellic (Steam)





It'll be cool, but I doubt the administrators will allow you :/ Too similar to an aimbot.


--------------------
Nothing here to see.
User is offlineProfile CardPM
Go to the top of the page
+Quote Post
mezz
post Feb 11 2007, 03:33 PM
Post #6


Red Dragon
Group Icon

Group: Administrators
Posts: 1,911
Joined: 10-January 07
From: Northern California
Member No.: 5

IGN: mezz
Guild: nS`T
Main: Trico, Turtle

Clan: Da Hobo Crew





This would be a lot of fun, but I am afraid that it would be very difficult and require a very large amount of computing power.

I think the best way would be to have an external machine for the AI and a Gunbound machine. The Gunbound machine would need two monitor outputs (one for the AI computer to analyze and one for us to see on a monitor). If we can cooperate with ijji we can have raw data feeds though, that would make things a lot easier..

It sounds pretty awesome. I just don't know where the time and money are coming from =/

EDIT: you might want do this on GBC lol


--------------------
IPB Image
User is offlineProfile CardPM
Go to the top of the page
+Quote Post
ANBU
post Feb 11 2007, 03:48 PM
Post #7


What is love?Love is playing every game like it's your last
Group Icon

Group: Members
Posts: 3,013
Joined: 11-January 07
From: Brampton, Ontario, Canada
Member No.: 42
GBNA:
Main: Turtle

Clan: The ACES of ACES






QUOTE(mezz @ Feb 11 2007, 04:33 PM) *

This would be a lot of fun, but I am afraid that it would be very difficult and require a very large amount of computing power.

I think the best way would be to have an external machine for the AI and a Gunbound machine. The Gunbound machine would need two monitor outputs (one for the AI computer to analyze and one for us to see on a monitor). If we can cooperate with ijji we can have raw data feeds though, that would make things a lot easier..

It sounds pretty awesome. I just don't know where the time and money are coming from =/

you could get permission from leo to try it out on his server :O

also, i think it's moral cuz it starts off as a nub and eventually lears how to play the game, but if it's like that then it will over time become an aimbot lol (through experience)
User is offlineProfile CardPM
Go to the top of the page
+Quote Post
Scala
post Feb 11 2007, 03:56 PM
Post #8


Think before you speak.
Group Icon

Group: Pro Member
Posts: 860
Joined: 11-January 07
Member No.: 63

IGN: Scala

Clan: None




Heeeeeeey, I'm going to lawrence tech next year! Will you be going there next year?

The Lawrence Tech in Southfield, MI I presume?


--------------------
IPB Image
AIM: agscala
GTalk: agscala@gmail.com
User is offlineProfile CardPM
Go to the top of the page
+Quote Post
loftyasianz
post Feb 11 2007, 04:19 PM
Post #9


A Little Chick
Group Icon

Group: Members
Posts: 28
Joined: 11-January 07
From: Philadelphia, PA
Member No.: 68



I'm sorry to burst your bubble, but Softnyx/ijji will not allow you to use such a program if you do develop it. Any 3rd party software used in juction with their software can be used as basis for service termination.


--------------------
IPB Image
User is offlineProfile CardPM
Go to the top of the page
+Quote Post
CreeDo
post Feb 11 2007, 05:12 PM
Post #10


R U TEH GUY WHO HAS THAT SITE
Group Icon

Group: Retired Staff
Posts: 327
Joined: 11-January 07
Member No.: 30

IGN: CreeDo
Main: Turtle





Lol lofty... I don't think anyone takes the rules seriously or cares. "Oh shit my account got banned! *slits wrists*.

Gilligan...

It sounds like you have an interest in a certain very specific field and want to just test it out and develop skills in it... and gunbound is your guinea pig. To that extent, it doesn't much matter what we think... if this is how you want to challenge yourself and learn the field then good luck to ya.

You have to decide some things though. If you make something that plays more or less like a human (i.e. doesn't shoot perfectly, attempts to converse, etc) then I dunno what the use of it would be except as a programming exercise. But if you made it useful (shot perfectly, and maybe even made smart decisions about movement, creating angle, etc) then it'd just be an aimbot and universally hated by honest players (plus that increase danger of getting detected and banned).

There's also some ugly programming challenges in this, to make a client that either controls user inputs into the real gunbound.gme program, or make a custom program that generates its own inputs... both of these would have to get past gunbound's semi-decent anti-hacking software (gameguard). You could end up wasting a LOT of time just getting the thing into a working play environment before you even start the REAL work of making it move, shoot, talk(?), learn and 'strategize' like a human.

Maybe a different game (without those anti-hack safeguards) would be easier to earn your chops with.


--------------------
IPB Image
User is offlineProfile CardPM
Go to the top of the page
+Quote Post
mezz
post Feb 11 2007, 05:20 PM
Post #11


Red Dragon
Group Icon

Group: Administrators
Posts: 1,911
Joined: 10-January 07
From: Northern California
Member No.: 5

IGN: mezz
Guild: nS`T
Main: Trico, Turtle

Clan: Da Hobo Crew





*waves GBC flag*


--------------------
IPB Image
User is offlineProfile CardPM
Go to the top of the page
+Quote Post
Gilligan
post Feb 11 2007, 07:51 PM
Post #12


Old Skool
Group Icon

Group: Members
Posts: 27
Joined: 18-January 07
From: Michigan
Member No.: 156

IGN: gilligan128
Guild: Honor

Clan: None



Thank you for the input all. Of course GBC was really the only option in my mind this whole time. To be honest form all the talk I have a hard time recognizing the otherservers as actual verions, hehe. Also, keep in mind I will probably never actually program this thing, at least not in the foreseeable future. I already have another volunteer program I am working on in my spare time.

To Creedo: My mind is a little vague on whether I want it to shoot perfectly or not. That is certainly a goal, but it depends upon how effective the program is. it is very likely that the program would reach a local maximum and play well, but not perfect. If it did reach perfection, I would probably tweak it with some random factor (fed into the network) to have it miss sometimes, or perhaps mess with the inputs so that it may seek to do trickier shots, thus having to learn different shot styles. who knows. But despite its shot, I would like it to be able to hold a halfway decent conversation (which programs exist that already do so) and maybe do some othe r fun stuff. This would be mostly a programming exercise, but a lot of serendipitous discoveries would no doubt come as a result. It would make a great exercise because its a closed environment with limited variables, yet still complex enough to warrant such a program. Finally, if I had permission to do it on GBC then anti =-hacking would be no issue.

To Mezz: Almost no doubt I would need another computer to run the logic in a multithreaded way while Gb runs on another computer. BTW, add me on GBC, you nub :-P

To Scala: Sweet! I am not going to LTU, I actually graduated from LTU. I sometimes go there to see my old friends or frat brothers. What will your major be? Will you be commuting or living there? A PM might be better for a response in order to keep this thread on topic.

All this typing is making me tired.
User is offlineProfile CardPM
Go to the top of the page
+Quote Post
n00b4LiFeSr
post Feb 11 2007, 09:47 PM
Post #13


eh????
Group Icon

Group: Members
Posts: 550
Joined: 11-January 07
From: Houston
Member No.: 61

Clan: Gangstas of GBGL





this would awesome I think, not as a serious opponent kind of thing, but just as an AI to practice your skills on, going 1v1 against it, or 2v2 it with a couple of friends.

:D


--------------------
IPB Image
User is offlineProfile CardPM
Go to the top of the page
+Quote Post
CreeDo
post Feb 11 2007, 11:25 PM
Post #14


R U TEH GUY WHO HAS THAT SITE
Group Icon

Group: Retired Staff
Posts: 327
Joined: 11-January 07
Member No.: 30

IGN: CreeDo
Main: Turtle





maybe you could, instead of making something aimbot-like, make something that learns like a real human but has no access to math of any kind. It would try a random angle and power to hit a target at a certain distance, and remember the result when it (probably) missed. Then it'd try adding or subtracting power until it got the desired hit, and remember "ok I tried angle 60 and it took about 2 bars of power to hit just past half screen". To make it more human, it wouldn't remember that 60 2 bars hit exactly 442 pixels or whatever, it would have a realistically human estimate that could be flawed by 10 to 15 pixels.

Then it might develop all its shooting based on that angle and what power levels worked in the past, and when a situation came up that it didn't know (enemy is between a known 2 bar shot and a known 3 bar shot) it would make a pseudo-logical guess on power (about 20 percent between the 2 bar and 3 bar mark... use 2.2 bars of power maybe?). It could refine these guesses until they ended up approximating the magic formula.

I guess you could get even more open ended than that and have it try different angles too. It will have to anyway probably, a human would have the common sense to know not to use eg angle 88 or 13 all the time.

Anyway, you get the idea, after a while it has an accurate homebrew formula that is subject to distance estimation errors and uninformed power guesses.


--------------------
IPB Image
User is offlineProfile CardPM
Go to the top of the page
+Quote Post
Mammophobia
post Feb 12 2007, 12:38 AM
Post #15


A Little Chick
Group Icon

Group: Members
Posts: 23
Joined: 8-February 07
Member No.: 244

IGN: Mammophobia
Guild: Still Searching
Main: Mammoth/Ice



The only flaw in your plan is that AI is exactly that, AI. Going with what Creedo said, there'd reach a point where it'd never miss (not saying soon, just that enough runs (180 x 4 x 20 x 25 x 40 <- guesstimate) would yield the artificial intelligence into recognizing how to exactly make the shot with any possible angle).

It'd only be a sufficient human if you programmed it to make errors. But then, why even use AI?


--------------------
IPB Image


IPB Image
IPB Image
User is offlineProfile CardPM
Go to the top of the page
+Quote Post
H3LLBane
post Feb 12 2007, 06:46 AM
Post #16


A Little Chick
Group Icon

Group: Members
Posts: 40
Joined: 12-January 07
Member No.: 82

IGN: FusionBlaz3
Guild: Viper
Main: Kal/Ice



Well...its basically, an automated aimbot with a more complex AI, but i afraid you might confuse the program with it being randomly choosing targets...argh...just get the Blue Gene to do it for you...it can simply calculate 1000000000000 shots in 1 second.


--------------------
IPB Image
User is offlineProfile CardPM
Go to the top of the page
+Quote Post
Gilligan
post Feb 12 2007, 06:49 AM
Post #17


Old Skool
Group Icon

Group: Members
Posts: 27
Joined: 18-January 07
From: Michigan
Member No.: 156

IGN: gilligan128
Guild: Honor

Clan: None



Again, th emain point is not to reach a level of perfection, but as a programmer's exercise. Actually, Creedo, that was exactly what I had in mind. The actual shooting ANN would use no math. It would be a pure field player. The only math may be the splitting of wind power in direction the x and y coordinates. That may even be unnecessary if I just use theta. Also, some of the periphereal algorithms would use math, like picking a room, etc, but the shooting would be pure trial, error, memory.
User is offlineProfile CardPM
Go to the top of the page
+Quote Post
Mammophobia
post Feb 12 2007, 07:49 AM
Post #18


A Little Chick
Group Icon

Group: Members
Posts: 23
Joined: 8-February 07
Member No.: 244

IGN: Mammophobia
Guild: Still Searching
Main: Mammoth/Ice



QUOTE(Gilligan @ Feb 12 2007, 05:49 AM) *

Again, th emain point is not to reach a level of perfection, but as a programmer's exercise. Actually, Creedo, that was exactly what I had in mind. The actual shooting ANN would use no math. It would be a pure field player. The only math may be the splitting of wind power in direction the x and y coordinates. That may even be unnecessary if I just use theta. Also, some of the periphereal algorithms would use math, like picking a room, etc, but the shooting would be pure trial, error, memory.

The problem is, after enough "trial, error, memory" there would be no more trials the bot hasn't done, therefore no more error.


--------------------
IPB Image


IPB Image
IPB Image
User is offlineProfile CardPM
Go to the top of the page
+Quote Post
Jest
post Feb 12 2007, 11:01 AM
Post #19


Double Wooden Hammer
Group Icon

Group: Members
Posts: 140
Joined: 11-January 07
From: NYC
Member No.: 60

IGN: Jesture



I really don't think it's possible to make a program imitate a human. I never remember angles and powers, with the exception of certain high angle markers. I play by feel instead, which is something that a program can't imitate.

I wish you the best of luck on this project though.


--------------------
IPB Image

Grew up too quick, went through too much, knew too much shit,
Corrupt, and I'ma pour it on like syrup, bitch.

And I can pull any string,
Don't have to prove anything.
User is offlineProfile CardPM
Go to the top of the page
+Quote Post
Gilligan
post Feb 12 2007, 06:24 PM
Post #20


Old Skool
Group Icon

Group: Members
Posts: 27
Joined: 18-January 07
From: Michigan
Member No.: 156

IGN: gilligan128
Guild: Honor

Clan: None



Funny you mention that because that is exactly what an ANN does. Imitate human thinking. Think facial recognition. computers are now great at facial recognition by using ANNs. This was previously something that people thought would never be possible. An ANN reaching that level of "feel" should definitely be possible because we are dealing with a limited amount of factors and these factors are mostly quantitative (we can put values on them).

An ANN's limitations do not come from its lack of ability to imitate human cognitive processing, nay thats where they excel. Its limitation comes form the fact that it takes a computer tons of processing power to focus on only a limited environment (such as Gunbound). We have billions of neurons that can process tons of information orders of magnitude better than computers.

I would strongly suggest googling Artificial Neural Networks. Its some sweet stuff!
User is offlineProfile CardPM
Go to the top of the page
+Quote Post

2 Pages V  1 2 >
Reply to this topicStart new topic
1 User(s) are reading this topic (1 Guests and 0 Anonymous Users)
0 Members:

 



Lo-Fi Version Time is now: 17th July 2019 - 10:28 AM

Mocha v1.0.3 Skin Designed by
Web Design by Bytech