{"id":18043999,"url":"https://github.com/adrigrillo/starcraftagent","last_synced_at":"2025-04-05T03:13:21.143Z","repository":{"id":111667813,"uuid":"68830072","full_name":"adrigrillo/StarCraftAgent","owner":"adrigrillo","description":"An AI agent for starcraft ","archived":false,"fork":false,"pushed_at":"2017-01-09T09:53:14.000Z","size":1731,"stargazers_count":0,"open_issues_count":1,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-02-10T11:13:49.293Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/adrigrillo.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2016-09-21T15:18:24.000Z","updated_at":"2017-01-09T09:54:42.000Z","dependencies_parsed_at":"2023-05-25T09:45:08.117Z","dependency_job_id":null,"html_url":"https://github.com/adrigrillo/StarCraftAgent","commit_stats":null,"previous_names":[],"tags_count":3,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/adrigrillo%2FStarCraftAgent","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/adrigrillo%2FStarCraftAgent/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/adrigrillo%2FStarCraftAgent/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/adrigrillo%2FStarCraftAgent/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/adrigrillo","download_url":"https://codeload.github.com/adrigrillo/StarCraftAgent/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247280272,"owners_count":20912967,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-10-30T17:10:55.646Z","updated_at":"2025-04-05T03:13:21.128Z","avatar_url":"https://github.com/adrigrillo.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"Repositorio: https://github.com/adrigrillo/StarCraftAgent\n\n# EXPLICACIONES DE STARCRAFT\nMuchos de los métodos vienen con valor y coste doble al real en el juego, es debido a los zerg que hay cosas que valen la mitad, y el juego los dobla para usar enteros.\n\n## MÉTODOS QUE HAY QUE ESCRIBIR:\n*    **matchstart():** vale para iniciar cosas.\n*    **matchframe():** cada 50 milisegundos y es donde va el codigo para las acciones de partida.\n*    **matchend():** Este método se utiliza para hacer un report de la partida.\n\n## CLASES BASICAS:\n*    **Unit:** Edificios como unidades.\n*    **UnitType:** Propio de cada raza.\n*    **Player**\n*    **Map**\n\n## SENTENCIAS\n*    **getMyUnits()** coge mis unidades.\n*    **getNeutralUnits()** son los recursos.\n*    **build(argumentos)** es el método que se encargará de construir cosas.\n*    **train()** crea personajes en el juego.\n*    **Map map = this.bwapi.getMap():** consigue el mapa.\n*    **Unit u = this.bwapi.getUnit(ID):** selecciona un jugador.\n\nHay que conseguir la refineria sobre una mina de vespeno. Para buscar la localización de un edificio hay que hacer un método propio.\n\n## EXPLICACIONES\n### Position\nPara build existen tres elementos claves, necesarios para que el agente no se quede pillado. Cada edificio tiene su tamaño por eso la importancia de los elementos de abajo. Para construir se le pasa a la función build, le tienes que pasar por parámetros la posición (investigando las casillas que ocupa) esta posición será la esquina izquierda del grid que ocupa:\n*   Tile position\n*   Bx\n*   By\n\n### Unidades\n\nEsto hace saber si la unidad seleccionada es nuestra\nUnit u = this.bwapi.getUnit(ID)\nif(u.getPlayer().getID() == this.bwapi.getSelf().getID())\n\n#### MatchEnd()\n\nEste método se ejecuta con el final de la partida y recibe como argumento el resultado de la misma, que es 'true' si la partida ha resultado en victoria y 'false' si no ha sido así.\n\nSe puede utilizar para escribir por consola estadísticas de la partida que no pueden comprobarse en el resumen general de la partida que ofrece el juego.\n\n### METODOS Y FUNCIONES DEL JUEGO\nPara saber el limite de soldados que se pueden crear: real = res/2\n\n    bwapi.getSelf().getSupplyTotal()\n\nPara saber los soldados creados: real = res/2\n\n    bwapi.getSelf().getSupplyUsed()\n\nPara saber el costo de la creacion de una unidad\n\n    UnitTypes.UnidadDeseada.getSupplyRequired()\n\nCuando una unidad está recogiendo vespeno de la refineria sus actividades son dos:\n*   HarvestGas\n*   MoveToGas\n*   ReturnGas\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fadrigrillo%2Fstarcraftagent","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fadrigrillo%2Fstarcraftagent","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fadrigrillo%2Fstarcraftagent/lists"}