{"id":21835233,"url":"https://github.com/dhi13man/edge-surf-pid","last_synced_at":"2026-05-11T03:32:16.839Z","repository":{"id":190813574,"uuid":"683404456","full_name":"Dhi13man/edge-surf-pid","owner":"Dhi13man","description":"Python project that uses OpenCV and PyInput to create a bot that can play the Edge Surf game automatically, without the need for AI or machine learning algorithms.","archived":false,"fork":false,"pushed_at":"2023-08-26T13:23:44.000Z","size":29,"stargazers_count":1,"open_issues_count":0,"forks_count":1,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-01-26T09:44:36.725Z","etag":null,"topics":["automation","game-automation","opencv","pid-control","python"],"latest_commit_sha":null,"homepage":"https://medium.com/@dhi13man/the-joy-of-building-logic-automating-the-microsoft-edge-surfing-game-c74ff7d495ee","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/Dhi13man.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,"governance":null}},"created_at":"2023-08-26T13:17:47.000Z","updated_at":"2025-01-10T00:36:25.000Z","dependencies_parsed_at":null,"dependency_job_id":"ed0050e2-751f-4f3a-909e-0d1036af46a4","html_url":"https://github.com/Dhi13man/edge-surf-pid","commit_stats":null,"previous_names":["dhi13man/edge-surf-pid"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Dhi13man%2Fedge-surf-pid","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Dhi13man%2Fedge-surf-pid/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Dhi13man%2Fedge-surf-pid/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Dhi13man%2Fedge-surf-pid/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Dhi13man","download_url":"https://codeload.github.com/Dhi13man/edge-surf-pid/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":244811380,"owners_count":20514276,"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":["automation","game-automation","opencv","pid-control","python"],"created_at":"2024-11-27T20:18:46.396Z","updated_at":"2026-05-11T03:32:16.802Z","avatar_url":"https://github.com/Dhi13man.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# edge-surf-pid\n\n## Description\n\nThis project uses OpenCV and PyInput to create a bot that can play the Edge Surf game automatically, without the need for AI or machine/reinforcement learning models.\n\n## Requirements\n\nTo run this project, you will need to have the following dependencies installed:\n\n- Python 3.6 or higher\n- OpenCV\n- MSS (Multi-Screen Shot)\n- NumPy\n- Simple-PID\n- Pynput\n\nYou can install these dependencies using pip by running the following command:\n\n```sh\npip install -r requirements.txt\n```\n\n## Usage\n\nTo use the Edge Surf bot, simply add the central surfer character's position in `__main__.py` and then run the `__main__.py` file using Python:\n\n```sh\npython __main__.py\n```\n\nThis will launch the bot and start playing the game automatically once the game at edge://surf is visible on the screen and started.\n\n## How it Works\n\n1. The bot uses simple color detection to detect the color of the obstacles in front of the surfer and then moves the surfer in the direction with lesser obstacles. \n2. The bot also uses a PID controller to control the extent of the surfer's movement.\n\nBy default, the bot will display a live feed of the game as it plays. You can disable this by setting the `SHOULD_SHOW_LIVE_FEED` variable to `False` in the `__main__.py` file.\n\n## License\n\nThis project is licensed under the MIT License. See the [LICENSE](https://raw.githubusercontent.com/Dhi13man/edge-surf-pid/main/LICENSE) file for more information.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdhi13man%2Fedge-surf-pid","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdhi13man%2Fedge-surf-pid","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdhi13man%2Fedge-surf-pid/lists"}