Jump to content
Eternal Lands Official Forums
Hamartolos

Improving mouse UX

Recommended Posts

Hi, all. I'm relatively new to the game. I'm an experienced software developer (though I haven't worked with C or C++ in years). I've spoken with radu about my idea, and he suggested I post in here to get some feedback and discussion about it.

 

Among several other improvements I want to try to make to the client code, I want to try to improve the mouse clicking user experience. Specifically, it seems that clicking (and the results of clicking) in the main world view window operates on an "exact pixel" basis. For example, you must click on one of the pixels of a flower to begin harvesting it (based on the current camera angle). At wide zoom amounts, this can mean very few pixels to click on. Trying to initiate combat with things like bunnies and brownies is significantly more challenging (frustrating?) than attacking large creatures like deer.

 

What I'm thinking is to just expand the code to consider an n by n square of pixels (or perhaps circle) around the mouse cursor, instead of just one single pixel at the mouse cursor. Then have the cursor operate just as it is now (including both hover and click functionalities), except the thing hovered over, or the thing clicked is the one that is closest to the mouse cursor within this pixel area.

 

When there is more than one small hotspot near the cursor, the UX will still remain as tricky to use as it is now, but if you are trying to chase a bunny down, and there's nothing else in the vicinity, this change should make it much easier to do so.

 

Any thoughts on this approach, or tips on where to start? I've only briefly browsed the code, but I've found such things as thing_under_cursor. I'm also thinking that this should be a toggleable setting, as it is likely to require a little more CPU power.

Share this post


Link to post
Share on other sites

One concern I have is you might accidentally click on a bear to start fighting it, when you were trying to click harvest and it walked close. Tuning needs to be done or smarts based on the current selected mouse state to reduce accidents.

Share this post


Link to post
Share on other sites

How will this handle the misclicking. What I mean is, lets say that you are harvesting and you stop harvesting so you go to click on the harvestable and a critter walks by, lets say a large spider, will the click go to the spider or to the harvestable? I have clicked on the harvestable as the critter walks in front of it and been forced into combat because the click went to the critter. Another scenario that I can think of is chasing down a critter and the click is caught by a monster in the same area, which is going to register the click? The thing you want or the thing that will kill you?

 

I like your idea I just wonder how these things will be handled.

Share this post


Link to post
Share on other sites

This isn't going to make misclick scenarios go away. At the same time, I don't think it's going to make the problem even worse (or worse by an appreciable amount), but only live playtesting will bear this out.

 

But anyway, to repeat, if more than one thing is in the now-expanded click zone, then the thing actually clicked will be the one that is closest to the center (where the mouse cursor actually is). So, in situations where multiple clickables are involved, you would still have to exercise some caution not to click on the wrong thing (e.g. wandering a monster that is more powerful than you), but the mechanics here won't be worse than they already are.

 

If I can get this to work perfectly, then I can maybe try to move on to highlighting the thing-that-would-be-clicked, so you get some visual feedback before you actuate the mouse button.

Share this post


Link to post
Share on other sites

A possible solution:

- if the "attack" tab in the client is active, the click will go for the attack option when two distinct cursor actions are overlaped

- if the "use" tab is active, then it will go with the harvesting

 

The only thing would be to confine harvesting cursor to the use tab, to avoid any missclicks.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Recently Browsing   0 members

    No registered users viewing this page.

×