Table of Contents
Index
Issues
Found a bug? Want a feature? Go ahead and make an issue in our GitHub issue tracker, and we'll see what we can do.
Contributions
See an issue that you think you can handle? Want to make an improvement? Just fork this repository, make your changes, and submit a pull request. After you have made your fork, you'll want to keep it in sync to get the latest changes.
We will need you to agree to a very simple contributor license agreement before we accept your pull request. Basically, it says that you have the right to contribute this code--it's not some proprietary code we can't use.
We are going to organize our branches something like this, but you probably don't need to get into that.
It is nice if you follow our coding guidelines and include tests, but don't let that stop you from contributing.
Communication
Let's try to keep it to these five channels so that everything can be as open as possible:
- Discuss particular issues in the issue tracker.
- Discuss anything possibly interesting to others in the CodeCombat Discourse forum.
- Ask anything time-sensitive and public in the Slack channel or HipChat.
- Go into high-bandwidth collaboration on a Google Hangout call (organize it via chat)
- Use the Contact form on codecombat.com to send the team a private email. Try to use the public methods if possible, since open-source projects thrive on transparency.
Things to Do
There's so much fun stuff to do! The blessing of working on a game is that game programming is really fun. The curse is that there's always an impossible amount of work to do.
You can check the issues list or just talk to us about some improvement you'd like to make. This is a very large project, so we imagine most contributors will pick one or two areas of interest and focus on those, instead of understanding the whole system. Here are a few areas:
- Server: improving the Node.js server and database code
- Play view: everything you see when playing a level, and possibly the most concrete stuff to work on
- Tome (spell editor): within the play view lurks CodeCombat's beating heart, which can be made much more amazing
- Level editor: some concrete parts, some abstract parts, some parts so meta they'll blow your mind
- Surface: everything to do with graphics and sound lives in here
- World: the game engine itself, with code split between GitHub and the Components and Systems in the database
- Website: we'd appreciate any help with our web design or improvements to our copy
- i18n: we have a preliminary system for internationalization already, but it could be much better
- Treema: another GitHub repository entirely, this project handles making editable GUIs for JSON data
- Aether: if you like computer science, compilers, programming languages, and craaazy code, you'll love our JavaScript transpiler project
- Testing: we have been naughty and not written enough tests, so if you're into testing, let's do it
Of course, there are other things you can do without needing to get into this GitHub to do it, like making levels, playtesting, writing documentation, translating, and helping other players. See our /contribute page for details.
- Home
- Archmage Home
- Artisan Home
- Adventurer Home
- Scribe Home
- Diplomat Home
- Ambassador Home
- Archmage General
- Mission statement
- Coco Models
- Coding Guidelines
- Cookbook
- File system
- JSON Schema
- Technical overview
- Testing
- Third party software and services
- Artisan General
- Building A Level
- Coding Guidelines for Artisans
- Editing Thang Components
- Important Artisan Concepts
- Keyboard Shortcuts
- Artisan How-To Index
- Adventurer General
- Scribe General
- Diplomat General
- i18n
- i18n Glossary nb
- i18n Glossary ru
- i18n Glossary es-419
- Ambassador General
- Dev Setup
- Dev Setup: Linux
- Dev Setup: Windows
- Dev Setup: Mac
- Dev Setup: Vagrant
- Dev Setup: Issues
- Game Engine
- Component
- Multiplayer
- Surface
- System
- Thang
- Thang Component System
- Tome
- World
- Artisan Tabs
- Components And Systems
- Scripts
- Settings
- Thangs
- Other
- Aether
- Client models
- Developer organization
- Educational Standards
- Events, subscriptions, shortcuts
- Chat Room
- Chat Room Rules
- Permissions
- Project Ideas List
- Treema
- Versioning
- Views
CodeCombat | Home | Blog | Forum | Teachers | Legal | Contribute