Requests for new components (and features)

Of course you can always be on the bleeding edge and either use SVN to install BUG or grab a ZIP of a nightly snapshot. There's no EXE installer that way, but it's not rocket science (see the download thread for instructions).

Where might I find a nightly ZIP? I looked through SVN (I think), but I didn't see anything but the official releases.
 
Where might I find a nightly ZIP?

Alerum has a script running nightly to post a RAR to our website. You can get a link to the folder on this page along with instructions on using it.

I highly recommend using SVN, though, as updating is trivially easy once you get it working. You can update to the latest version from the Windows Explorer using TortoiseSVN.
 
What about an indicator on the main screen how much land/population you have/still need for a domination victory? Caesium got this already. :p
 
There's already a pair of civ4lerts for domination that'll show at the start of every turn once you're within the chosen thresholds. Personally, it's not something I want to see on the screen constantly so the civ4lerts do the job well enough for me; it could be a neat addition to the score hover via the SDK though. ;)
 
What about showing how many tiles / pop you need (I'm talking of absolute values)? I won't be surprised if that has been mentionned before but would "obsolete" tile and pop counting to just not reach dom or to see how many tiles you need until victory. AFAIK this wouldn't alter gameplay as one can calculate these values himself...
 
there would be an uncertainty however, and this (absolute) uncertainty would only increase for larger maps - the number of tiles required should not be absolute, just copying the bounds of what you could calculate - it should give an estimated range
 
What it should technically do is count only the land tiles that are revealed to you. If you haven't explored the whole map (land tiles actually), the calculation should show you an incorrect value. This would mirror what you can realistically do yourself (but never would). I suspect that right now it is calculating the actual land percentage.

A simpler approach would be to report when the values displayed on the F8 screen get within X% of the winning values and again when they pass them.

In any case, my opinion is that showing real numbers of tiles and population starts walking the line between UG and AG. Ruff, care to comment?
 
The total number of land squares is always available to the player in the scoreboard's score breakdown hover text so I wouldn't consider it a spoiler. But I think total population is only available if you "reverse-engineer" it by dividing your total pop by the current pop % reported to you on the victory screen.

Another thing to keep in mind is that the domination Civ4lerts display tile & pop counts (for your) as well as percentages when they fire.
 
The total number of land squares is always available to the player in the scoreboard's score breakdown hover text so I wouldn't consider it a spoiler.

Without the developer/cheat code?

Another thing to keep in mind is that the domination Civ4lerts display tile & pop counts (for your) as well as percentages when they fire.

Yes, and I've always wondered how people feel about those. I'm okay either way, but that does remind me that I want to change the alerts so they fire only when you cross the land/pop threshold rather than every turn you're over it. That gets rather annoying after a while.
 
The info screen gives you your total population and land tiles so you can get close to the total values by reverse engineering. We've had that info in the alerts for ages - I don't have a problem with showing them on the main screen or on the victory screen.
 
The total number of land squares is always available to the player in the scoreboard's score breakdown hover text so I wouldn't consider it a spoiler.

Without the developer/cheat code?

Yep. The score hover doesn't change with chipotle active. (Although I had to check since running this test is the first time I've played BTS without it. :p)



The 890 max land score is the total number of land tiles in that game (however the 890 "max" pop score is not the total current population) And more interestingly, I actually control 108 land plots rather than 84 (the scoreboard count doesn't immediately update and I can't recall why; the domination percentage on the victory screen is always accurate though.)
 
So long as the total land count is always accurate, you're right it can be reverse-engineered. Cool. So how to display it on-screen, another bar? (j/k)

Actually, not really kidding. A bar when you get within 10% maybe until you hit it.
 
So long as the total land count is always accurate, you're right it can be reverse-engineered. Cool. So how to display it on-screen, another bar? (j/k)

Actually, not really kidding. A bar when you get within 10% maybe until you hit it.
no - not a bar. Just a regular percentage (x/y) would be fine. However, the font should be ...

[tab]font size = min(48, max(1, 48 - [y-x]))

... so that the message gets bigger as you get closer to the threshold.
 
