FreezingMoon / AncientBeast

Turn Based Strategy Game. Master your beasts! 🐺
https://AncientBeast.com
GNU Affero General Public License v3.0
1.62k stars 556 forks source link

block multiple file pickers [bounty: 2 XTR] #2363

Open DreadKnight opened 1 year ago

DreadKnight commented 1 year ago

Holding Ctrl+Meta+L in the pre-match screen a bit longer and then picking a log file can result in getting multiple file pickers after. There should be a "trap" along the lines of https://github.com/FreezingMoon/AncientBeast/blob/53f04e1bfa97da323bfcb332475f4abe944b1b4f/src/utility/gamelog.ts#L107

andretchen0 commented 1 year ago

Trying to recreate. Using FF/Edge on Windows, I only get a single window to pop up at any time.

What's your OS/browser?

DreadKnight commented 1 year ago

Trying to recreate. Using FF/Edge on Windows, I only get a single window to pop up at any time.

What's your OS/browser?

@andretchen0 I'm on Linux/Brave.

tykm commented 1 year ago

Can I contribute to this? I have not played this game before but I enjoy games and would like to try committing to open source and this looks simple enough to tackle.

DreadKnight commented 1 year ago

@tykm Sure, go for it. Assigning you in a bit.

tykm commented 1 year ago

@DreadKnight I am unfamiliar with this codebase and the functionality behind logging, but from my understanding:

And in your case, holding the shortcut will open multiple file selectors, as opposed to my screenshot where there is only one open?

DreadKnight commented 1 year ago

@tykm It only opens multiple files if I open a save file in the picker, provided I've held the load hotkey a little longer. You can get a save (log) file by playing and pressing Ctrl+Shift+X and then you use that back in a pre-match screen.

tykm commented 1 year ago

I am unable to use the ctrl+shift+X hotkey to save a log file. Do I need to progress past a certain num of turns to save or am I in the wrong mode? I am using Windows and Chrome.

image

DreadKnight commented 1 year ago

I am unable to use the ctrl+shift+X hotkey to save a log file. Do I need to progress past a certain num of turns to save or am I in the wrong mode? I am using Windows and Chrome.

image

It should work instantly. Hotkey was remapped recently, but checking the file it seems it's Ctrl+Shift+Meta+X, though the idea was to drop Meta and it works even without Meta for me xD

https://github.com/CyberBishop/AncientBeast/blob/master/src/ui/hotkeys.js#L65

DreadKnight commented 1 year ago

Seems from conversation I opposed dropping the Meta, just went for a more suitable letter instead, my bad; https://github.com/FreezingMoon/AncientBeast/issues/2160

tykm commented 1 year ago

On Windows/Chrome I was not able to use Ctrl+Shift+Meta+X to save a file. The hotkeys file from master shows that the hotkey is shift+ctrl+X. https://github.com/FreezingMoon/AncientBeast/blob/471f146c36192c28398935b0833fb1ecfc6c24a8/src/ui/hotkeys.js#L66-L72

In any case, I was able to find another shortcut for ctrl+s to save and this worked for me. To have two different shortcuts for the same action seems a bit redundant to me, though. I'm not sure why the other shortcut did not work. https://github.com/FreezingMoon/AncientBeast/blob/471f146c36192c28398935b0833fb1ecfc6c24a8/src/ui/hotkeys.js#L10-L15

I now have a save log file, but am still unable to replicate your bug.

  1. I hold ctrl+meta+L for a few seconds and select my save file.
  2. I press "Open" to open this save file.
  3. The game loads successfully and there are no further "leftover" file selectors.

In your bug scenario, how does the process differ?

DreadKnight commented 1 year ago

On Windows/Chrome I was not able to use Ctrl+Shift+Meta+X to save a file. The hotkeys file from master shows that the hotkey is shift+ctrl+X.

https://github.com/FreezingMoon/AncientBeast/blob/471f146c36192c28398935b0833fb1ecfc6c24a8/src/ui/hotkeys.js#L66-L72

In any case, I was able to find another shortcut for ctrl+s to save and this worked for me. To have two different shortcuts for the same action seems a bit redundant to me, though. I'm not sure why the other shortcut did not work.

https://github.com/FreezingMoon/AncientBeast/blob/471f146c36192c28398935b0833fb1ecfc6c24a8/src/ui/hotkeys.js#L10-L15

I now have a save log file, but am still unable to replicate your bug.

  1. I hold ctrl+meta+L for a few seconds and select my save file.
  2. I press "Open" to open this save file.
  3. The game loads successfully and there are no further "leftover" file selectors.

In your bug scenario, how does the process differ?

Seems I got stuck on another fork when looking at the hotkey. We have 2 because browsers. Once more testing is done might as well stick to just one and document it or showcase it in some hotkey page in-game eventually.

I'm on Linux and using Brave, so it might be a specific bug that won't affect most people, will make sure to specify this stuff in OP. You're free to pick another issue if you want, plenty labeled 'easy'.

tykm commented 1 year ago

Sounds good