https://github.com/charafzellou/theminigogame
A simple RPG mini-game in GO around the Witcher lore
https://github.com/charafzellou/theminigogame
game go golang rpg
Last synced: about 2 months ago
JSON representation
A simple RPG mini-game in GO around the Witcher lore
- Host: GitHub
- URL: https://github.com/charafzellou/theminigogame
- Owner: charafzellou
- License: agpl-3.0
- Created: 2019-06-29T13:29:07.000Z (almost 6 years ago)
- Default Branch: master
- Last Pushed: 2023-10-05T15:33:22.000Z (over 1 year ago)
- Last Synced: 2025-04-12T19:00:09.948Z (about 2 months ago)
- Topics: game, go, golang, rpg
- Language: Go
- Homepage:
- Size: 62.5 KB
- Stars: 2
- Watchers: 2
- Forks: 0
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# TheMiniGoGame
TheMiniGoGame is a... well, everything is in the title π
It is a school project to learn basic *`Go`* / *`GoLang`* skills based on The Witcher lore.
The minigame is a turn-based RPG allowing you to control a character and **fight your friends** or play a **multiple-choice story** ππ¬.
Choose one of the **five available classes** β-πΉ-π±βπ€-π-πͺ, explore the **world** πΊοΈ, make the right choices *(or not?)*, brew **potions** βοΈ, learn **combo attacks** π‘οΈ, and defeat the **dangerous boss** πΉ waiting at the end of this beautiful pile of code π!
## The game
```go
// work in progress
```## Project Roadmap
- [x] Create two functions: "getHit" and "hit" which respectively remove life points from a user and remove them on a monster. Parameters are to be defined freely.
- [x] Create a function which, depending on the fate suffered, allows you to restore life points.
- [X] Create the corresponding Structs (at least two Structs: Player and Attack), which would allow two players to compete in PVP.
- [X] The Struct must allow players to have predefined attacks as well as basic life points.
- [X] Create a Combo function (corresponding to the Player Struct) allowing you to chain several attacks together at the same time, and therefore to subject an opponent to several attacks.
- [x] Implement a way to allow groups of players to compete against each other (hint: use Collections)
- [x] Each player must be able to register when accessing the program using a pseudonym and a password. Set up a βregisterβ function.
- [x] Once this is done, ask for the player's username and password and offer them players with +- 20% of their level to be able to play with them and/or face them.
- [X] Create a "Monster" Struct which will allow players to do PVM (Player Vs Machine).
- [ ] Once connected to the program, a monster can attack a player if the player remains inactive for more than 20 seconds.
- [ ] BONUS: Develop a mechanic allowing several players to face several monsters at the same time.## Contributing
Pull requests are always welcome π€, though we have no desire to turn this school project into a full game.For bug fixes or improvements, please open an issue and we will get back to you as soon as we can! π
## License
Please cite the author [Charaf ZELLOU](https://linkedin.com/in/charafzellou/) and the source [theminigogame repository](https://github.com/charafzellou/theminigogame/) in any copies, forks or use of the material in this repository.[GNU Affero General Public License v3.0](https://choosealicense.com/licenses/agpl-3.0/) π₯