This document is an orientation for people who are new to the Allacrost project and wish to lend their talents.
The Allacrost project began in June 2004. Throughout the years, our team has ranged from being very small (5 members) to very large (30 members). Our primary means of communication with each other, as well as with our community, is through our forums. We also chat in our IRC channel, #allacrost on irc.freenode.net. No monetary compensation is offered through participation in the project. Everyone has their own personal reasons for contributing, whether it is to gain experience for their resume or portfolio, improve their skills, or simply because they enjoy it.
How Do I Join?
Put simply, there is no formal process to join the team. Allacrost is an open source project, and our development model is open as well. We consider you a part of the team as soon as you make your first contribution.
To begin contributing to the project, here's a recommended list of steps to take.
- Read (or skim) this entire page on the wiki.
- Glance through our Roadmap to get a sense of what we are currently working on
- Create an account on our forums
- Post on the forums and introduce yourself, and let the team know what you'd like to help out with.
- Read (or skim) any relevant pages to your area of work on the wiki.
- Complete a simple task that was suggested to you by the team and share your work with us on the forums
- Either continue asking for additional tasks to work on, or take initiative and find out for yourself what work needs to be done
Whether you are a programmer, artist, musician, or something else, the best way to get started is to first make a post on our forums. Introduce yourself to us and state what it is that you'd like to help out with. We will point you in the right direction and help you find a task to work on. Or you can find a task for yourself (by checking out the Roadmap or bug tracker) and submit it to us. We strongly encourage you to start out by working on something small and tangible that you are comfortable doing. Joining a large project with a long history can be intimidating, so getting some early gratification by completing something helps you to get your feet wet. It also shows the team that you are committed to being a part of the project.
After completing your first task, you will be given the stats of "Contributor" on the forums, which is your official acceptance as part of the team. From there, you can ask for more tasks, or track the ongoing discussions on the forum and find ways to help. It is recommended to keep performing small, easily-completed tasks for your first few days or weeks as you get accustomed to working on the project. Over time, you'll find yourself better prepared to handle larger and more complex tasks.
At the bottom of this page, you'll find links that will take you to additional information relative to the type of work that you will be doing.
- Contributors are those who are new to the project or who can only offer a small amount of their time.
- Staff are those who have distinguished themselves from normal contributors.
- Leaders are seasoned veterans who have put a serious amount of their time into the project.
We have a pretty loose and relaxed structure to our team. The three roles above signify the degree of commitment that an individual has made to a project. To get promoted, you simply need to continue contributing to the project. There are no tangible rewards for being promoted, but you do earn a higher level of respect and influence on the game's design.
The purpose of these "ranks" is meant simply to help us distinguish who the most influential people in the project are, in terms of how much they have contributed to our project. Being granted a higher rank means that we can feel okay to expect a little more out of you, but it is not a binding commitment that you must suddenly begin spending a certain amount of time every week working on Allacrost. Generally, we never demote anyone to a lower rank either.
The following are a few recommendations to get the most out of your time with us here. Following these policies will help you to be more happy, productive, and enable you to work better with other team members.
Collaborate with Others
Help each other improve their work with feedback and modifications.
Collaboration means that we help each other improve our work. Most often, this comes in the form of verbal feedback and suggestions for how someone can improve a feature or art piece that they are working on. Other times someone may directly modify your work and present it as a possible improvement. For example, if you are working on a sprite and share a draft of it, another artist may build upon it or greatly modify it to present an improved version. Do not take this act personally as an insult to the original owner of the work or as a kind of "theft". The end goal for the team is to produce the best product possible, and collaboration is one means that we use to reach that goal.
Ask For and Give Feedback
Share your work often. Very often!
As you are are working on a new feature, composition, or whatever task you are doing, continually share your work with the team throughout the design process. This could be drafts of images or music, implementation ideas for code, map layouts, etc. The reason we strongly encourage you to share your works in progress regularly is so that we can make sure that it meets expectations and you can receive suggestions and critiques of the work. It is very frustrating to work on a difficult task for a long time, only for the "finished" product you present to be poorly received, or find out that you had incorrect assumptions about the expectations for your work. It will save you time and frustration by sharing your work frequently, and will more than likely help your final product be better than it would have been otherwise as well.
Speak your mind freely, even when you disagree with the majority.
Don't be afraid if you have a different opinion from everyone else. It's a good thing. No one will punish you if you think something should be done in another way. This game belongs to each of us, not to a single person. When we have groups with different opinions, we discuss our options and go with a majority vote on the issue.
Take a break when you need to, but let others know.
Sometimes, life happens. You have to move, you get a second job, or something else greatly reduces your availability to contribute to Allacrost. If that happens, please be sure to let us know of your situation. Don't just completely disappear on us without a word, because after not hearing from people for a while we begin to question whether or not they'll come back.
Don't be afraid if you want to switch to something new.
If you were assigned with a task that you have become disinterested or tired with and would like to work on something else, let us know. There is a ton of work to do for Allacrost and it's almost guaranteed that we can find you something else to work on that you are interested in.
Most of all, make sure that you're having fun.
You are not being paid to work on this project. Therefore if you are not enjoying the work that you are doing. then there's not much reason for you to be working at all. All of us here came together because we saw potential in this game, and were willing to dedication our time and effort to realizing that potential. Please remember this, and if you find that you're not enjoying yourself, don't be afraid to talk about it with someone or share your discontent with the team. We can help you find ways to improve the situation.
Our project has several online services which our team uses on a daily basis to help us track our progress, communicate with one another, or archive our files. A list of all available services is first, followed by information on how to get an account, or get elevated privileges to an account, with each service. The are ordered according to their relative importance to the project.
- Account creation is mandatory.
Our primary medium of communication on this team is through the forums. We probably hold over 90% of our discussions and decisions on the forums, so its critical for you to stay informed of forum topics relevant to your work. Our forums include a private section that is only visible to team members.
- Account creation is optional.
We use our wiki for a wide variety of purposes, including documentation, standards for code/art/music, and other miscellaneous project information. It is greatly appreciated if you can spare some time to help keep the wiki up-to-date and continue to improve and expand the information shared there.
- #allacrost, #allacrost-dev @ irc.freenode.net
- Account creation is optional. You do not need an account to join the IRC channel.
Our team has two IRC channels available for real-time chat. The first, #allacrost, is available for anyone to join. The second, #allacrost-dev, is password-protected and available only to team members. We primarily chat in the public channel and only use the private channel for meetings and important discussions. IRC participation is encouraged, but optional. It is especially helpful for developers and game designers to use the IRC channel to get instant help or feedback.
- Account creation is optional, but recommended for artists and musicians.
If desired, any team member can have a personal FTP account and space created for them. This is useful if you have several files that you would like to share, such as concept art, early versions of a piece of music or a sprite, and so on. Artists and musicians are highly encouraged to ask for an account and use the FTP to share and organize all of their work. You can create whatever folders you would like and organize your FTP space in any manner that you wish. Once you upload your work, it is very simple to share a link to your work for others to examine.
Note that your FTP has no quota, but we ask that you do not abuse this privilege by uploading personal content not related to Allacrost. Do not upload copyrighted content that you do not have permission to share.
- Account creation is optional, but recommended for programmers and game designers.
The bug tracker is used to report and monitor bugs and other issues that are found in the game, editor, and our online services. Occasionally we may use the bug tracker to make a feature request as well. Programmers and game designers are most often the ones that will need to make regular use of the bug tracker.
- Account creation is optional.
Our website serves as our primary portal to the public. We share information about the project, major news updates, media releases (including screenshots), and announce new product releases here. The website allows people to post comments on news stories. The website also includes a team blog, where members of the team may share their personal thoughts on the project. Create an account on the website if you would like to post comments or blog entries. To post a blog entry, you must contact a team leader first and have your account granted additional privileges.
- Account creation is optional.
Some members may wish to use an Allacrost e-mail address. An official e-mail address is just like any other e-mail account that you can use with your favorite mail client (Microsoft Outlook, Mozilla Thunderbird, etc.). You can also access your e-mail through a webmail client at the address provided above.
A second option is a forwarding account. You can have any e-mail that is sent to email@example.com to be re-directed to firstname.lastname@example.org, for example. Some members may choose this if they want to give out their Allacrost e-mail, but continue to use an existing personal e-mail account.
- Account creation is optional, but mandatory for programmers and game designers.
Allacrost is a project hosted on Sourceforge, a repository of open source software projects. All of our releases are hosted on Sourceforge and it is also where our project's subversion repository resides.
Once you know which online services you will be using, you'll need to create accounts on them. If possible, please try to use the same or similar alias for all of your accounts so its easy for others to know who you are when they see your name across the different services. Some services may require assistance from a team leader to setup your account, or be granted the proper permissions. A list of team leaders can be found on the forums here. Feel free to send one of them a private message.
Register an account at the forums. Once you submit your first contribution, a team leader will add you into the contributors forum group, granting you access to see the hidden sections of the forums that are only viewable by the team.
Register an account at the wiki. You should not need any elevated privileges here.
You do not need to register an account to use the Freenode IRC network. If you would like to register your IRC nickname, follow the instructions found here
Ask a team leader to create an account for you. You will be sent information on how to access your new FTP account.
- Bug Tracker
Register an account at the bug tracker. With your default permissions you'll be able to create new reports and comment on existing ones. You'll have to ask a team leader to grant you elevated privileges so that you can be assigned an issue or update an issue's status.
Look to the left hand side of the website to create an account. Ask a team leader to grant you additional permissions if you want to be able to write blog posts on the site.
Ask a team leader to set this up for you. Make sure to tell them whether or not you want an e-mail account or an e-mail forwarding address setup.
You'll need to register your account on the Sourceforge website if you don't have one already. After registering, ask a team leader to add you to the project so that you can be granted write access to the code repository.
From here, you need to learn information that is relative to your line of work. Visit the page in the list below that is most relevant to your intended roll. If there is a link for "New [Role]" available on the page that you go to, you should read through that page and it should help you get started.
- Programmer Main
- Artist Main
- Musician Main
- Writer Main
- Translator Main
- Game Designer Main
- Release Manager Main
Additionally, you should pay a visit to the section of the forums that is most relevant to your work and make note of any stickied topics. Browsing through any recent discussions in your forum section is advised as well, as you will learn what items are under active development.