forum

Making an osu!robot

posted
Total Posts
13
Topic Starter
smocer
Discord server: https://discord.gg/5zPfHEMDVT

Disclaimer
Obviously, it is not intended for online, and I will never use it to submit any scores on public servers like Bancho, Gatari, etc. Only if there is some server for testing purposes, something like Akatsuki Relax. Currently I use McOsu to test it.

A couple of years ago an idea of making a robot which will be able to play osu! with keyboard and a tablet came into my mind. A few weeks ago I realized that I have all the basic skills required in order to make it, and everything else I will, most likely, be able to find out during the process, so I thought "Well, let's begin!"

Why?
For educational and entertainment purposes. There is always fun in making something like this work and to share it with others, also I have plans of streaming how it is playing some "impossible for humans" maps, in case somebody will show interest in it.

This is what is looks like for now:
https://www.youtube.com/watch?v=cVuCVzY_kOc

Previous version(-s):
https://www.youtube.com/watch?v=vPWTg5btmWo
https://www.youtube.com/watch?v=cV7QHUEdzHE

Primary goals:
  1. Fix map length limit (currently limited to ~600 objects because of low RAM) Done
  2. Two solenoids, separate for each key. Done
  3. 3d-printer-like device which will hold the pen and aim with it
  4. Ability to choose playstyle (singletap / full alternate / partial alternate)
  5. FC unhuman maps, of course 😈😈😈 Some mazzerin with DT
  6. Good-looking, not ugly appearance
  7. Easy and convenient interface to set it up and load maps
Subgoals:
  1. Stream it
  2. Make it automatically fetch map requests from twitch chat, convert maps and play it in queue
  3. (on the edge between something realistic and "what if...") Do not use map data, make neural network recognize objects on screen and control solenoids + plotter
All the code written is public, so feel free to fork, buy some hardware and make your own osu!robot (who knows what will it be capable of...) :D
https://github.com/smocer/osurobot

Thanks @Ampiduxmoe for his map parser:
https://github.com/Ampiduxmoe/osu-map-parser
We are working in collab, he tweaked it a bit in order to convert osu! beatmaps to a format I can work with.

Everything runs with help of Espruino, JS code interpreter for microcontrollers:
https://www.espruino.com/

Patatitta
damn that's pretty cool so far, I don't know anything about doding or making robots so I can't really help on anything, but yeah, I like this so far
Topic Starter
smocer

Patatitta wrote:

damn that's pretty cool so far, I don't know anything about doding or making robots so I can't really help on anything, but yeah, I like this so far
Thanks! The interest from the other people is already a big help, because it boosts motivation and mood a lot :)
abraker
Would be interesting to see the thing pushed to the limits
PeChKurOFFF
ахуеть ты гений
Farfocele
woah, i did not expect that.
Topic Starter
smocer
https://www.youtube.com/watch?v=cV7QHUEdzHE
Update:
Now it works with 2 solenoids
Can play map of any length

Bugs:
First few objects aren't hit in proper timing
Sometimes it skips right button presses (sliderbreaks are probably caused by this)
Doesnt hit the very last object on a map

I will get to fixing them after I'll have the holder for it done.
rematyar
This is so cool :O
Kinematikk
thats really cool, what are those metal pushers called?
Topic Starter
smocer

Kinematikk wrote:

thats really cool, what are those metal pushers called?
Solenoids.
https://en.wikipedia.org/wiki/Solenoid
https://aliexpress.com/item/10000013458034.html
7ambda
This is genius
Solem Cosmicae
that seems like something that will for sure give some fresh air to playstyles in osu! Keep it up!
KecHik445
love the idea
Please sign in to reply.

New reply