gdquest-demos / godot-open-rpg

Learn to create turn-based combat with this Open Source RPG demo ⚔
https://youtube.com/c/gdquest/
MIT License
1.93k stars 236 forks source link

Ui: Add a list of portraits that represents the turn order during a combat #105

Closed GresilleSiffle closed 5 years ago

GresilleSiffle commented 5 years ago

From a player point of view, when a combat starts there is now way to know in which order the characters will play. It is a little confusing and I think it is an important feature for a turn-based RPG.

One solution could be having a small list of portaits, displayed at the top of the screen, that represents the turn order.

Here is a screenshot from Halcyon 6 and an other from Divinity: Original Sin.

Having such a list will help to:

In Halcyon 6, this list is dynamic. That means if a character speed increase or decrease, the list is updated on the fly. Also there are always 12 portraits displayed, twice the number of characters present in the combat.

Let me know what you think about that : )

GresilleSiffle commented 5 years ago

Some ideas I would like to share:

To highlight who is currently playing the portrait corresponding to the active character could be bigger, or have any other form of emphasis

To not confuse the player, the party members and ennemies portraits could have different border colors, or shape, or anything that seems clear enough. Different border colors is good in general but not for color-blind people, icons are better.

In a second iteration maybe it could be useful to have a little lifebar under each portrait to have a global vision of what's going on. And in a third time, what about a tooltip displayed when the mouse is over the portrait, that displays a more detailed state of the character (status effect, bonus, malus, etc.)?

NathanLovato commented 5 years ago

Sounds good! When it comes to visuals, a picture and/or a prototype is always worth a lot of text. Feel free to prototype this straight in Godot: it doesn't have to look pretty as we're talking about UX design here

GresilleSiffle commented 5 years ago

Alright : )

I created a branch on my repository with a very light prototype d8ec7f00c34e11711f28cefe159f8598b2f15057

This commit adds only a dynamic turn order interface with empty portrait for each character. There is no animation, no real portrait, no highlight etc.

Here is a preview:

turn order screenshot