Opened 14 years ago

Closed 14 years ago

Last modified 14 years ago

#2782 closed defect

FOA: No mouse cursor in combats

Reported by: SF/cap_gemo Owned by:
Priority: normal Component: Engine: SCUMM
Keywords: Cc:
Game: Indiana Jones 4

Description

I used ScummVM 0.8 under Ubuntu Linux (downloaded from a package repository) and ScummVM 0.9 under Windows XP Home. In both cases I found the following bug, playing "Indiana Jones and the Fate of Atlantis" (english CD version):

Everytime, when there is some action (the panels with commands and inventory dissapear), for example in combats the mouse cursor becomes invisible. And in combats it is very bad, because I can't win any combat, without seeing the mouse.

I don't attach any save, because the first combat can happen at the very beginning of the game: You go the back door, the doorman comes out, you insult him and then fight him.

If you could correct this bug, this would be very nice.

cap_gemo

Ticket imported from: #1539552. Ticket imported from: bugs/2782.

Change History (22)

comment:1 by SF/cap_gemo, 14 years ago

By the way, I discovered the same problem today also by Monkey Island. Sometimes the mouse cursor simply disappears. However, it is no problem in this game. But as I said, in "Indy" I can't win any combat... :(

comment:2 by eriktorbjorn, 14 years ago

Fate of Atlantis defaults to keyboard-controlled combat. Consult your manual for information on how to switch between keyboard and mouse control.

