If you want to contribute to the project, you are more than welcome. It is usually a good idea to contact us on Discord (e.g. taranion#5388 ) to discuss what is needed. There also is the feature wishlist from our users:
https://sr6-foundry.sleekplan.app/
What you need to contribute is
Typescript (or at least Javascript) knowledge
Git knowledge
be willing to teach yourself Foundry specifics by studying foreign code
Step 1: Create a Bitbucket account
Bitbucket is comparable to Github - a plattform where you can host projects. Accounts are free.
Step 2: Forking the repository
All contribution work starts with making your own fork. The repository to fork is https://bitbucket.org/rpgframework-cloud/shadowrun6-eden/src/master/ .
Usually the option to fork the repository can be found on the “Source” page in the sandwich menu. Unfortunately there currently (January 2023) is the problem, that the option to fork public repositories isn’t available anymore - which is likely a bug ( https://jira.atlassian.com/browse/BCLOUD-22395 )
The workaround is to contact taranion#5388 and ask for explicit read permissions (to the public repository 🤪 ) - that will enable the fork option.
Step 3: Discuss need for a branch
Depending on what you plan to do, you can either work on the master
branch or a dedicated branch for your task. As a rule of thumb: as long as your contribution is small, like fixing typos or providing a translation, you don’t need a dedicated branch.
If in doubt, use the Discord to discuss.
Step 4: Clone the repository
Wait until the branch you need is created on the server (if it is not master
)
Locate your Foundry installations FoundryVTT\Data\systems
directory and clone the repository at that location. This should create a subdirectory named shadowrun6-eden
. If you previously had the game system installed, you will already have the shadowrun6-eden
directory - delete it.
Change into the branch if needed.
Step 5: Install the typescript compiler
We currently use 4.6.2 . Newer versions are not able to compile all dependencies.
Run tsc
in inside the shadowrun6-eden
directory. It will create a lot of files in the modules
subdirectory.
Congratulations! You are ready to go
Step 6: Work
If all went well, Foundry should start and now use your local setup.
If you changed files that are not in the
modules
subdirectory, simply reloading in Foundry should activate those changesDon’t directly change files in the
modules
subdirectory - make your changes in Typescript in thesrc
subdirectory and runtsc
again.
Note: Your IDE may automate omitting Typescript filesSome changes, e.g. to the
template.json
require a full reload of the game system, meaning “Return to Setup” and restart your game world.
Step 7: Commit your changes
Once your are done coding and want to let us review it, make sure that all changes are commited to your repository and pushed.
Ask us to give you a issue ticket. You will get a identifier like SR6FVTT-175 .
On the web page of Bitbucket of your repository, go to the “Pull Request” page and select “Create Pull Request” on the upper right side. In the first line of the notes for this PR, write down the identifier from the issue ticket.
Add “Stefan Prelle” as a reviewer - that way I will be notified that a new PR is waiting.