Strange bug with AtmosphericSoundEffects in Bamz-Amschend

Post » Wed Jun 29, 2016 5:09 pm

Hello,


I encountered strange bug when I enter Bamz-Amschend, Passage of Whispers. As soon as I'm in the cell, I get two messages with following text



#INFO or #INDO in pick root. Show the scene graph to find the bad bound radius under world pick root.

I checked TESPCD to see which plugins modify the cell and then by eliminating them one by one narrowed the problem down to AtmosphericSoundEffects-3.0-Tribunal.esp that was included in MGSO. The only thing the mod does to the cell is modify AMBI and WGHT (probably dirty refs, but should be harmless here) and also adds one activator: "_ase_cave_drip". That activator has following script attached:




Spoiler


begin _ase_cvedrip

short initialized
short rnd_sound
short rnd_pitch
short snd_playing
float snd_length
float snd_length_saved
float rnd_start_time
float start_time_elapsed
float snd_playing_elapsed

dontsaveobject

if ( cellchanged == 1 )
set initialized to 0
endif

if ( snd_playing == 1 )
set snd_playing_elapsed to ( snd_playing_elapsed + getsecondspassed )
if ( snd_playing_elapsed >= snd_length_saved )
stopsound "_ase_cavedrip01"
stopsound "_ase_cavedrip02"
stopsound "_ase_cavedrip03"
stopsound "_ase_cavedrip04"
stopsound "_ase_cavedrip05"
stopsound "_ase_cavedrip06"
stopsound "_ase_cavedrip07"
stopsound "_ase_cavedrip08"
stopsound "_ase_cavedrip09"
stopsound "_ase_cavedrip10"
stopsound "_ase_cavedrip11"
stopsound "_ase_cavedrip12"
stopsound "_ase_cavedrip13"
stopsound "_ase_cavedrip14"
stopsound "_ase_cavedrip15"
stopsound "_ase_cavedrip16"
set start_time_elapsed to 0
set snd_playing to 0
return
else
return
endif
else
if ( snd_playing_elapsed >= snd_length_saved )
set start_time_elapsed to ( start_time_elapsed + getsecondspassed )
if ( start_time_elapsed > rnd_start_time )
set rnd_sound to ( random, 16 )
set rnd_start_time to ( random, 2 )
set rnd_start_time to rnd_start_time + 1
set rnd_pitch to ( random, 5 )
if ( rnd_pitch == 0 )
set snd_length to 5.00
elseif ( rnd_pitch == 1 )
set snd_length to 5.26
elseif ( rnd_pitch == 2 )
set snd_length to 5.56
elseif ( rnd_pitch == 3 )
set snd_length to 5.88
else
set snd_length to 6.25
endif
set snd_length_saved to snd_length
if ( initialized == 0 )
set initialized to 1
set snd_playing to 0
set snd_playing_elapsed to snd_length_saved
set rnd_start_time to ( random, 8 )
set rnd_start_time to rnd_start_time + 1
return
else
set snd_playing to 1
set snd_playing_elapsed to 0
endif
else
return
endif
endif
endif

if ( rnd_sound == 0 )
if ( rnd_pitch == 0 )
playloopsound3dvp "_ase_cavedrip01", 1.0, 1.0
elseif ( rnd_pitch == 1 )
playloopsound3dvp "_ase_cavedrip01", 1.0, 0.95
elseif ( rnd_pitch == 2 )
playloopsound3dvp "_ase_cavedrip01", 1.0, 0.90
elseif ( rnd_pitch == 3 )
playloopsound3dvp "_ase_cavedrip01", 1.0, 0.85
else
playloopsound3dvp "_ase_cavedrip01", 1.0, 0.80
endif
return
endif

if ( rnd_sound == 1 )
if ( rnd_pitch == 0 )
playloopsound3dvp "_ase_cavedrip02", 1.0, 1.0
elseif ( rnd_pitch == 1 )
playloopsound3dvp "_ase_cavedrip02", 1.0, 0.95
elseif ( rnd_pitch == 2 )
playloopsound3dvp "_ase_cavedrip02", 1.0, 0.90
elseif ( rnd_pitch == 3 )
playloopsound3dvp "_ase_cavedrip02", 1.0, 0.85
else
playloopsound3dvp "_ase_cavedrip02", 1.0, 0.80
endif
return
endif

