A World of Ice and Fire Forums

Follow-up: "CREDITS and CONTRIBUTIONS" from halfway

Started by tos1, July 03, 2024, 07:17:15 AM

Previous topic - Next topic

tos1

Related topic:
Prelude, "CREDITS and CONTRIBUTIONS" is displayed from halfway. in V8.* by me.



I hand-disassembled the code and found that the cause is the scroll starting position. Currently the value passed to position_set_y for the last overlay_animate_to_position is -1100. Changing this to e.g. -2100 resolves the scroll-from-halfway problem.

This will reveal some sentences that have been HIDDEN from ANY PLAYER except translators since v7.11 or earlier:
----
The Dothraki take what they need through pillage and plunder and are said to dis-trust the oceans because their horses will not drink from it. Rape is rife in these parts and one would do well to stay well away...^^Welcome to the Game of Thrones and lets hope your adventures lead to better ends than that of most folk within the continents of Westeros and Essos!^^^CREDITS......(and first 11 or 12 lines)
----

I was also concerned about TOO LONG DURATION for most texts and the IRREGULAR fade-in/fade-out durations, and adjust them. For reference, I experimentally changed values for "gt" operations in my environment as below:

A World of Ice and Fire^^^^^^   If you wish... (3 lines)
  5500 ->   5500
  7000 ->   7000
Westeros, Dark times has befell this... (4 lines)
 27000 ->  15000
 29500 ->  16500
To the north of this vast continent is... (11 lines)
 50000 ->  36000
 51500 ->  37500
In order to bolster their influence... (6 lines)
 63500 ->  47500
 65000 ->  49000
Located in the Vale, an isolated... (5 lines)
 85000 ->  57000
 87000 ->  58500
Heading south Lord Mace Tyrell,... (3 lines)
107500 ->  65500
109000 ->  67000
King of Salt and Rock, Son of... (8 lines)
129000 ->  85000
131500 ->  86500
This turmoil continues past the... (3 lines)
150500 ->  93500
152000 ->  95000
A Game of Thrones is a TV series (6 lines)
190000 -> 104000
191500 -> 105500
The Dothraki take what...Welcome to the...CREDITS...
240500 -> 175500

Incidentally, currently the presentation is terminated with a click, but this is not convenient for both players and developers/testers. It would be better to move from the displayed text to the next text, so (if you haven't done so already) I recommend that you define the value passed to "gt" operations as a Python tuple or list (including several constants) rather than a literal at the top of module_presentations.py like:

fade1 = 1500
#----
story_t1 = 5500
story_t2 = story_t1 +  4000
story_t3 = story_t2 + 11000
story_t4 = story_t3 + ...     # (Or these lines also should be a tuple like (5500, 4000, 11000, ...).)
  :
#---- (If previous lines are set in a tuple, below could be made dynamically)
story_durations = [
 story_t1, story_t1 + fade1,
 story_t2, story_t2 + fade1,
 ... ]

This should make it easier to write the code to jump to the next text by incrementing the sequence number of the currently displayed text.


- Game version (and steam or downloaded):
AWoIaF v9.4, v8.2. Warband v1.174 downloaded.
AWoIaF v8.1, v7.11.Warband v1.167 downloaded.

Produno

Unfortunately there isn't such a thing as arrays or lists in the module system.

I have however made the other adjustments suggested here. Plus tidied up the text and removed the initial pointless menu.

tos1

Thanks a lot. I've confirmed that most of the issues have been resolved in AWoIaF v10.0 dev.4.

Maybe my explanation was unclear. The example I wrote above does not mean to have the engine process the array while the game is running, but to write (in Python format) story_durations = [ story_t1, story_t1 + fade1, story_t2, story_t2 + fade1, ... ] at the beginning of module_presentations.py, and then reference it in the list of operations , e.g., as story_durations[ 3 ].

AFAIK, we can access like an array even at runtime (with some restrictions and conditions). We can reference a string adding an offset to it with "str_store_string" ope, as done in the script "lord_comment_to_s43", or can use unused slots, or read/write integers by bit partitioning and arithmetic operations. (I won't go into the additional operations in WSE2 here.)

Quick Reply

Note: this post will not display until it has been approved by a moderator.

Name:
Email:
Shortcuts: ALT+S post or ALT+P preview