|
paulisere
|
 |
« on: February 07, 2012, 02:53:11 PM » |
|
Hi Here is my first effort that I want people to actually play so please be gentle :-). What the game is: I have created a Java applet poker game where you play against the computer. The game is heads-up no-limit Texas hold'em. I have done everything myself except the card images. I am looking at animating the player, perhaps making him smoke or something like that, but I haven't done this yet. Why I made this game: I am currently studying for a degree in Computing and for my final project I am trying to investigate if it is possible to evolve an artificial poker player. To class how good my player is, my aim is to make a Facebook app where people can play my applet through Facebook. As people play, the game will send information to a database to say who won and so I have some evidence of how competitive my player is against real people. The sort of feedback I am after: Pretty much any feedback would be really appreciated. What do you people think about Java applets in general? Are they a good idea for a Facebook app? I was considering using Java Web Start since this should cut down the issues of compatibility with browsers, but I didn't know whether Facebook users would find it weird that the game was not in the browser as part of the Facebook site. Any thoughts? If I kept this as an applet, is there a specific version of Java I should look to use which would provide highest compatibility across browsers. The sort of feedback I don't want: "Oh, I can beat your player, it is easy." - I know, this is a player that evolved (I didn't program this, it is evolutionary computation) and is not that stupid. I am in the process of evolving better players which will be present in the final version, but I am taking baby steps. Here is the link: http://www.paulspokerproject.co.uk/testgame/test.htmlA screen shot is attached.  The future: I have dabbled at making this into an Android app, which is unfinished and there are other poker things I am thinking of making as an off-shoot. Anyway, this must be enough from me. Paul
|
|
|
|
|
Logged
|
|
|
|
|
Pandara_RA!
|
 |
« Reply #1 on: February 07, 2012, 03:08:35 PM » |
|
I was driven to this thread by the challenge of ending this miserable Texans poker existence. PS he got dunked.
Just kidding, I know he evolves as I read your thread, and that is the most interesting thing about the Texan, for sure you should make the player understand this trait through the game. From a dialog box etc, so if someone found this and no back story they could go, oh this is really neat! Then actually give the game a chance/pass it on.
Feedback (things to change): 1. cards are hard to read 2. how much money you have and he has is really unreadable 3. No win message 4. restarting the game should always be an option regardless of the step you are in. 5. AA problems on art work, they normally aren't an issue, though it just makes things hard to see is all <3 6. No lose message, so it feels confusing if you won or didn't win. 7. The game doesn't tell you what you have vs what they got at the end (IE: hey you got 3 of a king, cowboy got a fullhouse etc. 8. There is no final game over message, if you hit 0 you will be able to continue playing 9. He goes all in VERY often, is this because he knows what he has? or what is coming? or is it him just taking huge risks?
It's a cute game for sure, and all the bugs seem minor, it just needs visual work to feel okay with itself =]
Super weird glitch: Playing this game in Firefox removes most of my mouse cursor functionality, I can no longer highlight or right click with it, hovering over a text box also no longer switches to the text cursor in all other windows...even after you close the game! resulting in me restarting my browser. I'll test with Chrome soon
@ Java ?'s
Java is great to learn, though you'll find many sites not allowing anything non-flash for reasons of consistency, and stability/security etc unless you are a big name brand/accomplished on their site already. I think this game does it's brightest things if it has the largest sample of players (thus flash in many cases). You can make it work with Java, just a word to the wise =].
|
|
|
|
« Last Edit: February 07, 2012, 03:23:50 PM by Pandara_RA! »
|
Logged
|
|
|
|
|
paulisere
|
 |
