Free and Open Source real time strategy game with a new take on micro-management

Current Issues with Game Playing User Interface

From Globulation2

Revision as of 21:59, 21 January 2008 by Giszmo (talk | contribs) (introduced Template:BUG)
Jump to: navigation, search

This wiki page is a part of a listing of Current Issues with Using Globulation 2; see that page for an explanation of the status of the listing. The material here has been placed on its own page due to problems with wiki pages beyond a certain size.

Visual Indicators

Assignments of Globules to Buildings/Flags

  • It would be nice to have a good visual indicator of which flag a globule was serving or which building a globule was seeking for feeding/healing/training. (The unit paths can be helpful for this, but are sometimes confusing, especially when there are many units. Also, they don't show the building a worker is supplying when the worker is still fetching a resource.) This could work similarly to the way holding left mouse on a building or construction site currently shows which globules are supplying it by circling them in white. The difference would be that selecting the globule would indicate the target building (rather than selecting the building to find the globules).
  • It would be useful to be able to easily find out how many globules are eligible for serving a building or attending a flag. Sometimes it is possible to get this information on the statistics display, but the statistics display is anyway confusing and hard to read. It could be very useful if the status display of each item told how many globules (workers, warriors, explorers) qualify to work on the item, and how many other items are competing for the same set of globules. (This is related to the (closed) BUG #8594: workers prefer been iddle than repair/update.)
  • When holding the left mouse button on a building to see what globules are serving it (it would be better if this also worked for flags), I often can only find some (or even none) of the assigned globules (unless perhaps there is a bug in the indicated number of assigned globules). So I think that when doing this it would be helpful to move the viewport if that would show more of the assigned globules together with the building/flag. In addition, it would help if off-viewport globule locations were indicated somehow in the mini-map (maybe flashed?). Perhaps even everything else should be dimmed so that the assigned globules can be seen more easily.
  • Related to the above point, it would be nice if the feature to show assigned globules were extended to allow also easily seeing which globules are going to a particular building to get fed/healed/trained. The distinction could be indicated by using a different color circle.
  • Further related to the above two points, it would also be nice if one could ask for the globules assigned to a building (it would be nice if this also worked for flags) to always be indicated as long as the building/flag was selected. I'd rather not have to hold the left mouse button down for this.

    This would also help with the problem of not being able to identify globules serving a building that are off screen. You could select the building, and then scroll around until you find all of the circled globules.

Unit Paths

(The “draw unit paths” feature draws lines that indicate where globules are going and by default is turned on and off by “t”.)

  • It would be nice if the unit paths appeared even when neither source nor destination are on the screen. This is needed to allow tracking a long line across several screens to try to understand where a globule is going (and why it is going there).
  • When a worker is going to gather a resource, it would be nice if the paths shown by the “draw unit paths” feature included not just (a prediction of) the resource to be gathered, but also included a path to the building the worker is supplying. In this case, the two paths from the worker should be in different colors. (Kai thinks maybe there should only be the path to the building being supplied, because the path to the resource is only a prediction (and currently a poor one). I think both paths are useful.)
  • It would be nice if the feature of showing the globules serving a building (currently by circling them in white when left mouse is held on the building (unfortunately this does not work for flags)) would also change the colors of the paths drawn for those globules by the “draw unit paths” feature, so that these paths can be distinguished from the crowd of other paths.
  • It would be very helpful if there were a configuration option to turn on the “draw unit paths” feature at startup time (or if the feature's state were remembered in save files). I generally want this feature to be on. I usually forget to turn it back on when I restart glob2 and then I get very annoyed when I later realize I've been playing without it.

Mini-Map

  • The current mini-map is very helpful in that it shows the whole world. However, it is very small and it is hard to see details, especially on a 512 by 512 map. It would be nice to be able to expand the mini-map (obviously only temporarily) to the whole screen to see more detail. This would also make it easier to drag the viewport indicator to a precise location, which is more difficult on larger maps.

Main Map Area Building Status Indicators

  • When a building has been marked for an upgrade, and there are still globules inside it, the row of white dots on its upper right is missing and you have to click on the building to find out how many globules are still inside it. It would be better if this information continued to be shown on the map.
  • On the left of each inn is displayed a column of yellow dots indicating how much wheat is in the inn. Unfortunately, this information can sometimes mislead the player into thinking they have enough wheat in their inns. What is important is the amount of uncommitted wheat. It is possible to have lots of globules starving even though they are near to inns with lots of spaces and food, because globules don't go to an inn unless it both has an empty place and (already!) a corresponding item of wheat. (By the way, it would be good if this fact were documented.) Unfortunately, it is hard to visually inspect the current GUI to see this problem. If you look at the white and black dots on the right of the inns, you will see black dots indicating there are spaces. If you look at the yellow dots on the left of inns, you will see wheat. Maybe the inns are not full of wheat, but you see wheat. So you think you are happy. But you are not! You have to subtract the white dots on the right of the inns from the yellow dots on the left when inspecting the yellow dots, because what you want to know is how much uncommitted wheat there is in inns. A possible solution would be to change the color of dots corresponding to committed items of wheat, so that one can easily visually inspect how much uncommitted wheat there is in the inns.

Statistics and Graphs

  • There are many things about the statistics panel that are confusing. For example, once the statistics panel told me there were 24 level 1 jobs and 40 level 2 jobs, but at that time the only current jobs were bringing wheat to inns and the hive. Why did it say there are 24+40 jobs requiring any extra skill?
  • It would be nice to be able to have the graphs shown at all times (simultaneously with all other displays). This could be done by adding another column at the right for the graphs.
  • It would be nice if there were also graphs for the percentage of globules at each skill level. Currently only about half of the space in the graph pane is used so there is room for one or two more graphs. (It might also be nice to allow the user to choose the statistics to be graphed, but first there need to be enough graphs programmed for a choice to be meaningful.)

Map Overlays

  • BUG: The starving and defense maps show something, but the damaged map only works intermittently. Usually, the damaged map doesn't show anything at all, even if there are many wounded globules. Occasionally there is a brief flash of information from it.
  • The color intensity from the starving map makes it hard to actually see the globules that are starving.
  • The defense map seems to be misleading. For level 1 defense towers, it still colors cells that are a distance of 6 cells from a tower, even though they are not in its range. Also, does the color intensity show levels of accuracy and/or damage? I am under the impression that the distance does not actually make any difference as long as the target is in range.

Miscellaneous Issues with Visual Indicators

  • It would be nice (especially for debugging) if buildings, flags, and globules had identification numbers. For example, the inns could be “i1”, “i2”, etc., workers could be “w1”, “w2”, etc., and so on for different types. The status display of a building/flag could show which globules are assigned, and the status display of a globule could show which building/flag it is assigned to. Similarly for globules that have booked a place in a building for feeding/healing/training. In addition, it would be nice to be able to turn on a display of the identification numbers in the main map area.
  • The tooltip for inns in the panel with tools for creating new buildings says an inn “Foods your units”. The word “foods” should instead be “feeds”. (This text is the value of “food building explanation” in “data/texts.en.txt”.)
  • It would be nice to have visualization tools for gradients for debugging. It appears that in older glob2 versions there was a feature where one could see the gradients associated with a building (turned on by middle mouse in the right panel while a building was selected). This would print numbers in each map cell. (It might also be nice to have an option to see colors instead of numbers.)
  • Building walls and supplying defense towers doesn't seem to use up stone, and clearing flags don't allow specifying to clear stone. I've got one that reports as “Stone 2/5” and it just stays that way no matter how many walls I build. If stone doesn't get used up, then why does each stone resource have a number like “3/5” or “4/5”? This number is confusing as it seems to imply that one could clear away the stone by using it up. I wasted a long time trying to clear a path through some stone by building walls from it. I think this is a GUI issue because the GUI misleads the player into thinking that the stone can be cleared away by being used up.

    The counts on wood are similarly misleading, because wood with status “5/5” has the same game play as wood with status “1/5”. This extra information seems to use player brainpower for no benefit. (In the case of wood, there is less confusion because it is possible to harvest/clear wood.)

  • It is hard to tell which resources will be affected by the circular region of a clearing flag. Right now, one must simply wait to see what the workers end up clearing. It would be better to have visual feedback at the time of placing the flag or adjusting its radius.
  • When a building being upgraded needs to get bigger, there is a confusing user interface problem.

    First, let me describe the situation leading up to the problem. Once the larger land the building needs is empty of resources, you can ask to upgrade the building. Once the upgrade has been requested, the upgrade doesn't actually start until two additional conditions are met: (1) all globules inside must leave the building and (2) the additional land needed for the upgraded building needs to be free of globules.

    After condition (1) has been met, while waiting for condition (2), the visual display is very confusing, and it can seem to the user that the upgrade is stuck for no reason. The visual display looks as follows. There is no bar to set the number of workers (and the dots do not appear above the building site). There are still dots below the building in the map indicating its hit points, but no dots to the right, above, or to the left. The image of the building remains the same. When the building is selected, the details display in the right panel looks like this (if your font is not fixed width my diagram will look funny):

     +----------------------+
     | Racetrack (player 0) |
     |       Level 1        |
     |                      |
     | +------+  Hitpoint   |
     | | pic  |   270/270   |
     | | here |  Inside     |
     | +------+             |
     |                      |
     | Armour: 5            |
     |                      |
     | ===BROWN BAR HERE=== |
     |                      |
     |                      |
     |                      |
     |  Cancel Upgrade      |
     +----------------------+
    

    The word “Inside” in the status display adds to the confusion, because it seems to indicate the building is waiting for globules inside to leave, even though all of them have already left. For a while I was convinced it wasn't working and I kept canceling my upgrade and trying it again to see if it would work on a second try. Eventually I learned that I have to be patient.

    The bug is that the user interface doesn't explain why the upgrade is stuck. To avoid this, there should be a message in the building's status display indicating that it is waiting for globules to leave the building site.

    I understand that in version 0.8.22, glob2 now places a (secret! ugh!) forbidden area to help speed up the process of getting the globules out of the area. But there can still be confusion because this can take some time, especially if there is a lot of congestion. (Also, this secret forbidden area doesn't seem to actually work and sometimes I have to place a real forbidden area to clear out the globules.)

    A related bug report is BUG #16470: automatic clear/forbidden on upgrade.

  • It would be nice to be able to be alerted when enemy units are seen, even if no fighting occurs. It would also be nice to be alerted when explorers cause damage, so that I can see how effective (or not) they are.

    A related (but not the same) bug report is BUG #16163: have mini-map flash location of battle.

Artwork and Animations

  • It would be nice to have animations of globules inside buildings eating, studying, being trained, etc.

Screen Size

  • While glob2 is in fullscreen mode, I can not switch virtual desktops with window manager hotkeys. This basically makes fullscreen mode not an option for me.
  • I can only select a few screen sizes in the settings menu. It would be better to be able to type an arbitrary size. In particular, if I start with a custom size using the -s command-line option (e.g., “glob2 -s 1344x736”), and I switch away from this size in the settings menu, I can't switch back to it except by restarting glob2.
  • Rather than selecting size by pixels, it would be nice to select size by giving the number of map cells displayed in the main viewport.

Game Play Controls

Moving the Map Viewport

  • It would help to have better documentation on the ways of moving the main viewport. It would be good to have the tutorial cover most/all of them. For example, dragging with the middle mouse button is a nice feature, but I only found out about it by reading bug reports. The complete (I think!) set of ways to move the viewport is:

      The arrow keys.

      Holding the mouse cursor near the edge of the window. (By the way, it would be better if the edge of the viewport was a magic mouse cursor location rather than (or in addition to) the edge of the window.)

      Dragging left mouse off the edge of the window. This works regardless of whether a flag is being dragged. You can select nothing and drag and it works. (By the way, it would be better if this worked when you merely dragged the mouse cursor out of the viewport, rather than only working when you drag it all the way out of the window.)

      Clicking (and dragging) in the mini-map.

      Holding down middle mouse button (anywhere) and dragging.

      Pressing the Tab key while a building/flag or one of the tools for creating a new building/flag is selected. This goes to the “next” building/flag of the same type. (By the way, it would be better if this also worked when a globule is selected.)

      Pressing the Home key to go to the first hive. (By the way, it would be nice to be able to select where “home” is.)

      Pressing the Space key to go to the location of the last reported event. (By the way, it would be nice to be able to go to previous events.)

      Pressing the Control-Space key combination. (See my note on documenting what this does.)

    Is there anything else I am missing?

  • The Control-Space command should be documented. This is a bit difficult because what Control-Space does is a bit weird. Basically, glob2 remembers the most recent location of each of 5 types of events: globule under attack, building under attack, building finished, own unit converted to enemy, and enemy unit converted. The Space key moves the viewport to the most recent event (regardless of the kind of event). Control-Space moves the viewport to the most recent event of the next kind than the kind of the event of the last location moved to by either Space or Control-Space. The “next kind” is determined in a way that cycles through all of the kinds of events.
  • It would be better if the Control-Space command told you the kind of the event whose location it has just moved the viewport to.
  • Dragging the viewport indicator off of any side of the mini-map should wrap around to the other side. Or, better, the minimap itself should scroll to handle the wraparound.
  • It would be nice if there were keys for moving in all directions by full screens. In particular, Page-down and Page-up should scroll up and down by a full screen, but there should also be keys for moving right and left, so I propose Control-arrow for all 4 directions. The other methods of moving the viewport are problematic. Moving by arrow key or left-mouse dragging is tediously slow. Moving by dragging the viewport indicator in the mini-map is too fast and difficult to control (especially on big maps). Moving by middle mouse dragging is difficult on two button mice and requires switching from keyboard to mouse. Etc.
  • There is no easy way for a user to discover that they can select a type of thing to create and then use the Tab key to go to one of them, as though they had selected an actual building or flag. Before I discovered this feature (accidentally!), I would place dummy clearing flags (i.e., flags with workers and range both set to zero) everywhere so that I could select a clearing flag and use the Tab key to cycle through all locations.

    Also, this feature only works for level 1 buildings. It can not be used to find any other level of building, or construction sites.

  • If the Tab key cycles one way, then Shift-Tab should reverse it.
  • It should be possible to use Tab to cycle through explorers (or other types of globules). (Yes, I know you can't control any kind of globule, but there is no easy way to find all of your explorers on the map.) Ideally, there would also be some way to do this even if you can't find an explorer on the screen to select.

Controlling Buildings, Flags, and Areas

Buildings

  • It would be nice to make a building which will be automatically upgraded as quickly as possible to top level. (Another possibility is to directly construct the higher level building without ever going through the intermediate points.) Right now, if you don't notice a building has been completed right away, then some globule might start training in the building before you can mark it for upgrading to the next level, and then you have to wait for that globule to complete its training course (which is anyway a waste of time as it will just have to repeat the course for the next level).

    A closely related bug report is BUG #15229: Allow building level2/3 buildings.

  • It would be nice to be able to have buildings be automatically upgraded to the next level based on the number of workers with the skills to upgrade it and possibly also the level of need.

    One needs to wait for the right number of workers, or the upgrade will be too slow. This is especially the case if the building to be upgraded is the only school. You wouldn't want to start upgrading it to the next level with only one qualified worker.

    Having the level of need be a criteria for automated upgrade could be very useful for inns. If an inn is consistently full of feeding globules, then it would be nice to automatically trigger an upgrade (provided not all inns in the same locality are upgraded simultaneously).

  • It should be possible to set the number of workers for upgrading a building while waiting for the globules inside to exit. Currently, the control for the number of workers disappears while waiting for globules to exit.

    A related bug report is BUG #18636: assigned count visible but disabled.

  • It should be possible to set the number of workers for a new building while waiting for globules on the building site to move away. At this stage, the building site only shows up as a forbidden area and none of its settings can be adjusted.

Flags

  • When one places a new flag, in addition to the possibility of placing another flag, the one just placed should be immediately selected so that one can immediately start adjusting it without needing to deselect the placement tool and then select the new flag. I very rarely place multiple flags, but I almost often adjust them immediately after placing them. For example, with clearing flags I almost always change the resources to be cleared (usually by removing either wood or wheat). And with war flags, I almost always immediately set the level of warrior needed to the highest level of warriors that I have.
  • It would be nice to be able to adjust the settings of a flag before creating it. Right now, I have to adjust the flag settings as quickly as possible before any globules get wrongly assigned to it.

Areas

  • It would be nice to have an area control that toggles the state of a area (turns it on if off and vice versa). Currently one must make many mouse trips to the right side to switch between the control for turning areas on and the control for turning areas off.
  • Right now one must move the mouse all the way to right part of screen to change the kind of area marking or unmarking one is doing. This is very tedious and slow. It would be better to be able to make these changes by keyboard.
  • There are many difficulties when using the checkerboard pattern for making forbidden areas for farming. Placing the pattern correctly is quite delicate. If one accidentally uses the pattern one location away from where one should, the pattern gets completely messed up and one has to make several mouse trips to the right area selecting different tool options to clean up the mistake. What would be better would be to use solid patterns but have an option that caused turning the area on for locations whose x and y coordinates summed to an even number and off otherwise. (Almost the same idea was written by Leo earlier in BUG #19048: easier brush for checkerboard area. The only difference is the idea there did not turn off the odd locations. That bug report also proposed an “interleaved” pattern similar to the one used by Nicowar.) Then one would could quickly drag the tool across a large area to set up the checkerboard pattern. An advantage of a method based on odd/even locations is that checkerboard patterns for separate farms that eventually grow to meet will match correctly.

Issues Involving Combinations of Buildings, Flags, and Areas

  • It would be nice if starting or upgrading a building would automatically place a clearing area for the needed space, instead of forcing one to do this by hand. Right now one can not pick a building site or ask for a building to be upgraded until all resources are cleared from the necessary area. (Yes, clearing areas have some problems, but this would still be better than doing nothing.)

    A very similar (same?) idea is BUG #16470: automatic clear/forbidden on upgrade.

  • It would be nice to have an option for forbidden/guard/clearing areas to be automatically removed when built on. Once a building is on them the area markings have no effect on game play (unless the building is destroyed) and just make it harder for the player to see things. (And if the building is destroyed the situation will have changed enough that the player probably does not want the pre-construction area markings back anyway. The player might deliberately put some areas on buildings just before destroying them, so it should still be allowed to have areas where buildings are.)
  • It would be nice to be able to copy an existing building/flag with all of its settings. It would be nice to be able to copy the settings from one building/flag to another. (One could conceivably also have special loadable configurations for buildings (like in freeciv city management), but that would require additional user interface. Copying settings seems simpler to implement.)
  • It would be nice to have a feature that laid out clearing flags along a path. Or better, it would be nice to have clearing areas that summoned workers, because clearing flags are very tedious to use for keeping a path clear.
  • It would be nice to be able to undo changes to settings of buildings and flags and also changes to areas.

Sliders

  • There are no keyboard controls for controlling many sliders and most (all?) other tool selectors that are in the status area. There are only “-” and “+” for the number of requested workers, and “u”, “r”, and “d” for upgrade, repair, and destroy. For example, you can't switch swarm production percentages by keyboard but instead have to use the mouse. This makes management very tedious and tiring as one ends up spending most of one's time moving the mouse back and forth. This is particularly troublesome if one has a touchpad instead of a mouse.
  • The tabs on the left and right of a slider do not give any visual cue that they allow you to change its value. They should have little arrows on them so that this control can be easily discoverable by the user.
  • Holding down the tabs on the left and right of a slider should autorepeat.

Miscellaneous Issues with Game Play Controls

  • The use of the scrollwheel to adjust assigned workers is extremely bad for people who have a touchpad configured like mine is. My touchpad (and the touchpads of many other people) is configured so that a strip along its right edge acts as the scrollwheel (i.e., like 4th and 5th mouse buttons). This means a mistake moving the mouse (really the touchpad, there is no mouse) can accidentally move the “scrollwheel” instead. Because Globulation 2 involves so much mouse movement while buildings/flags are selected, this means I often accidentally get the number of workers assigned to some unit completely messed up (often 0 or above 15). In my case, this means I would really seriously benefit from being able to turn off the feature that the scrollwheel changes the number of assigned workers. (This is BUG #19600: need to be able to disable use of scrollwheel)
  • What is the difference between “hard pause” (bound to the ScrollLock key and undocumented (to do: document this key binding)) and “pause” (by default bound to the p key)?

Miscellaneous User Interface Issues

  • It would be nice to be able to rearrange the user interface elements and display more of them at the same time (as in some other games like freeciv).

    (Doing this could be made easier by switching to a toolkit that supports this. For example, the KDE image viewer Gwenview allows rearranging its panes and toolbars fairly arbitrarily. You can make any pane or toolbar an independent window if you want, or you can dock them in the main window in arbitrary tiled arrangements. You can stack several panes in the same location in which case they automatically get tabs to switch between them. Apparently Gwenview merely uses some toolkit features (in Qt or some KDE library on top of Qt) to implement the vast majority of this. I think GTK+ used to have some support for at least some of this kind of thing (like undocking and moving toolbars), but I think that support was either removed or deprecated (and hence may be becoming buggy) due to the GNOME project's emphasis on good defaults and simplicity over configurability. So if one were to switch to either Qt or GTK+, this might be an argument in favor of Qt.)

  • It would be nice to switch to a widely used user interface toolkit like Qt or GTK+. This would provide a number of missing user interface features and also give the users a more familiar interface. (There is already a Qt 4 port in embryo stage in CVS (http://cvs.savannah.nongnu.org/viewcvs/glob2/quatuor/), with the idea being that the user program would just be a light client doing only the GUI and all game play would be handled by the server.)
Misc