Type:
Bug
Severity:
Minor
Game version:
Morrowind
Concerns:
Tamriel_Data
Related Release File:
Found in Version:
Status:
Fixed for Version:
Description:
Begin T_ScSound_VelothiGourdHarp
; ...
;MessageBox, "Sound stopped."
endif
; endif ; fixed /abot
endif
;--the scale affects the pitch, the larger the instrument the lower the pitch
Comments
[EDIT] also maybe this script
[EDIT] for TR_Mainland:
also maybe this script could be safer/shorter removing calls to 2 references per line
begin TR_m3_q_OE_MG_RemoveGems
; removed from main script to lighten... excessive amount of nested ifs?
; removed calls to 2 references per line, added variables /abot
Short lowervalue
short gemtype
short items
set items to 0
set gemtype to ( "TR_m3_ManielSylbenitte".gemtype )
If ( gemtype == 1 )
player->RemoveItem "T_IngMine_AlexandriteDae_01" 1
set items to ( player->GetItemCount "T_IngMine_AlexandriteDae_01" )
ElseIf ( gemtype == 2 )
player->RemoveItem "T_IngMine_AmberDae_01" 1
set items to ( player->GetItemCount "T_IngMine_AmberDae_01" )
ElseIf ( gemtype == 3 )
player->RemoveItem "T_IngMine_AmethystDae_01" 1
set items to ( player->GetItemCount "T_IngMine_AmethystDae_01" )
ElseIf ( gemtype == 4 )
player->RemoveItem "T_IngMine_AquamarineDae_01" 1
set items to ( player->GetItemCount "T_IngMine_AquamarineDae_01" )
ElseIf ( gemtype == 5 )
player->RemoveItem "T_IngMine_BloodstoneDae_01" 1
set items to ( player->GetItemCount "T_IngMine_BloodstoneDae_01" )
ElseIf ( gemtype == 6 )
player->RemoveItem "ingred_Dae_cursed_diamond_01" 1
set items to ( player->GetItemCount "ingred_Dae_cursed_diamond_01" )
Set lowervalue to 1
ElseIf ( gemtype == 7 )
player->RemoveItem "ingred_Dae_cursed_emerald_01" 1
set items to ( player->GetItemCount "ingred_Dae_cursed_emerald_01" )
Set lowervalue to 1
ElseIf ( gemtype == 8 )
player->RemoveItem "T_IngMine_JetDae_01" 1
set items to ( player->GetItemCount "T_IngMine_JetDae_01" )
ElseIf ( gemtype == 9 )
player->RemoveItem "T_IngMine_KhajiitEyeDae_01" 1
set items to ( player->GetItemCount "T_IngMine_KhajiitEyeDae_01" )
ElseIf ( gemtype == 10 )
player->RemoveItem "T_IngMine_MoonstoneDae_01" 1
set items to ( player->GetItemCount "T_IngMine_MoonstoneDae_01" )
endif
; safety if split
If ( gemtype == 11 )
player->RemoveItem "T_IngMine_OpalDae_01" 1
set items to ( player->GetItemCount "T_IngMine_OpalDae_01" )
ElseIf ( gemtype == 12 )
player->RemoveItem "ingred_Dae_cursed_pearl_01" 1
set items to ( player->GetItemCount "ingred_Dae_cursed_pearl_01" )
Set lowervalue to 1
ElseIf ( gemtype == 13 )
player->RemoveItem "T_IngMine_PearlBlackDae_01" 1
set items to ( player->GetItemCount "T_IngMine_PearlBlackDae_01" )
ElseIf ( gemtype == 14 )
player->RemoveItem "T_IngMine_RockCrystalDae_01" 1
set items to ( player->GetItemCount "T_IngMine_RockCrystalDae_01" )
ElseIf ( gemtype == 15 )
player->RemoveItem "ingred_Dae_cursed_ruby_01" 1
set items to ( player->GetItemCount "ingred_Dae_cursed_ruby_01" )
Set lowervalue to 1
ElseIf ( gemtype == 16 )
player->RemoveItem "T_IngMine_SapphireDae_01" 1
set items to ( player->GetItemCount "T_IngMine_SapphireDae_01" )
ElseIf ( gemtype == 17 )
player->RemoveItem "T_IngMine_SpinelDae_01" 1
set items to ( player->GetItemCount "T_IngMine_SpinelDae_01" )
Set lowervalue to 1
ElseIf ( gemtype == 18 )
player->RemoveItem "T_IngMine_TektiteDae_01" 1
set items to ( player->GetItemCount "T_IngMine_TektiteDae_01" )
Set lowervalue to 1
ElseIf ( gemtype == 19 )
player->RemoveItem "T_IngMine_TopazDae_01" 1
set items to ( player->GetItemCount "T_IngMine_TopazDae_01" )
ElseIf ( gemtype == 20 )
player->RemoveItem "T_IngMine_TurquoiseDae_01" 1
set items to ( player->GetItemCount "T_IngMine_TurquoiseDae_01" )
Endif
if ( items > 0 )
Set "TR_m3_ManielSylbenitte".hasitems to items
endif
If ( lowervalue )
"TR_m3_ManielSylbenitte"->ModDisposition 1
Set "TR_m3_ManielSylbenitte".lowervalue to 1
else
"TR_m3_ManielSylbenitte"->ModDisposition 3
Set "TR_m3_ManielSylbenitte".lowervalue to 0
Endif
set lowervalue to 0
Set "TR_m3_ManielSylbenitte".dialogcue to 2
StopScript "TR_m3_q_OE_MG_RemoveGems"
end
I think script name TR_m3_OE_RaathimTeleportGlobalScp could cause conflicts/problems being truncated to TR_m3_OE_RaathimTeleportGlobalSc, better name it something like TR_m3_OE_RaathimTeleportGlobScp ?
Also these could cause problems, better change script name
Script ID "TR_m2_q_20_Sorcerer" is not unique! Previous object is type NPC.
Script ID "TR_m2_q_4_SorenDremora" is not unique! Previous object is type Creature.
Script ID "TR_m2_q_A8_5_Shamirr" is not unique! Previous object is type NPC.
Script ID "TR_m3_q_hideseektrap" is not unique! Previous object is type Container.
Object 'TR_m2_q_5_HlamenDoor' is not persistent. Its presence is not guaranteed in game. referred from script by TR_m2_q_5_NPCMove_Trials
script TR_m3_OE_q_kwamasmug_remove called by script TR_m3_OE_q_kwamasmug_scr is missing
Applied modified script with
Applied modified script with line 10 and 83 edited so hasitems can be set to 0 like the original
TR_m3_OE_RaathimTeleportGlobalScp was already shortened, just forgot to delete
Script IDs edited and fixed the rest, the bug's original report for t_data remains
[FOGBUG]: Cells with zero
[FOGBUG]: Cells with zero fog density setting:(can cause blackness with some video cards, setting fog to 0.1 usually is enough)
Old Ebonheart, Hhontjulf Fire-Mane's House
Also I am having crashes loading a previous save due to GetPCCell "Ebon Tower" not finding the cell (I think in saves it may be named Old Ebonearth). Maybe making a dummy interior cell with 1 static would help, or make different checks e.g. with player position
[EDIT] after more checking, it must be some mod conflict, not with save, as problem persists with starting a new game with full loading list, problem disappears starting a new game with minimal mod list. I will see if I can isolate the conflicting, it was CELL old ebonheart, ebon tower (6, -18) previously in the save
[EDIT]ok, found the conflict, an unreleased extension to Stuporstar's dummies placing them also in Old Ebonheart (so saving old cell name), I renamed the cell to Ebon Tower. Not so sure the unique exterior cell name is future proof, but it should work if no more renaming happens
Taking a look at the TR_Mainland scripts, I've seen several identifiers containing - (a math operator in any programming language) instead of _, they are a problem both for OpenMW and MWEdit warnings and are not reliable in Morrowind engine IMO if you write something like
TR_act-m2-56-necswitch2 -> disable
IMO, at least it should be
"TR_act-m2-56-necswitch2"->disable
ideally it should be
"TR_act_m2_56_necswitch2"->disable
Also not sure if these
AiWander 0 0 0 0 0 0 0 0 0 0 0 0
could make the NPC stay like a mannequin after PositionCell if no other AI package kicks, if they stay like a mannequin maybe better something like
AiWander 0 0 0 40 30 20 10 0 0 0 0 0
The dwemer puzzle scripts are a impossible to recompile mess of references to persistent statics variables that refuse to recompile from CS, you should use global variables to exchange state information between such a big number of objects, when you slap 100 persistent statics in a cell it's a nightmare to change if something is not found as persistent any more...
Oh well, I suppose those scripts will never be recompiled
[EDIT]found the typo I entered stopping recursive compiling. At least I can change and recompile some of the stuff[
[EDIT2]Ok, I'm done, not enough energy to check all dwemer puzzle scripts, more important script changes are marked /abot2018, keep what you like, you can import/export compare changes, TR_MainlanU_Scripts.mws is Mash script text export format (EDIT: revised version here)
[EDIT3] I see some misplaced door/tower meshes loading in CS e.g. the Almas Thirr temple/towers exterior area, does it make sense to report TR_Preview things?
[EDIT4]ok, false alarm, not a TR problem, it was some mesh replacer (I think a atlas one) using the ex_vivec_h_07 mesh instead of the ex_vivec_h_09
[EDIT5]Expression Error: BADOBJECTPOINTER in Dialogue CompileAndRun.
Set expression returned an error.
==>CompileAndRun problem was found in Topic "swindling dark elves"
"Did you find out anything, %PCName?"
No idea if this is still 100% safe at runtime, personally I would replace the dialog result text wall with a global script call e.g. StartScript TR_m3_HonnsGScript
begin TR_m3_HonnsGScript
; never do such long things in dialog result if possible IMO /abot
short i1
short i2
short i3
short i4
short i5
set i1 to ( GetJournalIndex "TR_m3_Vh_Honns1" )
set i2 to ( GetJournalIndex "TR_m3_Vh_Honns2" )
set i3 to ( GetJournalIndex "TR_m3_Vh_Honns3" )
set i4 to ( GetJournalIndex "TR_m3_Vh_Honns4" )
set i5 to ( i1 + i2 + i3 + i4 )
if ( i5 >= 200 )
Choice "I think it's obvious who cheated you. Are you satisfied with these names?" 20
endif
if ( i1 >= 10 )
if ( i1 < 100 )
Choice "Dolyn Volor hasn't given you a fair deal." 21
endif
endif
if ( i2 >= 10 )
if ( i2 < 100 )
Choice "Drathas Llothin hasn't given you a fair deal." 22
endif
endif
if ( i3 >= 10 )
if ( i3 < 100 )
Choice "Ienasa Llothil hasn't given you a fair deal." 23
endif
endif
if ( i4 >= 10 )
if ( i4 < 100 )
Choice "Onvos Dovyn hasn't given you a fair deal." 24
endif
endif
Choice "I name you liar. These merchants didn't cheat you, all are innocent." 25
Choice "Not yet." 26
StopScript TR_m3_HonnsGScript
end
I'd also rename the local script TR_m2_q_A8_5_Shamirr to e.g. TR_m2_q_A8_5_ShamirrSc, Greatness7 has demonstrated you can use set localscriptname.localvarname syntax, so using same identifier for object local script name and object identifier is even more ambiguous with objectidentifier.localvarname syntax
[EDIT]fixed wrong NPC
I'm pretty sure that's an
I'm pretty sure that's an ancient nvidia card bug that really should have been fixed since the naughties.
Nevertheless, set the fog in this cell to 0.1.
I used to have it with a ATI
I used to have it with a ATI card, so not NVidia only, and not so ancient
https://www.reddit.com/r/Morrowind/comments/5hopp2/cant_see_anything_inside_fort_frostmoth_armory/