I thought all the original quests could be done, but apparently there are some problems with this one, is it known ?
the problems are when the hunt begins, the player is supposed to follow some hunters at night.
1st test failing : getaipackagedone, it never returns true with openmw, when aitravel is finished it switches to aiwander, he doesn't move but it keeps on returning 0 anyway. So it can be forced by changing the getaipackagedone to return 1 if it is in aiwander mode.
Then 2nd problem : the tracking is done by trackerscript which takes the distance between the player and rolf long-tooth, and this distance sometimes becomes completely wrong ! It's probably linked to some cell change. Anyway in this case the script sets trackerpause to 1, and even if we return to the old position to reduce the distance, it's broken for good and never sees the correct end of movement !
This part doesn't happen all the time, I could pass the 1st stage once, got the noise and the 1st hunter was dead, then I got stuck at the 2nd stage. When I retried I was unable to pass the 1st stage this time, and never since then, so it breaks rather often apparently... !
So what, are we obliged to use the journal command to skip this quest ?
bloodmoon : ristaag quest broken ?
Re: bloodmoon : ristaag quest broken ?
All the main quests has been tested and are regarded as working as far as I know. Remember though that this is still in alpha, so it's fully possible that working quests break because of a fix for another bug for example.
- DestinedToDie
- Posts: 1181
- Joined: 29 Jun 2015, 09:08
Re: bloodmoon : ristaag quest broken ?
I remember this quest being totally buggy in vanilla Morrowind. This of course doesn't exclude that OpenMW might be at fault.
Re: bloodmoon : ristaag quest broken ?
I managed to pass this quest as intended, but it was really buggy.
Notably :
- getting to far from the guy you're supposed to follow block him for ever
- saving at the wrong moment and restarting the game, force you to use some console command to finish the quest.
But the quest was really buggy in Vanilla also, specially all this following stuff
If you can determine what exactly is causing the problem you should filla bug report
Notably :
- getting to far from the guy you're supposed to follow block him for ever
- saving at the wrong moment and restarting the game, force you to use some console command to finish the quest.
But the quest was really buggy in Vanilla also, specially all this following stuff
If you can determine what exactly is causing the problem you should filla bug report
Re: bloodmoon : ristaag quest broken ?
what found with quick look.
( https://gitlab.com/OpenMW/openmw/-/issues/2537 )
the current system handles cell move by leaving deleted reference to old cell but if it's same as with setdelete then it shouldn't recognize that anymore. fixed same time with disable for console at least
( https://gitlab.com/OpenMW/openmw/-/issues/1465 )
"GetAiPackageDone normally only returns 1 for one frame, when the Ai function has been executed (AiTravel: once the NPC reaches its destination). The last argument of Ai functions (AiTravel: 4th argument) is optional. If it is given (0 or 1 doesn't matter), once the package is executed, GetAiPackageDone will NOT reset to 0 until a new Ai command is called on that NPC.
The point of this is that scripted Ai sequences won't break if the "package done" frame is skipped for any reason" ?
possibly related
( https://gitlab.com/OpenMW/openmw/-/issues/1143 )
"GetCurrentAiPackage return the package that was run last, not the package that will be run in the next frame."
( https://gitlab.com/OpenMW/openmw/-/issues/1605 )
there might be possibility that being still the aitravel don't get complete call as immediately witching to aiwander
edit: if it's aiwander, then it might be there no pathgrid nearby or at all or only one. was fixed for bars and beth have those individual fixes for specifig situations scattered around. details elude but exteriors there might be own behaviour.
anyway. testing is the easiest way to see if not code
( Edit: updated links to gitlab from redmine tracker)
( https://gitlab.com/OpenMW/openmw/-/issues/2537 )
the current system handles cell move by leaving deleted reference to old cell but if it's same as with setdelete then it shouldn't recognize that anymore. fixed same time with disable for console at least
( https://gitlab.com/OpenMW/openmw/-/issues/1465 )
"GetAiPackageDone normally only returns 1 for one frame, when the Ai function has been executed (AiTravel: once the NPC reaches its destination). The last argument of Ai functions (AiTravel: 4th argument) is optional. If it is given (0 or 1 doesn't matter), once the package is executed, GetAiPackageDone will NOT reset to 0 until a new Ai command is called on that NPC.
The point of this is that scripted Ai sequences won't break if the "package done" frame is skipped for any reason" ?
possibly related
( https://gitlab.com/OpenMW/openmw/-/issues/1143 )
"GetCurrentAiPackage return the package that was run last, not the package that will be run in the next frame."
( https://gitlab.com/OpenMW/openmw/-/issues/1605 )
there might be possibility that being still the aitravel don't get complete call as immediately witching to aiwander
edit: if it's aiwander, then it might be there no pathgrid nearby or at all or only one. was fixed for bars and beth have those individual fixes for specifig situations scattered around. details elude but exteriors there might be own behaviour.
anyway. testing is the easiest way to see if not code
( Edit: updated links to gitlab from redmine tracker)
Last edited by sjek on 04 Feb 2021, 08:21, edited 3 times in total.
Re: bloodmoon : ristaag quest broken ?
found the script:
lots of bugtracking messages and in rolf hello topic here's:
;urgent [Lake Fjalding later]
same to variables how there are saved between saves. might be bug (or vanilla)
or that cell problem which can be checked by moving the aitravel command inside the same cell
other scripts dealing:
rolfscript is used for quest tracking on daytime and
spiritbearscript is used for disable/enable and quest tracking
werechange scripts deal with the werewolf version of the quest partly on BM_bearhunt2
Code: Select all
Begin trackerScript
short state
short sattirdone
short greriddone
short rolfdone
short distancecheck
short statereset
short paused
short moving
short movingreset
short wolfcount
if ( GetJournalIndex BM_BearHunt1 < 25 )
return
endif
if ( GetJournalIndex BM_BearHunt1 >= 100 )
return
endif
if ( Player->GetDistance "rolf long-tooth" > 500 )
if ( state < 80 )
;MessageBox "TRACKERPAUSE SET TO 1."
set trackerpause to 1
endif
endif
if ( trackerpause == 1 )
if ( state != -1 )
;MessageBox "STATERESET SET TO STATE. STATE SET TO -1"
set statereset to state
set movingreset to moving
set moving to 0
set state to -1
endif
endif
if ( state == -1 )
if ( paused == 0 )
"sattir the bold"->AiWander 0 0 0 0 0 0
"grerid axe-wife"->AiWander 0 0 0 0 0 0
"rolf long-tooth"->AiWander 0 0 0 0 0 0
set paused to 1
;MessageBox "WANDER SET FOR ALL THREE. PAUSED SET TO 1."
endif
endif
if ( paused == 1 )
if ( Player->GetDistance "rolf long-tooth" <= 512 )
set trackerpause to 2
;MessageBox "DISTANCE OK AGAIN. TRACKERPAUSE SET TO 2."
endif
endif
if ( trackerpause == 2 )
set state to statereset
set statereset to 0
set trackerpause to 0
set paused to 0
;MessageBox "STATE TO RESET. RESET TO 0. TRACKERPAUSE TO 0. PAUSED TO 0."
endif
if ( state == 0 )
if ( moving == 0 )
;MessageBox "STARTING TRAVEL PACKAGES"
"sattir the bold"->AiTravel -173940.828 194911.391 632.957
"grerid axe-wife"->AiTravel -170245.578 195622.125 697.838
"rolf long-tooth"->AiTravel -172008.281 195049.297 810.818
"sattir the bold"->SetHello 10
"grerid axe-wife"->SetHello 10
"rolf long-tooth"->SetHello 10
;"rolf long-tooth"->AiEscort Player 0 -172008.281 195049.297 810.818 0
set moving to 10
endif
endif
if ( moving > 0 )
;MessageBox "GETPACKAGEDONE STUFF STARTING"
if ( "sattir the bold"->GetAiPackageDone == 1 )
set sattirdone to 1
endif
if ( "grerid axe-wife"->GetAiPackageDone == 1 )
set greriddone to 1
endif
if ( "rolf long-tooth"->GetAiPackageDone == 1 )
set rolfdone to 1
endif
endif
if ( moving > 0 )
if ( sattirdone == 1 )
;elseif ( GetJournalIndex BM_Ceremony1 >= 45 )
if ( greriddone == 1 )
;elseif ( GetJournalIndex BM_Ceremony1 >= 60 )
if ( rolfdone == 1 )
;MessageBox "ALL THREE SHOULD HAVE REACHED FIRST POINT"
set state to ( state + 10 )
set moving to 0
endif
endif
endif
endif
if ( state == 10 )
active_BM_huntscream1->PlaySound "BM Nord Attack"
set "rolf long-tooth".rolfstate to 10
"sattir the bold"->SetHealth 0
"rolf long-tooth"->ForceGreeting
set rolfdone to 0
set greriddone to 0
set state to 20
endif
if ( statereset == 20 )
if ( Player->GetDistance "sattir the bold" <= 200 )
if ( GetJournalIndex BM_BearHunt1 < 40 )
Journal BM_BearHunt1 40
endif
endif
endif
if ( GetJournalIndex BM_BearHunt1 == 45 )
if ( state == 20 )
set state to 30
endif
endif
if ( state == 30 )
if ( moving == 0 )
"rolf long-tooth"->AiTravel -172090.703 193469.188 452.030
"grerid axe-wife"->AiTravel -169821.828 193690.719 140.888
set moving to 10
endif
endif
if ( state == 40 )
active_BM_huntscream2->PlaySound "BM Nord AttackF"
set "rolf long-tooth".rolfstate to 20
"grerid axe-wife"->SetHealth 0
"rolf long-tooth"->ForceGreeting
set rolfdone to 0
set state to 50
endif
if ( statereset == 50 )
if ( Player->GetDistance "grerid axe-wife" <= 200 )
if ( GetJournalIndex BM_BearHunt1 < 55 )
Journal BM_BearHunt1 55
endif
endif
endif
if ( GetJournalIndex BM_BearHunt1 == 60 )
if ( state == 50 )
set wolfcount to 128
set state to 60
endif
endif
if ( state == 60 )
if ( moving == 0 )
"rolf long-tooth"->AiTravel -172854.547 191164.219 902.094
set moving to 10
endif
endif
if ( state == 70 )
while ( wolfcount < 896 )
PlaceAtPC werewolf_bearhunt 1 wolfcount 1
set wolfcount to ( wolfcount + 256 )
return
endwhile
"rolf long-tooth"->AiFollow Player 0 0 0 0 0 0
set state to 80
endif
if ( state == 80 )
if ( wereBdead == 3 )
Journal BM_BearHunt1 70
set state to 90
endif
endif
if ( state == 90 )
if ( player->GetItemCount BM_bearheart_UNIQUE == 1 )
Journal BM_BearHunt1 80
set state to 100
endif
endif
End trackerScript
;urgent [Lake Fjalding later]
moving variable might be a culprit and handling those in one go possibly. needs closer look- getting to far from the guy you're supposed to follow block him for ever
- saving at the wrong moment and restarting the game, force you to use some console command to finish the quest.
same to variables how there are saved between saves. might be bug (or vanilla)
or that cell problem which can be checked by moving the aitravel command inside the same cell
other scripts dealing:
rolfscript is used for quest tracking on daytime and
spiritbearscript is used for disable/enable and quest tracking
werechange scripts deal with the werewolf version of the quest partly on BM_bearhunt2
Re: bloodmoon : ristaag quest broken ?
Hi
I just wanted to say that this bug still exists in OpenMW 0.47.0 (nightly for Android). I do have the addon Morrowind Rebirth installed, in case that is important.
I guess the same problem happens with the quest "To catch a thief", where Uryn Maren not starts to walk in the mine.
I was able to workaround it by using the console.
pato
I just wanted to say that this bug still exists in OpenMW 0.47.0 (nightly for Android). I do have the addon Morrowind Rebirth installed, in case that is important.
I guess the same problem happens with the quest "To catch a thief", where Uryn Maren not starts to walk in the mine.
I was able to workaround it by using the console.
pato