Loader
logo

Post reply

Note: this post will not display until it has been approved by a moderator.
Attachments: (Clear attachments)
Restrictions: 4 per post (4 remaining), maximum total size 192 KB, maximum individual size 128 KB
Uncheck the attachments you no longer want attached
Click or drag files here to attach them.
Other options
Shortcuts: ALT+S post or ALT+P preview

Topic summary

Posted by tos1
 - March 06, 2024, 05:49:00 AM
Related topic (v8.* but inherited to v9.1):
"Power Draw skill = 0 in Companions overview (details page)" by me

Not only "Power Draw" but also "Persuasion" and "Entertainment" are wrong. I hand-disassembled the *.txt and found out the cause and the solution.



As shown in the image above,
- In case that via the [P] key (party member list) we ask a specific companion about their skills, the correct value appears to be displayed, as it seems to be hard-coded.
- In case of companions overview (Market menu or Report menu), "Power Draw", "Persuasion", and "Entertainment" are wrong.
- The code that cause the problem is a try_for_range_backwards in jq_brows (scripts.txt)

My hand-disassembly for a part of it:
try_for_range_backwards reg1 0 37  # 36, 35, 34, ... 1, 0
  is_between|neg reg1 3 4    # other than 3
  is_between|neg reg1 5 8    # other than 5, 6, 7
  is_between|neg reg1 21 22  # other than 21
  is_between|neg reg1 29 34  # other than 29, 30, 31, 32, 33
  store_skill_level reg2 reg1 "$jq_dude"
  str_store_string 1 "@{s1}^{reg2}"
  overlay_set_text "$jq_allskills" 1
try_end

The four ranges should be corrected as the solution below;
2 3    # other than 2
4 7    # other than 4, 5, 6
21 22  # other than 21
28 33  # other than 28, 29, 30, 31, 32

By doing this (solution), the set of numbers used as skill will correctly change as below.
(I don't have header_skills.py of AWoIaF, and use the file of Module system 1.171 instead. I experimentally checked (cut-and-tried) and understand that "skl_reserved1 = 3" is assigned for the "Entertainment" skill of AWoIaf.)
# v9.1  correct
  36    36
  35    35
  34    34
  28    33 <--
  27    27
  26    26
  25    25
  24    24
  23    23
  22    22
  20    20
  19    19
  18    18
  17    17
  16    16
  15    15
  14    14
  13    13
  12    12
  11    11
  10    10
   9     9
   8     8
   4     7 <--
   2     3 <--
   1     1
   0     0

- How to reproduce it/when/why it happens:
Hire several companions, take screen shots their skill by asking from [P] (party member list) as true values. Visit a town, select "Trade with locals" - "Companions overview", or "Report" - "Companions Overview" at the world map. Select each companion you have, and compare the "Power Draw", "Persuasion", and "Entertainment" skills with the true value.

- Game version (and steam or downloaded):
AWoIaF v9.1, v8.2. Warband v1.174 downloaded
(Note: v8.1 + WB v1.167 has the same problem. v7.11 + WB v1.167 has no problem)