Game Design, Programming and running a one-man games business…

The Gratuitous Editor and UI flow

I’m working on the GTB map editor.  Editing the maps won’t be just for modders, but for everyone, so this is a very important part of the game and I need to get it right. I’m going to really encourage custom maps as a big part of the game, with the singleplayer campaign maps acting purely as examples and tasters of what can be made.

Here is a Work-In-Progress screenshot with some old GSB UI still in place:

Given my plans for it’s use, it’ s important that the editor looks easy to use. I’m wary of making mistakes in terms of UI flow. Essentially, the editor works in 3 modes, which I’m currently calling ‘normal’ ‘prop’ and ‘ground’ which is a bit rubbish, but I need to split things up somehow.

Normal mode, lets you edit individual tiles, by setting up routes, toggling them as attacker or defender-deployable, and placing ‘whole-tile’ items like trench sections, emplacements, or sections of path.

Prop mode is basically where you add, move, rotate and scale decorative items like barbed wire, trees, tank traps, and other fluff that exists to make the world look interesting

Ground mode lets you edit the background tiles, which is again, purely visual.

The window on the right changes with each mode to display the relevant items (tiles / props / textures).

A right click menu, mainly for normal mode, lets you carry out actions on all the selected tiles. The editor supports zooming in and out with the mouse, WSAD movement, drag-selection and ctrl-selection.  It adjusts ( a bit) to different resolutions.

The thing that concerns me is the UI ‘flow’ of those three modes. I wonder if I can somehow squash all 3 modes together. Hmmmm.

13 thoughts on The Gratuitous Editor and UI flow

  1. One thing that would simplify the UI is to get rid of the different tiles on the right side. As far as I can see you have road tiles, wall tiles, etc. Why not simply stick with “I put a road on this grid position” and let the game calculate the adjacent tiles. In that way the player doesn’t have to select each and every single different tile type.

    If you want the player to select a different represenation (a variation) of the same tile element, let him shift-click which could bring up the different variation of that tile for him to select from.

    Same goes for the different other modes and elements to place. In fact, I don’t really see the point to make the user interface this complicated. For props placement, let the player select the props type, click onto the underground and let him HOLD the mouse button moving the mouse pointer away from the initial click point will set the rotation of the prop (direction from the initial point to the current point) and the scale (distance from the initial point to the current point). 2 functions in one :) And super easy to use :)

  2. The problem is you cannot just say the game will calculate paths from the tiles you select, because then its impossible to have two paths going alongside each other, like my sample map has :D

  3. I support the first poster’s suggestion of random clutter (in the area selected by the user). It’s always much nicer than manual placement, and the placed items can still be moved/removed as needed.

  4. This is nice so far. However I have but a bit of a worry about an aesthetic of Gratuitous Tank Battle sofar, in a certain fashion. I admit it’s mostly because of the tower defense gameplay, but it’s partly that the game(technically) is meant to be inspired a lot by the WW1 battlefields of trenches and so on.

    However, back in WW1(as I recall at least) one of the big challenges of the trenches was actually crossing them. That is, that they were an obstacles not only in the men and their guns housed inside, but that the thing actually often would be in the very way of people. However, one of the thing that just look, well, “odd” at times in GTB is the amount of trenches lining the roads in a parralel fashion than as an obstacles perpendicular to it that men had to overcome or, at the very least, literally snake their way around of.

    Admitedly, this is but a very minor criticism and one mainly based on layout of maps as seen so far in regard to these trenches “lining” roads as if to watch the enemy advance right next to them without hindering it’s movement(the point of a trench), rather than placed in an angle that would look more like it had truly attempted to “block” an advance.

  5. Regards having two paths going alongside each other, why don’t you do it the other way: have ground be automatically calculated from your path, and have modifications to the basic road/ground (like having asphalt become beaten ground, making rivers, etc.) be part of the Props layer?

  6. “The problem is you cannot just say the game will calculate paths from the tiles you select, because then its impossible to have two paths going alongside each other, like my sample map has”

    You could, if you do it like for example Sim City does – if you don’t place single tile after tile, but a whole “line” of tiles at once by dragging. The editor can then connect the tiles properly, depending on the start/end position of the drag.

  7. How about dragging the mouse cursor between tile boundaries causes those tiles to connect the trenches together between those tiles?

    Deleting a tile will, of course, need to disconnect all the drawn connections to that tile.

    Select Trench drawing tool.
    Position mouse cursor on tile A.
    Hold left mouse button.
    Move the mouse to draw the trench.
    Tile path example:
    A -> B -> C (3)
    | |
    (1) D -> E(2)

    Release left mouse button.

    (1) represents an existing trench. It isn’t connected to because the line wasn’t drawn into or through it. The trench at (2) will be connected to.

    The game draws the trench either in real time (evaluating two tiles every time the mouse cursor crosses a tile boundary).
    Or the game draws the trench when the left mouse button is released.

    A possible implementation method is to allocate 5 values to each tile.
    Value 1: Is there a trench present in this tile?
    Values 2-5: Does the trench go in this direction? (N,S,E or West)
    The combination of values can be read, in order to determine which tile to draw.

    _ _| = 11001

    This means that deleting a trench tile requires the adjacent tiles’ boundary values to also be set to 0.

  8. Please ignore the tile path example above. The WordPress comment submission deleted my spaces (. It was meant to be ‘C’ connects to ‘D’ and (2) connects to (3).

  9. One of the problems there is that dragging areas on the map is already being used for seelcting a whole bunch of tiles at once :(

  10. I did code a system for that, but found it hard to have a system where it was obvious that certain terrain was faster or slower. I may bring it back though, it’s all coded.
    Emplacements like trenches provide cover for infantry :D

  11. With the faster or slower terrain you could add a large penalty to trenches and rivers then have an engeniring unit or tank that will bridge them removing the speed penalty for later units, similar to those used in WW2.

Comments are currently closed.