So once or twice each year I spend a little time trying to figure out how to clean up the report option. I like the character report because it can show me where I have skills or characters that maybe I may bring across shards or that I may wish to develop.
There are 3 things with the reporting that I have changed:
- totals line is misaligned (decimal doesn't line up)
- when an account has no character (or sometimes the login fails - maybe because the previous character was not logged out in a safe spot), the report data is all wrong on that character pass.
- all characters are reported as 'female'
Totals alignment:
I modified the format for the !Skill variable formatting from "PadWithSpaces LEFT 7" to "6" like this:
gosub FormatSkill %SkillTotal
Gosub PadWithSpaces LEFT 6 #result ; Gosub PadWithSpaces LEFT 7 #result
set !Skill #Result
If a character was not available, then the reporting would show up like this if there was not a character on that shard for this account, taking data from whatever the previous character in the inventory list was:
******************************************************
Shard: Lake Austin Characters: 1 Of 0
******************************************************
CharName: N/A
Title: ****** $No significant properties...$
.
Sex: Female Str: N/A Dex: N/A Int: N/A MaxStat: N/A
.
Current Real Cap Locked Skill
======= ===== ===== ====== ========================
21.2 21.2 100.0 up Focus
55.0 55.0 100.0 up Magery
3.2 3.2 100.0 up Meditation
1.0 1.0 100.0 down Tailoring
36.8 36.8 100.0 up Veterinary
52.3 52.3 100.0 up Animal Taming
59.4 59.4 100.0 up Animal Lore
======= =====
228.9 228.9 Totals
======= =====
Here is how I adjusted the reporting on the character in the following sub:
sub MenuOptionInventoryChars
If %SignInContinue = #True ; this had a hanging double ampersand... not sure what that does to logic???
{
... [unchanged lines snipped from example here]
if %ActionType = BtnInventoryChars && %charloop <= %ShardChars
goSub CharReport %charloop ; !ThisChar ; Inventory Character
Testing the %charloop is not more than %ShardChars then there is no more reported characters with bad statistics.

All characters report as "Female" in the following subroutine:
Sub CharReport ; Inventory Character
Altered the gender test:
Set !Sex Female
If ! #Sex ; If !Sex
set !Sex Male
Gaderian