Skip to content

How to Become an Achievement Developer

This document describes all the steps that any aspiring achievement developer must follow before getting Developer status. These requirement are also a checklist for Code Reviewers (developers who inspect the code of new developers).

Anyone can become a RetroAchievements developer if they put in the effort.

Strongly recommended: join our Discord server so you can get in contact with other achievement developers who can show you the ropes and help you along. If you already know what game you want to work on, go ahead and ask for the jr-dev role. This gives you access to the #jr-devs channel, where you can talk to code reviewers and ask any development related questions.

Required Knowledgelink

Every developer must know at least the basic concepts and techniques shown in these two docs:

  1. Getting Started as an Achievement Developer
  2. Achievement Logic Features

Any aspiring dev must demonstrate understanding of the following concepts:

Note: You do not need mastery of all these concepts to have a set published, but you do need them to have the full Developer role.

Advanced Conceptslink

Here is a list of some advanced concepts/techniques. They are not required to become a Developer, but are listed here to let the jr-dev know the possibilities of the Achievement's logic.

The Real Examples and Achievement Templates pages are useful resources to see how those techniques work.

Practicinglink

In order to become familiar to those techniques you must practice. You can use any game to practice, even those that already have achievements. Just be aware about these rules:

  • Do NOT delete/overwrite any existing Code Note.

  • On this practicing phase, keep your work in local and do NOT upload any achievement. You'll do it later when you find a game to actually work on.

Finding a Game to Work onlink

Follow the guidelines on the Developer's Code of Conduct to find a game to work on achievements for it. The basics are that you must declare you plans to work on the game on in the forum, and then as you work on the game, add your plans for the game in the forum.

Tip: for your first achievement set it's recommended to choose a game that doesn't yet have achievements and is not very popular.

Planning your Achievement Setlink

Once you find a game to work on you need to plan your Achievement Set.

Be sure you know enough about the game to make a good set. Check the GameFAQs or something, try to learn more about the game, its secrets and details. Here is a good guide to help you with this: Set Development Roadmap.

Post your plans on the official game's forum topic, so the community can leave suggestions and provide feedback. This is required behavior for all devs and jr-dev.

IMPORTANT!: be open to receive feedback and suggestions.

See also: Achievement Design, it's an extensive guide on how to design good and interesting achievements. It's not about the technical side but the conceptual.

Post your achievements to Unofficial for reviewinglink

After creating some achievements, promote them to Unofficial and then contact a @mod or @code-reviewer on our Discord server (if you don't use Discord, send a message to RAdmin) and ask them to find someone to review your work.

Again, it's extremely important that you are open to receive constructive criticism and helpful advice from the community at any time.

Am I ready to get the Developer status?link

Once the Code Reviewers have inspected your achievement's code and concepts, they and the admin will use the "Required Knowledge" checklist above to determine if you're ready. If you're not fully qualified to be a developer but but your set is complete and stable the set will get published. You can then ask which concepts you still need to demonstrate proficiency in to be given developer status.

The merit of a jr-dev receiving developer status depends on:

  • their ability to publish work that meets the standards of the Developer's Code of Conduct;
  • demonstration of required knowledge and advanced concepts;
  • the quality and complexity of their work;
  • the time and thought they put into planning and working on achievements;
  • showing the will to use the Developer status with care and responsibility;
  • the extent to which the points above reflect their capabilities as a developer.

Developer's Code of Conductlink

Once you get your Developer status, you MUST adhere to the Developer's Code of Conduct. That is extremely important to create a fair environment between the Achievement Developers.

Changeloglink

Last 10 changes on this page:

  • [2019-03-14 13:24] meleu: decrease verbosity (requesting to be verified right after joining discord is implicity)
  • [2019-03-14 01:12] Keltron3030: Updated How to Become an Achievement Developer (markdown)
  • [2019-03-14 01:11] Keltron3030: Updated How to Become an Achievement Developer (markdown)
  • [2019-03-14 01:10] Keltron3030: Added basic discord instructions for aspiring developers
  • [2019-02-18 16:59] meleu: fix broken links
  • [2019-02-12 13:25] meleu: fix broken link
  • [2019-02-12 12:34] meleu: fix broken link
  • [2019-02-12 12:32] meleu: fix broken links
  • [2019-02-12 12:29] meleu: add links to examples for using hit counts as a timer
  • [2019-02-12 12:19] meleu: fix broken links