The forum has been set to read-only mode. For community discussion and questions, head over to our Discord: https://discord.taleoftwowastelands.com

VUI+ testing request

General modding guides and authoring tutorials.
User avatar
Axonis
Posts: 16
Joined: Wed Sep 06, 2017 9:40 am

VUI+ testing request

Post by Axonis » Tue Dec 25, 2018 9:19 pm

Hi TTW players,

I'm the author of Vanilla UI Plus, an interface mod for Fallout 3 and New Vegas. I know my mod is used by some TTW players and I've developed some features specific to it (such as displaying the Big Guns skill badge at the Tag! Menu).

Lately I'd been receiving reports of CTDs on some really weird occasions, such as receiving a specific dialog line from an NPC. I could not reproduce these reports myself and I've been testing such edits very extensively before releasing them. It seems that the crashes would only affect TTW because all testers had confirmed that in plain NV and FO3 everything worked fine.

A few days ago I removed these features from VUI+ on TTW games, via an installer declaration. This means VUI+ should no longer be crashing your game.

But I want to get this feature back, so I also started coding a workaround. According to two TTW players it seems to be working fine, so I would like to ask players here to try it themselves and see if it works OK.

So, here is this latest version with the orphan word control feature reinstated for TTW games. Let me know how it works for you. Thank you for your time.
Last edited by Axonis on Thu Dec 27, 2018 6:28 am, edited 1 time in total.

User avatar
RoyBatty
Gary
Posts: 7742
Joined: Sun Apr 27, 2014 10:26 am
Location: Vault 108

Re: VUI+ testing request

Post by RoyBatty » Tue Dec 25, 2018 10:08 pm

One of the crashes (Sink CIU) was being caused by Fallout 3, this was fixed in 3.2.1, so if you got any reports of that (and other random dialogue crashes) this was probably the cause.

The other problems I am aware of are when users are viewing specifically Ledoux's Hockey Mask (probably related to the effect on it), and looking in certain containers also causes a CTD.

I know we've had our differences, but please set them aside. Many users use VUI+ and I don't want incompatibilities arising as it will cause headaches for us both. As far as I'm aware we are doing nothing that is abnormal but I won't rule out engine incompatibilities between Fallout 3 and New Vegas as there is many such strange issues in the past.

What exactly is "orphan word control" ?
Image

User avatar
Axonis
Posts: 16
Joined: Wed Sep 06, 2017 9:40 am

Re: VUI+ testing request

Post by Axonis » Wed Dec 26, 2018 12:07 am

The VUI+ crashes are not related to game forms or scripts. They were related to calculations that would use references to the width of a wrapped text block.

Orphan word control is a method of eliminating single words on the bottom of a paragraph, by creating 2 clone paragraphs and then choosing the width of the shorter one, as long as it wouldn't produce an extra line. It's better explained at Menus\Prefabs\VUI+\orphancontrol.xml.

The code that caused all those reports was:

Code: Select all

<wrapwidth>
	<copy src="sibling" trait="width" />
	<sub>
		<copy src="parent" trait="font" />
		<copy src="globals" trait="_VUI+FontW_"/>
	</sub>
</wrapwidth>
whereas the older code that would work was:

Code: Select all

<wrapwidth>
	<copy src="parent" trait="_VUI+MaxWrapwidth" />
	<mul>
		<copy> 0.82 </copy>
		<add>
			<copy src="sibling" trait="height" />
			<div src="sibling" trait="width" />
			<div> 3 </div>
		</add>
		<min> 0.95 </min>
	</mul>
</wrapwidth>
As strange as it sounds, the more complex code works whereas the simple one crashes the game. Neither of these would cause FO3 or NV to crash. Related discussion here and here.

However, the good news is that the current version of VUI+ provided at ModDB works fine in TTW by turning this feature off during installation, and I hope that the version I've linked above for testing will work without turning this feature off in any case.

User avatar
RoyBatty
Gary
Posts: 7742
Joined: Sun Apr 27, 2014 10:26 am
Location: Vault 108

Re: VUI+ testing request

Post by RoyBatty » Wed Dec 26, 2018 12:27 am

I still doubt that the dialogue crash was caused by VUI, it was caused by a single line of dialogue from Flak which had GetOffersServicesNow as the first condition which was causing the game to return a null pointer which caused the crash. It was also happening with random hellos and other things from other NPCs as well. I was able to reproduce this, and I do not use VUI+ but DarNUI.

The issues with containers and certain items is definitely an issue that needs looked into though.
Image

User avatar
Axonis
Posts: 16
Joined: Wed Sep 06, 2017 9:40 am

Re: VUI+ testing request

Post by Axonis » Wed Dec 26, 2018 7:37 am

Well, one user has reported that his game would always crash (and I think he meant freeze) upon the following lines: "They moved us around a lot. I was stationed at Camp Golf for a while. Last I heard they were at Camp McCarran."

After testing orphan word control on this string myself, I sent him the following patch:

Code: Select all

<wrapwidth>
	<copy src="sibling" trait="width" />
	<mul> 0.997 </mul>
	<sub>
		<copy src="parent" trait="font" />
		<copy src="globals" trait="_VUI+FontW_"/>
	</sub>
</wrapwidth>
He reported that this line was no longer crashing the game, but introduced another crash elsewhere. The only difference is the multiplication by 0.997, nothing else. That got me thinking that maybe some low level multithreading optimizations could either affect floating point calculations or references to the width of a wrapped text block.

So the workaround I've coded imposes specific limits on this calculation and whatever causes it to go wrong seems to be held in check.

patrikmasa
Posts: 2
Joined: Thu Dec 27, 2018 2:12 pm

Re: VUI+ testing request

Post by patrikmasa » Thu Dec 27, 2018 3:32 pm

I actually meant crash.
I attached gdb to the game and it always crashes on
0x00aa9c4d movl 0xc(%ecx),%edx
because ecx contains null.

User avatar
Axonis
Posts: 16
Joined: Wed Sep 06, 2017 9:40 am

Re: VUI+ testing request

Post by Axonis » Thu Dec 27, 2018 5:10 pm

@patrikmasa, can you try the version I've linked in the first post here to see if it crashes your game ? I intent to upload this one to ModDB.

patrikmasa
Posts: 2
Joined: Thu Dec 27, 2018 2:12 pm

Re: VUI+ testing request

Post by patrikmasa » Thu Dec 27, 2018 5:59 pm

@Axonis Unless I've screwed the testing somehow it looks good to me. It does not crash when talking to Boone even after exhausting all dialogue choices. It does not crash when talking to somebody who is not Boone after talking to Boone. It does not crash when talking to Boone inside building and then going out of the building. And it didn't even crash during fights with raiders. I think that should be all.

User avatar
Axonis
Posts: 16
Joined: Wed Sep 06, 2017 9:40 am

Re: VUI+ testing request

Post by Axonis » Sat Dec 29, 2018 12:42 pm

I've uploaded the new version which no longer triggers a TTW crash, without disabling any feature.

User avatar
RoyBatty
Gary
Posts: 7742
Joined: Sun Apr 27, 2014 10:26 am
Location: Vault 108

Re: VUI+ testing request

Post by RoyBatty » Sun Dec 30, 2018 2:12 am

Re-added to recommended list.
Image

Post Reply