Welcome to La BSK. Please login or sign up.

29 de Abril de 2025, 22:02:58

Login with username, password and session length

Licencia CC

Patrocinadores

Dracotienda
Diario de WKR
Planeton Games
Dracotienda
Diario de WKR
Planeton Games

Estadisticas Partidas BGG

Iniciado por BigK91, 09 de Junio de 2020, 10:11:30

Tema anterior - Siguiente tema

BigK91

Hola a todos.

Me suena que existe la posibilidad de comprobar las partidas anotadas en BGG incluso, si se trata de un juego con facciones comprobar que % de victorias tiene cada uno. ¿Alguien podria indicarme donde puede verse si es posible?

Ya que me estan apalizando al Churchill quiero llorar con argumentos.

Muchas gracias.

Lopez de la Osa

No se si existe... es posible; pero será información sesgada ya que no todo el mundo aporta esa información, por lo que...

BigK91

Si ya imagino, pero era por seguir aprendiendo.

Gracias de todas formas.


Un saludo

Wkr

Supongo que esto te servirá
https://www.bgstatsapp.com/

Pero vamos, ya me cuesta dar las partidas de alta como para andar añadiendo quien ha ganado cada una.

NETes

Con BG Stats puedes ver tus estadísticas pero las tienes que haber añadido.
Hilo de Venta   Mi colección   Mi blog

Ludópata por afición

Membrillo

Cita de: NETes en 09 de Junio de 2020, 13:30:26
Con BG Stats puedes ver tus estadísticas pero las tienes que haber añadido.
+1, pero solo las tuyas, no las de otros jugadores. Que yo sepa no hay nada para ver ese tipo de datos de una forma más global, es decir, recopilados por muchas personas. A veces, los organizadores de torneos competitivos apuntan esas cosas y las publican en el reporte del torneo. Pero es información dispersa que puede o no existir para el juego que te interesa y que, de existir, puedes encontrar o no.

BigK91

Genial.
Pensaba que existiria, no sería un mal añadido entonces.

Gracias a todos por las repuestas.

Nieva

#7
Cita de: BigK91 en 09 de Junio de 2020, 18:25:00
Genial.
Pensaba que existiria, no sería un mal añadido entonces.

Gracias a todos por las repuestas.

No es muy científico (más bien es una cutrez descomunal hecha en 10 minutos libres), pero igual ayuda de algo... Con 4 comandos tontos desde una consola unix (en principio vale Cygwin para windows, por ejemplo) me he bajado la información de todas las partidas que hay en BGG para el juego Churchill junto con sus detalles:

echo '<?xml version="1.0" encoding="utf-8"?><plays total="4168" page="1" termsofuse="https://boardgamegeek.com/xmlapi/termsofuse">' > todasLasPartidasChurchill.xml && for iter in {1..42} ; do curl "https://boardgamegeek.com/xmlapi2/plays?id=132018&page=$iter" | tail -n +2 | head -n -1 >> todasLasPartidasChurchill.xml && sleep 2 ; done && echo '     </plays>' >> todasLasPartidasChurchill.xml

(lo he hecho así de "raro" porque mi idea era convertirlo después a json con algo así
xmltojson.exe -m xml -s todasLasPartidasChurchill.xml
, que para hacer un tratamiento rápido con algo de funcamento me resultaba mucho más cómodo que el xml, pero al final he tirado por otro tratamiento aún más cutre y ni he usado el json...)

Y luego me he intentado (de una manera de lo más cutre que se puede hacer) sacar los datos en los que de forma efectiva se ha informado en BGG el "bando" de cada jugador (hay gente que pone el resultado en un comentario, no en la lista de resultados, esos no están incluidos aquí). El "problema" es que por no estar estandarizado sale esta "ristra" de posibles bandos entre las ~4100 partidas (de las cuales algo menos de 500 tienen informados bandos):

[spoiler]grep 'color' todasLasPartidasChurchill.xml | awk -F'"' '$10!="" {print $18" "$10}' | cut -d' ' -f2 | sort | uniq -c | sort -r

    246 Churchill
    244 Stalin
    206 Roosevelt
    148 UK
    129 USSR
     85 US
     78 USA
     50 White
     33 Red
     31 Green
     31 Blue
     13 FDR
     12 Russia
     11 Soviet
     10 Uk
      9 Usa
      8 Roosvelt
      8 Roosevelt/Truman
      8 green
      6 stalin
      6 churchill
      5 Ussr
      5 United
      5 red
      5 Great
      5 British
      5 Britain
      5 blue
      4 URSS
      4 Staline
      4 Soviets
      4 Sov
      4 Orange
      4 England
      3 Us
      3 URRS
      3 The
      3 Rosevelt
      3 Roosevelt:
      3 Chirchill
      2 Truman
      2 Starlin:
      2 Russians
      2 Russian
      2 Rossevelt
      2 roosvelt
      2 roosevelt
      2 FDR/Truman
      2 Churchil
      2 Churchhill
      2 Americans
      2 American
      2 52
      1 Черчилль
      1 США
      1 Сталин
      1 СССР
      1 Рузвельт
      1 Британия
      1 Winston
      1 USSR/37
      1 US/23
      1 united
      1 UK/54-
      1 UH
      1 Trumman
      1 Truman/Roosevelt
      1 Stailn
      1 SOV
      1 Rus
      1 Roosewelt
      1 Rooseveldt
      1 Rooservelt
      1 Roosavelt
      1 referee
      1 Josef
      1 Joel
      1 JB
      1 Grey
      1 GB
      1 Franklin/Harry
      1 franklin
      1 Eng
      1 David
      1 Commonwealth
      1 Churchill:
      1 Brittan
      1 Brits
      1 Britian
      1 BLue
      1 America
      1 46
      1 43
      1 42
      1 26
