Opened 3 years ago
Closed 3 years ago
#13235 closed defect (fixed)
Beavis and Butthead Virtual Stupidity
Reported by: | Gamer12141 | Owned by: | eriktorbjorn |
---|---|---|---|
Priority: | high | Component: | Engine: BBVS |
Version: | Keywords: | ||
Cc: | Game: | Beavis & Butthead Virtual Stupidity |
Description
When the game first loads up and you get the main menu if you decide to not start a new game but instead play Hock a Loogie mini game by itself it runs until you get a game over. It then crashes abruptly to desktop with no warning message. This is on 2.5.1 version of ScummVM. The other 3 mini games by themselves will go back to main menu like they should when you lose.
Again this only applies to the standalone mini games as starting a full game run via new game is different and seems to run fine from what I see.
My OS is Win 11 64 bit
Running on a ROG Laptop with 3070 graphics.
Oddly if I don’t launch via ScummVM and choose to play mini games outside they run perfect.
Change History (3)
comment:1 by , 3 years ago
comment:2 by , 3 years ago
I think though you can still go back to main menu with escape or likewise button mapped to your controller. As long as the game over does what it should with scoring and doesn’t cut out the voices at the end, along with not affecting the same mini game in regular game, I would honestly be ok with that.
comment:3 by , 3 years ago
Owner: | set to |
---|---|
Resolution: | → fixed |
Status: | new → closed |
I've tried running the original game (in Wine, since I don't have Windows), and it seems you're correct. You have to press Escape there too. I've committed the fix since it seems to match the original behavior. It should be in the next nightly build. Could you please try that?
What seems to happen in bbloogie.cpp is that when
_levelTimeLeft
reaches 0, the game state is set tokGSScoreCountUp
.The game isn't quite done yet, so
run()
will keep callingupdate()
, which eventually leads tobuildDrawList()
callingbuildDrawList3()
. This function will loop through all 256 objects, but unusually it will try to access the object'sObjAnimation
data even for objects that don't have one.Perhaps it should exclude objects where
obj->kind
is 0, but there seems to be such objects that still have an animation? I don't get it.If I do exclude those objects, the game prints "GAME OVER" and "HIGH SCORE: number", as expected, but the game doesn't seem to actually end.