{"id":21015287,"url":"https://github.com/gperretta/algaexperience","last_synced_at":"2026-03-11T18:33:49.720Z","repository":{"id":64376091,"uuid":"575121101","full_name":"gperretta/AlgaExperience","owner":"gperretta","description":"Alga-E team project for ADA (22/23) Game Creation Experience two-weeks challenge. Developed in Xcode, using Swift and SpriteKit.","archived":false,"fork":false,"pushed_at":"2023-06-24T12:20:03.000Z","size":4398,"stargazers_count":2,"open_issues_count":0,"forks_count":3,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-04-03T04:33:13.334Z","etag":null,"topics":["game-development","ios-app","spritekit","swift-game","xcode"],"latest_commit_sha":null,"homepage":"","language":"Swift","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/gperretta.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}},"created_at":"2022-12-06T19:59:56.000Z","updated_at":"2023-05-01T03:10:04.000Z","dependencies_parsed_at":"2023-02-18T10:01:04.289Z","dependency_job_id":null,"html_url":"https://github.com/gperretta/AlgaExperience","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/gperretta%2FAlgaExperience","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gperretta%2FAlgaExperience/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gperretta%2FAlgaExperience/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gperretta%2FAlgaExperience/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/gperretta","download_url":"https://codeload.github.com/gperretta/AlgaExperience/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":254282153,"owners_count":22045108,"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":["game-development","ios-app","spritekit","swift-game","xcode"],"created_at":"2024-11-19T10:09:23.091Z","updated_at":"2026-03-11T18:33:44.685Z","avatar_url":"https://github.com/gperretta.png","language":"Swift","funding_links":[],"categories":[],"sub_categories":[],"readme":"\n\u003ch1\u003e\n  \u003cp align=\"center\"\u003e\n    SPROUT\n  \u003c/p\u003e\n\u003c/h1\u003e\n\u003c/br\u003e\n\n\u003e Fight. Grow. Heal the world with the power of nature. \n\n\u003c/br\u003e\u003c/br\u003e\n\"Sprout\" is a pixel-art-style mobile game revolving around a little plant, a sprout, being the last living creature on a dying Earth. \n\nAs the sprout is the last and only hope of the planet, the player's mission is to protect it from the robotic bugs that threaten its existence.\n\u003c/br\u003e\u003c/br\u003e\n\n\u003ch3\u003eTable of contents\u003c/h3\u003e\n \n\u003ca href=\"https://github.com/gperretta/AlgaExperience/blob/main/README.md#gameplay-and-game-mechanics\"\u003eGameplay and game mechanics\u003c/a\u003e\u003c/br\u003e\n\u003ca href=\"https://github.com/gperretta/AlgaExperience/blob/main/README.md#score-and-game-complexity\"\u003eScore and game complexity\u003c/a\u003e\u003c/br\u003e\n\u003ca href=\"https://github.com/gperretta/AlgaExperience/blob/main/README.md#technologies-and-softwares\"\u003eTechnologies and softwares\u003c/a\u003e\u003c/br\u003e\n\u003ca href=\"https://github.com/gperretta/AlgaExperience/blob/main/README.md#visual-and-audio\"\u003eVisual and audio\u003c/a\u003e\u003c/br\u003e\n\u003ca href=\"https://github.com/gperretta/AlgaExperience/blob/main/README.md#process-and-contributions\"\u003eProcess and contributions\u003c/a\u003e\u003c/br\u003e\n  \n\u003cbr/\u003e\u003cbr/\u003e\n![Group-1](https://user-images.githubusercontent.com/113616815/216680862-2ce8eef5-4923-4d78-9cee-17a5d8c5b758.png)\n\n  \u003ch2\u003eGameplay and game mechanics\u003c/h2\u003e\n\nAs the game begins, the player will see the plant going out of its manhole (or sprout-hole) while the robotic bugs will start surrounding the little harmless plant. \nThe player's task is to destroy the incoming bugs by swiping on them in any direction, preventing the enemies from taking away the plant's three lives - represented by its leaves. Each time a bug will get to the plant, the plant will lose a live, retiring back in the sprout-hole and them coming back up. \nWhen the plant will have lost all its leaves, the game is going to end as the sprout dies for good. \n\n  \u003ch2\u003eScore and game complexity\u003c/h2\u003e\n\nThe game is based on a scoring system, where the player can earn 10 points for each robotic bug destroyed. The more bugs get killed, the higher the score is, while the game progressively becomes more challenging with more enemies appearing and approaching the plant to attack in an increasily faster way. Additionally, the enemies will enter the game scene from different positions, decided with a certain quantity of randomness, which means their arrival will not be predictable. \n\n  \u003ch2\u003eTechnologies and softwares\u003c/h2\u003e\n\nThe whole game was developed in Xcode, using Swift as a programming language and SpriteKit, an Apple framework to build high-performance and battery-efficient 2D games. \nThanks to SpriteKit, we were able to apply physics effects to different objects on the scene, to implement a collision detection system between the plant node and the enemy nodes to acknowledge the attack and to add cool animations both the plant and the moving bugs. \n\n  \u003ch2\u003eVisual and audio\u003c/h2\u003e\n\nThe whole game is pixel-art-styled with a strong callback to the 80s. \nAll the game assets were created from scratch using Aseprite, a pixel-art tool and image editor, by our two designers. \nOn the other hand, the audio was created by one of the designers as well, using Apple's GarageBand. \n\n  \u003ch2\u003eProcess and contributions\u003c/h2\u003e\n\nSprout was entirely created by a team of four, two developers and two designers/game artists, during a two-weeks game-jam as a project for the Apple Developer Academy, hence the choice of developing a game for iPhone only.\nAs one of the developers, my main tasks and responsabilities have been:\n- game scenes and nodes rendering, such as the spawning of the enemies in random starting positions;\n- core game mechanics implementation with swipe gestures reading, such as the enemies movement patterns, their speed and their death as well and the increasing game complexity;\n- scoring system, adding to the players' score 10 points for each bugs they killed.\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgperretta%2Falgaexperience","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fgperretta%2Falgaexperience","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgperretta%2Falgaexperience/lists"}