Jump to content

Vampire Script Bugfixes


lyth

Recommended Posts

This post contains information needed to fix the Vampire Script without downloading my mod or working it out yourself.

 

If you are not running any conflicting mods (I.E. mods that involve changes to the vampire script), you can download and install my vampirefeedfix.esp from TESSource instead of patching the script yourself. http://www.tessource.net/files/cache/4453.html

One way to check is to use a conflict detector or tool such as Oblivion Mod Manager. Another is to open the mod you suspect may conflict and check under File->Data - Details (button) to see if the VampireScript is modified.

 

A couple of the bugs a number of people, including myself, have been hoping gets fixed in the next patch is a set of scripting bugs affecting Vampire PCs. The bugs include a condition change (becoming 'more' vampiric) upon resting shortly after feeding and failure to change occasionally when resting more than 24 hours after the last feeding or change. To my surprise, I've not found a custom fix that addresses all of these, perhaps because many players don't feel it worth the trouble, perhaps because players have decided to use much more 'enhanced' scripts for their Vampire PCs.

 

However, a couple of mods make modification to the vampire script necessitated by the other seemingly unrelated changes the mod makes, or release vampire mods that still suffer from these inherent bugs. Unless repair by the mod maintainer, these will likely continue to be bugged even after Bethesda releases a fix. Since not every mod would work perfectly with the esp I've posted on TESSource to repair these bugs and since many vampire mod-makers would find these fixes useful, I've decided to reproduce the 'fixes' I made to the script here for anyone to make use of.

 

In most cases, if the mod you are running/making involves a change to the vampire script, you can simply cut and paste the following changes into the script and commit them. However, if the original code below is changed by the mod, you may have to interpret the script and implement the changes elsewhere.

 

Feel free to share or reuse these changes with or without credit to me - so long as you do not falsely claim credit for the fixes yourself.

 

The fixes included in my mod make changes to the script in two places.

 

1. Fixes Issue with changing too soon after feeding.

- When Counters are reinitialized, one of them (a flag marking whether you have fed) fails to be included

Original Code : Line 103

;re-add state 1 spells

	Player.addspell Vampirism25
	Player.addspell Vampirism25Att
	Player.addspell Vampirism25Skills
	set vampday to GameDay
	set vamphour to GameHour
	MessageBox "Your hunger for blood has been satisfied... for now."
endif
endif

 

Fixed Code

;re-add state 1 spells

	Player.addspell Vampirism25
	Player.addspell Vampirism25Att
	Player.addspell Vampirism25Skills
	set vampupdate to 0
	set vampday to GameDay
	set vamphour to GameHour
	MessageBox "Your hunger for blood has been satisfied... for now."
endif
endif

 

 

2. Fixes issue with failing to change when you should

- Condition checks fail to cover all possibilities

- Hour conditions in script are checked as if integers although they are passed to the script as floats

Original Code : Line 114

;Run a timer, checking for 24 hour intervals. If 24 hours have passed, increment vampupdate and reset hour/day vars

if ( PCVampire >= 1 )
if ( vampday != GameDay )
	if ( ( vamphour + 1 ) < GameHour )
		set vampupdate to 1
		set vampday to GameDay
		set vamphour to GameHour
	elseif ( vamphour >= 22 )
		if ( vampday + 1 < Gameday )
			set vampupdate to 1
			set vampday to Gameday
			set vamphour to GameHour
		endif
	endif
endif
endif

 

Fixed Code

;Run a timer, checking for 24 hour intervals. If 24 hours have passed, increment vampupdate and reset hour/day vars

if ( PCVampire >= 1 )
if ( vampday != GameDay )
	if (vampday + 1 < GameDay)
		set vampupdate to 1
		set vampday to GameDay
		set vamphour to GameHour
	elseif ( vamphour < GameHour ) 
		set vampupdate to 1
		set vampday to GameDay
		set vamphour to GameHour
	endif
endif
endif

 

If you find errors in my fixes or other bugs in the script, please leave me a message and I'll make the fixes to my mod and post the updated code changes here. I hope you find this useful.

 

Please do NOT send me messages about errors in the scripts of other people's mods. Thank you,

Lytenian

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...