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:

  1. There is a cauldron with the name "Test Cauldron" placed in the Seyda Neen square. The cauldron has a script bs_soulfissureScript attached to it
  2. Activate it. The first activation results in the player healing some HP
  3. 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.
  • 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.log file? 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