I've seen how max pop is calculated somewhere (in the HOF-forums?). It has something to do with max food (grasslands, FP, resources) divided by something.

I see it's difficult displaying the actual pop needed (well, usually pop isn't a problem in a DOM attempt...) but the absolute # of tiles would be nice (on F8). I don't remember seeing absolute values in the civ4lerts.

And yes, I agree with EF, those messages repeated every turn becomes annoying/boring so I don't consciously look at it and miss it anyway :p Probabely display it every 2/5/10/x turns after coming close to the threshold?
 
I just finished a rather massive game (34 civilizations on a 200x132 plots map), which gave me some ideas about how BUG could be further improved (imho). Naturally most of the following suggestions revolve around making the interface work better for games with *lots* of civilizations present, but some might be useful for smaller configurations as well. Also, given the popularity of DLLs which increase the number of players, there are probably more players like me who would love to see some of these come true. However, I have no idea about what's feasible with Civ4's UI modding, or what's too hard to do, so I just list my ideas as they came. Feel free to do with them whatever you like, including disregarding them if you think they're impossible to do or not desirable enough for the work involved. ;) I'd love to hear some feedback though. :)

So, here are my suggestions:


1. Scoreboard: Addition of "current score rank" number

The scoreboard already has an (extremely handy) feature to have vassals sorted directly under their masters on the scoreboard. This is a godsend specially when you have lots of civs on the map - at one time I had nine different masters and about 15 vassals in my game, and the sorted scoreboard was a great way of seeing at a glance who was associated with whom. However, with 15 vassals sorted into positions different from the "original" score list, it isn't possible anymore to perceive their ranking at a glance. So I suggest a column which just shows the current score-based rank of each civilization. This column wouldn't make much sense if you don't use the "sort vassals under their masters" feature (because the numbers would simply increment with each line), but if you do, it would make it much easier to see whether a vassal is score-wise in the middle, or in the lower half, etc.

This could be enhanced by a "rank delta" column (for displaying whether the civ gained or lost some positions during the last turn). Another possible enhancement would be color coding for masters and vassals.


2. Scoreboard: If there are more civs than space to print

Currently, with standard font size on a 1024x768 screen, about 30 civilizations can be displayed in the scoreboard (some more if you play with reduced UI, but then you lose the minimap). If you have more civs in your game than fit on the screen, then you won't see the leaders of the scoreboard. I can think of several potential solutions to this problem:

a) Let the user set (and reduce) the height of a line in the scoreboard. The default font is small enough to squeeze more lines into the same screen space, only the research icons (if you use them) would overlap a bit, but that's no big deal imho.

b) Let the user set a number N for the "top N" civilizations to be displayed in the scoreboard, civs with rank lower aren't displayed.

c) Make the scoreboard scrollable (would probably look ugly though)


3. Scoreboard: Cycling through several setups

With 34 civs, a full-fledged scoreboard takes up about a quarter of the screen on a 1024x768 display. That's a bit much. Of course I could remove some columns to make it smaller, but all of the columns have valuable information. How about allowing the player to specify two or three alternative column configurations, and have the "Show scoreboard" button cycle through those instead of just switching the scoreboard on and off?


4. Foreign Advisor Glance screen: Display all columns

Currently the Glance screen only displays about 18 columns - columns for all civilizations beyond the 18th are not accessible. Dresden already showed me how to display all civs (I had to comment a line out which set a minimum value for column width).

This solution works with about 34 civs, although the "worst enemy" icon is now often printed in the next column following it (sometimes being hidden behind the number there). Would it be possible to replace the "worst enemy" icon with a simple red horizontal bar, which is displayed directly under the number instead of to the right of it? This would convey the same information and use the screen space more efficiently.

For 50+ civs in a game, the numbers might start to overlap each other. For such a game, it would probably be helpful if the glance screen scrolled horizontally, but I have no idea whether that can be done.


5. Foreign Advisor Relations screen: Improved layout

The "Relations" screen is only barely usable when playing with many civs. The portraits in the half-circle overlap each other, obscuring the lines drawn between them. I think this screen would be immensely more useful if altered in three ways:

