oh-my-git icon indicating copy to clipboard operation
oh-my-git copied to clipboard

Taking any action makes the game not respond for a few seconds on Windows

Open westnordost opened this issue 4 years ago • 7 comments

Platform: Windows 10 Game version: 0.6.0

On taking certain actions, the game's UI does not respond for 1-3 seconds. The music still plays, so do sound effects. After the freeze, the animations play smoothly mostly

Actions with which I can reproduce this:

  • Closing a file without saving it
  • Saving a file
  • Playing a card
  • Saving the git commit comment
  • Pressing "Next Level" (about 4-5 seconds)
  • After pressing enter when entering a command. Can be any command, even ls takes this amount of time

If this cannot be helped due to mingw or something, one solution might be to make it appear smoother to play the animation(s) already while waiting for the work to be done.

westnordost avatar Feb 22 '21 19:02 westnordost

Thanks for the detailed report! Yeah, this is a Windows-specific issue, because we're launching a new Git-bash for each internal command. :/

One thing that would help is batching them together somehow, or keeping a shell open in the background, but we haven't put in the effort yet. :)

blinry avatar Feb 22 '21 19:02 blinry

Can only join in on this, I've tried this on my work laptop which has some additional privilege management tool which makes it even worse - every command, every click freezes the UI for 5-10 seconds - even typing is slowed down. I just started a Fedora VM to play the game, because else it takes days... I already assumed that the regular goal checking causes a lot of process creations...

xpac1985 avatar Feb 24 '21 14:02 xpac1985

Any update on this? This lag actually makes playing the game on Windows really annoying.

pritam-dey3 avatar Feb 26 '21 12:02 pritam-dey3

We appreciate your nagging – lags are no fun, and so this is a high-priority issue! :) Y'all can try the newly released version 0.6.1, which should improve things a bit!

We now have a mechanism in place which, instead of launching a Git bash for each command the game runs (including checks on the win condition), just keeps a single bash open, and runs the commands there. On my Windows testing machine, this speeds things up by a factor of ~4.

Let us know what you think! If this is still a killjoy, we need new ideas on how to quickly run lots of commands in a Unix-like environment on Windows.

blinry avatar Mar 04 '21 14:03 blinry

I also have this issue and it's very annoying (I gived up playing the game).

However I have the last version (0.6.4) so it doesn't seems to have solved the issue.

DegrangeM avatar May 18 '21 20:05 DegrangeM

hi, i am not a dev so dont know the specifics, i just felt it needs to be shared here.

we need new ideas on how to quickly run lots of commands in a Unix-like environment on Windows - blinry at comment

  • i knew this problem right away when i saw the download
    size for windows is +=120 MiB than what it is for Lin/mac screenshot
  • can msys2 be used for that?? (package size = 100 MiB)
  • it provides: mintty terminal, bash shell, git, among other things
  • My exp with msys2's provided bash was good so, maybe it can work for the game's case too?
  • i am using it for 3 weeks now, and
  • i followed all the linux related tutorials (like foll) with it flawlessly
    basic shell scripting with variables (prompt var PS1, HISTSIZE, ... ), od, which, piping with grep cut >>, et cetera
  • that is, i think it provides exact same thing

  • The caveat being the distribution: even if it works, how will it be distributed with the game

  • umh, i will say that maybe explore this "direction" of such build packages and see what are the requirements to make it work

  • like say maybe the solution seems best if those packages are installed separately then u may call for public dev/alpha testing to see if people can reproduce that success

  • if it works, but not all ppl feel comfy doing that, then you may offer this as separate package; maybe titled "beta phase" to relieve some responsibility ;) so, smth like :

“ this package requires msys2 installed. this package is smaller in size, and is faster/more responsive however it's in beta and things may change „

goyalyashpal avatar Dec 16 '21 16:12 goyalyashpal

I found a workaround solution on Windows by enabling WSL (Windows Subsystem for Linux) in "Turn windows features on or off" and installing linux (I chose Ubuntu). Make sure virtualization is on in your BIOS otherwise you might waste time like I did figuring out what's wrong. After launching wsl, navigate to the linux version of oh my git that you download from https://blinry.itch.io/oh-my-git and run it ./oh-my-git. An error might pop up telling you there's a missing package. Just sudo apt update then install the following:

sudo apt install libxinerama1
sudo apt install libxrandr2
sudo apt install libxi6
sudo apt-get install libasound2
sudo apt-get install libpulse0
sudo apt-get install libgl1

These were missing for me, so install any other missing libraries and it should work. Bam, that's it now it's snappy. Lag is no more.

mz3r0 avatar Dec 02 '23 15:12 mz3r0