Opened 3 years ago

Last modified 3 years ago

#12185 new defect

MADS: Rex Nebular intro not playing animations

Reported by: RogerW123 Owned by:
Priority: normal Component: Engine: MADS
Version: Keywords:
Cc: QmwJlHuSg9pa Game: Rex Nebular


The intro to the game is not displaying all animations. In practically every scene with Rex's ship seen flying, the ship is missing. This used to work in older versions of ScummVM. In Version 2.2.0 and 2.3.0git (February 21st) it does not work.

Change History (4)

comment:1 by digitall, 3 years ago

Component: Engine: M4Engine: MADS
Summary: Rex Nebular intro not playing animationsMADS: Rex Nebular intro not playing animations

RogerW123: Thank you for this bug report, but you have omitted some required information as per the bug tracker welcome message i.e.

ScummVM version (scummvm -v)
Your OS, including version and device if appropriate (Windows 10 build 1709 32-bit, Debian 9.2 x86_64, Android 7.0 on Samsung Galaxy S7, ...)

comment:2 by digitall, 3 years ago

Hmm... The introduction is missing parts as the bug submitter indicates.

The introduction can be seen here (probably using DOSBox as dated 2011):

The main difference is that there are two times where the screen should scroll right to show Rex's ship, but this does not happen and the animation just continues to the next screen. The first is after the planet text is printed around 63 seconds into the video above. The second is the planet view with the two onlookers at the bottom left, where it again should scroll to the right to show Rex's ship arriving.

I have replicated this with the lastest git master, and tried several earlier versions i.e. v2.1.0, v1.8.1, v1.8.0 and v1.7.0 on x86_64 Linux. They all exhibit the same behaviour (except v1.7.0 which was pre-release of the engine and is lacking the introduction option):

I don't think this has ever worked in any previous ScummVM release, though it may have worked in a pre-release version.

@dreammaster / @strangerke: Any ideas?

comment:3 by digitall, 3 years ago

Hmm... One minor valgrind issue associated with the sound warning which may be linked:
==20694== Invalid read of size 1
==20694== at 0x36885B: MADS::Nebular::ASound::pollActiveChannel() (sound_nebular.cpp:585)
==20694== by 0x3681E4: MADS::Nebular::ASound::pollChannels() (sound_nebular.cpp:441)
==20694== by 0x367F89: MADS::Nebular::ASound::update() (sound_nebular.cpp:406)
==20694== by 0x3677E7: MADS::Nebular::ASound::poll() (sound_nebular.cpp:269)
==20694== by 0x36974F: MADS::Nebular::ASound::onTimer() (sound_nebular.cpp:831)
==20694== by 0x3728D9: Common::Functor0Mem<void, MADS::Nebular::ASound>::operator()() const (func.h:398)
==20694== by 0x689213: OPL::EmulatedOPL::readBuffer(short*, int) (fmopl.cpp:337)
==20694== by 0x6AEE89: Audio::CopyRateConverter<false, false>::flow(Audio::AudioStream&, short*, unsigned int, unsigned short, unsigned short) (rate.cpp:315)
==20694== by 0x68E482: Audio::Channel::mix(short*, unsigned int) (mixer.cpp:618)
==20694== by 0x68CD20: Audio::MixerImpl::mixCallback(unsigned char*, unsigned int) (mixer.cpp:293)
==20694== by 0x56C0F8: SdlMixerManager::callbackHandler(unsigned char*, int) (sdl-mixer.cpp:189)
==20694== by 0x56C15E: SdlMixerManager::sdlCallback(void*, unsigned char*, int) (sdl-mixer.cpp:196)
==20694== Address 0x7c6e87d is 1 bytes after a block of size 44 alloc'd
==20694== at 0x483952F: operator new[](unsigned long) (vg_replace_malloc.c:431)
==20694== by 0x367C5E: MADS::Nebular::ASound::loadData(int, int) (sound_nebular.cpp:347)
==20694== by 0x3706C6: MADS::Nebular::ASound9::command9() (sound_nebular.cpp:3177)
==20694== by 0x37059F: MADS::Nebular::ASound9::command(int, int) (sound_nebular.cpp:3166)
==20694== by 0x359219: MADS::SoundManager::command(int, int) (sound.cpp:168)
==20694== by 0x44D812: MADS::Animation::update() (animation.cpp:460)
==20694== by 0x4660E6: MADS::AnimationView::doFrame() (menu_views.cpp:560)
==20694== by 0x463F8C: MADS::MenuView::show() (menu_views.cpp:60)
==20694== by 0x46D3D5: MADS::Nebular::DialogsNebular::showDialog() (dialogs_nebular.cpp:337)
==20694== by 0x3614B3: MADS::Nebular::GameNebular::startGame() (game_nebular.cpp:110)
==20694== by 0x331EFC: MADS::Game::run() (game.cpp:122)
==20694== by 0x339C07: MADS::MADSEngine::run() (mads.cpp:166)
WARNING: Read beyond end of loaded sound data!

comment:4 by QmwJlHuSg9pa, 3 years ago

Cc: QmwJlHuSg9pa added
Note: See TracTickets for help on using tickets.