[/spoiler]

Así que behold la cutrez increíble de las sustituciones en cadena como un tonto sobre ese campo hasta llegar a algo un poquito más uniforme (pero sin mucha rigurosidad, no te voy a engañar). Ni siquiera he "cuadrado" que pertenecieran a la misma partida ni nada, así que he llegado a este "total" de partidas para cada bando:
[spoiler]grep 'color' todasLasPartidasChurchill.xml | awk -F'"' '$10!="" {gsub(".*[rR]o.*l?t.*","Roosevelt",$10); gsub("[bB]rit.*","Churchill",$10); gsub("[Cc]h[iu].*l.*","Churchill",$10); gsub("[Uu][kK].*","Churchill",$10); gsub("[Uu][sS][sS].*","Stalin",$10); gsub("[sS][tT][aA].*[lL].*[nN]","Stalin",$10); gsub("[sS][oO][vV]","Stalin",$10); gsub(".*alin.*","Stalin",$10);  gsub("[uU][sS].*","Roosevelt",$10); gsub("United.*","Roosevelt",$10); gsub("Great.*","Churchill",$10); gsub("Eng.*","Churchill",$10); gsub("FDR.*","Roosevelt",$10); gsub("[aA]meri.*","Roosevelt",$10); gsub("[U][R]..","Stalin",$10); gsub(".*Roosevelt.*","Roosevelt",$10); gsub(".*Churchill.*","Churchill",$10); gsub(".*Stalin.*","Stalin",$10); gsub("[rR]ed","Stalin",$10); gsub("[bB]lue","Roosevelt",$10); gsub("[gG]reen","Churchill",$10); gsub("[oO]range","Stalin",$10); print $18" "$10}'  | egrep 'Churchill|Roosevelt|Stalin' |cut -d' ' -f2 |sort | uniq -c | sort -r[/spoiler]
    483 Churchill
    479 Stalin
    478 Roosevelt

Y, de ese total, me he quedado con los se había informado la partida como "victoria" (independientemente para cada bando). Rigurosidad casi nula (ni siquiera tienen porqué sumar 100 los porcentajes, porque es el % de victorias respecto a las partidas "recuperadas" de ese bando), pero salen unos números relativamente decentes:

[spoiler]grep 'color' todasLasPartidasChurchill.xml | awk -F'"' '$10!="" {gsub(".*[rR]o.*l?t.*","Roosevelt",$10); gsub("[bB]rit.*","Churchill",$10); gsub("[Cc]h[iu].*l.*","Churchill",$10); gsub("[Uu][kK].*","Churchill",$10); gsub("[Uu][sS][sS].*","Stalin",$10); gsub("[sS][tT][aA].*[lL].*[nN]","Stalin",$10); gsub("[sS][oO][vV]","Stalin",$10); gsub(".*alin.*","Stalin",$10);  gsub("[uU][sS].*","Roosevelt",$10); gsub("United.*","Roosevelt",$10); gsub("Great.*","Churchill",$10); gsub("Eng.*","Churchill",$10); gsub("FDR.*","Roosevelt",$10); gsub("[aA]meri.*","Roosevelt",$10); gsub("[U][R]..","Stalin",$10); gsub(".*Roosevelt.*","Roosevelt",$10); gsub(".*Churchill.*","Churchill",$10); gsub(".*Stalin.*","Stalin",$10); gsub("[rR]ed","Stalin",$10); gsub("[bB]lue","Roosevelt",$10); gsub("[gG]reen","Churchill",$10); gsub("[oO]range","Stalin",$10); print $18" "$10}'  | egrep 'Churchill|Roosevelt|Stalin' | awk 'BEGIN{printf "%-12s %-9s %-9s %s\n","Bando", "Total", "Ganadas", "Porcentaje de Victorias"} {a[$2] += $1 ; b[$2]++ } END{for (i in a) printf "%-12s %-9s %-9s %.1f\n", i, b[i], a[i], a[i]/b[i]*100}'[/spoiler]
Bando        Total     Ganadas   Porcentaje de Victorias
Roosevelt    478       139       29.1
Stalin       479       112       23.4
Churchill    483       184       38.1

Y, bueno, ya que le he dedicado un ratito, pues me parecía bien compartirlo. Se puede mejorar hasta el infinito (tirando de jq para parsear el json y haciendo los cálculos ahí... separando los datos de cada partida (para tener en cuenta el número de jugadores), recuperando también sus puntos para calcular el vencedor usándolos en caso de que el que metió la partida no lo marcara (aunque siendo el Churchill esto sería especialmente difícil, por las condiciones tan raras de victoria), mapeando mejor los datos de cada bando en vez de ese esperpento que he montado...)

En fin... Que al menos a mí me vale para asumir que con Stalin parece más difícil ganar, y con Churchill más fácil, pero ni siquiera creo que sea muy fiable la conclusión visto cómo he sacado los datos xDD

P.D. ¿Quién en su sano juicio pone una fuente para la etiqueta code que no es "monospace"? Esto es cosa de Maltuz, seguro xDD

[Edito para corregir algunos mapeos que tenía mal, e incluir los de los colores :$]
"It doesn't matter how beautiful your theory is, it doesn't matter how smart you are. If it doesn't agree with experiment, it's wrong." Richard P.Feynman

alejo

#8
Bgstats permite hacer bastantes estadísticas. Pero solo las que hayas introducido tu mismo en la BGG.

Además, en la BGG los datos de partidas de diferentes jugadores no están cruzados. Por lo que dos personas que jueguen a un juego y lo registren, en la web constan como dos partidas independientes.


Actualizo: me quito el sombrero ante Nieva

BigK91

Muchisimas gracias a todos sobre todo a Nieva por el currazo.