MessageBox button argument handling differences
I noticed a small difference between MessageBox behavior in OpenMW and vanilla that led to a slightly weird behavior while playing The Doors of Oblivion.
I made a small ESP to reproduce the issue: messageBoxtest.ESP
The issue is as follows:
- There is a cauldron with the name "Test Cauldron" placed in the Seyda Neen square. The cauldron has a script
bs_soulfissureScriptattached to it - Activate it. The first activation results in the player healing some HP
- Activate it for the second time. In OpenMW this opens a message box in the center of the screen with the message "The fissure must replenish." and a button that says "timePassed". In vanilla this just displays a message "The fissure must replenish." at the bottom of the screen, without the confirmation button.
Here's the script in full:
Begin bs_soulfissureScript
float timePassed
if ( OnActivate == 1 )
if ( timePassed <= 0 )
PlaySound3d "restoration hit"
player->ModCurrentHealth, 1000
set timePassed to 60
else
MessageBox "The fissure must replenish." timePassed
endif
endif
if ( MenuMode == 0 )
if ( timePassed > 0 )
set timePassed to ( timePassed - GetSecondsPassed )
endif
endif
end
I'm not sure what the author's intention with including the timePassed variable in the MessageBox call was, but I like I said, vanilla engine ignores it while OpenMW displays it as a button.
- Is the problem OpenMW specific or does it also happen in vanilla Morrowind?
- OpenMW specific
- What is your operating system?
- Windows 10
- What version of OpenMW are you using? If you used a bleeding edge build, state the exact revision used.
- 0.49 build 34896099
- What version of Morrowind are you using (i.e. retail CD or Steam)? What addons (Tribunal, Bloodmoon) do you have installed? What language is your Morrowind install?
- English GOG version
- Do you use any mods? If so, does the problem also occur in a clean vanilla install without any mods?
- Problem is mod specific, encountered in The Doors of Oblivion
- What are the exact steps to reproduce the problem?
- As described above
- What did you expect to happen? What happened instead?
- As described above
- Are there any error messages in your
openmw.logfile? If you're not an OpenMW team member, it's best to upload it.- Nothing relevant appears in the log
- What settings do you use? If you're not an OpenMW team member, it's best to upload your
settings.cfg.- Not relevant
- Where is the in-game location this problem can be observed? Avoid vague statements such as "west of town X". Instead, open the console (
`key by default, the key above Tab), click on the problematic object, then use the betacomment (bc) instruction to get useful information about the object that you can copy and paste into the bugreport:
Report time: 2024.08.24 19:50:48 UTC
Content file: 4 [messageBoxtest.ESP]
RefNum: 1
RefID: "testCauldron"
Memory address: 000002072CF9D8C0
Cell: Seyda Neen
Grid: -2 -9
Coordinates: -11034.9 -71001 257.318
Model: meshes\f\Furn_Com_Cauldron_01.nif
(BSA: D:\games\MorrowindModding\Data Files\Morrowind.bsa)
Bound textures:
BSA: D:\games\MorrowindModding\Data Files\Bloodmoon.bsa
diffuseMap: textures/tx_metal_strip_02.dds
BSA: D:\games\MorrowindModding\Data Files\Tribunal.bsa
diffuseMap: textures/tx_metal_iron_rusty.dds
BSA: D:\games\MorrowindModding\Data Files\Morrowind.bsa
diffuseMap: textures/tx_metal_iron_rusty_01.dds
Script: "bs_soulfissureScript"
Edited by Ronik