{"id":25531903,"url":"https://github.com/robert-van-engelen/pocketai","last_synced_at":"2026-01-27T17:01:18.937Z","repository":{"id":118111138,"uuid":"402192411","full_name":"Robert-van-Engelen/PocketAI","owner":"Robert-van-Engelen","description":"A self-learning AI strategy game: play against your pocket computer's machine learning algorithm","archived":false,"fork":false,"pushed_at":"2023-07-11T20:30:47.000Z","size":404,"stargazers_count":2,"open_issues_count":0,"forks_count":0,"subscribers_count":3,"default_branch":"main","last_synced_at":"2025-05-22T11:36:09.718Z","etag":null,"topics":["game","pocketcomputer","self-learning"],"latest_commit_sha":null,"homepage":"","language":"BASIC","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"bsd-3-clause","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Robert-van-Engelen.png","metadata":{"files":{"readme":"readme.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.txt","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,"zenodo":null}},"created_at":"2021-09-01T20:19:36.000Z","updated_at":"2023-10-31T22:35:02.000Z","dependencies_parsed_at":"2023-11-04T22:45:45.954Z","dependency_job_id":null,"html_url":"https://github.com/Robert-van-Engelen/PocketAI","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/Robert-van-Engelen/PocketAI","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Robert-van-Engelen%2FPocketAI","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Robert-van-Engelen%2FPocketAI/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Robert-van-Engelen%2FPocketAI/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Robert-van-Engelen%2FPocketAI/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Robert-van-Engelen","download_url":"https://codeload.github.com/Robert-van-Engelen/PocketAI/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Robert-van-Engelen%2FPocketAI/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28816571,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-27T12:25:15.069Z","status":"ssl_error","status_checked_at":"2026-01-27T12:25:05.297Z","response_time":168,"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":["game","pocketcomputer","self-learning"],"created_at":"2025-02-20T01:42:11.384Z","updated_at":"2026-01-27T17:01:18.926Z","avatar_url":"https://github.com/Robert-van-Engelen.png","language":"BASIC","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Alcatraz!\n\nA self-learning AI strategy game for SHARP pocket computers based on a C\nprogram I wrote in the 80s to demonstrate a self-learning strategy game.\n\n![PC-1360](PC-1360.jpeg)\n\nThe pocket computer AI is your opponent, playing the role of a Prisoner who\ntries to escape from Alcatraz.  Your task is to catch the prisoner.  You have\nthree Guards at your disposal, so that makes it easy! Right?\n\nEvery time a Prisoner is caught, the Prisoner learns from his mistakes and\nwill not make the same mistake again!  The Prisoner gets smarter and smarter,\njust as you learn to find new ways to catch the Prisoner.\n\nBeware: the game can be addictive once the Prisoner starts talking to you!\n\nThe goal is to catch the Prisoner as many times as possible.  There are at\nleast 40 different ways to catch the Prisoner.  Can you get to 40 or more\ncaptures?\n\nThe game board has 11 positions called Rooms, numbered `0` to `9` and a Prison\nCell `:`.  Room `0` is the Prison Gate from which the Prisoner can escape.\n\n    Prison      _7___8___9_\n               / | \\ | / | \\\n        Gate 0/__4__\\5/__6__\\: Cell\n              \\  |  /|\\  |  /\n               \\_1_/_2_\\_3_/\n\nRooms are connected by elevators (up/down moves), stairs (diagonal moves), and\nfloors (horizontal moves).\n\nYour three Guards begin at the left of the board in rooms `0`, `1` and `7`.  To\nmove a guard from one Room to the next, type in the number `0` to `9` or `:`\n(or any other key for `:`) for the Room to move from, then the Room to move to.\n\nA Prisoner begins in his Prison Cell at position `:`.\n\n## The rules:\n\n1. The two players (you versus the computer) take turns and have to move to a\n   connecting Room.\n\n2. Either the Prisoner starts the first move or you start, which is random. If\n   the Prisoner starts the first move, then he will move out of his Cell to\n   one of the connecting Rooms.\n\n3. The Prisoner and Guards can only move to an empty connecting Room.\n\n4. If the Prisoner cannot move because all connecting Rooms are occupied, then\n   he is caught and your winning score is increased.\n\n5. If the Prisoner can reach the Gate (Room `0`) then he wins by escaping.\n\n6. Guards cannot move backward, to the left, except from the Cell (Room `:`)\n   where a Guard can freely move back to a connecting Room.\n\n7. If after 30 moves the Prisoner is still not caught, then he will escape\n   regardless.\n\n## How to load\n\nPlay the wav file to `CLOAD` on your pocket computer.\n\nThe excellent [PocketTools](https://www.peil-partner.de/ifhe.de/sharp/)\nare used to convert BASIC source code to wav files:\n\n    bas2img --pc=1350 --level=8 alcatraz.bas\n    bin2wav --pc=1350 alcatraz.img\n\nAuthor: Dr. Robert A. van Engelen\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frobert-van-engelen%2Fpocketai","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Frobert-van-engelen%2Fpocketai","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frobert-van-engelen%2Fpocketai/lists"}