{"id":13693777,"url":"https://github.com/nicklockwood/Swune","last_synced_at":"2025-05-02T22:30:39.345Z","repository":{"id":139546693,"uuid":"480992608","full_name":"nicklockwood/Swune","owner":"nicklockwood","description":"Swift/UIKit reimplementation of the Dune II RTS game","archived":false,"fork":false,"pushed_at":"2022-04-12T23:10:56.000Z","size":211,"stargazers_count":46,"open_issues_count":0,"forks_count":3,"subscribers_count":3,"default_branch":"main","last_synced_at":"2025-04-05T16:51:15.329Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Swift","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/nicklockwood.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.md","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}},"created_at":"2022-04-12T22:31:02.000Z","updated_at":"2025-03-02T09:27:36.000Z","dependencies_parsed_at":"2024-04-08T02:27:34.299Z","dependency_job_id":"ed89eaa6-4253-42b0-ace1-dc551b9a2343","html_url":"https://github.com/nicklockwood/Swune","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nicklockwood%2FSwune","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nicklockwood%2FSwune/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nicklockwood%2FSwune/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nicklockwood%2FSwune/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/nicklockwood","download_url":"https://codeload.github.com/nicklockwood/Swune/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":252115889,"owners_count":21697262,"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":[],"created_at":"2024-08-02T17:01:17.310Z","updated_at":"2025-05-02T22:30:34.333Z","avatar_url":"https://github.com/nicklockwood.png","language":"Swift","funding_links":[],"categories":["Game"],"sub_categories":["Cryptocurrency"],"readme":"[![Swift 5](https://img.shields.io/badge/swift-5-red.svg?style=flat)](https://developer.apple.com/swift)\n[![License](https://img.shields.io/badge/license-MIT-lightgrey.svg)](https://opensource.org/licenses/MIT)\n[![Twitter](https://img.shields.io/badge/twitter-@nicklockwood-blue.svg)](http://twitter.com/nicklockwood)\n\n# Swune\n\nSwune is a partial reimplementation of the [Dune II](https://en.wikipedia.org/wiki/Dune_II) RTS game using Swift and UIKit.\n\n![Screenshot](Screenshot.png)\n\n## How to Install\n\nTo play Swune, just download the Swune Xcode project and run it. It has no dependencies\n\nSwune is designed for iOS, but also runs on macOS in the MacCatalyst environment.\n\n## How to Play\n\nSwune is designed for touch controls but can be played comfortably with a mouse.\n\nThe game is currently just a single level demo. You begin at the top of the map with a Construction Yard and a handful of units.\n\nThe aim of the mission is to destroy all enemy buildings and gather 1100 units of Spice. To do this you will need to:\n\n* Build a Spice Refinery (select the Construction Yard and then select the avatar in the top-right for build options)\n* Build an army of units to overwhelm the enemy (being careful to retain at least 1100 credits in the bank)\n* Locate the enemy base and destroy all buildings (destroying enemy units is optional)\n\n## How it Works\n\nThe Swune codebase is loosely based on my earlier [Swiftenstein](https://github.com/nicklockwood/Swiftenstein) project, and the spinoff [Retro Rampage](https://github.com/nicklockwood/RetroRampage) game development tutorial. It shares some code with the latter, such as the pathfinding routines.\n\nWhile it may seem like an FPS and an RTS have little in common (besides having both enjoyed a heyday in the mid-late 1990s) the engines are actually very similar due to both sharing a tile-based 2D map and sprites.\n\nIn short, the game works by using a timer to repeatedly update the game logic and then redraw the screen. Drawing is done entirely using UIKit, which is more than powerful enough to simulate a 16-bit era 2D game.\n\n## Credits\n\nSwune is entirely the work of Nick Lockwood, including all graphics and code. The game mechanics are inspired by [UnDUNE II](https://liquidream.itch.io/undune2) by Paul Nicholas, which is itself based on the original Dune II: Battle for Arrakis by Westwood Studios.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnicklockwood%2FSwune","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fnicklockwood%2FSwune","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnicklockwood%2FSwune/lists"}