mirror of
https://github.com/evennia/evennia.git
synced 2026-03-16 21:06:30 +01:00
Add breadcrumbs. Format markdown files to char width 100
This commit is contained in:
parent
10c1831aad
commit
78970e92b3
142 changed files with 10357 additions and 3417 deletions
|
|
@ -37,7 +37,8 @@ We always need more eyes and hands on the code. Even if you don't feel confident
|
|||
and reporting when stuff doesn't make sense helps us a lot.
|
||||
|
||||
The most elegant way to contribute code to Evennia is to use GitHub to create a *fork* of the
|
||||
Evennia repository and make your changes to that. Refer to the [Forking Evennia](Version-Control#forking-evennia) version
|
||||
Evennia repository and make your changes to that. Refer to the [Forking Evennia](Version-
|
||||
Control#forking-evennia) version
|
||||
control instructions for detailed instructions.
|
||||
|
||||
Once you have a fork set up, you can not only work on your own game in a separate branch, you can
|
||||
|
|
@ -65,23 +66,53 @@ directory contains game systems that are specialized or useful only to certain t
|
|||
are welcome to contribute to the `contrib/` directory. Such contributions should always happen via a
|
||||
Forked repository as described above.
|
||||
|
||||
* If you are unsure if your idea/code is suitable as a contrib, *ask the devs before putting any work into it*. This can also be a good idea in order to not duplicate efforts. This can also act as a check that your implementation idea is sound. We are, for example, unlikely to accept contribs that require large modifications of the game directory structure.
|
||||
* If your code is intended *primarily* as an example or shows a concept/principle rather than a working system, it is probably not suitable for `contrib/`. You are instead welcome to use it as part of a [new tutorial][tutorials]!
|
||||
* The code should ideally be contained within a single Python module. But if the contribution is large this may not be practical and it should instead be grouped in its own subdirectory (not as loose modules).
|
||||
* The contribution should preferably be isolated (only make use of core Evennia) so it can easily be dropped into use. If it does depend on other contribs or third-party modules, these must be clearly documented and part of the installation instructions.
|
||||
* If you are unsure if your idea/code is suitable as a contrib, *ask the devs before putting any
|
||||
work into it*. This can also be a good idea in order to not duplicate efforts. This can also act as
|
||||
a check that your implementation idea is sound. We are, for example, unlikely to accept contribs
|
||||
that require large modifications of the game directory structure.
|
||||
* If your code is intended *primarily* as an example or shows a concept/principle rather than a
|
||||
working system, it is probably not suitable for `contrib/`. You are instead welcome to use it as
|
||||
part of a [new tutorial][tutorials]!
|
||||
* The code should ideally be contained within a single Python module. But if the contribution is
|
||||
large this may not be practical and it should instead be grouped in its own subdirectory (not as
|
||||
loose modules).
|
||||
* The contribution should preferably be isolated (only make use of core Evennia) so it can easily be
|
||||
dropped into use. If it does depend on other contribs or third-party modules, these must be clearly
|
||||
documented and part of the installation instructions.
|
||||
* The code itself should follow Evennia's [Code style guidelines][codestyle].
|
||||
* The code must be well documented as described in our [documentation style guide](https://github.com/evennia/evennia/blob/master/CODING_STYLE.md#doc-strings). Expect that your code will be read and should be possible to understand by others. Include comments as well as a header in all modules. If a single file, the header should include info about how to include the contrib in a game (installation instructions). If stored in a subdirectory, this info should go into a new `README.md` file within that directory.
|
||||
* Within reason, your contribution should be designed as genre-agnostic as possible. Limit the amount of game-style-specific code. Assume your code will be applied to a very different game than you had in mind when creating it.
|
||||
* To make the licensing situation clear we assume all contributions are released with the same [license as Evennia](Licensing). If this is not possible for some reason, talk to us and we'll handle it on a case-by-case basis.
|
||||
* Your contribution must be covered by [unit tests](Unit-Testing). Having unit tests will both help make your code more stable and make sure small changes does not break it without it being noticed, it will also help us test its functionality and merge it quicker. If your contribution is a single module, you can add your unit tests to `evennia/contribs/tests.py`. If your contribution is bigger and in its own sub-directory you could just put the tests in your own `tests.py` file (Evennia will find it automatically).
|
||||
* Merging of your code into Evennia is not guaranteed. Be ready to receive feedback and to be asked to make corrections or fix bugs. Furthermore, merging a contrib means the Evennia project takes on the responsibility of maintaining and supporting it. For various reasons this may be deemed to be beyond our manpower. However, if your code were to *not* be accepted for merger for some reason, we will instead add a link to your online repository so people can still find and use your work if they want.
|
||||
* The code must be well documented as described in our [documentation style
|
||||
guide](https://github.com/evennia/evennia/blob/master/CODING_STYLE.md#doc-strings). Expect that your
|
||||
code will be read and should be possible to understand by others. Include comments as well as a
|
||||
header in all modules. If a single file, the header should include info about how to include the
|
||||
contrib in a game (installation instructions). If stored in a subdirectory, this info should go into
|
||||
a new `README.md` file within that directory.
|
||||
* Within reason, your contribution should be designed as genre-agnostic as possible. Limit the
|
||||
amount of game-style-specific code. Assume your code will be applied to a very different game than
|
||||
you had in mind when creating it.
|
||||
* To make the licensing situation clear we assume all contributions are released with the same
|
||||
[license as Evennia](Licensing). If this is not possible for some reason, talk to us and we'll
|
||||
handle it on a case-by-case basis.
|
||||
* Your contribution must be covered by [unit tests](Unit-Testing). Having unit tests will both help
|
||||
make your code more stable and make sure small changes does not break it without it being noticed,
|
||||
it will also help us test its functionality and merge it quicker. If your contribution is a single
|
||||
module, you can add your unit tests to `evennia/contribs/tests.py`. If your contribution is bigger
|
||||
and in its own sub-directory you could just put the tests in your own `tests.py` file (Evennia will
|
||||
find it automatically).
|
||||
* Merging of your code into Evennia is not guaranteed. Be ready to receive feedback and to be asked
|
||||
to make corrections or fix bugs. Furthermore, merging a contrib means the Evennia project takes on
|
||||
the responsibility of maintaining and supporting it. For various reasons this may be deemed to be
|
||||
beyond our manpower. However, if your code were to *not* be accepted for merger for some reason, we
|
||||
will instead add a link to your online repository so people can still find and use your work if they
|
||||
want.
|
||||
|
||||
[ohloh]: http://www.ohloh.net/p/evennia
|
||||
[patron]: https://www.patreon.com/griatch
|
||||
[donate]: https://www.paypal.com/en/cgi-bin/webscr?cmd=_flow&SESSION=TWy_epDPSWqNr4UJCOtVWxl-pO1X1jbKiv_-UBBFWIuVDEZxC0M_2pM6ywO&dispatch=5885d80a13c0db1f8e263663d3faee8d66f31424b43e9a70645c907a6cbd8fb4
|
||||
[donate]: https://www.paypal.com/en/cgi-bin/webscr?cmd=_flow&SESSION=TWy_epDPSWqNr4UJCOtVWxl-
|
||||
pO1X1jbKiv_-
|
||||
UBBFWIuVDEZxC0M_2pM6ywO&dispatch=5885d80a13c0db1f8e263663d3faee8d66f31424b43e9a70645c907a6cbd8fb4
|
||||
[forking]: https://github.com/evennia/evennia/wiki/Version-Control#wiki-forking-from-evennia
|
||||
[pullrequest]: https://github.com/evennia/evennia/pulls
|
||||
[issues]: https://github.com/evennia/evennia/issues
|
||||
[patch]: https://secure.wikimedia.org/wikipedia/en/wiki/Patch_%28computing%29
|
||||
[codestyle]: https://github.com/evennia/evennia/blob/master/CODING_STYLE.md
|
||||
[tutorials]: https://github.com/evennia/evennia/wiki/Tutorials
|
||||
[tutorials]: https://github.com/evennia/evennia/wiki/Tutorials
|
||||
Loading…
Add table
Add a link
Reference in a new issue