Binato/README.md

60 lines
2 KiB
Markdown
Raw Normal View History

2020-08-28 09:15:04 +01:00
# Binato
An implementation of osu!bancho in Javascript
<hr>
### Features:
2020-09-02 11:31:06 +01:00
- Multiplayer + Invites
2020-08-28 09:15:04 +01:00
- Spectator
- User Panel (Missing Friends)
- Chat & Channels
2020-09-02 10:56:23 +01:00
- Private Messages
2020-08-28 09:15:04 +01:00
### Currently unimplemented things:
- Friends List
- Bot
## Bugs:
- If a client clicks the plus button in the chat window to join another channel the client will "crash", the game will keep running but the user will be unable to do anything
- BinatoStream can create duplicate streams
## How to connect:
### 2013 - Stable Fallback (2015 / 2016 ?):
Stable fallback uses HTTP so for that you just need to direct it to the server<br>
You can do this using the hosts file
Location on Linux: /etc/hosts<br>
Location on Windows: C:/Windows/system32/drivers/etc/hosts
Add an entry in the hosts file that looks like the following:
```
<server_ip> osu.ppy.sh c.ppy.sh c1.ppy.sh
```
Where <server_ip> is the IP Address of the server hosting the bancho server
### 2016 - Now:
Versions of osu! past Stable Fallback use HTTPS and as such you'll have to create a self signed certificate and make the server identify as ppy.sh<br>
My personal choice for this task is OpenSSL + nginx
The subdomains you have to deal with are:
- osu.ppy.sh
- c.ppy.sh
- c1.ppy.sh
- c2.ppy.sh
- c3.ppy.sh
- c4.ppy.sh
- c5.ppy.sh
- c6.ppy.sh
- ce.ppy.sh
2020-08-28 09:40:57 +01:00
Using this with the hosts file should allow the server to be connected to by a modern osu! client
2020-08-28 09:15:04 +01:00
Subdomains past c1.ppy.sh were added around 2018
## Things not included in this repo:
### Profile Pictures:
Profile pictures can be handled by any standard HTTP server, there is also one I made for the task here: [Binato-ProfilePicture](https://github.com/tgpethan/Binato-ProfilePicture)
### DatabaseHelper.js:
Because the DatabaseHelper in this server was so horrible and also very specific to my server I didn't include it.<br>
I'll make a better one and include it eventually. For now if you feel like using this server you can make your own by handing the function getFromDB in a file called DatabaseHelper.js in the server folder