{"id":13339554,"url":"https://github.com/tayloryeow/Cod-e-mon","last_synced_at":"2025-03-11T14:31:44.453Z","repository":{"id":100917786,"uuid":"563642760","full_name":"tayloryeow/Cod-e-mon","owner":"tayloryeow","description":"Pokemon clone written in C++","archived":false,"fork":false,"pushed_at":"2023-02-02T14:48:41.000Z","size":16724,"stargazers_count":0,"open_issues_count":3,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2024-10-24T02:30:28.552Z","etag":null,"topics":["pokemon","practice","unit-testing"],"latest_commit_sha":null,"homepage":"","language":"C++","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/tayloryeow.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"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}},"created_at":"2022-11-09T02:47:50.000Z","updated_at":"2023-01-26T11:10:35.000Z","dependencies_parsed_at":"2023-06-10T18:00:35.820Z","dependency_job_id":null,"html_url":"https://github.com/tayloryeow/Cod-e-mon","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/tayloryeow%2FCod-e-mon","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tayloryeow%2FCod-e-mon/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tayloryeow%2FCod-e-mon/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tayloryeow%2FCod-e-mon/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/tayloryeow","download_url":"https://codeload.github.com/tayloryeow/Cod-e-mon/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243051898,"owners_count":20228289,"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":["pokemon","practice","unit-testing"],"created_at":"2024-07-29T19:20:21.783Z","updated_at":"2025-03-11T14:31:44.415Z","avatar_url":"https://github.com/tayloryeow.png","language":"C++","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Cod-é-mon - Pokemon clone \n\n#### Cliff's notes - Abstract :\n\nTwo Dimensional (2D) tile based game engine. Written, portably, in C++, _Cod-e-mon_ and the associated _Monsta_ game-engine can be cross-compiled, to unix based OS's (MacOs and Debian based Linux distros) and Windows 8+. \nThe Monsta Engine and which _Cod-e-mon_ game built on it, leverages CMake for its build system. \nThe SFML (Super Fast Multi-Media) is used as the graphical interface library. \n\nNote: Don't sue me nintendo buissness daddy.\n\n## Backstory \n\n#### This part is 95% ok to skip, its mostly my rambling and what I read to remember why I started this\n\nIn 2010 when I first began to learn to code in a systematic way, I had starry eyed dreams of becoming a video games programmer. \u003cbr\u003e\nI think this is likely a natural pipeline into computer science for many. Game Dev seems like a lot of crunch for rarely enough pay to me now. \u003cbr\u003e \u003cbr\u003e\nAny-hoozles. \u003cbr\u003e \u003cbr\u003e\nAs I had at that time already learned Basic, and was learning C in my highscool programming class I decided to try my hand at a pure C Pokemon clone. I submitted it as a summative project. It never ran to my satisfaction, and apparently it never ran at all on Mr. Krealman's PC. I got a good grade anyways somehow. (Thanks Mr.K) \u003cbr\u003e\nIt was a good piece of code for a highschooler, it had: \u003cbr\u003e\ntransitions, double buffering, a working (much to my astonishment) camera system, battles, et cetera. \u003cbr\u003e \u003cbr\u003e\nMy issues was that it was never portable or reliable. Simply put t'was buggy as-all-get-out and the ammount of *ahem* assistance I recieved on the project made me feel like it was never truly my work. (Thanks Geoffrey S.)\u003cbr\u003e\nNow as I finally finish my formal education and have amassed a decade or so of practical experience, let try our hand at reimplementing this solution. \u003cbr\u003e\n\n#### TLDR: This is an exercise in catharsis aswell as a way for me to gauge my growth as a dev\n\n## Exec. Summary: \u003cbr\u003e\n### Attempt to reimplement pokemon in C++ as an exercise\n\n## Project Goals\n#### In no particular order and subject to change at anytime as the mood strikes me\n\n\u003e Multiple Maps\n\u003e\n\u003e \u003e * Easy transitions between maps. Easy in this context means no noticable loading times.\n\u003e \u003e * Transition animations, i.e. wipes, fades. \u003cbr\u003e If you're thinking of early 2000s video editing software style transitions, you are in the right ball park.\n\u003e\n\u003e Wild Codemon areas \n\u003e \u003e * A battle system   \n\u003e \u003e * RPG progression system inspried, but hopefully not hopelessly derivative, of Pokemon.\n\u003e\n\u003e A Map Editor would be nice\n\u003e \u003e * Procedural map generator. Stoichastic - probably random noise based\n\u003e\n\u003e  Music\n\u003e\n\u003e \u003e * Jazz maybe?\n\u003e\n\u003e General Goals\n\u003e \u003e * No algorithms with runtimes beyond n Log(n)\n\u003e \u003e * Unit-testing harness suite\n\u003e \u003e * Would be nice if the harness suite also timed each major alorigthm automagically.\n\n\n### To-do bucket:\u003cbr\u003e\n- add collision\n- add bounds checking\n- add music\n- Redo assest importation: Make it a little bit more flexible. Had to use some hardcoding that I am unsatisfied with. Should ideally use macros to leverage preprocessor. This would ideally allow us to navigate to the target assets at compile time.\n- Add a testing suite for the low level data structures. I regret rolling my own but at this point adding the testing suite is the only way to nail everything down.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftayloryeow%2FCod-e-mon","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ftayloryeow%2FCod-e-mon","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftayloryeow%2FCod-e-mon/lists"}