[WIP]Launcher-MineLauncherCreator1.00(Windows)

Statut
N'est pas ouverte pour d'autres réponses.

RedMaster17

Aventurier
29 Avril 2014
3
0
1
32
Bonjour,

Premièrement, je tiens à remercier jambonlatex pour son excellent travaille avec MineLauncherCreator, qui me sort un launcher parfait. Mais pour que mon launcher lance forge 1.6.4 correctement il a besoin de 4 arguments (dont PermSize etc). La première méthode est de faire télécharger le launcher_profiles.json avec les args déjà dedans, mais les modifications du profil par le joueur seront effacées à chaque redémarrage. La seconde méthode se trouve dans le code, j'ai essayé d'ajouter cette ligne dans GameLauncher.java :
Code:
processLauncher.addSplitCommands("-Argument1 -Argument2 -XX:PermSize=256m -XX:MaxPermSize=256m");
Lors du lancement, les arguments s'affichent dans la console après Running ... mais forge les ignores. Je suis ouvert à toute suggestion et n’hésitez pas à me demander des précisions .

Cordialement, RedMaster
 

ADMika

Aventurier
25 Juin 2014
29
0
1
36
Ils les ignore parce qu'il y a plusieurs endroit dans les sources où les arguments java sont appelés. Fait une recherche dans eclipse en mode search/file en marquant xmx1G tu trouvera plusieurs class avec les arguments par defaut du profile etc.
 

RedMaster17

Aventurier
29 Avril 2014
3
0
1
32
Ils les ignore parce qu'il y a plusieurs endroit dans les sources où les arguments java sont appelés. Fait une recherche dans eclipse en mode search/file en marquant xmx1G tu trouvera plusieurs class avec les arguments par defaut du profile etc.
Merci pour t'a réponse, j'y ais déjà pensé mais les arguments sont bien fournis à forge, en atteste la console : Running D:\Program Files\Java\jre7\bin\javaw.exe -XX:HeapDumpPath=MojangTricksIntelDriversForPerformance_javaw.exe_minecraft.exe.heapdump -Xmx1G [...] -XX: PermSize=256m -XX:MaxPermSize=256m
Je pense plutôt que les arguments arrivent à forge au mauvais moment ou qu'ils sont mal formatés.

Cordialement, RedMaster
 

ADMika

Aventurier
25 Juin 2014
29
0
1
36
Je suis en train d'y regarder aussi depuis un moment pour automatiser le système,pour le moment j'arrive bien a dire au argument java de s'enregistrer dans les jvm argument dans edit profile mais temps que le profile n'est pas au moins enregistré une fois avec la case coché,le launcher profile les prend pas en compte. Sur l'ancien launcher j'avais réussi sans problème. La différence que je note est la variable JavaArgs où dans l'ancien launcher c'étais écrit en dur et là ça appel copy.Arg. J'ai pas encore poussé les tests. Mais en tout cas j'arrive quand même à avoir mes arguments fonctionnel par defaut au lancement.(sinon mon launcher ne se lançerait même pas sans les perm). Si tu veux tenter le coup voici les lignes que j'ai modifiées pour le moment :

Code:
Ligne 38/39 class profile.java
public static final String DEFAULT_JRE_ARGUMENTS_64BIT = "-Xmx4G -XX:PermSize=256m -XX:MaxPermSize=512m -Dfml.ignoreInvalidMinecraftCertificates=true -Dfml.ignorePatchDiscrepancies=true";
    public static final String DEFAULT_JRE_ARGUMENTS_32BIT = "-Xmx512M -XX:PermSize=256m -XX:MaxPermSize=512m -Dfml.ignoreInvalidMinecraftCertificates=true -Dfml.ignorePatchDiscrepancies=true";

Code:
Ligne 120 class ProfileJavaPanel.java
javaArgsField.setText("-Xmx4G -XX:PermSize=256m -XX:MaxPermSize=512m -Dfml.ignoreInvalidMinecraftCertificates=true -Dfml.ignorePatchDiscrepancies=true");

Mon prochain test est de modifié ça :

Code:
Profile.java ligne 67
        javaArgs = copy.javaArgs;
 

RedMaster17

Aventurier
29 Avril 2014
3
0
1
32
Code:
Ligne 38/39 class profile.java
public static final String DEFAULT_JRE_ARGUMENTS_64BIT = "-Xmx4G -XX:PermSize=256m -XX:MaxPermSize=512m -Dfml.ignoreInvalidMinecraftCertificates=true -Dfml.ignorePatchDiscrepancies=true";
    public static final String DEFAULT_JRE_ARGUMENTS_32BIT = "-Xmx512M -XX:PermSize=256m -XX:MaxPermSize=512m -Dfml.ignoreInvalidMinecraftCertificates=true -Dfml.ignorePatchDiscrepancies=true";

Code:
Ligne 120 class ProfileJavaPanel.java
javaArgsField.setText("-Xmx4G -XX:PermSize=256m -XX:MaxPermSize=512m -Dfml.ignoreInvalidMinecraftCertificates=true -Dfml.ignorePatchDiscrepancies=true");

Mon prochain test est de modifié ça :

Code:
Profile.java ligne 67
        javaArgs = copy.javaArgs;
Je vais tester ce code, je ne doute pas qu'il marche, mais les arguments vont s'appliquer sur tout les profils y compris ceux qui sont vanilla etc. Un peu plus de travail et je pense qu'on pourra sortir quelque chose de propre ;) en tout cas merci !

Cordialement, RedMaster
 

ADMika

Aventurier
25 Juin 2014
29
0
1
36
Comme j'ai dis ce n'est qu'un début,je n'ai pas terminé. Je dois pousser un peu plus le concept mais dans l'idée j'en suis pas bien loin ^^. Et comme dit pour le moment cela ne marche totalement que si l'utilisateur coche la case JVM arguments et enregistre le profile (de base cela marche aussi sans mais ne prend pas en compte la variable xmx , ça prend en compte que le reste (ça m'étonne beaucoup d'ailleurs, j’avoue que je comprend pas pourquoi mais bon)).
 

Oromis

Command-blocker slimesque
Staff
Modérateur
Support
11 Février 2014
3 345
2
1 053
297
24
Bretagne
Salut, je remplis tout les cases du logiciel, et quand je le lance j'ai dans les logs un message d'erreur :

Code:
exception in thread "Thread-16" java.lang.NullPointerException
    at com.jbltx.mlaunchcreator.FileManager.compileJarFile(FileManager.java:139)
    at com.jbltx.mlaunchcreator.UI.runQueries(UI.java:335)
    at com.jbltx.mlaunchcreator.UI.access$0(UI.java:314)
    at com.jbltx.mlaunchcreator.UI$1$1.run(UI.java:229)

voila si quelqu'un connait le problème ^^

Sinon très bon logiciel, pourrais tu rajouter une option permettant de changer l'icone du launcher (dans les dossiers, sur la barre des taches et en haut à gauche de la fenêtre) ??
 
Statut
N'est pas ouverte pour d'autres réponses.