if ( rnd_sound == 2 )
if ( rnd_pitch == 0 )
playloopsound3dvp "_ase_cavedrip03", 1.0, 1.0
elseif ( rnd_pitch == 1 )
playloopsound3dvp "_ase_cavedrip03", 1.0, 0.95
elseif ( rnd_pitch == 2 )
playloopsound3dvp "_ase_cavedrip03", 1.0, 0.90
elseif ( rnd_pitch == 3 )
playloopsound3dvp "_ase_cavedrip03", 1.0, 0.85
else
playloopsound3dvp "_ase_cavedrip03", 1.0, 0.80
endif
return
endif

if ( rnd_sound == 3 )
if ( rnd_pitch == 0 )
playloopsound3dvp "_ase_cavedrip04", 1.0, 1.0
elseif ( rnd_pitch == 1 )
playloopsound3dvp "_ase_cavedrip04", 1.0, 0.95
elseif ( rnd_pitch == 2 )
playloopsound3dvp "_ase_cavedrip04", 1.0, 0.90
elseif ( rnd_pitch == 3 )
playloopsound3dvp "_ase_cavedrip04", 1.0, 0.85
else
playloopsound3dvp "_ase_cavedrip04", 1.0, 0.80
endif
return
endif

if ( rnd_sound == 4 )
if ( rnd_pitch == 0 )
playloopsound3dvp "_ase_cavedrip05", 1.0, 1.0
elseif ( rnd_pitch == 1 )
playloopsound3dvp "_ase_cavedrip05", 1.0, 0.95
elseif ( rnd_pitch == 2 )
playloopsound3dvp "_ase_cavedrip05", 1.0, 0.90
elseif ( rnd_pitch == 3 )
playloopsound3dvp "_ase_cavedrip05", 1.0, 0.85
else
playloopsound3dvp "_ase_cavedrip05", 1.0, 0.80
endif
return
endif

if ( rnd_sound == 5 )
if ( rnd_pitch == 0 )
playloopsound3dvp "_ase_cavedrip06", 1.0, 1.0
elseif ( rnd_pitch == 1 )
playloopsound3dvp "_ase_cavedrip06", 1.0, 0.95
elseif ( rnd_pitch == 2 )
playloopsound3dvp "_ase_cavedrip06", 1.0, 0.90
elseif ( rnd_pitch == 3 )
playloopsound3dvp "_ase_cavedrip06", 1.0, 0.85
else
playloopsound3dvp "_ase_cavedrip06", 1.0, 0.80
endif
return
endif

if ( rnd_sound == 6 )
if ( rnd_pitch == 0 )
playloopsound3dvp "_ase_cavedrip07", 1.0, 1.0
elseif ( rnd_pitch == 1 )
playloopsound3dvp "_ase_cavedrip07", 1.0, 0.95
elseif ( rnd_pitch == 2 )
playloopsound3dvp "_ase_cavedrip07", 1.0, 0.90
elseif ( rnd_pitch == 3 )
playloopsound3dvp "_ase_cavedrip07", 1.0, 0.85
else
playloopsound3dvp "_ase_cavedrip07", 1.0, 0.80
endif
return
endif

if ( rnd_sound == 7 )
if ( rnd_pitch == 0 )
playloopsound3dvp "_ase_cavedrip08", 1.0, 1.0
elseif ( rnd_pitch == 1 )
playloopsound3dvp "_ase_cavedrip08", 1.0, 0.95
elseif ( rnd_pitch == 2 )
playloopsound3dvp "_ase_cavedrip08", 1.0, 0.90
elseif ( rnd_pitch == 3 )
playloopsound3dvp "_ase_cavedrip08", 1.0, 0.85
else
playloopsound3dvp "_ase_cavedrip08", 1.0, 0.80
endif
return
endif

