Foreign Advisor Info Screen

Amazing work on the Foreign Advisor! For the first time ever, I find myself actually using the "Info" screen on a regular basis. :)

I have a problem with the "Glance" screen though. The column width seems to be fixed at a value which allows 16 columns to be displayed. When more players are in the game, it doesn't adapt. This means that in my games (which usually feature 34 civilizations) I can't see the relations of half the players. The odd thing is that - IIRC - the Glance screen worked well with about 30 civs in one of my previous games, some months ago. The columns were smaller, and the leader icons overlapped in the top row, but all the information was there.

I realize that not everybody wants to play with 34 civs - still, it would be great if the Glance screen could be made useful for those who do too.

I don't know what's the best way to solve this problem - here are the ideas that came to my mind, perhaps one of them is feasible:

A) Depict the "worst enemy" status with a line under the number, not with an icon next to the number. This would reduce the space each column takes up without taking out information. A red line under the number would be perfect for visibility, and there's enough space for it in the current layout. Alternatively, having a line with the same color as the number might be easier to do (is it possible to print the numbers as formatted text - underlined, bold, etc.?)

B) Change the worst enemy icon to something smaller (like a red exclamation mark), and reduce the font size of the numbers.

C) Enable horizontal scrolling for the Glance screen.

Can I do something to help you solve this problem? Alternatively, can you tell me what I need to do to solve it myself? Thanks in advance!
 
I can't imagine a 34x33 Glance Screen :eek: . One thing I expect you should do is to turn off the glance smilies; have to think about the other suggestions for making things more compact.

But this does remind me to fix the layout problems with a non-ID 0 active player which was something I was originally going to look at when we started the Info improvements but forgot about.
 
Thanks for the fast reply. :)

I can't imagine a 34x33 Glance Screen :eek: .
Just think of an Excel sheet that fell into a paint-box. ;) It's still a very informative and helpful sheet though. :)

One thing I expect you should do is to turn off the glance smilies;
Already did that, doesn't currently change the column width though.

have to think about the other suggestions for making things more compact.
I'll be here if you have questions. I should also be able to run quick tests if you want me to. I also took a look at the code myself but it's difficult for me to understand the UI programming. I'd try to tweak it a bit myself, but the commands to draw stuff require a better understanding of the UI data structure than I apparently have. :(
 
Ah, okay. There's a minimum column size currently. As a quick fix, you can disable the minimum if you wish. Open up CvExoticForeignAdvisor.py and search for these lines:
Code:
		self.X_Spread = (self.W_SCREEN - 20) / self.nCount
		if self.X_Spread < 58: self.X_Spread = 58
Comment out the second one like so:
Code:
		self.X_Spread = (self.W_SCREEN - 20) / self.nCount
		#if self.X_Spread < 58: self.X_Spread = 58
Now, you'll get the overlapping behavior you used to see. An example from a ridiculous 50-civ game I made as a test:


Give that a shot and we'll think about ways to make it friendlier to many-civ games.
 
Ah, okay. There's a minimum column size currently. As a quick fix, you can disable the minimum if you wish.
Thanks. :) Did that. I now have all the information available (see screenshot), so my problem is solved already.

If you want to further improve readability, I think (judging from my screenshot) that methods (A) and (B) I suggested would do this. Additionally, it might help to (D) give the numbers center alignment (might have to do this to the top leaderheads too to prevent misalignments), and/or to (E) draw vertical lines to separate the columns. I don't know how hard this is to implement though.
 

Attachments

  • Civ4ScreenShot0000.JPG
    Civ4ScreenShot0000.JPG
    112.8 KB · Views: 159
Glad that does what you need Psyringe.

Continuing with the glance screen, here is what currently happens if you are playing someone other than ID zero. This is from Neal's King of the World #7: Saladin game where he's playing the 18-civ earth map as player #10. Hatty is player #0. First screen is unsorted, second is sorted on Frederick; they link to a full-size version.



Note that Hatty's column is even with the row icons and so her numbers are obscured (you can still see the Worst Enemy icon under Saladin) and there is a big space where Saladin's column would have been. Also note that Hatty is the first row on the unsorted version.

Now, I've done a little tweaking. Here are the same two screens after the soon-to-be-committed changes.



The columns now line up properly as they start in the right spot and just ignore the active ID rather than leaving a space. And Saladin shows up on the first row in the unsorted version.

Similar to what was done with the Info tab, I also changed the panel style so that the active player's row is darker than everyone else's so that it's easier to pick out on the sorted screens. This has a couple side effects but I don't find them a huge problem. These are that a) the rows are a little smaller so the screen is a bit more cramped but also fits another player, b) the "separator" lines are a little bigger than before, and c)the other player backgrounds are just slightly brighter then before. Any thoughts?
 
One thing I expect you should do is to turn off the glance smilies; have to think about the other suggestions for making things more compact.

I'll use this comment to remember one of my old desires (I'm a guy full of hope in the good heart of the coders ^_- ): change that option to a choice list with:
- both smiles and numbers
- only numbers
- only smiles (this is the new option)

I'd like to only have smiles displayed because they are more real than numbers (due to the fact that numbers doesn't consider the hidden modifiers, and so may be misleading).
 
Note to self: Try and figure out a way to check the "That would go against everything we stand for" diplomacy civic refusal and work it into favorite civic detection.

New Note to self: Change the info screen trade route calculation so that it recognizes when the UN Open Market resolution is in effect and therefore counts trade routes from civs without open borders.
 
Top Bottom