Programa el cervell del teu equip —jugador, tàctica i entrenador— i competeix en un simulador determinista, a la teva màquina o a la plataforma en línia. Tu escrius la lògica; si vols, la pilota la IA.
git clone github.com/GoNNoTDa/PyLeagueTria la teva via: competeix en línia sense instal·lar res, o clona l'SDK i treballa en local. Totes dues fan servir el mateix motor determinista.
Crea el teu compte, guarda els teus equips i juga partits i lligues des del navegador. La via més ràpida per començar avui.
Crear compte gratisClona el projecte (només Python 3.13, sense dependències), copia la plantilla i competeix a la teva màquina.
No mous jugadors: programes com decideixen. El motor arbitra igual per a tothom i és determinista — mateix seed, mateix partit. La IA decideix a ritme lent; una capa determinista executa cada tick, així un model no ha de pensar 20 vegades per segon.
Llegeix el marcador i el temps i fixa la mentalitat: atacar, equilibri o defensar.
Col·loca l'equip: alçada de línia, amplada, pressió i banda d'atac.
Decideix cada tick: moure's, passar o xutar. Ràpid i reactiu.
Un prototip funcional, sense fum: això funciona avui.
Física vectorial i regles clares. El mateix seed reprodueix el partit exacte: competicions justes i depurables.
Entrenador i tàctica pilotats per un LLM — ja juga partits reals amb Gemini. Canvies de proveïdor (Gemini, Claude, OpenAI, Amazon Bedrock, Ollama…) amb una variable d'entorn.
Cada jugador gestiona el seu esforç: esprintar i xutar fort cansa; sense benzina corre i xuta pitjor. Una altra capa per programar a la teva tàctica.
Enfronta tots els equips, treu classificació amb punts i ELO, i un informe HTML a punt per compartir.
Possessió, xuts i xuts a porta, passades i precisió, recuperacions i distància. Saps què millorar, no només el marcador.
Mesura el teu equip contra diversos rivals en moltes llavors i obtén win-rate i mitjanes. Compares canvis amb dades, no per intuïcions.
El codi de tercers s'executa en un subprocés amb límits de temps i sense xarxa ni disc: segur per competir amb equips aliens.
Tiki-taka, catenaccio, contraatac, gegenpressing… plantilles a punt per ajustar.
Cada partit es reprodueix com una retransmissió: camp a ~60 fps, marcador tipus TV, estadístiques i comentaris de la IA.
El motor només fa servir la biblioteca estàndard. Els SDK d'IA són opcionals. Copies la plantilla i comences en minuts.
Decideixes quatre comandaments —línia, amplada, pressió i focus— com a valors fixos o en funció del partit. El motor els tradueix a posicions.
from aicup.tactics import TacticalStrategy, progress, possession
def contraataque():
# Sense pilota ens repleguem; en recuperar, ens llancem.
def mandos(ctx):
defendiendo = possession(ctx) == "theirs" or progress(ctx) < 0.45
if defendiendo:
return {"line_height": 0.30, "pressing": 0.35}
return {"line_height": 0.74, "pressing": 0.50}
return TacticalStrategy("Contraataque", mandos)
A més de l'SDK local, hi ha una plataforma web: crees el teu compte, guardes els teus equips i jugues partits i lligues des del navegador, sense instal·lar res. Cada partit s'executa aïllat al servidor i en guarda la repetició.
Cada equip acumula ELO i historial amb els partits entre equips registrats. Puja a la classificació pública.
Competicions on qualsevol inscriu el seu equip. T'hi uneixes amb un clic i l'organitzador la juga.
La teva pàgina amb els teus equips, el teu millor ELO, el teu rècord i les teves repeticions. La teva trajectòria, a la vista.
De cada partit oficial guardem el codi exacte de cada equip (amb el seu SHA-256), la llavor i la versió del motor. Com que el motor és determinista, qualsevol pot reproduir el partit i verificar el resultat — sense fiar-se de ningú. A les lligues, cada creuament queda auditat un a un.
Genera un enllaç públic de qualsevol partit per veure'l o auditar-lo sense compte. Descarrega el codi i el replay i comprova-ho tu mateix.
Munta lligues amb plantilles a punt: divisions per metall (de ferro a diamant), per país o per continent, o a la teva mida. Tries el format —minuts, límit de gols, mort sobtada— i l'hereten tots els creuaments.
Organitzes? Genera un enllaç de subscripció perquè qualsevol apunti el seu equip —encara que la lliga no sigui oberta— i convida directament usuaris de la plataforma pel seu nom.
Desa diverses versions del teu equip, etiqueta-les i tria quina juga cada lliga sense tocar la teva tàctica per defecte. La del rival queda oculta tret que decideixi mostrar-la. Cada equip té el seu historial i les seves estadístiques.
PyLeague és un SDK: copies una plantilla que ja juga bé, la fas teva i la millores iterant. Tot local, determinista i sense dependències. Primera vegada? Passa per l’Acadèmia per aprendre a programar el teu equip pas a pas, o mira la guia completa al repositori.
Només necessites Python 3.13 o superior. El motor no té dependències externes.
El teu equip és una carpeta amb tres capes: entrenador, tàctica i jugador. Comença pels punts marcats i canvia una cosa cada vegada.
Juga i mira'l al visor amb estadístiques. Fes servir el sparring per mesurar el teu equip contra diversos rivals de cop, i munta lligues amb classificació i ELO.
Programar deixa de ser un exercici en solitari i es converteix en un torneig. Ideal per a:
GDGs, meetups i associacions: un repte que enganxa i dona tema per a diverses sessions.
Un format competitiu amb resultat clar: guanya el millor codi, no el millor pitch.
Universitats i bootcamps: ensenya lògica, IA i estructures jugant a guanyar partits.
Team building tècnic i employer branding amb una lliga interna a la teva marca.
L'SDK és i serà de codi obert. Si vols muntar una competició per al teu esdeveniment, te la preparem clau en mà.
Idees al roadmap. Encara no hi són — les expliquem perquè marquen cap on va la lliga, no per vendre't el que no existeix.
Format knockout amb quadre, a més de les lligues de tots contra tots.
Instruccions per rol que el jugador executa, a més d'entrenador i tàctica.
Sacs de banda i córner, fora de joc i faltes.
Descriu el teu pla en llenguatge natural i es tradueix a codi.
Un àrbitre-IA que revisa les jugades polèmiques.
Contenidor/VM per partit per obrir l'execució pública a gran escala.
Una competició de futbol virtual on no jugues amb les cames, sinó amb codi: programes en Python el cervell de cada jugador, la tàctica de l'equip i les decisions de l'entrenador, i competeixes en un simulador determinista.
No. Copies la plantilla inclosa —que ja juga de manera competitiva— i vas millorant una capa cada vegada. Amb coneixements bàsics de Python pots començar en minuts.
Sí. PyLeague és de codi obert i pots fer-lo servir, modificar-lo i competir sense cost. Només oferim serveis opcionals per organitzar tornejos a mida.
No. El motor i els equips d'exemple funcionen sense cap API. La IA és opcional: si vols que l'entrenador o la tàctica pensin amb un model de llenguatge, connectes el teu proveïdor preferit (Claude, OpenAI, Gemini, Groq, Mistral, DeepSeek o Ollama en local).
Sí. PyLeague encaixa en hackathons, comunitats de desenvolupadors, formació i esdeveniments. Escriu-nos i muntem una competició a mida.
A Windows, macOS i Linux. El motor només necessita Python 3.13 o superior i no té dependències externes.
Sí. A la plataforma en línia crees un compte, guardes els teus equips i jugues partits i lligues des del navegador. Cada partit s'executa aïllat al servidor i en guarda la repetició, amb rànquing global per ELO, perfil públic i arenes obertes on competeix qualsevol.
Perquè cada partit oficial és reproduïble: guardem el codi exacte de cada equip amb el seu SHA-256, la llavor i la versió del motor. Com que el motor és determinista, qualsevol pot descarregar-ho tot i reproduir el partit per verificar que el resultat és legítim, sense fiar-se de ningú. A les lligues, cada creuament queda auditat un a un.
PyLeague reuneix desenvolupadors competint amb codi: un públic difícil de captar, en un context positiu —aprendre i guanyar—. Associa't a una lliga justa i verificable, i fes-ho quan encara ets dels primers.
Arribes a perfils tècnics —desenvolupadors i estudiants— mentre creen i competeixen. Perfecte per a la captació de talent i l'employer branding.
La teva marca al visor tipus retransmissió, a les tanques del camp i als missatges de la simulació —i a cada repetició que es comparteix fora.
La lliga de la teva comunitat o universitat, el repte d'un hackathon o una lliga interna d'empresa. Tu tries l'abast.
Cada partit oficial és auditable i reproduïble: es guarda el codi, la llavor i la versió del motor. Un torneig amb premis seriós, al qual associar la teva marca sense risc reputacional.
Encara no hi ha patrocinadors: pots ser el primer. Espai destacat i tracte proper per a qui aposta abans que ningú.
Exemple: les teves tanques a peu de camp i al visor de cada partit.
Crea el teu compte i competeix en línia en minuts, o clona'l i juga en local. En mode bàsic funciona sense API ni configuració.
python play.py · python sparring.py · python league.py