- Replace the large portraits by smaller versions once a certain number of civs is reached.

- Arrange them in a circle instead of a half-circle

- When you click on a portrait, then display this portrait in the middle of the circle and only the lines connected with it. When you click on the portrait in the middle, then remove it and display all lines between all portraits again. This would guarantee the screen to be usable even if the player uses so many civs that the portraits still overlap.


5. Foreign Advisor Info screen: Sortable display

It woud be great if the display of the "Info" screen could be sorted after relation quality, religion factor, and trade amount (preferably by just clicking on the respective headers). This would make it much easier to see who are your strongest trade partners (it's not that easy to spot in an unsorted list of 30+ civs).


6. Foreign Advisor Resources/Tech screens: Filters?

Both screens have a lot of information to click through when playing with many civs. I wonder whether it would be helpful to have filters of some sort - for example, only display the civs which want to trade coal, or only display civs which want to trade a given technology. I don't currently have a good idea about how such functionality could be implemented though ...


7. Military Advisor: Bigger map with selectable overlays

Would it be possible to have a bigger display of the whole map? It's amazing that Civ4 doesn't have a good way to see the whole map - the minimap is very small, and globe view can never display the whole map (and is extremely slow, and the city info plaques gets in the way of the map if you zoom out very far). And the map in the military advisor can only show unit positions.

It would be great to have an overview map of nearly the size of the screen, with the following togglable functions:

- Switch visibility highlighting on/off: Sometimes it's good to have the visibility information (so that you know which parts of the map might be outdated), but sometimes a cleaner display of just the ownership color would be better (the highlighted colors for visibility can become confusing, especially when civs with similar colors are neighboring each other).

- Switch terrain overlay on/off: Again, sometimes the colors of the terrain can be difficult to distinguish from colors which mark ownership.

- Switch ownership coloring on/off: If you just want to see the lay of the land.

- Flash resource positions: Preferably selectable for each resource. Finally it would be possible to see at a glance where in the world there is oil, or coal, etc. (Currently, globe view is apparently intended to do that, but does a very bad job at it. When you zoom out far enough to get a good overview of the map, and then toggle the resources display, the whole map *vanishes* behind tons of oversized resource markers)

- Flash city positions?


8. Victories screen: cycling through all spaceship projects

With several civs building spaceships at the same time, the victory screen does a bad job of tracking the information, although it *is* available to the player (every completed part of every player gets publically announced).

This display could be more useful if it were possible to cycle through all civs that have completed there Apollo program, or if there were some mouseover info which compared the progress of all these civs, instead of just displaying one of them.


9. Info screen: More diverse smooth factors

The "smooth factor" setting in the info screen is a nifty idea. However, there's little difference between a setting of, say, 7, and a setting of 8. On the other hand, people looking for a setting beyond 10 are currently out of look. Wouldn't it be better to have smooth factors of increasing stepping - e.g., 1, 2, 3, 5, 7, 10, 15, 20, 30, 50?


10. Espionage screen: display of levels

Your espionage with any other civ is on one of five levels: no knowledge, demographics, research, city visibility, city inspection. Would it be possible to encode this level as a simple number of 0-4 and display it next to a civ's portrait in the espionage screen? Currently I find it difficult to monitor, for example, with which of 30 civs I just lost city visibility.

Being able to sort the list after this level, or filtering it to display only civs at a given level, would be a great bonus.


11. Civ4lerts for espionage levels

Likewise, alerts could inform the player that (for example) he's in danger of losing an espionage level towards a civ.


12. Main interface: Move camera to previous position

With unit cycling activated, the game will often move the camera away from a spot where I want t to stay. Switching unit cycling off is not a good solution however, especially not in a game with several hundred units to move - I could never remember all of them. Would it be possible to add a keyboard shortcut for "move camera back to previous position"?


13. Main interface: Configurable Globe View threshold

With a map of this size, I frequently found myself unintentionally entering globe view while simply zooming out. This usually halts my computer for half a minute while it shuffles textures and other data around. I assume that globe view uses different textures than the main view in order to actually *improve* performance, however this paradoxically has the opposite effect when your video memory is already quite full and you didn't even want to enter globe view in the first place. It's interesting that I do *not* have too bad a performance drop while zooming out *before* entering globe view, so I think that my machine would be able to cope with the larger view area when zooming out, there's no need to switch into globe view mode (or at least it seems that performance-wise it would be more efficient if globe view kicked in a bit later). Would it be possible to let the user configure a "camera to ground" distance at which globe view mode kicks in?


14. Better Replays

The "History replay" is (imho ;) ) among the most under-modded features in Civ4. In theory it's a great feature, but in practice it's marred by flaws in execution. For one, the text coloring is bad for readability especially in case of the red text. Also, the text colors are inconsistent in general. Events are colored blue, and they make up a large part of the replay - so when you read it, you might want to skip the blue text. However, information about vassalization (which is much more important to understand the global political situation) is also colored in blue, so if you do skip the blue text, you'd miss that.

