Building time | Building cost | HP | Effect | |||
---|---|---|---|---|---|---|
Level 1 | Level n | Level 1 | Level n | Level n | Level n | |
Townhall | 2:00 | n * 1:00 | 200 gold | n * 200 gold | n * 200 | can build level n buildings |
Farm | 1:00 | n * 1:00 | 100 gold | n * 100 gold | n * 100 | +(n * 5) + 5 / minute |
Mine | 1:00 | n * 1:00 | 100 gold | n * 100 gold | n * 100 | +(n * 5) + 5 gold / minute |
Academy | 1:30 | n * 1:00 | 150 gold | n * 100 gold | n * 150 | can build level n troops |
Troop | 0:30 | n * 0:30 | 25 gold | n * 25 gold | n * 20 | -(n * 2) food / minute +(n * 10) attack +(n * 5) defense |
- For testing use this syntax wherever possible:
- [MethodName_StateUnderTest_ExpectedBehavior]
- like:
checkCredentialValidity_WithValidCredentials_ReturnsTrue()
- in case of endpoints, instead of method name, use descriptive name for the endopint
- Use
this
keyword only to avoid variable name conflicts - After global exception handler is present, create and throw custom exceptions in error scenarios
- Create branch names including very short description of the task
- Create (final) commits including story ID and name
- Use plurals for database table names
- Have at least 80% test coverage regarding services (unit test) and controllers (integration tests)
- Push only when all tests and style checks have passed
Jira board:
Contribution:
Commit messages:
If applied, this commit will ... [commit message]
Git cheat sheet
https://docs.google.com/spreadsheets/d/1Y6ylJLSbkUqLzn9kN_rQSgDlssRpR-ZFresF46apFWY/edit?usp=sharing
Use git fetch
in order to retrieve the most recent commits from GitHub.
In order to minimize merge conflicts later always open a new feature branch from the most recent state of the development
branch on GitHub.
git fetch
git checkout -b <branch_name> origin/development
While you're working on your own feature/bugfix other developers make changes on development
and it's required to update your branch to keep consistency of the codebase. You can do this in 2 ways.
Rebase rewrites commit history; therefore, do not use rebase on the master
and development
branches.
On the other hand feel free to use rebase on your own branches.
Use git rebase development
while on your branch.
This creates a new commit (so called merge commit) containing changes from both your branch and the development branch.
Use git merge development
while on your branch.
You can work on your feature/bugfix separately but sometimes you may need to merge another branch into your branch (i.e. to try out your feature). In order to have clean workflow (and pull requests) always commit only feature related modifications. This is harder to reset files or hunks later.