Changed so that if units have the Steal skill, their visibility increases by 2 squares. This overlaps with the effect of a torch, giving a maximum visibility of 15 squares.
Since GBA, thieves have been granted the ability to ensure visibility, I implemented that in FE5. In GBA, it was increased by 5 squares and had too wide visibility, but that is indeed excessive, so I have only modestly increased it by 2 squares. 2 squares increase alone changes the view a lot.
In this time, the thief's visibility is not class based, but rather skill based. So Marty, who has the personal skill of steal, and Lara, who is promoted to a dancer, will also have increased visibility.
The following process is used to set the visibility of each unit. After saving $0F, plus the set value for each maps and the bonus from a torch, a process is added to determine the unit's skill and increase the visibility if it has Steal.
80:E626 A4 0D ldy $0D ; 80:E628 B9 41 00 lda $0041,Y ; DeploymentNumber 80:E62B 29 C0 00 and #$00C0 ; Enemy or NPC flags 80:E62E 22 96 B2 83 jsl $83:B296 ; 80:E632 BF 94 52 7E lda $7E:5294,X ; aAllegianceTargets 80:E636 29 FF 00 and #$00FF ; 80:E639 C9 00 00 cmp #$0000 ; 80:E63C D0 03 bne $E641 ; 80:E63E 4C FE E6 jmp $E6FE ; rtl 80:E641 A2 CB 8D ldx #$8DCB ; aVisibilityMap 80:E644 86 11 stx $11 ; 80:E646 B9 03 00 lda $0003,Y ; X-coordinate of the unit 80:E649 29 FF 00 and #$00FF ; 80:E64C 85 0B sta $0B ; 80:E64E B9 04 00 lda $0004,Y ; Y-coordinate of the unit 80:E651 29 FF 00 and #$00FF ; 80:E654 85 0D sta $0D ; 80:E656 B9 17 00 lda $0017,Y ; VisionBonus 80:E659 18 clc ; 80:E65A 6D 19 0E adc $0E19 ; wVisionRange 80:E65D 29 FF 00 and #$00FF ; 80:E660 85 0F sta $0F ;