Information is often incomplete. For example, it would be great to see which civ is founding which city (especially when you've got 30+ civs on the map and multiple cities get founded in a turn). Information about peace treaties doesn't include who "won" the war (for example, if one party is buying peace by paying money).

Some information is missing altogether, like *any* info about research / technologies, trades, resources, or about the units a civ was using.

The flashing dots vanish much too fast if you've got a lot of information to read through.

There is no way to step-wise rewind the history.


Okay ... I'm finished now. Thanks to everybody who actually read the whole thing, you earned my admiration. ;)

I know that some ideas are probably too difficult to implement, or too unimportant, or perhaps not even desirable, but I have hope that there are some which may find their way into a future version of BUG. And now I'm curious about feedback. :)
 
Lots of good ideas there; I have some specific comments about a few of them. You might want to take a look at out Feature Request Tracker and (individually :p) add those which are new so they don't get lost.

2. Scoreboard: If there are more civs than space to print
3. Scoreboard: Cycling through several setups
Both the scrolling scoreboard and splitting the scoreboard into "pages" are things which have been discussed before and are probably still on the todo list.

5. Foreign Advisor Info screen: Sortable display
Hmm. That's an interesting idea. Since the Glance screen is sortable this is probably doable but might take some work.

10. Espionage screen: display of levels
11. Civ4lerts for espionage levels
Only "See Demographics" and "See Research" are actually civ-wide values. "City Visibility" and "Investigate City" thresholds differ for every city on the map because they are also modified by such characteristics as distance from your capital and religions present. So it is entirely possible to have investigation ability of one rival city while not having investigation (or even visibility) of the rest of that civ's cities. Thus you can't really say you have city visibility for Civ X unless you pick some arbitrary threshold (one city, half the cities, all the cities, etc.)

12. Main interface: Move camera to previous position
Interesting idea, but how often would we be saving the camera position to be able to respond to that? And how far would you have to move the camera for it to be determined to be looking somewhere new? Note that in terms of unit selection there is a built-in command which does a similar thing. The back-slash key ("\") centers the camera on the last unit selected. So if you just moved a spearman and the game cycles to some far away worker, you can hit back-slash and the spearman will be selected again (and the camera zoomed to him.) I use that feature quite a bit.

13. Main interface: Configurable Globe View threshold
That might be possible through adjusting values in the CIV4DetailManager.xml file. If so, we might be able to provide a nicer interface to making that kind of change (probably not as elaborate as the CivScale tool though ;)) although I would expect you'd need to restart civ for any changes to take effect.

14. Better Replays
Unfortunately, the replay information (both what is logged, and the color of the associated text) is set by the SDK. Python has read-only access to alot of that so we're fairly limited in this area unless/until we delve into the SDK. Tracking our own custom replay events to supplement the game's saved replay and changing colors on-the-fly might be possible but also might be too much work for the benefit gained from it.
 
@Psyringe - More great ideas. Dresden hit the highlights of what is already on our list. As a stopgap until I can enhance the Advanced Scoreboard more completely, I have added a few of your requested features.

Score Rank

Use the new column code "K" to add it. It's yellow by default, and you can change it by setting a value for "Rank Color" in the INI file (e.g. COLOR_RED). It must be one of the colors in the standard color dropdown list. The column is not visible by default.

Max Players, Line Height and Research Icon Size

I added both to the options screen so you can limit the number of civilizations to display in the scoreboard and change the height of each line. I also added Research Icon Size. I found 18 for height and 20 for icon size to work pretty well without overlapping with the default font.

Note about options with selection lists: for those that are numeric (integer or decimal floating point values), you can enter any value into the INI file directly. As long as you don't select a new value from the list on the options screen, that value will remain in effect even though a different value will be shown in the options screen's list. The list shows you the closest entry to the value in the INI file.​

Foreign Advisor

There's something I've been wanting to add to the Foreign Advisor screen (multiple tabs) and other screens that show all the leaders in some sort of order: the ability to set your attitude toward them and then group by that by default.

The main reason for this feature is so that you can keep track of who your friends (and thus trading buddies) are as well as keep an eye on who they hate so you can avoid trading with them. I'd love to extend this further to have it detect blocks of AIs that all like each other, but that would require a new screen/tab I think.

It should be enough to have three options: friend, neutral, foe. The obvious place to set the values is on the Glance tab by adding a column for yourself at the left of the table (yes, this causes display problems for games with lots of civs). Something as simple as a button that rotates through the three values should suffice.

Then the Glance, Info, Resources, and Techs tabs as well as the MA should sort by that attitude (probably reversed from each other so foes go on top on MA). We could even have an option to group vassals under their masters like on the scoreboard. The FA could even have a button at the bottom to select a single attitude to see and filter out the others, or maybe something as simple as a "friends only" button. Why look at only enemies since you won't be able to trade with them anyway?

This doesn't really address your suggestions, but it's somewhat related. To your suggestion about resource/tech filters, one option would be to add your civ to the list at the top and make the buttons do the filtering instead of opening the pedia.

Tech Filtering

For techs, your row's Wants would show all techs that at least one AI has and is willing to trade. Research would show all other techs you can research. Will Trade would show all techs you have that at least one AI wants. Won't Trade would remain empty since it's up to you to decide whether or not to trade, though it would be cool to be able to move techs from Will to Won't. Can't would show all techs that at least one AI can research but you cannot trade to them due to the No Tech Brokering option.

One possible default filter would be to remove all AIs where no trade possibility exists. Then clicking a tech in your row should remove the AIs without that tech as a trade possibility (either wants or will trade, though maybe should show even those AIs that won't or can't trade it).

Resource Filtering

One filter I want to add ASAP is the ability to remove all resources that you have only 1 of from the first column (those that you can trade to an AI). Another is to remove all resources that you have in common. These would help to highlight trade possibilities rather than tell you who has what resources. I have a new screen in mind to help with that research.

The same method of adding a row for yourself could be done here for filtering by a specific resource, thought that starts to limit the number of visible civs in the list. I suppose a second row of icons at the top showing all resources you lack would work, and it could instead show just the resources that you lack and at least one AI will trade to you.

Large Minimap

I like the idea of a full-screen minimap (maximap?) with various overlays for finding things like resources. One way would be to expand the map on the Military Advisor to (almost) the full screen and draw the list of units over it. I could add a button to the list that moves it to the left or right (toggle the side it appears on) and another to hide it entirely.

I've been planning on a screen to show where all the resources are, and this would work great for it. Adding cities shouldn't be that hard. I believe that I can control the minimap on the F5 screen just as the buttons do on the main screen (bare map view, show cultural boundaries, etc).

10. Espionage screen: display of levels

Dresden's explanation that the see and investigate city missions are city-based aside, the Espionage Screen does display a single value for those missions, and there's no reason we couldn't use that as the level of espionage you have toward the civ and use it for alerts. As for an alert telling you that you're close to losing the level, how exactly should that work? Once you go 10% over the level, it would alert you if you dropped back below 10% over it? Similarly, should it alert you when you are within 10% under the level, as in close to achieving it?
 
10. Espionage screen: display of levels

Dresden's explanation that the see and investigate city missions are city-based aside, the Espionage Screen does display a single value for those missions, and there's no reason we couldn't use that as the level of espionage you have toward the civ and use it for alerts. As for an alert telling you that you're close to losing the level, how exactly should that work? Once you go 10% over the level, it would alert you if you dropped back below 10% over it? Similarly, should it alert you when you are within 10% under the level, as in close to achieving it?
There is no single number -- it's just the confusing way the espionage screen works; it took me forever to understand this when BTS first came out. The number you see on the espionage screen is the value for the currently-selected city (Capital or whatever is at the top of the list by default). Go ahead and select different cities and you'll see the investigate/visibility numbers change as seen in the 3 images below.

Spoiler :

Spoiler :

Spoiler :


Also, if you happen to meet a civ but have not revealed any of their cities, you will see those options are missing:

Spoiler :


Thus I stand by my previous assertion. We would need to pick a threshold value such as the maximum (i.e. enough for all cities), the minimum (i.e. enough for one city) or something in between like an average or enough to get the effect on half of the known cities.
 
You might want to take a look at out Feature Request Tracker and (individually :p) add those which are new so they don't get lost.
Thanks, will do. :)

