überholen
Zusammenfassung
Outrun ist ein benutzerdefinierter Server für Sonic Runners, der aus dem Sonic Runners Revival-Projekt (wird jetzt Outrun verwendet) zurückentwickelt wurde.
Ziele
- Implementieren Sie alle Nicht-Debug-Endpunkte, wie vom ursprünglichen Server erfüllt
- Behalten Sie die Geschwindigkeit während der gesamten Laufzeit bei
- Verbrauchen Sie wenig Ressourcen für eine konservative Bereitstellung
Aktuelle Funktionalität
Bemerkenswert:
- Zeitgesteuerter Modus
- Story-Modus
- Ring/Red Star Ring-Aufbewahrung
- Funktioneller Laden
- Charakter-/Chao-Ausrüstung
- Charakterlevel und -fortschritt
- Item-/Chao-Roulette-Funktionalität
- Veranstaltungen
- Grundlegendes Ranking
Funktionell:
- Android- und iOS-Unterstützung
- Highscore halten
- In Spielmitteilungen
- Umfangreiche Konfigurationsoptionen
- Leistungsstarke RPC-Steuerungsfunktionen
- Ticker-Hinweise
- Geringe Datenbankgröße und geringer Speicherbedarf
- Geringe CPU-Auslastung
- Analytics-Unterstützung
Gebäude
- Laden Sie Go 1.15.8 herunter und installieren Sie es ( HINWEIS: Go 1.16+ unterbricht derzeit die Möglichkeit, einige oder alle Outrun-Programme zu erstellen, z. B. RPC-Programme. Ein Fix sollte hoffentlich bald verfügbar sein!)
- Laden Sie Git herunter und installieren Sie es (für
go get
) - Legen Sie Ihre GOPATH-Umgebungsvariable fest
- Öffnen Sie ein Terminal/eine Eingabeaufforderung
- Verwenden Sie
cd
(Windows, Linux/macOS), um zu einem Verzeichnis Ihrer Wahl zu navigieren - Führen Sie
go get github.com/fluofoxxo/outrun
aus und warten Sie, bis die Befehlszeile zurückkehrt - Führen Sie
go build github.com/fluofoxxo/outrun
aus und warten Sie, bis der Build abgeschlossen ist - Führen Sie die erstellte ausführbare Datei aus (
outrun.exe
unter Windows, outrun
unter Linux/macOS).
Binäre Veröffentlichungen finden Sie auf der Registerkarte „Veröffentlichungen“.
Ändern eines APK, um eine Verbindung zu Ihrer Instanz herzustellen (von Windows aus)
- Installieren Sie dnSpy (dnSpy-netcore-win64.zip)
- Installieren Sie 7-Zip
- Installieren Sie ZipSigner auf einem Android-Gerät oder Emulator
- Öffnen Sie eine Sonic Runners v2.0.3 APK-Datei mit 7-Zip
- Navigieren Sie zu Assets/bin/Data/Managed und extrahieren Sie alle DLL-Dateien in ihren eigenen Ordner
- Öffnen Sie Assembly-CSharp.dll in dnSpy
- Öffnen Sie die Klasse
NetBaseUtil
und suchen Sie die Variable mActionServerUrlTable
- Bearbeiten Sie jede Zeichenfolge im
mActionServerUrlTable
Array in http://<IP>:<PORT>/
wobei <IP>
durch die IP für Ihre Instanz und <PORT>
durch den Port für Ihre Instanz ersetzt wird (Standard: 9001). - Wiederholen Sie Schritt 7 für
mSecureActionServerUrlTable
- Wenn Sie über einen Asset-Server verfügen, verwenden Sie dessen IP und Port, um die Werte in
mAssetURLTable
und mInformationURLTable
durch http://<IP>:<PORT>/assets/
und http://<IP>:<PORT>/information/
zu ersetzen. jeweils - Klicken Sie auf Datei -> Modul speichern... und speichern Sie die DLL-Datei
- Ziehen Sie die neu gespeicherte Assembly-CSharp.dll zurück in „assets/bin/Data/Managed“ in 7-Zip und bestätigen Sie das Überschreiben, wenn Sie dazu aufgefordert werden
- Übertragen Sie die APK auf ein Android-Gerät und signieren Sie sie mit ZipSigner
- Installieren Sie die APK
Sonstiges
Alle Pull-Anfragen, die als Code-Verbesserungen gelten, werden dringend empfohlen. Refaktoren können in einem anderen Zweig zusammengeführt werden.
Palmbound (Öffentlicher Entwicklungsserver)
Seit dem 1. September 2019 ist eine Instanz dieses Servers namens Palmbound öffentlich zugänglich. App-Datei-Downloads können durch Beitritt zum Palmbound Download Discord-Server erworben werden: https://discord.gg/eeQAe8R
Credits
Vielen Dank an:
- YPwn , dessen engster Online-Kontaktpunkt ich nicht kenne, für die Erstellung und den Betrieb des Sonic Runners Revival-Servers, auf dem dieses Projekt einen Großteil seines Codes basiert.
- @Sazpaimon für das Finden des Verschlüsselungsschlüssels, nach dem ich so verzweifelt gesucht habe, den ich aber alleine nicht finden konnte.
- nacabaro (nacabaro#2138 auf Discord) für die Verkehrsprotokollierung und die Entdeckung des Asset-Archivs von DaGuAr .
Zusätzliche Hilfe
- Gegenstände im Story-Modus
- lukaafx (Discord @Kalu04#3243)
- TemmieFlakes
- SuperSonic893YT