I've been making a lot of changes in our battle code in the last few weeks and thinking about how to take it to the next level. I've decided to start producing more draft images to discuss the changes I intend to make before I actually make them. Discussion of these drafts helps us to provide the best presentation to the player possible and it also helps me (or whoever happens to be writing the code) to have a clear goal before I actually start implementing the new design.

In Part II we came to a pretty firm agreement on the general layout and there have only been minor changes from these drafts. In this thread I would like to focus on the additional aspects of the design that we have never discussed. This includes: the victory screen, the defeat screen, and how we display dialogues that occur in battle. Currently I'm working on the battle finish code, which takes effect whenever one party or the other emerges victoriously from the battle. First I want to start off with the defeat screen since it is relatively simple. Here is the first draft I have produced.

Points of Interest

(1): The entire standard battle GUI is hidden, including the bottom menu, character names/stats, indicator graphics/text, and the stamina bar/icons.

(2): We'll continue to use the blood red scene lighting that we have in past releases. This draft can't fully emulate how cool that effect looks, but the transparent red overlay is there to indicate it will not be changed.

(3): The battle outcome notification message and GUI have been moved to the top center in this draft.

(4): The battle defeat message has been changed. It has traditionally been: "The heroes have been defeated..."

(5): The defeat options have been made much more brief than they were before. They used to be "Retry battle...Load from last save point...Return to main menu...Exit the game". Instead now a single word represents each of these four possibilities.

(6): Below the defeat options is a "tooltip" window which displays a detailed description about the selected option. In the draft, the "Retry" option is selected, although I forgot to add the cursor image in this draft. Note that it also lists the number of retries remaining in this case.

----------

Notes/Thoughts

(A): I'm thinking of moving the defeat GUI to the middle right, overlapping the enemy sprites. That's where I intend to draw the GUI for the victory screen. But if I move it there, it will overlap some/all of the remaining enemy sprites which I'm not sure would be good.

(B): Not sure which defeat message I like best: "But the heroes were defeated..." versus "The heroes have been defeated...". Which do you prefer?

(C): I like the tooltip idea. It makes the layout nice and slim with the concise commands, but doesn't leave the player scratching their head about what the commands do either.

gorzuate said he liked the new message as well on IRC and I think I'm leaning towards it too, so I guess that's 3 for 3. As for the retry feature, I'm open to discussing whether or not the # of retires should be limited, but not here since this is strictly a layout discussion thread. That feature hasn't been implemented yet either, although I don't think it will be too difficult to do now with the new battle code in place. So lets hold off discussion on that design point until the retry feature is actually implemented.

Roots wrote:(A): I'm thinking of moving the defeat GUI to the middle right, overlapping the enemy sprites. That's where I intend to draw the GUI for the victory screen. But if I move it there, it will overlap some/all of the remaining enemy sprites which I'm not sure would be good.

Middle-right seems like a very awkward position to me. For the victory or defeat screen, the player's not likely going to be looking anywhere other than at the information window, so it should be centered. Center-top seems like a reasonable place to go with it if not dead center.

(B): Not sure which defeat message I like best: "But the heroes were defeated..." versus "The heroes have been defeated...". Which do you prefer?

"The heroes have been defeated." The other way is grammatically wrong and doesn't make much sense. What is supposed to come before the word but? It makes sense to start a sentence with "but" if there's an implication of what comes before it, but in this case it's completely unclear what the "but" is responding to.

rujasu wrote:Middle-right seems like a very awkward position to me. For the victory or defeat screen, the player's not likely going to be looking anywhere other than at the information window, so it should be centered. Center-top seems like a reasonable place to go with it if not dead center.

My thought process was that, at some point, we'll have cool little victory and death "poses" for the character sprites and we want to show that. Or maybe even when a character gains an experience level or learns a new skill they do an additional "woot woot" pose. If the screen is in the center that might cover up some of the characters. I'll probably leave it in the middle for now and it will be trivial to change its position in the code later if needed.

rujasu wrote:"The heroes have been defeated." The other way is grammatically wrong and doesn't make much sense. What is supposed to come before the word but? It makes sense to start a sentence with "but" if there's an implication of what comes before it, but in this case it's completely unclear what the "but" is responding to.

I've seen other professional games use pretty much the exact same phrase. The implication here is that the game is telling the story of these heroes, but it ends abruptly with their defeat (in this one particular battle). Hence, the but. They shouldn't have been defeated, but they were. Because the player sucks.

