A World of Ice and Fire Forums


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
 - October 14, 2024, 09:00:14 PM
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.)
Posted by Produno
 - October 10, 2024, 04:34:37 PM
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.
Posted by tos1
 - July 03, 2024, 07:17:15 AM
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.