Contributing

You can contribute to OpenBlox in many ways. For example, you can improve the content of this website or write new content about OpenBlox. If you’re a programmer, you can contribute to the game engine or the other tools that are developed as part of the OpenBlox project.

Donation

We accept donations in the form of Bitcoin, Litecoin and PayPal payments. You can find our current addresses signed by the project leader, John Harris. Monetary contributions help keep our servers running, pay for our domain name, and internet access, among other things.

Hardware

We also accept hardware donations including, but not limited to, the following hardware devices:

Donated hardware does not have to be in working condition, but it would be preferable if we don’t have to take our system administrator away from other work to fix devices. Send hardware offers to hardware-donation@openblox.org.

Documentation

Documentation of the OpenBlox game engine and related software is done on our GitLab instance. To contribute, you only need to create an account. The GitLab documentation provides guides for forking the API documentation repository, committing your changes, and submitting a merge request. We will review your changes before merging them. You can ask for help on the devel mailing list.

Translation

We’re always looking for translators for this website and the API documentation, as well as the engine and client. If you wish to translate the documentation, contact mark@openblox.org. To translate the engine and client, contact johnmh@openblox.org.

Development

The OpenBlox source code is hosted at git.openblox.org. You will need the Git version control system installed on your system to contribute. You can choose one of the repositories listed and use the git clone command to clone the repository using one of the URLs given. For example, to clone the code repository for the game engine, you could run git clone https://git.openblox.org/openblox/libopenblox.git.

This will create a directory containing the source code where you can make changes, stage them, and commit them. If you are not familiar with Git, you can see the Git tutorial with the command git help tutorial, or you can see the Git tutorial and the Git User’s Manual in a web browser. After making changes, you will need to build the project to test them. Please read the README and HACKING files of the project for instructions specific to that project.

Once you have commits you would like to submit for review, you have several options. If you prefer GitLab’s interface, you can “Fork” the project you want to work on and send us a merge request. If you prefer email, you can run git format-patch –to=devel@lists.openblox.org commit. Git will generate a patch for every commit done after (and including) the commit designated by commit, which can be the commit’s hash, HEAD~1 for the previous commit, HEAD~2 for the commit before that commit, etc., or origin/master if you want to include all commits added to your local repository that are not in the upstream repository. The command will give you the name of the patch files created. Send these messages as email to devel@lists.openblox.org for review, keeping the subject and message content generated by Git. You can use any mail client, but we recommend you use git send-email (see git help send-email), which on Debian and Fedora you can get from the git-email package. You can add an introductory message with the --compose option, which is likely to be desirable for nontrivial patches.

When you are creating a commit for another user, you can use git commit --author="AUTHOR" to specify the change’s author. Each line in commit messages should be 71 characters or less. Commit messages should contain only printable UTF-8 characters. Always use present tense. If a commit has multiple authors, for example altered patches, prepend an empty line to your commit message followed by “Co-Authored-By: Name <email>”.

Bug tracker

The OpenBlox project hosts a Bugzilla installation which is to be used for the OpenBlox engine and related projects.