Coder Social home page Coder Social logo

kholtastrophe / light-ripple-windows Goto Github PK

View Code? Open in Web Editor NEW

This project forked from light-ripple/light-ripple-windows

0.0 1.0 0.0 82.35 MB

Self-Hosted Ripple Code ! Can be used with a bit modification. (For Personal Use)

License: GNU Affero General Public License v3.0

Go 0.84% PHP 0.19% Shell 0.08% JavaScript 27.77% CSS 28.22% HTML 26.10% TSQL 0.41% Python 6.72% Batchfile 0.01% Perl 0.02% Vim Script 1.09% Dockerfile 0.01% C# 0.01% C 8.50% PowerShell 0.05% SWIG 0.01%

light-ripple-windows's Introduction

Self Hosted RIPPLE (Windows Edition)

Self-Hosted Ripple Code ! Can be used with a bit modification. (For Personal Use)

Requirements:

Basic Steps

  • Clone the repo...
  • Run/Start Redis
  • Create and Run MySQL Database Server
  • Connect to MySQL DB and import RIPPLE SQL query.
  • Go to pep.py, lets & avatar-server Folder and install the necessary python packages with pip install -r requirements.txt.
  • Go to lets folder and change my directory to yours in lets/pp/rippoppai.py and lets/pp/relaxoppai.py. Create a replays folder in lets/.data/replays if there isn't any.
  • Edit config.ini and change it. (Both in pep.py & lets folder)
  • Go to api and edit api.conf
  • Go to Frontend and edit hanayo.conf
  • You can request and get an OSU!API Key here: OSU!API
  • Go to nginx-1.16.1 folder and edit the content of conf/nginx.conf, osu/nginx.conf and osu/old-frontend.conf. Replace my directory with your one.
  • You can switch to localhost server and bancho either by LocalHost.exe Switcher or Manually by:
  • Install Certificate
  • Edit Hosts File in c:\Windows\System32\Drivers\etc\hosts. And add this lines to your hosts file.

Host File & Certificate

#<domain that support in certificate> default is i-need-to.click

<127.0.0.1 or your Public IP> osu.ppy.sh
<127.0.0.1 or your Public IP> c.ppy.sh
<127.0.0.1 or your Public IP> c1.ppy.sh
<127.0.0.1 or your Public IP> c2.ppy.sh
<127.0.0.1 or your Public IP> c3.ppy.sh
<127.0.0.1 or your Public IP> c4.ppy.sh
<127.0.0.1 or your Public IP> c5.ppy.sh
<127.0.0.1 or your Public IP> c6.ppy.sh
<127.0.0.1 or your Public IP> c7.ppy.sh
<127.0.0.1 or your Public IP> ce.ppy.sh
<127.0.0.1 or your Public IP> a.ppy.sh
<127.0.0.1 or your Public IP> i.ppy.sh
<127.0.0.1 or your Public IP> <domain that support in certificate>
<127.0.0.1 or your Public IP> c.<domain that support in certificate>
<127.0.0.1 or your Public IP> i.<domain that support in certificate>
<127.0.0.1 or your Public IP> a.<domain that support in certificate>
<127.0.0.1 or your Public IP> old.<domain that support in certificate>

These domain are supported by osu!thailand certificate (You can make your by doing a new self-signed certificate)

  • tatoe.pw
  • i-need-to.click
  • keidas.pw
  • cookiezi.pw
  • kawata.pw

Manually Creating Passwording (DB)

Ripple uses Password -> MD5 -> BCrypt Hash (10 rounds) for the password to login so in users table in password_md5 column in db.

  1. If I want to make my password HelloRipple123, first I need to hash it as MD5. So the hash will be 6d246d0f30cdc5b829c8e21c290f8ea9 (You can hash your password at http://www.md5.cz/)
  2. Then after I hash it, I still need to make it as BCrypt Hash (10 Rounds) so I will use this website as BCrypt encryptor.
  3. Put the MD5 Hash to String to encrypt box, change rounds to 10 and then click Hash! button
  4. You'll get the hash like $2y$10$4mO9E2m7b6B0Z039ikDvSOXk2KBg9uAobGixVDv6NihQ4RL/itplq as the hash (which is our MD5 hash. HelloRipple123)
  5. Put your BCrypt hash in password_md5 in your user data and profit!

Note: The BCrypt hash will be always different because BCrypt hash it 10 times!

Important Note

  • I strongly recommend to use a Terminal Emulator rather than using windows's CMD.
  • ConEmu is a good windows terminal. (I use it and like it, personally)

To Start The Server

  • Start MySQL (MySQL Server must be started and running)
  • Start Redis Server, Redis/redis-server.exe
  • Go to lets folder and run python lets.py (cmd.exe)
  • Go to pep.py folder and run python pep.py (cmd.exe)
  • Go to avatar-server folder and run python avatar-server.py (cmd.exe)
  • Go to api folder and run ./API (bash.exe)
  • Go to Frontend folder and run ./frontend (bash.exe)
  • Go to nginx-1.16.1 folder and run nginx (cmd.exe)

Log Into Client

Before you login you have to create an account. You can create an account either by using the/from Frontend which is i-need-to.click(default) site. Or manually from database.

  • Use a local database software to log into local database. I recommend HeidiSQL or dbForge Studio
  • Log into local db. Then Click on RIPPLE db. Then head find users. And click on Data section above.
  • In id 1000 fill-up your desired username, notes, and email. (It will have full owner/admin access)
  • For Password follow that above section #Manually Creating Passwording (DB)
  • Then you can login with your username/email and password.

Automation (.bat win)

A windows bat file is included to automate this whole process of starting all the services, start-server.bat. It can be used but you'll need to edit and change it to your directory.

Extras

Error Fixing

if bcrypt fails to install with pip then remove bcrypt part from requirements.txt in lets and pep.py folder and type the following:

pip uninstall  bcrypt cffi pycparser
pip install --user --upgrade cffi
pip install --user --upgrade bcrypt

Credits

Contact

You can add me on Discord and ask for help or join the discord server.

  • My Discord:uniminin#5959 you may contact with me on the server.
  • Discord Server: Developer I/O

License ๐Ÿ“œ License: AGPL v3

This project is licenced under the GNU Affero General Public License V3. For more information, see the file LICENSE!

light-ripple-windows's People

Contributors

loannaflip avatar

Watchers

James Cloos avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.