Skip to content
Robson Richards edited this page Mar 9, 2014 · 11 revisions

Welcome to the NTstation13 project!

NTStation13 aims to be as inclusive as possible of both code and coders while also maintaining strong ties to the playerbase of the /tg/station servers. I'm planning to update this document as we go along, but for the moment, here are the policies:

  • Most importantly, please be respectful! Coding should be as much fun as playing the game.
  • Individuals who have previously coded for ss13 will be given contributor access to the repository. This gives you permission to push to master; but please don't push everything to master! Minor things are fine, but please make a new branch and a pull request and/or a post on the fourms for major things. Use your best judgement, and be polite to other coders and players. Keep your changelog up to date in any case.
  • Pull requests do not need to be your enemy, even if you have commit and merge access! They're a good way to help integrate with the bugtracker.
  • If you haven't coded for SS13 already, that doesn't mean we don't want you to contribute! Ask any questions you have on the fourms, and then make a pull request for your code. Someone will review it, tell you if there are any issues with it, and then commit it. After a few commits under your belt, you'll be given contributor access.

After something has been committed, please listen to feedback on the fourms! This is both before master is pushed to the server (other coders) If there is a backlash against it, please revert it and go back to the drawing board some on its own branch. Although you're not required in any way to discard your code because it's not 100% loved, if there is significant controversy about it please be polite and tweak it away from master.

The goal for this project is to incorporate as many ideas as possible and keep SS13 going forward. Perfect code quality is not required, but please be attentive to what you're modifying. Is it a rarely used item that only does something onclick? It will be fine. Are you modifying the master controller loop or the move proc? Please be very careful.

Good practices for commiting:

  • For anything that changes game balance or removes content, make a pull request and leave it up for a few days for people to comment. Pulling your own pull request can be gauche.
  • Please don't become too attached to your code! If you feel it could be controversial, please make a post on the fourms about it before coding it. That way, you don't risk putting work into something other people don't agree with.
  • Try and reach a consensus on anything controversal

Good practices for coding:

  • Avoid snowflake code
  • Avoid colons
  • Use the /span classes for text output
  • Split statements and their cause onto separate lines e.g. not "If(X) Return Y"

Feel free to look at and politely help each other. We can all learn from suggestions and ideas, and don't take offense if someone points out a better way to do something. Consider it first, then politely accept or decline. At the same time, be nice. No one is here to ruin anything intentionally.

Above all, remember, coding is fun! Having other people use your code is fun. Please have fun.

Clone this wiki locally