aboutsummaryrefslogtreecommitdiff
path: root/docs/contribution-quickstart-guide.md
diff options
context:
space:
mode:
author ClarkeCode <33846391+ClarkeCode@users.noreply.github.com>2023-02-23 15:50:11 +0100
committer GitHub <noreply@github.com>2023-02-23 15:50:11 +0100
commitc57c9fea0084bcab41b142465d27b2abed65888b (patch)
tree10640ed890ce8032ebb39dffb3ba59787b219321 /docs/contribution-quickstart-guide.md
parent659902727ea838b84b4ea81bfda3b5db3c6e388b (diff)
Added contributor quickstart guide (#19)
Diffstat (limited to 'docs/contribution-quickstart-guide.md')
-rw-r--r--docs/contribution-quickstart-guide.md117
1 files changed, 117 insertions, 0 deletions
diff --git a/docs/contribution-quickstart-guide.md b/docs/contribution-quickstart-guide.md
new file mode 100644
index 0000000..153985c
--- /dev/null
+++ b/docs/contribution-quickstart-guide.md
@@ -0,0 +1,117 @@
+# Contributor Quickstart Guide
+
+## Required Software
+- A way to use `git` such as Git Bash or the Windows-Linux Subsystem
+- Python 3.x
+- Scons
+- Godot
+- A programming IDE such as Visual Studio Code
+
+# Software Installation
+## 1. [Git Bash](https://git-scm.com/download/win)
+- Download and run the [64-bit Windows installer](https://github.com/git-for-windows/git/releases/download/v2.39.2.windows.1/Git-2.39.2-64-bit.exe)
+
+![](images/installation/git-bash-dl-page.png)
+
+- Leave settings as default
+
+![](images/installation/git-bash-finish-installation.png)
+
+
+## 2. [Python](https://www.python.org/downloads/)
+- Download the [latest version of Python](https://www.python.org/downloads/) (this includes `pip`)
+
+![](images/installation/python-dl-page.png)
+
+- Check "Add python.exe to PATH" and use the "Install Now" option
+
+![](images/installation/python-installer.png)
+
+
+## 3. Scons
+- Open Windows Powershell and run the command `pip install scons`
+
+![](images/installation/scons-install.png)
+
+## 4. [Godot](https://downloads.tuxfamily.org/godotengine/4.0/rc3/)
+- Download Godot 4. The current version for the project will be on the [main README](../README.md) page.
+
+![](images/installation/godot-dl-page.png)
+
+- Unzip the Godot executable wherever you prefer to have it
+
+![](images/installation/godot-unzip.png)
+
+## 5. [Visual Studio Code](https://code.visualstudio.com/download) (IDE)
+- For editing the C++ portion of the codebase, you may use any IDE that you are comfortable using
+- [Visual Studio Code](https://code.visualstudio.com/download) is a popular choice of IDE
+
+![](images/installation/vscode-dl-page.png)
+
+# Project Setup
+
+1. [Go to the main repository](https://github.com/OpenVic2Project/OpenVic2) page on Github
+
+2. Get the link to clone the repo
+
+![](images/proj-setup/01-git-clone-link.png)
+
+3. Using Git, clone the repo: `git clone git@github.com:OpenVic2Project/OpenVic2.git`
+
+![](images/proj-setup/02-git-clone.png)
+
+4. Move into the OpenVic2 directory: `cd OpenVic2`
+
+5. Retrieve submodules: `git submodule update --init --recursive`
+
+![](images/proj-setup/03-submodules.png)
+
+6. Create and checkout a new git branch for your changes: `git switch -c my-cool-branch`
+ - You should give your branch a descriptive name of the changes you intend to make
+
+![](images/proj-setup/04-new-branch.png)
+
+7. Build the C++ portion of the project by running `scons` in Powershell
+ - It will take a minute to initially compile. Any future C++ changes only need to recompile the files that were changed and are much faster
+
+![](images/proj-setup/05-scons.png)
+
+8. Run the Godot executable
+
+9. Select the 'Import' project button
+
+![](images/proj-setup/06-import.png)
+
+10. Navigate to the `OpenVic2/game/` directory and select the `project.godot` file
+
+![](images/proj-setup/07-select-project.png)
+
+11. Select "Import & Edit"
+
+![](images/proj-setup/08-import-edit.png)
+
+12. This will open the Godot editor! Make your changes as desired and press the "Play" button in the top-right corner to run the game in-editor.
+
+![](images/proj-setup/09-run-project.png)
+
+
+# Contributing your changes!
+
+Whenever you are ready to commit your changes follow this process:
+
+1. Run `git status` to show what files are new or changed
+
+![](images/contribution/01-status.png)
+
+2. Run `git add ...` for each of the modified files
+
+![](images/contribution/02-add.png)
+
+3. Run `git commit -m "A descriptive commit message"` to make a commit with your staged changes
+
+![](images/contribution/03-commit.png)
+
+4. Run `git push` to upload your current commits to your working branch
+ - If you're warned that your branch has no upstream branch, run `git push --set-upstream origin my-cool-branch`, replacing "`my-cool-branch`" with whatever your branch is named in [Part 6 of Project Setup](#project-setup)
+
+![](images/contribution/04-push.png) \ No newline at end of file