Defending Todot it's an open source tower defense game inspired by Kingdom Rush.
It's a fork of crystal-bit/hacktoberfest-2020 made to continue the development of the game after the event.
The project is made with the open source Godot Engine v3.2.3.
🎮 Play it now
Discuss with the community
Join the Discord server
"How can I contribute?"
You can:
- Open a new issue: do you have an idea for the gameplay? Do you want to suggest an improvement? Do you want to create new assets like sprites, sounds, effects,...? Did you find a bug? Open a new issue and let other developers know.
- Take an issue: work on existing issues. Read below for guidelines.
⤵️
How to take an issue - ➡️ Write a short message in the issue itself to notify others that you are working on it. (I'll assign the issue to your Github user)
- ➡️ Ask for help if you have any doubt.
- Ask for help in the issue itself
- Ask on the Discord server - https://discord.gg/SA6S2Db
- ➡️ Happy coding! I hope you will learn a lot during the process!
I hope these rules will help everyone having an enjoyable Hacktoberfest.
How to appear in the game credits
Before making a pull request, consider adding yourself to the credits.gd
script so that you will appear in the game credits!
Project conventions
Lower case letters only for filenames
To avoid issues when multiple contributors are working on the same project across various file systems and operating systems. See more details here.
Node names
Use CamelCase
style for node names.
This is the default style used in Godot and, moreover, it's easier to reference node names which don't have dash symbol or whitespaces in their name (see this comment)
Code style
There are no strict requirements on code style, but try to be consistent with the code that you'll find.
Ideally the code should follow the official GDScript style guide.
For the order of variables, signals, functions, please follow this order (simplified from GDQuest's guidelines):
1. Extends and class_name
2. """docstring"""
3. Signals
4. Node dependencies
5. Constants
6. Variables (properties)
7. Built-in virtual callbacks (eg: \_ready, \_input, \_process, ...)
8. Signal callbacks (eg: on_button_pressed, on_area_entered, on_body_entered, ...)
9. Methods
Reference Kingdom Rush gameplay
License
- Code: GPLv3
- Assets CC-BY
- Kenney assets are released under CC0