#2778 closed defect (fixed)
MANIAC: Characters walk through air when using stairs
Reported by: | SF/robertmh | Owned by: | fingolfin |
---|---|---|---|
Priority: | normal | Component: | Engine: SCUMM |
Version: | Keywords: | ||
Cc: | Game: | Maniac Mansion |
Description
Using ScummVM 0.10.0svn (Aug 10 2006 18:46:14) with Enhanced English version of Maniac Mansion, on Debian GNU/Linux amd64.
Characters occasionaly walk through air when going upstairs/downstairs, at least in the following levels: - between level 2 and 3 - between level 3 and 4
See attached image, and savegame with a character "on the fly". Note: to reproduce, you have to try a few times. I think it depends on the exact position you're moving from and the position you're moving to.
Ticket imported from: #1538260. Ticket imported from: bugs/2778.
Attachments (2)
Change History (12)
by , 18 years ago
Attachment: | flying.png added |
---|
comment:1 by , 18 years ago
Summary: | characters walk through air when going through stairs → MM: characters walk through air when going through stairs |
---|
comment:2 by , 18 years ago
Yes, I have seen this as well. They walk from wherever they are to the top of the stairs.
Since it is very rare (I've only seen it once) I didn't bother to file a report.
comment:3 by , 18 years ago
Summary: | MM: characters walk through air when going through stairs → MANIAC: Characters walk through air when using stairs |
---|
comment:4 by , 18 years ago
Our walkboxes code is not correct for NES and v1 (and I supopse for v0) MM. It was known for a while, just nobody reported it.
comment:5 by , 18 years ago
Yes, the whole walking code for V0-V2 games is a mess -- essentially, it's a big hack. I decided to do it this way back then because it was the easiest way to get results. I never planned to keep it that way, but you know how things go.
Anyway, the hack is that we scale the 8x2 block coordinates used in those games versions (well at least in V1/V2, no idea about NES or C64, but I assume they do the same) to pixel coordinates...
The difference is quite important, because while two blocks may be adjacent, the pixels that they contain mostly are *not* directly adjacent. This confuses the walk box code, and causes various other nasty problems.
For a faithful emulation of the original (and in order to fix half a dozen or more open bug reports), we'd have to get rid of that hack and properly use block coordinates. A lot of code would be affected by this, too. A non-trivial project, but potentially rewarding.
comment:6 by , 18 years ago
I did think something like this was a lot more rare and did put a forum post for discussion, thinking that can be the regression of and old bug. Now I see the bug is more recent than expected, it's quite curious.
Can we, the users, expect this being fixed before 0.10.0 release or it's quite complex to solve due to the need of rewriting certain source code? It not affects gameplay in an important manner and I understand how devs are occupied with real life and other important ScummVM development, it could be nice some nice words from devs about this.
ScummVM for me is the most open-source project ever, it progressed amazingly fast in just a few years. A few glitches in early SCUMM games will not make me cry ;)
comment:7 by , 18 years ago
The fundamental problem is still there, as has been described here and elsewhere previously: The walkcode for V1/V2 games is still plain wrong.
While I recently removed the 8x2 vs. pixel accuracy problem in the walk code, there still are problems. Essentially, we'll have to fully rewrite the walk code for V1/V2 games in order to fix this bug. Considering that this is quite some work, and that it's also not that easy to reliably reproduce some of these issues, I wouldn't hold my breath on this one if I was you. It's not likely to be fixed in the next release (our primary concern for that is improving the documentation, anyway).
comment:9 by , 18 years ago
Owner: | set to |
---|---|
Resolution: | → fixed |
Status: | new → closed |
comment:10 by , 6 years ago
Component: | → Engine: SCUMM |
---|---|
Game: | → Maniac Mansion |
bernard flying into stairs