486c / rosu-memory

Lightweight, cross-platform memory reader for osu! but in rust
21 stars 7 forks source link

"Skipped gameplay reading, probably it's not ready yet" #58

Closed FlySlime closed 5 months ago

FlySlime commented 5 months ago

I can't get it to work on Arch Linux running the program as sudo ./linux_rosu-memory --osu-path /home/flyslime/.local/share/osu-wine/osu\!, auto detection doesn't change anything. Sometimes it doesn't print the message Skipped gameplay reading, probably it's not ready yet, but most of the time when I go into gameplay it does. None of the overlays work, neither in song select or in-game.

I notice nothing happens if I start the program while osu! is running, however when I open osu! afterwards we get the following log:

To replicate:

  1. Open the rust program
  2. Open osu! (takes 5-10 seconds)
  3. Play a map

Logs:

Spawned server!
Process not found!

Location:
    src/main.rs:97:34
sUsing provided osu! folder path
Reading static signatures...
Cannot found signature F8 01 74 04 83 65

Location:
    src/structs.rs:197:19
Using provided osu! folder path
Reading static signatures...
Cannot found signature F8 01 74 04 83 65

Location:
    src/structs.rs:197:19
Using provided osu! folder path
Reading static signatures...
Cannot found signature F8 01 74 04 83 65

Location:
    src/structs.rs:197:19
Using provided osu! folder path
Reading static signatures...
Starting reading loop
[src/main.rs:185] values.gameplay.passed_objects = 0
[src/main.rs:186] values.playtime = 3958
[src/main.rs:187] values.prev_state = PreSongSelect
[src/main.rs:188] values.state = SongSelect
Trying to read bad address
Address: 4, Length: 4

Location:
    src/reading_loop.rs:242:30
Trying to read bad address
Address: 10, Length: 4

Location:
    src/reading_loop.rs:107:10
Skipped gameplay reading, probably it's not ready yet
486c commented 5 months ago

Hello, first of all thanks for your issue. But i need to know few details:

  1. Are you using stable or cutting edge/beta
  2. Is there a possibility that you have osu!lazer running at the same time

also Can you try running game first let it load and then run rosu-memory

FlySlime commented 5 months ago
  1. I'm using stable, not cutting edge/beta.
  2. I was not running osu!lazer at the same time.
  3. Letting the game load, i.e. starting the game and then playing a little, and then starting the program gives the following log:
❯ sudo ./linux_rosu-memory  
[sudo] password for flyslime: 
Spawned server!
Using auto-detected osu! folder path
Reading static signatures...
Starting reading loop
Trying to read bad address
Address: 10, Length: 4

Location:
    src/reading_loop.rs:107:10
Skipped gameplay reading, probably it's not ready yet
FlySlime commented 5 months ago

Update: I tried the overlays again and although the error message still pops up the overlay seems to work now? I'm not sure what I did different but hey it works. I'll play around with this a little bit more and report back.

FlySlime commented 5 months ago

Seems like most of everything works. While porting over a few overlays at https://github.com/486c/rosu-memory/pull/59 I noticed that the slider_breaks variable always returns 0 even if I sliderbreak in the game. I checked this through console.log within both the overlays. Is this a bug with the program or is it perhaps something wrong on my end?

FlySlime commented 5 months ago

I started a new issue at https://github.com/486c/rosu-memory/issues/60 to discuss data.gameplay.slider_breaks.

486c commented 5 months ago

Gonna leave it open for now After looking at code and at your logs that have repeating error almost always at the same line

Location:
    src/reading_loop.rs:107:10
Skipped gameplay reading, probably it's not ready yet

Which is key overlay reading. Seems like it becomes available a bit later than other gameplay values, requires different handling that it has now.

Gonna close after fixing key overlay reading and manual testing

486c commented 5 months ago

should be fixed in d2a2584bb12b5aa7e8b8cfa3fb0d36ea4cbdf9ff

feel free to reopen if you still encounter any issues related to this

thanks!