{"id":28412342,"url":"https://github.com/libsdl-org/maelstrom","last_synced_at":"2026-05-01T18:01:05.574Z","repository":{"id":103337866,"uuid":"567142251","full_name":"libsdl-org/Maelstrom","owner":"libsdl-org","description":"Maelstrom 4.0","archived":false,"fork":false,"pushed_at":"2026-04-23T08:54:35.000Z","size":65603,"stargazers_count":34,"open_issues_count":0,"forks_count":17,"subscribers_count":1,"default_branch":"main","last_synced_at":"2026-04-23T10:32:31.117Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/libsdl-org.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"COPYING","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,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2022-11-17T06:46:31.000Z","updated_at":"2026-04-23T08:54:40.000Z","dependencies_parsed_at":"2023-07-07T17:46:07.063Z","dependency_job_id":null,"html_url":"https://github.com/libsdl-org/Maelstrom","commit_stats":null,"previous_names":[],"tags_count":6,"template":false,"template_full_name":null,"purl":"pkg:github/libsdl-org/Maelstrom","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/libsdl-org%2FMaelstrom","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/libsdl-org%2FMaelstrom/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/libsdl-org%2FMaelstrom/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/libsdl-org%2FMaelstrom/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/libsdl-org","download_url":"https://codeload.github.com/libsdl-org/Maelstrom/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/libsdl-org%2FMaelstrom/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32507094,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-30T13:12:12.517Z","status":"online","status_checked_at":"2026-05-01T02:00:05.856Z","response_time":64,"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":[],"created_at":"2025-06-02T20:46:39.541Z","updated_at":"2026-05-01T18:01:05.550Z","avatar_url":"https://github.com/libsdl-org.png","language":"C++","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Maelstrom 4.0\n\nYou pilot your ship through the dreaded \"Maelstrom\" asteroid belt -- suddenly your best friend thrusts towards you and fires, directly at your cockpit. You raise your shields just in time, and the battle is joined.\n\nThe deadliest stretch of space known to mankind has just gotten deadlier. Everywhere massive asteroids jostle for a chance to crush your ship, and deadly Shenobi fighter patrols pursue you across the asteroid belt. But the deadliest of them all is your sister ship, assigned to you on patrol. The pilot, trained by your own Navy, battle hardened by months in the Maelstrom, is equipped with a twin of your own ship and intimate knowledge of your tactics.\n\nThe lovely Stratocaster R\u0026R facility never sounded so good, but as you fire full thrusters to dodge the latest barrage you begin to think you'll never get home...\n\n---\nMaelstrom is an open source port of the original shareware game for the Macintosh by Ambrosia Software. It is a fast-action, asteroids-like game, with classic pixel graphics and original sounds.\n\nIn addition to being a faithful reproduction of the original game, this version adds game controller support, mobile touch controls, and both cooperative and competitive multiplayer action.\n\n[![Maelstrom 4.0 Gameplay Trailer](https://img.youtube.com/vi/OFd_DRLWaeg/0.jpg)](https://www.youtube.com/watch?v=OFd_DRLWaeg)\n\nMaelstrom is available for free on:\n- Steam: https://store.steampowered.com/app/4239950/Maelstrom\n- Google Play: Send me e-mail at slouken@libsdl.org to be added to the beta\n- Apple Store: https://apps.apple.com/us/app/classic-maelstrom/id6760607912\n- Web: https://www.libsdl.org/projects/Maelstrom/play\n\nYou can download the latest release and source code from [GitHub](https://github.com/libsdl-org/Maelstrom)\n\n## New Features\n\n### Kid Mode\n\nClicking the \"kid mode\" icon next to the play button will enable an easier play mode which will add the retro-thruster prize and automatically shield you as long as shields are available - but beware the Shenobi ships! Their shots will not trigger the automatic defensive systems.\n\nAchievements and high scores are not available while in this mode.\n\n### Multiplayer\n\nYou can host or join a multiplayer game from the main menu. Up to three players can play at once, and they can be any combination of other players on the local network, connected controllers, and friends invited via Steam Remote Play.\n\n### Steam Achievements\n\nIf you play the game on Steam, there are lots of fun achievements to unlock, such as \"Alien Abduction\" and \"Balls of Steel\".\n\n### Steam Game Recording\n\nIf you play the game on Steam and enable game recording, the timeline will automatically be populated with exciting events such as aliens, nova explosions, and more!\n\n### Replays\n\nYou can click on the high score entries to watch that game again. This is especially fun with the Steam game recording feature, as you can see the events on the timeline and re-share the game video with your friends.\n\n### Easter Eggs\n\nThe classic easter eggs from the original game are all there, and it's up to you to find them...\n\n### Mods\n\nClick the cardboard box button on the main menu to select the art and sounds you want to use. The Maelstrom 1980 mod comes with the game, and you can easily make your own!\n\nCopy the folders in Data to a new folder, modify the files, and then zip them up and drop the archive into the top level \"mods\" folder. If you place a file README.txt at the  top level in your zip file, you can set the name and description field used by the game. You can look at `Maelstrom_1980.zip` in the mods folder for an example of this.\n\nNote that if you play network multiplayer, all players must have the same sprites in order to play together.\n\nIf you have access to the original sound and sprite packs for Maelstrom, you can build the macres tool included in the Maelstrom source code and use that to export the files in a form that can be zipped up as a mod for this game.\n\nThe usage is:\n```\nmacres --export [file] [output_directory]\n```\n\n## Porting to SDL3\n\nI did a short series of live-stream videos documenting the initial port from SDL2 to SDL3, available on YouTube:\n* [Maelstrom Port Part 1](https://www.youtube.com/watch?v=TfkexYtd62w)\n* [Maelstrom Port Part 2](https://www.youtube.com/watch?v=18KiCpSE2nM)\n* [Maelstrom Port Part 3](https://www.youtube.com/watch?v=ummDsXplSp4)\n\n---\n\nEnjoy!\n\nSam Lantinga (slouken@libsdl.org)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flibsdl-org%2Fmaelstrom","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Flibsdl-org%2Fmaelstrom","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flibsdl-org%2Fmaelstrom/lists"}