« Reply #2 on: February 07, 2012, 03:20:54 PM » |
|
Pandara_RA! - Thanks for your quick feedback. All good points. I will look to make some changes over the next few days/week.
For this point: 9. He goes all in VERY often, is this because he knows what he has? or what is coming? or is it him just taking huge risks?
He doesn't know what you have, he only knows what he has. Like I said in the first post, I am researching biologically-inspired AI and I am trying to evolve a poker player who is intelligent.
Each poker player has been coded to be a series of doubles which make up weights on a tree. The tree has input nodes and output nodes. The input nodes are for information about the game, hand strength, pot size, etc, and the outputs are check, fold, raise, raise value. The series of doubles counts as a players genome and I am evolving a large number of players using natural selection so that the best genomes get put through to the next generation. This player is still at the neanderthal stage, but I am sure his great, great, x10^100, grand-children will be better. :-)
Thanks for playing
Paul
EDITS: Super weird glitch: This is odd. I guess it was one of the reasons I was asking about Java applets in general since Java support is inconsistent across browsers.
@ Java ?'s I am hoping that this should be ok on Facebook. From what I have read so far, I can provide a link to be the "canvas". So the Facebook page is normal around my game and in it's canvas area it displays my external page.
"you should make the player understand this trait through the game. From a dialog box etc, so if someone found this and no back story they could go, oh this is really neat! Then actually give the game a chance/pass it on." - I didn't think about this for this version. I was planning on doing in the finished version. I'll work on the web page around it and make this point clear.
|
|
|
|
« Last Edit: February 07, 2012, 03:29:35 PM by paulisere »
|
Logged
|
|
|
|
|
Pandara_RA!
|
 |
« Reply #3 on: February 07, 2012, 03:27:44 PM » |
|
Pandara_RA! - Thanks for your quick feedback. All good points. I will look to make some changes over the next few days/week.
For this point: 9. He goes all in VERY often, is this because he knows what he has? or what is coming? or is it him just taking huge risks?
He doesn't know what you have, he only knows what he has. Like I said in the first post, I am researching biologically-inspired AI and I am trying to evolve a poker player who is intelligent.
Each poker player has been coded to be a series of doubles which make up weights on a tree. The tree has input nodes and output nodes. The input nodes are for information about the game, hand strength, pot size, etc, and the outputs are check, fold, raise, raise value. The series of doubles counts as a players genome and I am evolving a large number of players using natural selection so that the best genomes get put through to the next generation. This player is still at the neanderthal stage, but I am sure his great, great, x10^100, grand-children will be better. :-)
Thanks for playing
Paul
Oh I'm not done playing I was actually updating my post in real time! so be sure to read what I've been updating as I played. Anyways now will I be able to see a change in his play style vs me over the course of say...10 hands? or any effect at all? or will it take many many players and hands to actually change him. The reason why I'm asking is this maybe have more than one cowboy 1 as a demo for single player and such 1. Coyboy 1 is in TURBO evo mode requires a huge sample size 2. Coyboy 2 evo's much quicker and has much larger fluctuations in play style base on much fewer played hands I'm sure you already thought of that though =] oh and @@ java ?'s Facebook is fine, I'm just saying apart from that basically a high number of sites are cool with flash and prefer it over java.
|
|
|
|
|
Logged
|
|
|
|
|
paulisere
|
 |
