{"id":18555961,"url":"https://github.com/rlbot/trackandfield","last_synced_at":"2026-03-07T15:31:28.083Z","repository":{"id":45533149,"uuid":"432578147","full_name":"RLBot/TrackAndField","owner":"RLBot","description":null,"archived":false,"fork":false,"pushed_at":"2021-12-09T21:24:53.000Z","size":69,"stargazers_count":1,"open_issues_count":0,"forks_count":3,"subscribers_count":9,"default_branch":"master","last_synced_at":"2025-03-03T12:14:30.651Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/RLBot.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2021-11-27T23:39:41.000Z","updated_at":"2021-12-09T21:24:56.000Z","dependencies_parsed_at":"2022-09-23T02:21:28.999Z","dependency_job_id":null,"html_url":"https://github.com/RLBot/TrackAndField","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/RLBot/TrackAndField","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/RLBot%2FTrackAndField","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/RLBot%2FTrackAndField/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/RLBot%2FTrackAndField/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/RLBot%2FTrackAndField/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/RLBot","download_url":"https://codeload.github.com/RLBot/TrackAndField/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/RLBot%2FTrackAndField/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":30219541,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-03-07T14:02:48.375Z","status":"ssl_error","status_checked_at":"2026-03-07T14:02:43.192Z","response_time":53,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"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-11-06T21:28:33.668Z","updated_at":"2026-03-07T15:31:28.059Z","avatar_url":"https://github.com/RLBot.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# RLBot Track and Field\n\nThis is a script that facilitates track and field style events\nfor Rocket League bots, e.g. waypoint races, shotput, etc.\n\nIt uses the [Scripts system](https://github.com/RLBot/RLBot/wiki/Scripts)\nand [Matchcomms](https://github.com/RLBot/RLBot/wiki/Matchcomms).\n\n## Usage\nTrack and Field relies on RLBotGUI.\n1. Clone this repository\n2. Open RLBotGUI, and in that interface:\n   1. Add -\u003e Load Folder\n   2. Choose the folder where this code lives\n   3. In the \"Scripts\" section, toggle on \"Track and Field\".\n   4. If there's a yellow triangle, click it and install dependencies.\n   5. Choose bots to compete, drag them on to any team.\n   6. Start the match\n3. Expect the match to start, and the bots to de-spawn during kickoff.\n4. Follow instructions that will appear in-game.\n\nEvent progress is saved in a file at ./data/current_competition.json,\nand and additional files in subfolders.\n- You can resume an event by re-running the match through RLBotGUI\n- If you want to start a new event, you must move or rename current_competition.json.\n\n## Making Bots to Compete\nTo compete in Track and Field, a bot must support\n[Matchcomms](https://github.com/RLBot/RLBot/wiki/Matchcomms).\n- Upon startup, the bot should send a message to matchcomms in this format:\n`{ \"readyForTrackAndField\": True, \"supportedEvents\": [\"WaypointRace\", \"etc\"] }`\n- The bot will then need to listen for message(s) from matchcomms regarding\nthe event they're participating in.\n\nEach python file in the 'events' folder has specific documentation on\nthe message(s) it sends and how a bot is expected to behave.\n\n## Contributing new events to Track and Field\nPull requests are welcome!\n\nCreate a new class in the 'events' folder, as a subclass of `Event`\n(see event.py). You may find it convenient to copy-paste waypoint_race.py\nand modify it to create your new event.\n\nTo start using your event, modify the `get_event_list` function in\ntrack_and_field.py.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frlbot%2Ftrackandfield","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Frlbot%2Ftrackandfield","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frlbot%2Ftrackandfield/lists"}