En este apunte James Davlin nos enseña cómo se programa un bot para jugar al póker online (para ganar dinero). Su motivación fue que los Casinos online niegan sistemáticamente la existencia de robots en sus partidas. Como dice en el texto: "si yo puedo hacerlo, cualquiera puede". Interesante artículo para reflexionar sobre la popularidad de los casinos online y las ciber-apuestas. Vía: http://barrapunto.com/articles/08/05/12/2126245.shtml
#1:
En la facultad en las clases de doctorado diseñamos agentes "inteligentes" para jugar a algunos juegos de azar como el poker, en realidad en el artículo expone que juega con un bot contra el resto de jugadores, pero la verdadera 'putada' ocurre cuando eres capaz de meter dos agentes en la misma mesa pasandose información, entonces si que suben las probabilidades de ganar. Yo por eso no me fio de ningún sistema de poker online, entre otras cosas porque ya se ha descubierto más de una vez que son las mismas empresas las que meten bots... http://poquer-red.com/noticias/que-sucede-absolute-poker
#6:
#3 porque un contubernio de bots jugadores de poker la ha votado
#12:
#10 He visto muchas ofertas en Infojobs que pedían 5 años de experiencia en todo eso que dices y mucho más.
#10:
Para el que crea que con eso se puede hacer uno rico, el artículo indica los conocimientos de programación que debes tener :
Windowing & GDI
Windows Hooks
Kernel objects
DLL Injection (in general: the injecting of code into other processes)
API Instrumentation (via Detours or similar libraries)
Inter-process Communication (IPC)
Multithreading & synchronization
Simulating user input
Regular expressions (probably through Boost)
Spy++
Casi nada, y despues lo más dificil que es programar un buen bot que gane a la mayoría de los jugadores, el nivel de las salas ha aumentado exponencialmente desde que se prohibió el poker por internet en EEUU, solo ha quedado la gente que vive ó espera vivir de ello, jugadores tight agresivos (rocas) para sacarles la pasta has jugar un poker realmente bueno. El poker es un juego de información incompleta, donde el componente estocástico la suerte tambien interviene, y donde es muy importante evaluar al oponente, todos estos factores hacen que programar una inteligencia artificial sea muy dificil.
En la facultad en las clases de doctorado diseñamos agentes "inteligentes" para jugar a algunos juegos de azar como el poker, en realidad en el artículo expone que juega con un bot contra el resto de jugadores, pero la verdadera 'putada' ocurre cuando eres capaz de meter dos agentes en la misma mesa pasandose información, entonces si que suben las probabilidades de ganar. Yo por eso no me fio de ningún sistema de poker online, entre otras cosas porque ya se ha descubierto más de una vez que son las mismas empresas las que meten bots... http://poquer-red.com/noticias/que-sucede-absolute-poker
Para el que crea que con eso se puede hacer uno rico, el artículo indica los conocimientos de programación que debes tener :
Windowing & GDI
Windows Hooks
Kernel objects
DLL Injection (in general: the injecting of code into other processes)
API Instrumentation (via Detours or similar libraries)
Inter-process Communication (IPC)
Multithreading & synchronization
Simulating user input
Regular expressions (probably through Boost)
Spy++
Casi nada, y despues lo más dificil que es programar un buen bot que gane a la mayoría de los jugadores, el nivel de las salas ha aumentado exponencialmente desde que se prohibió el poker por internet en EEUU, solo ha quedado la gente que vive ó espera vivir de ello, jugadores tight agresivos (rocas) para sacarles la pasta has jugar un poker realmente bueno. El poker es un juego de información incompleta, donde el componente estocástico la suerte tambien interviene, y donde es muy importante evaluar al oponente, todos estos factores hacen que programar una inteligencia artificial sea muy dificil.
1º Si un juego es un 90% a voleo significa que un bot puede tener un 10% más posibilidades de ganar que un humano.
2º El verdadero uso de los bots es compartir información en una misma mesa. Si hay dos bots que se conocen las cartas mutuamente el factor voleo del juego se reduce enormemente.
3º Esos conocimientos están al alcance de cualquiera que haya estudiando MFC (algo de lo más normal si quieres programar C++ en Windows). Obviamente un lamer no tendrá ni idea de como montar un bot. Pero a un programador de nivel medio sólo le haría falta un poco de tiempo.
Donde se ponga un partidita de poker con tus colegas en casa, con tus wiskytos, tus patatitas, y tus puritos para dar la nota, que se quiten todos estos casinos online.
De todas formas habría que discutir si el hecho de usar estos bots tendría que estar sancionado. Si no vas a colar dos iguales en una mesa para pasarte información, ¿habría algo malo en automatizar la decisión de tus jugadas?
#29 el póquer no es pura suerte, yo llevo 30 meses jugando y he ganado en 29. Si tú juegas una noche contra un profesional, le puedes ganar, en una noche diría que la suerte influye un 80% y la habilidad un 20%. Pero si juegas una semnaa cada día contra ese profesional, yo diría que ya es más difícil que al final de la semana vayas en positivo contra él, aunque es posible: establecería un 50% de suerte y 50% de habilidad. Si juegas un mes la suerte cuenta menos aún, y si juegas dos años, cada día, contra ese profesional, tu probabilidad d eganarle e s0 porque la suerte en dos años influye 0. El póquer se mide en el largo plazo, los jugadores ganadores lo son en el largo plazo, en una noche o en una semana cualquiera puede ganar o perder.
Un bot nunca nos ganará a los jugadores profesionales y semiprofesionales porque no podrá nunca profundizar en el factor psicológico del juego, uno de los más importantes. Podrá analizar a cada rival en el plano matemático, y proabablemente esto le valga para ganar (a poco ritmo, pero ganar) en niveles medios y bajos, pero los rivales fuertes siempre se le van a atragantar porque no les costará hallar patrones en el juego del robot. A mí particularmente no me preocupa, voy a seguir ganando, pero entiendo que es ilegal porque puede darle muchísimo dinero a los creadores de los robots, a los que pueden tener jugando en muchas mesas a la vez 24 horas al día, a costa de los malos jugadores.
#10 Todo eso esta muy bien cuando el cliente del juego sea un ejecutable de Windows, pero tambien hay muchos clientes que estan hechos en flash o como applet Java. En ese caso yo los tengo manejado directamente con la Xlib.
En realidad no es tan complicado. Hay un paso intermedio que sí se puede hacer, sin saber nada de nada de DLL injection, kernel object, Windows API etc etc... Basta con hacer el input manual (eso si más lento) y tener una aplicación separada chivándote lo que hacer en cada momento, y pasándole el input de las cartas que vayan saliendo. Esa aplicación externa usará tu algoritmo de poker favorito, y no tienes que programarla tú... seguro que existen interfaces gráficas comunes para esos algoritmos, cargados como módulos... al menos en ajedrez, eso existe.
#32 Una mano de Hold'em puede decidirse en base a la suerte, pero decir que una partida completa se decide en base a un 80% de suerte es como poco, una estupidez tan grande como decir que un partido de fútbol se decide por suerte ya que algunas veces alguien se marca en propia u otro mete un gol de churro.
Jamás oirás decir a un campeón de la "World Series of Poker" decir tal memez. Ni a un campeón ni a ningún jugador profesional.
Por cierto, decir que los casinos usan Texas Hold'em porque es la modalidad que más depende de la suerte, es otra tontería enorme. Usan Texas porque es la modalidad más practicada del mundo, si fuera por factor suerte, usarían poker cubierto o incluso el Omaha.
Las casas de apuestas van con mucho cuidado e intentan cazar cualquier intento de bots por que viven de su reputacion. Si empieza a correr el rumor que foo-poker tiene bots ya puede empezar a cambiar de nombre por que esta acabada.
En cuanto eso se propague por Internet, las empresas de apuestas online tomarán medidas, y será imposible hacer cosas de ese tipo. Si realmente te puedes hacer rico por Internet estafando a un casino online, no creo que el que lo descubra sea tan tonto como para publicarlo
#32, y el #31 lo ha explicado muy bien.
Claro que dos personas con exactamente el mismo nivel ganara el que mejores cartas tenga....si no dices otra...
Pero la clave del poker al final es jugar contra "pardillos", gente que son peores que tu.Y se puede ver en muchas mesas, cuando entra un tio "bueno", como los que lo conocen salen por piernas.
La suerte afecta a una mano, a 10, pero si juegas como algunos que yo me se, 20-30 manos por hora, y en 10 mesas a la vez (200-300 manos por hora) te aseguro que la suerte tiene el factor justo.
Las casas de apuestas en este caso se llevan una %, y les interesa que cuanto mas se juegue mejor. Y los bots les molestas porque al final esquilman a los jugadores mediocres y malos, que siempre pierden.
Hace años que existen los bots, y gente forrandose jugando al poker, con bots, pero la mayoria mas que bots con SW muy potente que ayuda a tomar decisiones de forma muy rapida.
El otro dia en A3 sacaron a unos tios de Valencia, 3, cada uno con 5-6 TFT, y que dijeron sacarse 50.000 € / mes limpios.
Haced numeros:
150 manos/hora
55% de manos ganadas
10$ por mano
10 horas dia
#20 El poker no se juega a tuntún, no quise decir eso, de echo es un juego muy complejo con muchos matices y es su componente de azar lo que lo hace muy dificil de describir para un programa informático. El ajedrez es un juego de información completa, es mucho más facil para el ordenador jugar al ajedrez que al poker, de echo con suficiente potencia un ordenador sería imbatible, en el poker todo depende de la programación.
De echo un jugador que juege muy mal puede ganar mucho dinero a un jugador muy bueno, por el componente suerte (es lo que engancha), pero a largo plazo el buen jugador siempre gana al malo (y a un bot ni te digo).
Lo de compartir información es hacer trampas y lo dejo aparte. Jugar con un bot para cualquier jugador medianamente bueno debiera ser beneficioso a largo plazo.
Habría que preguntarse si el bot fue lo suficientemente bien programado como para conseguir ganar al casino y al resto de los jugadores y cuanto dinero sacó antes de publicar esto
#25 Lo de que una máquina lo suficientemente perfecta ganaría al ajedrez siempre es discutible, habría que ver lo que ocurriría cuando jugase contra sí misma y si las partidas serían siempre la misma o no. Es un experimento que llevo tiempo queriendo hacer.
#18#19 Pero el artículo dice que NO tienes que hacer que el bot gane. Sólo tienes que hacer QUE NO PIERDA. Luego hay promociones de los sitios de Poker, no sé si a los más regulares o a los más activos o qué, porque yo no lo conozco, pero habla de ingresar decenas de miles de dólares al año por cada bot, eso sin ganar.
#16 La medida más lógica sería legalizarlos. Como dice en el artículo, al autor no le importaría jugar contra la gran mayoría de bots programados ahí fuera.
En Barrapunto lo comentan bastante pero vamos, que suena a truco de los Casinos para que se enganche más gente. No es tan fácil programarte la IA de un Bot y que gane. De hecho es la parte del artículo que viene sin desarrollar.
#31 Te lo explico otra vez. Los casinos usan las reglas texas hold'em para el poker por su gran dependencia a la suerte que implican sus reglas.
Dos personas con el mismo nivel en el ajedrez ganará el que haya seguido una estrategia más adecuada. Dos personas con el mismo nivel en el poker (texas hold'em repito) ganará el que mejores cartas tenga, independientemente de la estrategia (hasta un cierto punto).
Comentarios
#3 porque un contubernio de bots jugadores de poker la ha votado
En la facultad en las clases de doctorado diseñamos agentes "inteligentes" para jugar a algunos juegos de azar como el poker, en realidad en el artículo expone que juega con un bot contra el resto de jugadores, pero la verdadera 'putada' ocurre cuando eres capaz de meter dos agentes en la misma mesa pasandose información, entonces si que suben las probabilidades de ganar. Yo por eso no me fio de ningún sistema de poker online, entre otras cosas porque ya se ha descubierto más de una vez que son las mismas empresas las que meten bots... http://poquer-red.com/noticias/que-sucede-absolute-poker
#10 He visto muchas ofertas en Infojobs que pedían 5 años de experiencia en todo eso que dices y mucho más.
#12 y pagando 800€ / mes seguro!
¡Si es que hay carencia de informáticos!
Para el que crea que con eso se puede hacer uno rico, el artículo indica los conocimientos de programación que debes tener :
Windowing & GDI
Windows Hooks
Kernel objects
DLL Injection (in general: the injecting of code into other processes)
API Instrumentation (via Detours or similar libraries)
Inter-process Communication (IPC)
Multithreading & synchronization
Simulating user input
Regular expressions (probably through Boost)
Spy++
Casi nada, y despues lo más dificil que es programar un buen bot que gane a la mayoría de los jugadores, el nivel de las salas ha aumentado exponencialmente desde que se prohibió el poker por internet en EEUU, solo ha quedado la gente que vive ó espera vivir de ello, jugadores tight agresivos (rocas) para sacarles la pasta has jugar un poker realmente bueno. El poker es un juego de información incompleta, donde el componente estocástico la suerte tambien interviene, y donde es muy importante evaluar al oponente, todos estos factores hacen que programar una inteligencia artificial sea muy dificil.
#3 Porque tiene karma 768, más que ninguna de las pendientes promote.html
#10
1º Si un juego es un 90% a voleo significa que un bot puede tener un 10% más posibilidades de ganar que un humano.
2º El verdadero uso de los bots es compartir información en una misma mesa. Si hay dos bots que se conocen las cartas mutuamente el factor voleo del juego se reduce enormemente.
3º Esos conocimientos están al alcance de cualquiera que haya estudiando MFC (algo de lo más normal si quieres programar C++ en Windows). Obviamente un lamer no tendrá ni idea de como montar un bot. Pero a un programador de nivel medio sólo le haría falta un poco de tiempo.
Donde se ponga un partidita de poker con tus colegas en casa, con tus wiskytos, tus patatitas, y tus puritos para dar la nota, que se quiten todos estos casinos online.
De todas formas habría que discutir si el hecho de usar estos bots tendría que estar sancionado. Si no vas a colar dos iguales en una mesa para pasarte información, ¿habría algo malo en automatizar la decisión de tus jugadas?
La polémica está servida
Por la velocidad supongo
¿Seré yo el único malpensado que crea que esto es un nuevo truco (más refinado) de los casinos en línea?
#25 De hecho, "de hecho" se escribe con hache.
Enlace relacionado: http://bitsenelring.blogspot.com
(¿Evolucionarán los pokerbot como los pokemones?)
#29 el póquer no es pura suerte, yo llevo 30 meses jugando y he ganado en 29. Si tú juegas una noche contra un profesional, le puedes ganar, en una noche diría que la suerte influye un 80% y la habilidad un 20%. Pero si juegas una semnaa cada día contra ese profesional, yo diría que ya es más difícil que al final de la semana vayas en positivo contra él, aunque es posible: establecería un 50% de suerte y 50% de habilidad. Si juegas un mes la suerte cuenta menos aún, y si juegas dos años, cada día, contra ese profesional, tu probabilidad d eganarle e s0 porque la suerte en dos años influye 0. El póquer se mide en el largo plazo, los jugadores ganadores lo son en el largo plazo, en una noche o en una semana cualquiera puede ganar o perder.
#9 una batalla de bots... ¿Sera como esas batallas de robots asesinos pero sin sangre, digo aceite, saltando?.
Un bot nunca nos ganará a los jugadores profesionales y semiprofesionales porque no podrá nunca profundizar en el factor psicológico del juego, uno de los más importantes. Podrá analizar a cada rival en el plano matemático, y proabablemente esto le valga para ganar (a poco ritmo, pero ganar) en niveles medios y bajos, pero los rivales fuertes siempre se le van a atragantar porque no les costará hallar patrones en el juego del robot. A mí particularmente no me preocupa, voy a seguir ganando, pero entiendo que es ilegal porque puede darle muchísimo dinero a los creadores de los robots, a los que pueden tener jugando en muchas mesas a la vez 24 horas al día, a costa de los malos jugadores.
#10 Todo eso esta muy bien cuando el cliente del juego sea un ejecutable de Windows, pero tambien hay muchos clientes que estan hechos en flash o como applet Java. En ese caso yo los tengo manejado directamente con la Xlib.
En realidad no es tan complicado. Hay un paso intermedio que sí se puede hacer, sin saber nada de nada de DLL injection, kernel object, Windows API etc etc... Basta con hacer el input manual (eso si más lento) y tener una aplicación separada chivándote lo que hacer en cada momento, y pasándole el input de las cartas que vayan saliendo. Esa aplicación externa usará tu algoritmo de poker favorito, y no tienes que programarla tú... seguro que existen interfaces gráficas comunes para esos algoritmos, cargados como módulos... al menos en ajedrez, eso existe.
#32 Una mano de Hold'em puede decidirse en base a la suerte, pero decir que una partida completa se decide en base a un 80% de suerte es como poco, una estupidez tan grande como decir que un partido de fútbol se decide por suerte ya que algunas veces alguien se marca en propia u otro mete un gol de churro.
Jamás oirás decir a un campeón de la "World Series of Poker" decir tal memez. Ni a un campeón ni a ningún jugador profesional.
Por cierto, decir que los casinos usan Texas Hold'em porque es la modalidad que más depende de la suerte, es otra tontería enorme. Usan Texas porque es la modalidad más practicada del mundo, si fuera por factor suerte, usarían poker cubierto o incluso el Omaha.
Las casas de apuestas van con mucho cuidado e intentan cazar cualquier intento de bots por que viven de su reputacion. Si empieza a correr el rumor que foo-poker tiene bots ya puede empezar a cambiar de nombre por que esta acabada.
En cuanto eso se propague por Internet, las empresas de apuestas online tomarán medidas, y será imposible hacer cosas de ese tipo. Si realmente te puedes hacer rico por Internet estafando a un casino online, no creo que el que lo descubra sea tan tonto como para publicarlo
parece facil...
#32, y el #31 lo ha explicado muy bien.
Claro que dos personas con exactamente el mismo nivel ganara el que mejores cartas tenga....si no dices otra...
Pero la clave del poker al final es jugar contra "pardillos", gente que son peores que tu.Y se puede ver en muchas mesas, cuando entra un tio "bueno", como los que lo conocen salen por piernas.
La suerte afecta a una mano, a 10, pero si juegas como algunos que yo me se, 20-30 manos por hora, y en 10 mesas a la vez (200-300 manos por hora) te aseguro que la suerte tiene el factor justo.
Las casas de apuestas en este caso se llevan una %, y les interesa que cuanto mas se juegue mejor. Y los bots les molestas porque al final esquilman a los jugadores mediocres y malos, que siempre pierden.
Hace años que existen los bots, y gente forrandose jugando al poker, con bots, pero la mayoria mas que bots con SW muy potente que ayuda a tomar decisiones de forma muy rapida.
El otro dia en A3 sacaron a unos tios de Valencia, 3, cada uno con 5-6 TFT, y que dijeron sacarse 50.000 € / mes limpios.
Haced numeros:
150 manos/hora
55% de manos ganadas
10$ por mano
10 horas dia
Total: 1500$/dia
#20 El poker no se juega a tuntún, no quise decir eso, de echo es un juego muy complejo con muchos matices y es su componente de azar lo que lo hace muy dificil de describir para un programa informático. El ajedrez es un juego de información completa, es mucho más facil para el ordenador jugar al ajedrez que al poker, de echo con suficiente potencia un ordenador sería imbatible, en el poker todo depende de la programación.
De echo un jugador que juege muy mal puede ganar mucho dinero a un jugador muy bueno, por el componente suerte (es lo que engancha), pero a largo plazo el buen jugador siempre gana al malo (y a un bot ni te digo).
Lo de compartir información es hacer trampas y lo dejo aparte. Jugar con un bot para cualquier jugador medianamente bueno debiera ser beneficioso a largo plazo.
#12 Y por 15k brutos/año, doy fe
#3 Aqui votan negativo hasta por preguntar...
Lo estoy viendo... al final los casinos online serán bots contra bots, y ganarán los que mejor bots hagan, no los que mejor jueguen
Habría que preguntarse si el bot fue lo suficientemente bien programado como para conseguir ganar al casino y al resto de los jugadores y cuanto dinero sacó antes de publicar esto
#25 Lo de que una máquina lo suficientemente perfecta ganaría al ajedrez siempre es discutible, habría que ver lo que ocurriría cuando jugase contra sí misma y si las partidas serían siempre la misma o no. Es un experimento que llevo tiempo queriendo hacer.
Que coño construir, será copiar, copiado de Bender!
#18 #19 Pero el artículo dice que NO tienes que hacer que el bot gane. Sólo tienes que hacer QUE NO PIERDA. Luego hay promociones de los sitios de Poker, no sé si a los más regulares o a los más activos o qué, porque yo no lo conozco, pero habla de ingresar decenas de miles de dólares al año por cada bot, eso sin ganar.
#16 La medida más lógica sería legalizarlos. Como dice en el artículo, al autor no le importaría jugar contra la gran mayoría de bots programados ahí fuera.
En Barrapunto lo comentan bastante pero vamos, que suena a truco de los Casinos para que se enganche más gente. No es tan fácil programarte la IA de un Bot y que gane. De hecho es la parte del artículo que viene sin desarrollar.
Haber quien es el primer que lo prueba, y nos comenta
#25 El poker texas hold'em que es el que se juega en los casinos es casi todo pura suerte.
#31 Te lo explico otra vez. Los casinos usan las reglas texas hold'em para el poker por su gran dependencia a la suerte que implican sus reglas.
Dos personas con el mismo nivel en el ajedrez ganará el que haya seguido una estrategia más adecuada. Dos personas con el mismo nivel en el poker (texas hold'em repito) ganará el que mejores cartas tenga, independientemente de la estrategia (hasta un cierto punto).
#10 ¿Ostia, en InfoJobs ya piden DLL Injection? Que nivelazo esta alcanzando no?
¿porque esta noticia con 37 meneos ha salido a portada?