dépasser
Résumé
Outrun est un serveur personnalisé pour Sonic Runners, ingénierie inverse à partir du projet Sonic Runners Revival (utilise désormais Outrun).
Objectifs
- Implémentez tous les points de terminaison non de débogage tels qu'ils sont remplis par le serveur d'origine
- Maintenir la vitesse tout au long de l'exécution
- Consommer peu de ressources pour un déploiement conservateur
Fonctionnalité actuelle
Notable:
- Mode chronométré
- Mode Histoire
- Bague/Étoile Rouge Tenue de bague
- Boutique fonctionnelle
- Équipement de personnage/Chao
- Mise à niveau et progression des personnages
- Fonctionnalité de roulette Objet/Chao
- Événements
- Classement de base
Fonctionnel:
- Prise en charge d'Android et d'iOS
- Tenue de scores élevés
- Dans les avis de jeu
- Options de configuration approfondies
- Fonctions de contrôle RPC puissantes
- Avis de téléscripteur
- Petite taille de base de données et empreinte mémoire
- Faible utilisation du processeur
- Prise en charge des analyses
Bâtiment
- Téléchargez et installez Go 1.15.8 ( REMARQUE : Go 1.16+ empêche actuellement de créer tout ou partie d'Outrun, tels que les programmes RPC. Nous espérons qu'un correctif sera bientôt disponible !)
- Téléchargez et installez Git (pour
go get
) - Définissez votre variable d'environnement GOPATH
- Ouvrir un terminal/invite de commande
- Utilisez
cd
(Windows, Linux/macOS) pour accéder au répertoire de votre choix - Exécutez,
go get github.com/fluofoxxo/outrun
et attendez que la ligne de commande revienne - Exécutez
go build github.com/fluofoxxo/outrun
et attendez que la construction soit terminée - Exécutez l'exécutable produit (
outrun.exe
sous Windows, outrun
sous Linux/macOS)
Les versions binaires peuvent être trouvées dans l'onglet versions.
Modifier un APK pour vous connecter à votre instance (depuis Windows)
- Installez dnSpy (dnSpy-netcore-win64.zip)
- Installer 7-Zip
- Installez ZipSigner sur un appareil ou un émulateur Android
- Ouvrez un fichier APK Sonic Runners v2.0.3 avec 7-Zip
- Accédez à Assets/bin/Data/Managed et extrayez tous les fichiers DLL dans leur propre dossier.
- Ouvrez Assembly-CSharp.dll dans dnSpy
- Ouvrez la classe
NetBaseUtil
et recherchez la variable mActionServerUrlTable
- Modifiez chaque chaîne du tableau
mActionServerUrlTable
en http://<IP>:<PORT>/
où <IP>
est remplacé par l'adresse IP de votre instance et <PORT>
est remplacé par le port de votre instance (par défaut : 9001). - Répétez l'étape 7 pour
mSecureActionServerUrlTable
- Si vous disposez d'un serveur d'actifs, utilisez son adresse IP et son port pour remplacer les valeurs de
mAssetURLTable
et mInformationURLTable
par http://<IP>:<PORT>/assets/
et http://<IP>:<PORT>/information/
respectivement - Cliquez sur Fichier -> Enregistrer le module... et enregistrez le fichier DLL
- Faites glisser le fichier Assembly-CSharp.dll nouvellement enregistré dans Assets/bin/Data/Managed dans 7-Zip, en confirmant l'écrasement si demandé.
- Transférez l'APK sur un appareil Android et utilisez ZipSigner pour le signer
- Installez l'APK
Divers.
Toute demande d'extraction considérée comme une amélioration du code est fortement encouragée. Les refactors peuvent être fusionnés dans une branche différente.
Palmbound (serveur de développement public)
Depuis le 1er septembre 2019, une instance de ce serveur nommée Palmbound est actuellement accessible au public. Les téléchargements de fichiers d'application peuvent être acquis en rejoignant le serveur Palmbound Download Discord : https://discord.gg/eeQAe8R
Crédits
Un grand merci à :
- YPwn , dont je ne connais pas le point de contact social en ligne le plus proche, pour avoir créé et géré le serveur Sonic Runners Revival sur lequel ce projet base une grande partie de son code.
- @Sazpaimon pour avoir trouvé la clé de cryptage que je cherchais si désespérément mais que je ne pouvais pas faire par moi-même.
- nacabaro (nacabaro#2138 sur Discord) pour la journalisation du trafic et la découverte des archives d'actifs de DaGuAr .
Aide supplémentaire
- Éléments du mode Histoire
- lukaafx (Discorde @Kalu04#3243)
- TemmieFlakes
- SuperSonic893YT