if ( rnd_sound == 8 )
if ( rnd_pitch == 0 )
playloopsound3dvp "_ase_cavedrip09", 1.0, 1.0
elseif ( rnd_pitch == 1 )
playloopsound3dvp "_ase_cavedrip09", 1.0, 0.95
elseif ( rnd_pitch == 2 )
playloopsound3dvp "_ase_cavedrip09", 1.0, 0.90
elseif ( rnd_pitch == 3 )
playloopsound3dvp "_ase_cavedrip09", 1.0, 0.85
else
playloopsound3dvp "_ase_cavedrip09", 1.0, 0.80
endif
return
endif

if ( rnd_sound == 9 )
if ( rnd_pitch == 0 )
playloopsound3dvp "_ase_cavedrip10", 1.0, 1.0
elseif ( rnd_pitch == 1 )
playloopsound3dvp "_ase_cavedrip10", 1.0, 0.95
elseif ( rnd_pitch == 2 )
playloopsound3dvp "_ase_cavedrip10", 1.0, 0.90
elseif ( rnd_pitch == 3 )
playloopsound3dvp "_ase_cavedrip10", 1.0, 0.85
else
playloopsound3dvp "_ase_cavedrip10", 1.0, 0.80
endif
return
endif

if ( rnd_sound == 10 )
if ( rnd_pitch == 0 )
playloopsound3dvp "_ase_cavedrip11", 1.0, 1.0
elseif ( rnd_pitch == 1 )
playloopsound3dvp "_ase_cavedrip11", 1.0, 0.95
elseif ( rnd_pitch == 2 )
playloopsound3dvp "_ase_cavedrip11", 1.0, 0.90
elseif ( rnd_pitch == 3 )
playloopsound3dvp "_ase_cavedrip11", 1.0, 0.85
else
playloopsound3dvp "_ase_cavedrip11", 1.0, 0.80
endif
return
endif

if ( rnd_sound == 11 )
if ( rnd_pitch == 0 )
playloopsound3dvp "_ase_cavedrip12", 1.0, 1.0
elseif ( rnd_pitch == 1 )
playloopsound3dvp "_ase_cavedrip12", 1.0, 0.95
elseif ( rnd_pitch == 2 )
playloopsound3dvp "_ase_cavedrip12", 1.0, 0.90
elseif ( rnd_pitch == 3 )
playloopsound3dvp "_ase_cavedrip12", 1.0, 0.85
else
playloopsound3dvp "_ase_cavedrip12", 1.0, 0.80
endif
return
endif

if ( rnd_sound == 12 )
if ( rnd_pitch == 0 )
playloopsound3dvp "_ase_cavedrip13", 1.0, 1.0
elseif ( rnd_pitch == 1 )
playloopsound3dvp "_ase_cavedrip13", 1.0, 0.95
elseif ( rnd_pitch == 2 )
playloopsound3dvp "_ase_cavedrip13", 1.0, 0.90
elseif ( rnd_pitch == 3 )
playloopsound3dvp "_ase_cavedrip13", 1.0, 0.85
else
playloopsound3dvp "_ase_cavedrip13", 1.0, 0.80
endif
return
endif

if ( rnd_sound == 13 )
if ( rnd_pitch == 0 )
playloopsound3dvp "_ase_cavedrip14", 1.0, 1.0
elseif ( rnd_pitch == 1 )
playloopsound3dvp "_ase_cavedrip14", 1.0, 0.95
elseif ( rnd_pitch == 2 )
playloopsound3dvp "_ase_cavedrip14", 1.0, 0.90
elseif ( rnd_pitch == 3 )
playloopsound3dvp "_ase_cavedrip14", 1.0, 0.85
else
playloopsound3dvp "_ase_cavedrip14", 1.0, 0.80
endif
return
endif