Interesting idea, but how often would we be saving the camera position to be able to respond to that? And how far would you have to move the camera for it to be determined to be looking somewhere new? Note that in terms of unit selection there is a built-in command which does a similar thing. The back-slash key ("\") centers the camera on the last unit selected.
I didn't know about the backslash key - just tested it, and it indeed works very similar to the feature I suggested, so my request is actually redundant and hereby retracted. ;)

Unfortunately, the replay information (both what is logged, and the color of the associated text) is set by the SDK. Python has read-only access to alot of that so we're fairly limited in this area unless/until we delve into the SDK. Tracking our own custom replay events to supplement the game's saved replay and changing colors on-the-fly might be possible but also might be too much work for the benefit gained from it.
Agreed. A pity that this screen turns out to be so hard to mod though.

As a stopgap until I can enhance the Advanced Scoreboard more completely, I have added a few of your requested features.
Wow, thanks. That was quick. :)

The "set your attitude towards an AI and auto-sort lists according to it" idea sounds very useful, especially when playing with many civs.

Your proposed method of selecting filters for the resource trading and tech trading screen sounds very good as well.

The "grouping" of rivals into blocks is one of my secret wishes that I've been hesitant to suggest because I was fairly certain that it would be too difficult to implement; it would be great if I turned out to have been wrong on this one. :)

