Giter Site home page Giter Site logo

gorilla-devs / gdlauncher Goto Github PK

View Code? Open in Web Editor NEW
1.2K 27.0 262.0 121.53 MB

GDLauncher is a simple, yet powerful Minecraft custom launcher with a strong focus on the user experience

Home Page: https://gdevs.io

License: GNU General Public License v3.0

HTML 0.86% JavaScript 94.84% NSIS 0.24% Less 3.98% Shell 0.01% Rust 0.08%
launcher game custom-minecraft-launcher mod minecraft minecraft-server javascript electron css jsx

gdlauncher's People

Contributors

blarfoon avatar celeo avatar eskaan avatar ladvace avatar nmistry avatar pola avatar theofficialgman avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

gdlauncher's Issues

Local Mod Sync

Aggiungere l'opzione, dopo aver installato una modpack, di ri-sincronizzarla con il server. In questo modo vengono cancellati tutti i files diversi/in piu' e scaricati quelli mancanti

Modpack Locale Forge errore 404

Nelle modpacks locali, gli url di forge sono sbagliati.
Il launcher usa un url del tipo
http://files.minecraftforge.net/maven/net/minecraftforge/forge/1.7.10-10.13.4.1614-1.7.10/forge-1.7.10-10.13.4.1614-1.7.10-installer.jar
pero' funziona solo per la versione 1.7.10, se si fa la stessa cosa per qualunque altra versione da 404.
Per le altre versioni bisogna fare
http://files.minecraftforge.net/maven/net/minecraftforge/forge/1.10.2-12.18.1.2018/forge-1.10.2-12.18.1.2018-installer.jar

Cancellazione salvataggi

Dato che i salvataggi sono dentro la cartella minecraft che viene continuamente cancellata, spostata, modificata etc... si rischia la perdita di tutti i salvataggi di gioco. Se possibile, salvare i salvataggi in documenti o in appdata

Aggiunta modpack pubbliche da parte degli utenti

Gli utenti tramite il sito dovrebbero avere la possibilita' di aggiungere in una sezione "community" le loro modpacks personali. In questo modo tutti gli utenti possono giocare ad un quantitativo di modpacks molto superiore a quello da noi ufficialmente fornito. La sezione "community" dovrebbe comunque essere divisa da quella ufficiale e sulla pagina principale del launcher dovrebbero esserci 3 modpacks. 2 da noi decise e una terza che sceglie l'utente

Aggiungere una gestione degli amici

Sarebbe interessante aggiungere una gestione degli amici all'interno del launcher.
Quando un utente logga vede chi altro e' online nel launcher e a che modpack sta giocando. Potrebbe quindi unirsi ai suoi amici in partita.

Connessioni lente probabile Timeout download

Su connessioni molto lente gli utenti non riescono a scaricare le mod piu' pesanti, tutto il resto funziona. E' probabile un timeout di rete durante il download di file pesanti da parte del client o del server

Aggiungere rename delle istanze dopo averle create

Aggiungere la possibilita' di rinominare le istanze dopo la creazione. Per farlo bisogna mettere di fianco al nome dell'istanza, nella lista delle modpacks, un pulsante di rename. Per fare il rename bisogna rinominare la cartella e il json al suo interno, oltre che il nome vero e proprio dentro il json

Risistemare parte Download launcher

Il launcher quando scarica le modpacks si affida molto a controlli su stringhe pre-inserite nel codice.
Cercare di togliere il piu' possibilire URL fissi e rendere il tutto piu' dinamico possibile

Aggiungere messaggio compulsoryupdate

Quando c' è un cimpulsoryupdate e l' utente decide di non aggiornare mettere un message box con scritto che il launcher si chiuderà e per usarlo bisogna aggiornare

Ottimizzare la console di log

La console di log non e' ancora del tutto finita.
Se non la si apre per molto tempo e il numero di righe di log e' molto alto, dato che ha un numero massimo di righe, alla sua apertura lagga tutto perche' deve eliminare dalla console tutte le righe in eccesso

Problemi forge modpacks locali

Durante il download di alcune versioni nelle modpacks locali fa problemi nello spostamento del file di forge!??!?!?!?!??!
Con forge si avvia inoltre solamente la 1.7.10, le altre le scarica ma all'avvio crasha(probabilmente qualche libreria manca o qualche percorso e' sbagliato)

La sezione Admin e' da finire

La sezione admin del launcher per ora e' solo un abbozzo veloce di emergenza.
Necessita di una buona interfaccia e di un buona personalizzazione delle impostazioni e integrazione
Aggiungere magari la possibilita' di utilizzare una versione arbitraria di forge
Migliorare inoltre lo skip degli hash

Errore battitura