if ( rnd_sound == 14 )
if ( rnd_pitch == 0 )
playloopsound3dvp "_ase_cavedrip15", 1.0, 1.0
elseif ( rnd_pitch == 1 )
playloopsound3dvp "_ase_cavedrip15", 1.0, 0.95
elseif ( rnd_pitch == 2 )
playloopsound3dvp "_ase_cavedrip15", 1.0, 0.90
elseif ( rnd_pitch == 3 )
playloopsound3dvp "_ase_cavedrip15", 1.0, 0.85
else
playloopsound3dvp "_ase_cavedrip15", 1.0, 0.80
endif
return
endif

if ( rnd_sound == 15 )
if ( rnd_pitch == 0 )
playloopsound3dvp "_ase_cavedrip16", 1.0, 1.0
elseif ( rnd_pitch == 1 )
playloopsound3dvp "_ase_cavedrip16", 1.0, 0.95
elseif ( rnd_pitch == 2 )
playloopsound3dvp "_ase_cavedrip16", 1.0, 0.90
elseif ( rnd_pitch == 3 )
playloopsound3dvp "_ase_cavedrip16", 1.0, 0.85
else
playloopsound3dvp "_ase_cavedrip16", 1.0, 0.80
endif
return
endif

end




I tried to google the error and found one post http://www.gamesas.com/error-when-entering-punabi-t375843.html describing the same error, but in Punabi. No response, but the user also runs the same mod (no 146 in his load list).



Any help would be much appreciated :)



EDIT: I forgot to add that result of the error is that I cannot interact with doors and other stuff. I still can fight creatures. And minimap/local map is all black.



I tested it with cleaned plugin and also with original plugin freshly downloaded from MMH with the same result.

User avatar
Charity Hughes
 
Posts: 3408
Joined: Sat Mar 17, 2007 3:22 pm

Post » Wed Jun 29, 2016 1:52 pm

Well it sounds like you pin-pointed the problematic mod.

It also seems to be a very random/rare problem that very few people have seen.


If it happens consistently for you, remove the mod (or the associated activators.) Otherwise, just keep playing and save consistently. ;)


People have always said that scripts staring with _ or * , etc can cause problems. Maybe that's the culprit.

User avatar
Bigze Stacks
 
Posts: 3309
Joined: Sun May 20, 2007 5:07 pm

Post » Wed Jun 29, 2016 12:10 pm

Well I did. And it does happen consistently, but I bumped into the issue only in this particular cell yet, while the mod edits almost every cell in the game. I guess I will try to find another cell with the same activator and see if it happens. Plus I hoped someone might know the actual cause of the error and potentially also a fix for it.

User avatar
saxon
 
Posts: 3376
Joined: Wed Sep 19, 2007 2:45 am

Post » Wed Jun 29, 2016 1:10 pm

Some new info:


I tried visiting also Punabi and also got the error. Then I visited Pulk, which also contains _ase_cave_creak activator, and I got no problem here. What is even more interesting is that when I removed edits to Punabi from the mod with Enchanted editor, the error PERSISTED. But when I deactivate the mod completely, the issue is gone.

User avatar
CHARLODDE
 
Posts: 3408
Joined: Mon Apr 23, 2007 5:33 pm

Post » Wed Jun 29, 2016 2:37 pm

Okay, some progress.


I tried to disable all mods except for Atmospheric sound effects and the error disappeared. By binary search I found that the error is conflict between Atmospheric sound effects and Reizeron's sound emitters with visuals (Nocturnal moths, Cave drips, Flies). But here comes the interesting part - I use plugin I made by combining all of the three mods. I cleaned it and carefully checked it with Enchanted editor. The merge only consists of references from the original three mods. However when I use all of the three plugins plus ASE, no error. But when I use my merge + ASE, the error appears. On the other hand, the person who had the same problem http://www.gamesas.com/error-when-entering-punabi-t375843.html uses Cave drips and ASE, so problem should be between Cave drips and ASE.



EDIT: Thanks to Reizeron I was able to find the problem. The error is conflict between ASE and Cave drips 1.0. I did download updated Cave drips mod, but I did not create new merge for myself, so my merged version still contained the old version of Cave drips. That's why it worked when I tried them separately.



Anyway, this thread can be locked now.

User avatar
matt
 
Posts: 3267
Joined: Wed May 30, 2007 10:17 am


Return to III - Morrowind