There is no single number -- it's just the confusing way the espionage screen works; it took me forever to understand this when BTS first came out. The number you see on the espionage screen is the value for the currently-selected city (Capital or whatever is at the top of the list by default).
Ah, thanks for the explanation. Turns out that I misunderstood that part of the espionage screen all along.

Okay, in that case I suggest to improve the visibility of the individual espionage situation of each foreign city. Perhaps the the numbers for city visibility and city inspection could be added next to the city name, or (if there isn't enough space for that) perhaps the city names could be color-coded according to whether the player has achieved visibility or inspection for them?

Regarding the display of a general "espionage level" that I suggested, I now see that the levels arent as simple as I thought. It still might be possible to estimate (and display) such a level though, I can think of two ways of doing that:

a) Have 7 levels instead of five: 0 - no info, 1 - demographic info, 2 - research info, 3 - visibility of at least one city, 4 - visibility of all cities, 5 - inspection of at leat one city possible, 6 - inspection of all cities possible.

b) Have the five levels I suggested previously, but add fractions. For example, a level of 3.2 would indicate that I have visibility in 20% of a rival's cities, and a level of 4.6 would indicate that I can inspect 60% of his cities.

This system might become a bit inaccurate if it's possible to achieve inspection in some cities while still not having visibility for others - is that a realistic scenario?

Sorry if I'm sounding confusing, I'm extremely tired right now ... just ask if something isn't clear, I'll be happy to improve my descriptions. :)
 
Top Bottom