Se vai ad installare il vanilla, il download ti dice "downloading forge" quando dovrebbe esserci "installing vanilla"

Problema forge varie versioni

Le varie versioni di forge utilizzano un tweakclass diverso. Si puo' leggere il tweakclass da utilizzare nel file json di forge scaricato. Cercare di rendere piu' dinamico possibile l'avvio leggendo anche altre informazioni dal file forge.
Con alcune versioni(per ora e' constatato solo con la 1.7.2 e la 1.10.2) da problemi a spostare il file di forge universal. Bisogna ricontrollare bene quella parte e sistemarla per adattarla a tutte le versioni. Rendere anche il codice piu' leggibile

Possibilita' di esclusione file del JSON dal controllo degli hash

Quando il launcher scarica una modpack e poi controlla gli hash controlla gli hash su tutti i files.
Sarebbe bello se su alcuni files gli hash non si controllassero pero' la prima volta che l'utente scarica la modpack venissero comunque scaricati(ad esempio i files di configurazione)

Errori avvio minecraft

Bisogna implementare un sistema per tenere traccia dei principali errori di avvio di minecraft all'avvio. Tipo URL bad authority che significa che si ha un percorso errato (tipo // per i percorsi di rete)

Aggiungere un dialog durante l'avvio e l'esecuzione di minecraft

Aggiungere un dialog durante l'avvio e l'esecuzione di minecraft che si chiude quando minecraft viene chiuso.
Farlo per punti, tipo mettere 4 stadi di avvio(setting user:)... etc
sfruttare la funzione process.OutputDataReceived += new DataReceivedEventHandler((s, e) => in minecraftstarter per leggere i dati di output del programma. In questo dialog dire anche se il gioco e' crashato, non si e' avviato etc

Pagina installazione o portable

Appena avviato il launcher fare una pagina che chiede se si vuole installare il launcher e creare un collegamento sul desktop o tenerlo portable nella cartella dove lo si e' scaricato

Aggiungere etichette modpacks

Per ogni modpacks, alla creazione, bisogna decidere delle categorie a cui assegnarla(tech, survival). Sara' poi possibile nel market fare una ricerca per categoria. E' obbligatoria almeno una categoria ma se ne possono anche mettere di piu'

Se si aprono due DialogHost uno sopra l'altro l'app crasha

In alcune parti dell'applicazione c'e' la "possibilita'" di aprire due DialogHost contemporaneamente e questo causa un crash dell'applicazione(nella schermata di login ad esempio)
FARE IN MODO CHE QUELLO SUCCESSIVO ASPETTI CHE QUELLO PRECEDENTE FINISCA OPPURE CHE CHIUDA IMMEDIATAMENTE QUELLO PRECEDENTE O CHE NON MOSTRI PROPRIO QUELLO DOPO

Aggiungere sistema di controllo del processo di Minecraft di java

Aggiungere controlli sul processo di Java dopo l'avvio del gioco, dato che ci mette tantissimo ad avviarsi.
Si potrebbe usare dei punti fissi nella finestra di log per vedere l'avanzamento(Error: Could not find or load main class net.minecraft.launchwrapper.Launch) come errore di avvio ad esempio e magari mettere la percentuale di avvio.
Verificare su internet se esistono in C# metodi per monitorare a fondo un processo lanciato

Ability to choose install location

At the moment GDL installs to:

C:\Users\_____\AppData\Roaming\GorillaDevs

This doesn't seem to be changeable.

Further, we don't seem to be able to choose the install location of downloaded/Created packs/Servers.

As someone with a small SSD C:\ that I've only allowed Windows to install on this becomes rather limiting. I may not be alone in this practice.

TL;DR

• Choose GDL install location
• Choose instance and Server installation locations

Problema dati sessione utente

Se l'utente fa keep me logged in e vengono modificati manualmente i dati sul database, all'utente sul launcher non vengono aggiornati. Fare in modo che i dati vengano aggiornati comunque

Rendere asincrono registrazione e JSON

Rendere asincrona la chiamata della registrazione perche' impalla, magari metterci un caricamento, e rendere asincrona anche JSON perche' (non so quali) ma ci sono delle parti che fanno impallare leggermente il launcher

Implementare creazione e upload modpacks

Bisogna implementare nel launcher una sezione per creare e caricare le modpacks.
L'utente deve inserire una cartella, con dentro tutti i files della modpack. Il launcher in automatico vede se le mods esistono su curse (usando il file .info presente dentro il jar). Dopo aver trovato nel file .info il nome tecnico della modpack e averlo cercato su curse, e poi anche l'id del progetto della mod, crea il json e carica tutto su mysql con direttamente l'url completo di curse. Per i files che non sono presenti su curse mette gli url del server.

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.