About Monkey Island, it would be useful if you would provide information about which of the games you mean, and when it happens. (The cursor is hidden during non-interactive scenes, but I assume that's not what you meant.)

comment:3 by SF/cap_gemo, 14 years ago

Hm... I played this game (I mean, "Fate Of Atlantis") several years ago in DOS-Mode (without ScummVM) and I never found there option to switch to keyboard control.

Now, when I run it with ScummVM, pressing F5 displays me the main ScummVM-menu, where I can configure sound-options, save or load games. All other keys don't do anything. I have really no idea, how to switch this thing in keyboard mode. I don't have the manual, and I have found nothing in Internet :(

By the way, you were right about Monkey Island. The cursor is hidden during non-interactive scenes - that's what I meant. OK, it doesn't matter.

Coming back to Indy, I think, that if even there is a possibility to combat in keybard mode, I still think it's a bug, that you can't do it with the mouse.

Well, actually you can. I mean, when you for example play in window-mode, you can bring the mouse outside the ScummVM- Window, then move it a little bit, to coordinate the moving of the mouse with the moving of the hand, and then move it back again to the window. If you have luck, the cursor lands somewhere near Indy's enemy and pressing the mouse- buttons will do it. But you don't see the cursor. And if luck is not with you, you land somewhere else, and pressing the buttons doesn't do anything. Indy is beaten :(

I don't understand anything in programming, so my idea is probably ridicilous, but I think, it could be the same problem, that happens with Monkey Island. Maybe somehow ScummVM "thinks" of combat scenes as non-interactive scenes?

Thanks anyway. I hope, I will find somewhere the way, to switch it into keyboard-mode.

comment:4 by eriktorbjorn, 14 years ago

> I don't have the manual,

You mean you lost it, or you bought a second-hand copy where the manual was missing? Since the latter has happened to me a couple of times when buying second-hand games, I hope I'm not saying too much if I say the "f" key switches keyboard fighting on/off.

comment:5 by eriktorbjorn, 14 years ago

> I don't have the manual,

You mean you lost it, or you bought a second-hand copy where the manual was missing? Since the latter has happened to me a couple of times when buying second-hand games, I hope I'm not saying too much if I say the "f" key switches keyboard fighting on/off.

comment:6 by SF/cap_gemo, 14 years ago

Yes you are right, thank you very much. The "f" key really does it. It switches the keyboard combat mode on and off. I still need to find out, which keys do I have to use to fight, but I'll try to find it somewhere in Internet.

P.S. But still I think, it is a bug, that the mouse cursor disappears. Ok, doesn't matter.

comment:7 by eriktorbjorn, 14 years ago

No, that the mouse is hidden in keyboard fighting mode is a design decision made by LucasArts. It's the game scripts, not ScummVM, that does that. This is what it looks like in one of the scripts, that's presumably used during fights:

[01E5] (A8) if (Bit[107]) { [01EA] (14) print(252,[Color(8),Text("Keyboard Fighting On")]); [0204] (1A) Bit[107] = 0; [0209] (2C) CursorHide() [020B] (18) } else { [020E] (14) print(252,[Color(8),Text("Keyboard Fighting Off")]); [0229] (1A) Bit[107] = 1; [022E] (2C) CursorShow() [0230] (**) }

Now, what *could* be a ScummVM bug is that the game defaults to keyboard fighting, even though you almost certainly have a mouse. The game's boot script sets keyboard fighting mode if the MOUSE_PRESENT variable is less than 2. ScummVM sets it to 1.

comment:8 by SF/cap_gemo, 14 years ago

Oh no, you're not quite right, I suppose. I have just run Fate Of Atlantis WITHOUT ScummVM under my WinXP, and the mouse cursor was really invisible in non-interactive scenes, BUT it was VISIBLE during the combat!

P.S. But the sound didn't work - it works only with ScummVM.

comment:9 by eriktorbjorn, 14 years ago

And you're quite sure keyboard fighting mode was on when running it in Windows XP? As I pointed out, it's possible that ScummVM is wrong in defaulting to this mode, and as you already observed yourself, you can use the mouse in both modes.

comment:10 by SF/cap_gemo, 14 years ago

No, I haven't said that. The mouse mode was activated. Or maybe the keyboard mode, if you're right abou that one can also use mouse to fight in keyboard mode.

What I'm talking about, is:

If you run the game WITHOUT ScummVM you SEE the mouse cursor during combats and you are ABLE to fight in mouse mode.

If you run it WITH ScummVM you DON'T SEE the mouse cursor during combats and you CAN'T fight in mouse mode (well, you can, if somehow you have good luck, and the mouse is in right position, as i described earlier).

And THAT is the bug of ScummVM, I think. Maybe I'm not right, but it seems, ScummVM considers combats as non- interactive scenes. Everytime the inventory panel dissapears, the mouse cursor does it too. And during combats this also happens - the inventory panel is not visible. But the mouse cursor should be visible.

comment:11 by sev-, 14 years ago

It seems that you just didn't read eriktorbjorn's comment very well.

When you run in WinXP, engine detects your mouse, and turns on mouse-driven combat, cursor is visible.

Under ScummVM keyboard-driven combat is turned on by default, hence no mouse cursor.

Eriktorbjorn, is there any regression when that variable is set to 2? May be it is number of mouse buttons?

comment:12 by SF/cap_gemo, 14 years ago

2 sev:

eriktorbjorn wrote: the "f" key switches keyboard fighting on/off.

eriktorbjorn wrote: you can use the mouse in both modes.

Under ScummVM I switched modes with the "f"-key, and it did work, but the mouse cursor was INVISIBLE during the combat in BOTH modes.

Without ScummVM the mouse cursor was VISIBLE during the combat also in BOTH modes.

Under ScummVM mouse is also well detected and mouse cursor is visible, in all interactive scenes. In combat scenes mouse also WORKS, but the cursor is INVISIBLE.

I don't know, if it is a bug in Fate Of Atlantis or in ScummVM, but it is 100% a bug.

comment:13 by eriktorbjorn, 14 years ago

cap_gemo wrote:

> Under ScummVM mouse is also well detected and mouse cursor is > visible, in all interactive scenes.

Well, ScummVM knows that you have a mouse, of course. (Actually, I haven't tried what happens if you don't, but never mind.) The MOUSE_PRESENT variable is so that the *game* can know whether or not you have a mouse, and act differently depending on it.

It seems that the early games used to check your hardware more carefully than the later ones, and degrade gracefully if it's not good enough. E.g. there are scripts in Monkey Island 2 that checks if your computer can play digitized sounds, and Zak McKraken plays a different intro if it thinks your computer is too slow.

> Under ScummVM I switched modes with the "f"-key, and it did > work, but the mouse cursor was INVISIBLE during the combat in > BOTH modes.

Strange. I can say for certain that this is *not* the case with the version I have (English talkie). At least not when fighting the doorman at the beginning of the game. So for me:

Keyboard Fighting On: Mouse cursor is visible during fights. Keyboard Fighting Off: Mouse cursor is invisible during fights.

Both mouse and keyboard controls work in either mode, so the only difference I can see is whether or not the mouse cursor is visible.

> Maybe I'm not right, but it seems, ScummVM considers combats > as non-interactive scenes. Everytime the inventory panel dissapears, > the mouse cursor does it too.

Except for the very early games, the look-and-feel of a SCUMM game is almost entirely scripted. I don't think ScummVM has any good way of knowing what's an interactive scene and what isn't, and I'm fairly sure the cursor is shown/hidden only at the request of the game scripts.

sev wrote:

> Eriktorbjorn, is there any regression when that variable is > set to 2? May be it is number of mouse buttons?

I don't know. I didn't notice any, but I only played it very briefly. My FoA manual is still packed away since the move, but I don't recall it using more than one mouse button for fighting. (Unless there's a way of doing the "sucker punch" with the mouse that I don't remember.)

comment:14 by Kirben, 14 years ago

I just checked disasm. of original game:

VAR(VAR_MOUSEPRESENT) is set to a default of 1. If mouse is usable: VAR(VAR_MOUSEPRESENT) is set to 3 Otherwise, if joystick is usable: VAR(VAR_MOUSEPRESENT) is set to 2

So the original game would use mouse fighting by default, if a mouse or joystick was usable.

comment:15 by eriktorbjorn, 14 years ago

Sounds like the variable is inappropriately named, then. Perhaps it should be called VAR_INPUTMODE instead, to correspond with VAR_VIDEOMODE.

Do you know if this behaviour is specific to Fate of Atlantis, or if it holds true for all version >= 5 games?

comment:16 by fingolfin, 14 years ago

Summary: No mouse cursor in combatsFOA: No mouse cursor in combats

comment:17 by Kirben, 14 years ago

VAR_MOUSEPRESENT is specific to SCUMM 5 - 6 games, but only used by script 1 of FOA.

I renamed VAR_MOUSEPRESENT to VAR_INPUTMODE as suggested and set the default input type to mouse mode.

comment:18 by eriktorbjorn, 14 years ago

So what is the status of this? I know nothing at all has changed in whether or not the cursor is shown, but it should default to mouse fighting mode now.

comment:19 by eriktorbjorn, 14 years ago

It's been more than a week now. Marking as Pending, unless someone has a better suggestion.

comment:20 by eriktorbjorn, 14 years ago

Status: newpending

comment:21 by SF/sf-robot, 14 years ago

This Tracker item was closed automatically by the system. It was previously set to a Pending status, and the original submitter did not respond within 14 days (the time period specified by the administrator of this Tracker).

comment:22 by SF/sf-robot, 14 years ago

Status: pendingclosed
Note: See TracTickets for help on using tickets.