{"id":14963993,"url":"https://github.com/arcanorum/rogueworld","last_synced_at":"2025-10-09T06:18:17.767Z","repository":{"id":37257770,"uuid":"211677378","full_name":"Arcanorum/rogueworld","owner":"Arcanorum","description":"Everything for the game Rogueworld.","archived":false,"fork":false,"pushed_at":"2023-11-16T18:40:49.000Z","size":389210,"stargazers_count":102,"open_issues_count":30,"forks_count":24,"subscribers_count":5,"default_branch":"dev","last_synced_at":"2025-04-07T05:06:43.078Z","etag":null,"topics":["browser","game","hacktoberfest","javascript","mmo","mmorpg","nodejs","phaser","phaserjs","rpg"],"latest_commit_sha":null,"homepage":"https://test.rogueworld.io/","language":"TypeScript","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/Arcanorum.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,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2019-09-29T14:41:20.000Z","updated_at":"2025-02-27T05:38:10.000Z","dependencies_parsed_at":"2024-09-18T18:15:53.821Z","dependency_job_id":null,"html_url":"https://github.com/Arcanorum/rogueworld","commit_stats":{"total_commits":1527,"total_committers":16,"mean_commits":95.4375,"dds":"0.16306483300589392","last_synced_commit":"d1e8253296b2d240100c7b3243af14654b7432d9"},"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"purl":"pkg:github/Arcanorum/rogueworld","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Arcanorum%2Frogueworld","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Arcanorum%2Frogueworld/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Arcanorum%2Frogueworld/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Arcanorum%2Frogueworld/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Arcanorum","download_url":"https://codeload.github.com/Arcanorum/rogueworld/tar.gz/refs/heads/dev","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Arcanorum%2Frogueworld/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":279000853,"owners_count":26082950,"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-10-09T02:00:07.460Z","response_time":59,"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":["browser","game","hacktoberfest","javascript","mmo","mmorpg","nodejs","phaser","phaserjs","rpg"],"created_at":"2024-09-24T13:32:26.526Z","updated_at":"2025-10-09T06:18:17.747Z","avatar_url":"https://github.com/Arcanorum.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"## [https://rogueworld.io/](https://test.rogueworld.io/)\n\n\u003cimg src=\"clients/game/src/assets/images/misc/branding/rogueworld-title.png\" width=\"100%\"/\u003e\n\n## Contents\n- [Introduction](#introduction)\n- [Getting started](#getting-started)\n- [Contributing](#contributing)\n- [Tooling](#tooling)\n- [Development setup](#development-setup)\n- [Guides](#guides)\n- [Attribution](#attribution)\n- [Links and resources](#links-and-resources)\n\n# Introduction\nGreetings! 🧙 You have stumbled upon the work area for Rogueworld, the free, open-source, browser based, massively multiplayer online RPG.\n\nThis area is intended for potential contributors who are interested in the project, but don't know where to begin. Any info that someone might want to find about joining and working on the project will probably be here somewhere, and if not, let me know and I'll update this documentation.\n\nRogueworld is open-source, meaning that anyone is free to see all aspects of how the game works on a technical level, and can also contribute to the project, such as adding new creatures, items, balancing, fixing bugs, and whatever else will make the game better.\n\nHere you can find basically everything that goes into the game, what is currently being worked on, and how you can help!\n\nThe creation of Rogueworld is a collaborative effort, with content and mechanics able to be added by members of the community.\n\nIt is a non-commercial project, so there are no promises of *\"rev-share\"* or *\"backpay when the game makes money\"* or whatever. That isn't the goal here.\nThis project is ideal for beginners, hobbyists, students, portfolio builders, work experience seekers, and of course regular players of the game curious to see how the magic happens.\n\n# Getting started\nFirst, you should have [played the game](https://test.rogueworld.io/) to get a feel for what it is like, what has been done so far, what looks lacking, and to generally get a good context for what you might want to get started with.\n\nThe main contribution areas are code, audio, visual, with other smaller ones like balance, translations and testing.\n\nYou probably came to this project already specialising in one of these. There are [guides](#guides) tailored for contributors that describe the general requirements for each field, that you can jump to if you just want to skip whatever doesn't apply to you.\n\n# Contributing\nWith so many moving parts to a video game, especially a one like this, it is important to keep the project managed well. I try to run the project like you would find in an actual software company, where each thing being worked on should be detailed, tracked, completed (or cancelled), tested and finally added to the game.\n\nThis is done using the main tasks backlog on the GitHub issues page.\n\n### Tasks backlog: https://github.com/Arcanorum/rogueworld/issues\n\nThere you can filter by whatever topic interests you using the tag filters.\n\n\u003cimg src=\"guides/issue-filters.gif\" width=\"60%\"/\u003e\n\nThis is where pretty much everything that is proposed to change about the game should start.\n\nFrom there, any tasks that are to be grouped together into a larger piece of work, such as a new major feature, will be organised into the project trackers for the major things that are being worked on.\n\n### Project trackers: https://github.com/Arcanorum/rogueworld/projects\n\n***Once you have found something you want to have a go at, you should let me (or other GitHub project admin) know that you want to start something so it can be marked as in progress, so multiple people don't start the same thing. Don't just randomly submit PRs out of nowhere.***\n\n# Tooling\n### *\"What engine is the game made with?\"*\n\nThis game doesn't use an off the shelf game engine/centralised project manangement GUI, like Unity, Unreal, GameMaker, etc.\n\nAs a game that is also a website, it uses many of the tools of the web development trade. The \"engine\" is a custom setup that brings together various tools that are all free, widely used, and reasonably well documented, that are each specialised for a certain task.\n\nTo be able to run and edit the game yourself on your own computer, there is a setup guide that should provide a quick and easy set of instructions to get everything working with minimal messing about, though general web development knowledge will be needed to be able to do any non-trivial tasks.\n\n**Though, setting up and running the game on your own computer is not necessary for many kinds of contributions.**\n\nA lot of tasks are fairly self contained, mainly creating assets (sprites, sounds), and can just be passed to someone else who does have the rest of the project set up, to integrate into the game on your behalf.\n\nTo let people see what the implemented asset is like in game, there is a public test server that is updated with recent work much more often than the live game, and is used for faster turnarounds for testing and feedback, before things go into an update for the live game.\n\n### Public test server: https://test.rogueworld.io/\n\n# Development setup\n[See this guide for going through setting up the project and getting it running on your computer.](./SETUP.md)\n\n# Guides\n## *\"I want to add a...\"*\nFeatures are divided into two general categories:\n\n## **Mechanics:**\nThings like movement, collision, creating entities, AI, new systems, etc. that affects the fundamental flow of the game. Due to how they are often intricately tied to many other things, it is recommended to get some familiarity with the core components of the codebase first and the most common workflows (creating items, creatures, actions), then look for something appropriate in the tasks backlog that has been sufficiently planned out and ready to be worked on.\n\n## **Content:**\nThings that make use of existing mechanics to give players stuff to do, such as points of interest to explore, resources to gather, items to craft, creatures to fight, structures to build, etc.\n\n*Below are guides for each, where you are encouraged to think of something different to add instead of just the examples given and to experiment with each step of the guide, so you aren't just copying the guide without understanding what is happening.*\n\n- ### [Item](guides/items/ITEMS.md)\n\n- ### [Crafting recipe](guides/crafting_recipes/CRAFTING_RECIPES.md)\n\n- ### [Creature](guides/creatures/CREATURES.md)\n\n\u003c!-- - ### Graphic asset guidelines (TODO) --\u003e\n\n\u003c!-- - ### Audio asset guidelines (TODO) --\u003e\n\n# Attribution\nProper attribution of all work is expected. This includes original creations submitted by contributors, and anything used from somewhere else (such as opengameart.org or other asset sharing resource).\n\nThe credits page for the game lists the currently used assets for the game, and should be updated when new things are used by the project by more authors.\n\n### Credits page: https://test.rogueworld.io/credits/\nA \"work\" or \"works\" is a piece of artistic work you have created, such as textures, sprites, sound effects, music, story/lore, etc.\n\nThis project uses the [MIT license](https://github.com/Arcanorum/rogueworld/blob/master/LICENSE), and as such can be copied, modified, redistributed, and even used commercially by anyone. Any works you wish to submit will also be included under the project's MIT license.\n\nUnder MIT, attribution is not required, but is given anyway as a courtesy.\n\nAn attribution may (but doesn't have to) include:\n- The specific works you did.\n- Your name and/or nickname/alias.\n- A link to your website, portfolio, or other profile.\n\nFor example:\n\u003eScamp character animation by Arcan (https://github.com/Arcanorum)\n\nYou should be asked how you want to be credited when you submit something.\n\nHowever, if you do not agree to the MIT terms for your submissions, you can submit them using another license that suits your needs, and that one shall take precedence.\n\nFor example, if you want to require attribution (credit) for use of your work by anyone else who uses it (such as someone taking the work and using it in another game), you probably want to use one of the CC-BY licenses (https://creativecommons.org/about/cclicenses/). This can be discussed with a project maintainer (i.e. Arcan) as needed.\n\n# Links and resources\n  \u003c!-- - [Live game](https://rogueworld.io/) --\u003e\n  - [Test server](https://test.rogueworld.io/)\n  - [Discord server](https://discord.gg/7wjyU7B)\n  - [NodeJS](https://nodejs.org/en/) (JavaScript runtime)\n  - [MongoDB](https://www.mongodb.com/) (player accounts DBMS)\n  - [Phaser](http://phaser.io/) (frontend rendering, input \u0026 audio playback framework)\n  - [NextJS](https://nextjs.org/) (frontend GUI and build framework)\n  - [Free Texture Packer](http://free-tex-packer.com/) (texture packer)\n  - [Tiled](https://www.mapeditor.org/) (map editor)\n  - [Translations spreadsheet](https://docs.google.com/spreadsheets/u/1/d/1n6jSigPBWrubNQMTz00GsLIh3U8CMtfZH8wMFYmfHaA/edit?pli=1#gid=0)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Farcanorum%2Frogueworld","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Farcanorum%2Frogueworld","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Farcanorum%2Frogueworld/lists"}