{"id":24995277,"url":"https://github.com/achie72/dragon_demo_platformer","last_synced_at":"2025-07-30T05:07:17.421Z","repository":{"id":114450471,"uuid":"156451098","full_name":"Achie72/dragon_demo_platformer","owner":"Achie72","description":"PICO-8 Fooling and Learning","archived":false,"fork":false,"pushed_at":"2021-04-20T13:13:03.000Z","size":516,"stargazers_count":11,"open_issues_count":6,"forks_count":3,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-06-20T18:48:06.133Z","etag":null,"topics":["2d-game","8bit","game","game-development","gamedev","hacktoberfest","lua","pico-8","pico8","pixel-art"],"latest_commit_sha":null,"homepage":"","language":"Lua","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Achie72.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":".github/FUNDING.yml","license":null,"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},"funding":{"github":null,"patreon":null,"open_collective":null,"ko_fi":"achiegamedev","tidelift":null,"community_bridge":null,"liberapay":null,"issuehunt":null,"otechie":null,"custom":null}},"created_at":"2018-11-06T21:35:52.000Z","updated_at":"2025-05-06T15:41:31.000Z","dependencies_parsed_at":null,"dependency_job_id":"f32c7533-f9af-4b4f-99be-eaf358547f7d","html_url":"https://github.com/Achie72/dragon_demo_platformer","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/Achie72/dragon_demo_platformer","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Achie72%2Fdragon_demo_platformer","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Achie72%2Fdragon_demo_platformer/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Achie72%2Fdragon_demo_platformer/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Achie72%2Fdragon_demo_platformer/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Achie72","download_url":"https://codeload.github.com/Achie72/dragon_demo_platformer/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Achie72%2Fdragon_demo_platformer/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":267814736,"owners_count":24148329,"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-07-30T02:00:09.044Z","response_time":70,"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":["2d-game","8bit","game","game-development","gamedev","hacktoberfest","lua","pico-8","pico8","pixel-art"],"created_at":"2025-02-04T15:34:55.949Z","updated_at":"2025-07-30T05:07:17.382Z","avatar_url":"https://github.com/Achie72.png","language":"Lua","funding_links":["https://ko-fi.com/achiegamedev","https://ko-fi.com/L4L81GBPX"],"categories":[],"sub_categories":[],"readme":"# DragonDemo\nPICO-8 Fooling and Learning\n\nGenerally this repository will contain my learning and experiments about the fantasy console named PICO-8 and platformers.  \nDon't forget to check the people i mentioned in the `Examples and credits` part.\n\n## Dragondemo.p8\nMy first ever project, in which i try to implement a basic platformer, with movements, and collisions as usual. Still under development, and heavily WIP.  \nCurrently i'm not concerned about token numbers, in this project i want to focus on readability.\n\n### Current Features\n* Tile based collision check\n* Global, configurable animator\n* Simple camera, that follows player\n* Fully dynamic UI prints. Just add the element you want to the `ui` collection in `set_ui()` and watch the magic happen.\n* Changeable player skins. Press `x` ingame to change your skin.\n* Pickups in the form of flowers. Also pickup sounds.\n* Proper health system. You start with three, indicated on the GUI, you lose one if you collide with enemies.\n* GUI containing health, and picked up flowers, and missing ones.\n* Two enemy AI. `knight` who just wanders, and turns if he can't go forward, and falls down on ledges. `spearman` who will guard the position, and won't fall of edges.\n* Proper game loop. Now you can lose, and win, and restart the game if one or the other happens.\n* Damage indication in the form of red flashing, invincibility frames, and health pickups in the form of the heart flowers.\n* The ability for the player to stomp enemies upon landing on them, and gaining upward momentum from them.\n* An OOP-like method for creating enemies, and animated grasses onto the game. `create_enemy` and `create_grass`\n* The ability to breath fireballs and fireflowers to replenish this ability.\n\n\n[Animator based on this cartridge](https://www.lexaloffle.com/bbs/?tid=3115 \"Simple Animation Function\")  \n[Collision based on this article](http://gamedev.docrobs.co.uk/first-steps-in-pico-8-easy-collisions-with-map-tiles \"First Steps in PICO-8: Easy Collisions with Map Tiles\")\n\n## How to use this\n* Open PICO-8 and type in `folder`. The OS will open the cartridge directory, with your dedicated file browser.\n* Paste `dragondemo.p8` into the directory.\n* Return to PICO-8 and press `ctrl+r` to reload.\n* Type `load dragondemo.p8` and `run`.\n\nAlternatively you can try it on [my](https://achie72.github.io/dragon_demo_platformer/) github page.\n\n## Examples and credits\nYou can find them under `examples/`. Credit to all owners. You can find their name and original cartridge name in the .p8 files. Thanks for them for sharing them.\n\nCredit to all examples:\n* coin thief adventure! - dylan\n* advanced micro platformer - matthughson\n* pixel-perfect collision test - josh millard\n* simple-collision-function - Scathe\n\nThanks for:  \n* enargy on Discord, for helping me with the collision system remake\n* tobiasvl on Discord, for putting up with my shit with lua ternaries\n\nThe whole family on Pico-8 Discord\n\n---  \n**Social media:**  \n[Follow me on Twitter](https://twitter.com/Achie7240)  \n[![ko-fi](https://www.ko-fi.com/img/githubbutton_sm.svg)](https://ko-fi.com/L4L81GBPX)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fachie72%2Fdragon_demo_platformer","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fachie72%2Fdragon_demo_platformer","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fachie72%2Fdragon_demo_platformer/lists"}