« Reply #4 on: February 07, 2012, 03:37:14 PM » |
|
Anyways now will I be able to see a change in his play style vs me over the course of say...10 hands? or any effect at all? or will it take many many players and hands to actually change him.
The reason why I'm asking is this maybe have more than one cowboy 1 as a demo for single player and such 1. Coyboy 1 is in TURBO evo mode requires a huge sample size 2. Coyboy 2 evo's much quicker and has much larger fluctuations in play style base on much fewer played hands
I'm sure you already thought of that though =]
I have considered this and I have not really decided. There are some scientific papers out there where people have done similar stuff with poker. They all seem to think that having something that changes throughout the game can be difficult because it is hard to see in the early stages of the game what sort of strategy to start with. A fairly important metric would be percentage calls made. If a person makes a high amount of calls, it is not worth bluffing because they will call, if they make a low amount, bluff away because they won't call you. Things like that make it hard. When you play against him, he isn't evolving unfortunately. :-(. He will always be that same player. I have a few servers set up where artificial players are playing in tournaments all the time and I am hoping of taking the best one from the evolutionary run and putting it in the game when I have found a really good one. I thought about evolving against people (which would be better because people are sensible in general), but the issue is that there would only be a few games played, compared to the 1000's I can have played in an hour if I play AI vs AI. Paul
|
|
|
|
|
Logged
|
|
|
|
|
paulisere
|
 |
« Reply #5 on: March 06, 2012, 12:40:53 AM » |
|
Hi I have set up a development blog so people can see how I am getting on with my games. You can find it here: http://pm-gaming.blogspot.com/Paul
|
|
|
|
|
Logged
|
|
|
|
|
paulisere
|
 |
« Reply #6 on: March 13, 2012, 03:22:36 PM » |
|
I think I found out what the issue was with browser compatibility. Some of the computers I was using have websense and so the Jar files for the applet are not being downloaded because they are blocked for being "compressed files". Paul PS - I am still working on the improvements as suggested by Pandara_RA!. I have done some of them, but I will complete everything before posting a new version, and hopefully by then I will have a better AI component that I can drop in. http://pm-gaming.blogspot.com
|
|
|
|
|
Logged
|
|
|
|
|
paulisere
|
 |
« Reply #7 on: June 06, 2012, 01:48:01 AM » |
|
Hi everyone It has been a long time since my last post but I have finally managed to make some changes. 1 - You should find that the player is significantly better than the last version I posted here. I think the last player went all in on every hand, this doesn't happen any more. 2 - There are a couple of different strategies. These are hidden and you don't know which strategy you are playing against, you have to figure it out for yourself. 3 - I have made some of the UI changes that were suggested. Please have another play and let me know what you think. That link again is: http://www.paulspokerproject.co.uk/testgame/test.html . ALSO: Please could you play ALL games to the end (ie you get the GAME OVER screen). One of the reasons I have been doing this is that it is part of a university project investigating AI and I am saving the results in a database. I didn't do this on the original version because I knew the AI wasn't very good. None of your personal information is saved. Only the result (if you won or lost) is stored. Enjoy playing :-) Paul
|
|
|
|
|
Logged
|
|
|
|
|
Nition
|
 |
« Reply #8 on: June 07, 2012, 01:25:04 PM » |
|
Not bad! I played a few times and the AI's playing seemed decently smart. I was raising a lot and he'd always fold, then later he matched me because he had a good hand. I've done just enough machine learning stuff to know it's pretty hard to get it good.
Are you keeping copies off the AI players from different stages of evolution? It'd be cool to be able to say "this one beat people 20% of the time, then evolved into beating people 40%..."
|
|
|
|
|
Logged
|
|
|
|
|
paulisere
|
 |
« Reply #9 on: June 07, 2012, 01:39:46 PM » |
|
Not bad! I played a few times and the AI's playing seemed decently smart. I was raising a lot and he'd always fold, then later he matched me because he had a good hand. I've done just enough machine learning stuff to know it's pretty hard to get it good.
Are you keeping copies off the AI players from different stages of evolution? It'd be cool to be able to say "this one beat people 20% of the time, then evolved into beating people 40%..."
Thanks for playing! I haven't been keeping copies in quite that sort of way. The problem I am having is that I am not getting enough people playing to get a good statistical analysis at the moment. I have kept all players throughout the evolutionary process and I have been playing against them. Any that I think are reasonable I am putting forward for playing against other people. There are currently two different strategies playable on that game. When I release this as a Facebook application, this sort of analysis should be possible because I hope to have more people playing against it. At the moment I have only told a few people about the game because I want to hammer out any problems and listen to feedback on how to make the game better. I thought that if I put this out to a wide audience early on and there were issues, people might not recommend it and I wouldn't get the sort of numbers playing that I need. Paul
|
|
|
|
|
Logged
|
|
|
|
|
paulisere
|
 |
« Reply #10 on: June 24, 2012, 12:56:53 AM » |
|
Following feedback I have had I have changed the UI to make Beat The Texan a bit easier to play. Everything is now driven by button clicks rather than a mix of buttons and text boxes. How much money has been bet and how much each player has is also clearer. The link again is: http://www.paulspokerproject.co.uk/testgame/test.html. So far The Texan has won 50% of the games it has played so I am pretty pleased with how the AI is going. As always, all comments are welcome. Paul
|
|
|
|
|
Logged
|
|
|
|
|
|
|