Skip to main content

On Sale: GamesAssetsToolsTabletopComics
Indie game storeFree gamesFun gamesHorror games
Game developmentAssetsComics
SalesBundles
Jobs
TagsGame Engines

Disable mouse control? What do you think?

A topic by RATASOFTWARE.INC created 11 days ago Views: 141 Replies: 11
Viewing posts 1 to 4

Hi everyone!

As gamedev, I have a serious doubt with the gameplay of the game I'm developing... I’m considering disabling mouse controls ...

 With the mouse enabled, players can accidentally trigger events just by clicking somewhere on the map, and I feel the gameplay is more consistent when limited to “arrow keys + action button (e.g., spacebar).”

My concern is that removing mouse support might drive away a number of players who prefer or rely on it. What do you think — would this be a big drawback for you? What would you do in my place?

Thanks in advance to the community!

(+1)

Your doubts don't let you down. Don't forget to consider players with disabilities who won't have enough functionality, for example, to play the game. You can simply add an additional section in the settings or when you first launch the game (or both), where you can enable or disable mouse control

(+1)
players can accidentally trigger events just by clicking somewhere on the map

This is a game. It is an artificially created environment. If something there can be accidentally triggered when it is not the right time for the event, then this is a bug. Instead of fixing that bug, you think about restricting the whole input system.

Think about it in reverse. You have a mega bomb in your space shooter game and can activate it with space key and by clicking the icon with the mouse. But you notice that you can fire the bomb even if you are out of ammo if you press space. The solution: deactivte the keyboard.

That's what your solution sounds like, to me.

Finally, I think I'll try to design a plugin so that the left mouse click doesn't act as an action key and will only be used for movement. 

Although I still think that moving around using the keyboard is more reliable, some colleagues have suggested that I keep the mouse mainly for accessibility reasons, as perhaps not everyone can use just the keyboard...

Thank you also for your funny comment about the mega bomb, I found it very amusing. 

In fact, to avoid accidental activation, the safest thing would be to deactivate both the keyboard and the mouse as well. 😁

... or how about deactivating the event when it is not time for that event.

If the event can be activated no matter the cause, that will lead to additional trouble. Like being able to activate the event multiple times. You seem to not have a logic inside the event (or at the even starter) to check if the event is allowed to be activated. Like entering a room that you do not have the key for.

The specific case is, imagine something buried in a part of the ground that is exactly the same as the rest, there is no difference. Or a passageway under a carpet.

The player uses the left mouse button to move around and also to activate events by clicking on them. In the cases I mentioned, you may click accidentally, as both are part of the terrain you can walk on. 

However, with the keyboard, you have to position yourself exactly where you want to ‘interact’ on the terrain and press the ‘action’ button, which is different from the movement button.

Therefore, to leave mouse input enabled, what I am going to do is try to modify the behaviour of the left click. It should be used to move, but it should be separate from the action button.

I hope I have explained myself clearly...

Which makes me wonder how does a keyboard moving player know when to press the action button.

Well, in the cases I mentioned, finding a map that marks an exact spot, or a clue that says “dig (for example) just to the right of the well, or next to the burnt tree...”  

The rest of the interactions are obvious: pick up an object, open a cupboard, open a door...

In that case you could deactivate the events till the clues are found and then activate them for either input system. While it is easier with mouse, running around and randomly hitting the action button is possible with keyboard too, if you allow for things to be found without clue.

Input devices are not equal. All have advantages and disadvanteges in comparison. A touch screen vs mouse for example means you can have several pointers hovering over the screen instead of one cursor to move. That's almost cheating in a whack a mole game.

For the mouse movement/action input you could also check, if the interaction-object is "visible" or "hidden". Hidden objects could only be activated while already standing there. Finding a clue would make the objects unhidden. I remember games where you could dig up treasure and such, but that was a disctinct different action than move/action. You could still brute force it, but it was basically impossible due to map size and time required for a dig attempt.

"I remember games where you could dig up treasures and things like that, but that was clearly different from movement/action. You could still do it by brute force, but it was basically impossible due to the size of the map and the time it took to try to dig." --> That's exactly what I'm looking for. 

The problem is when the move button is the same as the one you would use to dig, which is what happens to me with the native mouse behavior. I could also disable events until clues are found, but it seems more organic to me if the player decides to activate “action” on one of the 100,000 squares on the forest floor and JUST happens to be on top of the “treasure” and finds it. Such luck would deserve a prize. Imagine the look on their face. I'm sure they would start digging all over the map :D 

I'm working on a plugin that keeps the left mouse button to move, but doesn't activate the action button, which will be triggered by the right mouse button or the keyboard.

(Sorry for my english...)

It depends on the type of game. Some games people expect to play with a mouse, while others are played with a controller and/or keyboard. If your game is one that people expect to play with a mouse, then disabling it will likely negatively impact your game's reception.

However, if your game is the type where people typically use a keyboard or gamepad, disabling the mouse shouldn't be a problem.

That said, based on your description, I agree with @redonihunter: disabling the mouse should be a design decision, not a patch to fix a bug.

Your problem is that the character needs to interact, not the cursor. You have two solutions: check the cursor's position relative to the character. If it's over the character, the click counts as an "action"; if it's far away, it counts as a "movement."

Another solution is to leave the mouse code as is and add a condition when the "action" is executed, requiring the character's position to be over or near the object attempting the action.

To be honest, I hadn't thought of either of the solutions you suggest, but I think they would negatively affect the gameplay in my game. 

Imagine that the player clicks on a piece of furniture to open it. With the first click, they position themselves but don't open it, so they would have to click again... and so on with the hundreds of drawers, books, and other objects in the game...

I'm going to try leaving the left mouse click for moving, but leaving the action button on the keyboard or changing it to the right click.

Thanks for the advice anyway, best regards!