I'm working on the battle victory/defeat menus today to fix an annoying bug and do some prep work for implementing the battle retry feature. I took a look at the current defeat menu in the game and its absolutely horrible. I went through the code and then realized that this is one section that I did not get around to fully cleaning up when I did my big battle code rewrite a little over a year ago. But I wanted to focus on the victory/defeat layouts for now. The defeat layout I'll probably follow what was said previously in this thread, and it seems the only issue we didn't completely resolve was on positioning of that menu, which is easy to adjust later. So lets just talk about the victory menu.

The current way it is done I don't particularly like. The total stats for all characters are shown, and that information is not useful nor very informative to the player. What is informative is when there's a change in the stat, so I'm just going to show those numbers. If a stat shows no change, it won't be displayed at all. So for each character window, I was thinking of formatting the data in a two column format like so:

I also want to see if I can fit any new skills learned on this screen as well instead of having to blank all the windows to show that information, but we'll see. Once I have this code cleaned up it should be much easier to tweak and adjust these sorts of things so they'll be some active experimentation I'm sure. For now though I just wanted to announce my intentions.

This is an older draft, but its modern enough for the discussion I want to have. One of the things that I've been a little irritated with during my work on the battle code is how cluttered up the stamina bar can get. The current layout works fine if the number of actors is small (say 4 or less), but with the current 8 actors in the battle test setup, its really hard to see where an actor's icon is on the stamina bar.

I've been toying with the idea of moving the stamina bar about 40 pixels to the left, and then having character icons on the left side of the stamina bar and enemy icons on the right (as opposed to the current scheme where they are both on the left). The positive is that it will reduce clutter and make it a little easier to see. The negative is that it will reduce the available space to place enemy sprites (not that big of a negative since we still have plenty of room). I might actually do this in the code and post a screen shot here so we can all look at it and see what we think (it will be very easy to make this change...only about 5 lines of code I estimate).

Another possibility is moving the stamina bar to the top of the screen instead of the side. I was originally opposed to having it on the top because future plans included having the top quarter of the battle background having the option to be animated and I didn't want the stamina GUI covering it up. I don't think its very likely that we'll be seeing this feature anytime soon though (if ever).

I just made a commit that adds an icon representing the target type to the skill/item lists. I did this because even with the limited number of skills we had, I was having trouble remembering which skills affected what type of targets. Here's a screenshot displaying this new feature. It also shows the stamina bar with actors on the left and the right, as I said I would be doing in my last post.

As you can see, there is now a new "Type" in the header and small images representing the type of target. So I want some feedback on what you think about this. I'm pretty much convinced that this feature is necessary at this point, so lets focus the discussion on how to make this look as nice as possible. Here are some thoughts I've had:

1) Maybe the target icons would look better to the left of the skill name?

2) The target icons are a little too big for the lines of text. They may have to be modified so that they aren't quite so tall.

3) Its a little difficult to discern the attack point targets from the actor targets (the attack point targets have a little target graphic in the upper right). Maybe this little target reticule would have to be more prominent, either made larger or put in the dead center?

4) "Type" is rather crowded next to "SP" in the header. This may have to be changed.

I had a random thought about the battle UI this morning. Wanted to share my ideas before I forgot them. Refer to this image while I explain what I'm discussing.

Look to the bottom right window with the different command options (Attack, Defend, Support, Item). My idea is this: display these options vertically instead of horizontally on the left side of the window. On the right side of the window, display the last 4 actions that this character took. So at the start of a battle this right area will be empty, and will gradually fill up as the character takes different actions throughout the battle. This makes it very fast for a player to enter the same command as they took last turn.

And here's another idea. Let's say we have an enemy with 2 types of weakness and 3 types of resistances. When the player encounters this enemy for the first time, in the enemy window next to "WEAK:" and "RESIST:", we can display a question mark icon for every unknown weakness and resistance (so initially five icons would be displayed in the window). As the player takes actions that match either a weakness or resistance, the question mark block will be revealed and from then on, the battle UI will always display that "discovered" trait. This means the player doesn't have to bother remembering what enemy was weak to what, or wonder if they should keep trying to discover new weaknesses or traits of enemies.

I think this would be a very nice feature to have and fits well with our design goals. Perhaps the most difficult part of this is the fact that we have to store this data in the save game file to identify which traits were discovered for every single enemy that the player encountered. But overall I don't feel like this would be too terribly difficult to implement and is worth the effort.

I was having a conversation about our battle system elsewhere earlier today and it brought forth another idea. We don't have any way to list all of the attack points on an enemy together. We can only cycle through them. It would be nice to have some sort of system where we can present the player with a list of all the attack points for an enemy (possibly along with their properties, if known). I don't have any particular ideas for the UI at the moment, so I just wanted to share this idea here before I forget it.