Inspiration
We wanted to make a scuffed way to do something in Discord, and this was the result.
What it does
It allows you to play games (emulators games) inside of Discord, at a rate of 60FPM (frames per minute).
How we built it
We used Python along with Discord.py to launch Retroarch, and used libraries like PyDirectInput and pywin32 to send screenshots and take commands to send to the emulator.
Challenges we ran into
Discord rate limits limited us to approximately 1 FPS or 60FPM, even when we tried to implement a performance mode using ASCII. Sending keyboard stokes to the emulator required us to use a different library as Retroarch uses DirectX, and DirectX doens't like emulated keystrokes.
Accomplishments that we're proud of
The bot actually works and is very playable! (Note: Playability is subject to the observer.)
What we learned
How to use Discord.py to create a bot, and interface with programs (specifically games) using Python.
What's next for 60FPM Discord Emu Bot
Possibly figuring out how to implement the bot to use Discord screen sharing and maybe voice commands.
Built With
- discord
- discord.py
- python
- retroarch
Log in or sign up for Devpost to join the conversation.