lets-godot-roguelike icon indicating copy to clipboard operation
lets-godot-roguelike copied to clipboard

A tutorials series on how to build a simple roguelike in the Godot Game Engine

Results 37 lets-godot-roguelike issues
Sort by recently updated
recently updated
newest added

Up until now, we've not concerned ourselves with what happens in between our players actions. We want to craft our game to use a kind of turn-based system, where all...

0 - Backlog
tutorial

Things with an AI will receive a Brain Node as one of its children. Create a new scene; base `Node` "Brain" as `res://things/Brain.tscn` Script it. Its first method: `func take_turn():`...

0 - Backlog
tutorial

We will write yet another global script, this time to handle the pathfinding for our soon-to-be Artificial Intelligence! This script will utilize Godot's AStar class, and use some of its...

0 - Backlog
tutorial

![uploads/09c2d33e-8bb8-43d2-bc54-e9af7391937f/PathMapChunk.png](https://s3-us-west-2.amazonaws.com/prod.huboard.com/uploads%2F09c2d33e-8bb8-43d2-bc54-e9af7391937f%2FPathMapChunk.png) This image doesn't illustrate this well. There should be other blocking Things affecting the path. The idea is to, instead of generating a PathMap for the entire dungeon and...

0 - Backlog
tutorial

With that we should now have three characteristic variables that make up our Fighter: Health (HP), Strength(attack), and Resistance(defense). With even just these (and some graphics), you could create a...

0 - Backlog
tutorial

To make combat interesting, we can incorporate a couple variables into the damage factor of our attacks. Fighter script gets: `export(int) var attack = 2` `export(int) var defense = 2`...

0 - Backlog
tutorial

Where we put our placeholder print statement in the bump-fighting portion of our step method, replace with `self.attack( other_fighter )`.

0 - Backlog
tutorial

These methods go under Fighter. `func attack( target ):` Calls take_damage() on `target` `take_damage( amount ):` subtracts `amount` from current HP, and sets the new HP.

0 - Backlog
tutorial

Hitpoints should require little explanation. Fighter should have two vars: `export(int) var max_HP = 10` `var HP = 10 setget _set_HP` We will do some work with our HP var....

0 - Backlog
tutorial

Create a new instance of the Thing base object in our Database and give it the Fighter script. This will be the base Fighter object we'll use for non-player fighters....

0 - Backlog
tutorial