{"id":17341756,"url":"https://github.com/discostu105/bge","last_synced_at":"2026-07-21T01:34:35.424Z","repository":{"id":56050908,"uuid":"278849955","full_name":"discostu105/bge","owner":"discostu105","description":"Generic Browser Game Engine","archived":false,"fork":false,"pushed_at":"2023-08-22T09:50:54.000Z","size":789,"stargazers_count":2,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-03-27T09:17:52.057Z","etag":null,"topics":["browser-games","game-engine","hobby"],"latest_commit_sha":null,"homepage":"","language":"C#","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/discostu105.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,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2020-07-11T11:41:06.000Z","updated_at":"2022-12-04T20:01:37.000Z","dependencies_parsed_at":"2024-10-15T15:51:17.166Z","dependency_job_id":"e5d71342-5ef6-4c59-8ab5-4d1c43c01c31","html_url":"https://github.com/discostu105/bge","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/discostu105/bge","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/discostu105%2Fbge","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/discostu105%2Fbge/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/discostu105%2Fbge/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/discostu105%2Fbge/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/discostu105","download_url":"https://codeload.github.com/discostu105/bge/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/discostu105%2Fbge/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":278918059,"owners_count":26068396,"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","status":"online","status_checked_at":"2025-10-08T02:00:06.501Z","response_time":56,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"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":["browser-games","game-engine","hobby"],"created_at":"2024-10-15T15:51:10.552Z","updated_at":"2026-07-21T01:34:35.413Z","avatar_url":"https://github.com/discostu105.png","language":"C#","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Browser Game Engine\n\nIt's a game engine for simple browser games. This is a hobby project.\n\n## Game properties\n\n * A player has resources, assets (buildings) and units\n * At every game tick (turn), resources grow\n * The goal is to maximize the primary resource (e.g. land) and make it to the top of the player-ranking.\n\n## Architecture goals\n\n * Keep it simple. Simplicity over scalability. This is meant to be a fun/hobby coding project. Not a hugely scalable MMO.\n * Make it generic enough to use the game engine for different game definitions (different names, graphics, game logic to some degree).\n\n ### Design/Tech\n\n * Uses .NET 10 \u0026 Blazor WebAssembly as Single-Page-App.\n * Uses Discord as OAuth2 provider.\n * The game itself runs in a stateful monolith. All game state is kept in memory. To persist the game-state, it's simply serialized as a blob to some storage. This shall happen on shutdown, but also periodically to have a \"backup\" in case of an application crash. That design is (hopefully) simpler than using a relational (or any other) database.\n\n## History\n\nIn 2003, one of my first coding projects was a browser based game, called \"StarCraft Online\". It was played intensively by a few hundred people back then and was kind of addictive \u0026 fun. I made a few revivals of the game over the years, but never actually develped it further. It was based on ASP/VBScript and was not really well coded.\n\nNow, in 2020, I got a taste of browser games again and wanted to revive my old game - but differently this time. I want to re-write the entire game from scratch, using modern technologies, while keeping the game logic as close to the original as possible (at least in the first iteration). Also, I wanted to do this open-source from the beginning.\n\nThe project has since been upgraded from .NET 5 through to .NET 10, keeping up with the latest platform improvements.","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdiscostu105%2Fbge","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdiscostu105%2Fbge","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdiscostu105%2Fbge/lists"}