KokaKiwi / MCLauncher

Custom Launcher for Minecraft
38 stars 28 forks source link

Réglage de la mémoire #7

Open ghost opened 12 years ago

ghost commented 12 years ago

Ajouter une option permettant de régler la mémoire allouée à l’exécution du minecraft.jar du jeu.

(ex de paramètres de lancement : -Xmx4096M -Xms3072M)

KokaKiwi commented 12 years ago

C'est pas possible (du moins je vois pas comment pour le moment), du fait que je ne lance pas la commande "java" via le launcher, et que la mémoire de la JVM n'est pas paramétrable directement depuis Java ('fin je crois).

ghost commented 12 years ago

Argh, je ne voulais par fermer, désolé. Si tu peux rouvrir le post, je n'ai pas trouvé comment annuler.

Pardonne mon ignorance, mais quel est la fonction exacte de la classe MCLauncher ? Elle lance le launcher avec des paramètres si je ne m'abuse ? Si c'est le cas, tu peux y indiquer des paramètres des mémoires récupéré rapidement dans un fichier de config. Par contre je ne sais pas si du fait que tu lances le jeu depuis le launcher, ce sera dans le même processus ? Si c'est le cas, le jeu devrais profiter de la mémoire allouée.

axeloche commented 11 years ago

Heuu je voulais s'avoir après 2 ans est ce que c'est possible de nos jour ?? :S

KokaKiwi commented 11 years ago

A priori ça serait possible (d'autres launchers le font), faut juste que je me replonge dedans et que je cherche comment faire ^^

axeloche commented 11 years ago

Sa serais tellement bien ^^ tu pense que tu pourrais le faire ? :s

KokaKiwi commented 11 years ago

Quand j'aurais le temps de revenir un peu sur le launcher, mais je pense pas que ça soit dans l'immédiat :/

axeloche commented 11 years ago

Je comprend totalement :) Mais Tkt , au passage qu'elle Launcher :D

KokaKiwi commented 11 years ago

au passage qu'elle Launcher :D

Bah y'a MagicLauncher et Feed The Beast Launcher qui le font à ma connaissance

axeloche commented 11 years ago

Oui mais impossible de trouver les sources de MagicLauncher :/ je go voir pour ftb merci :D

Arcandian commented 11 years ago

Pour le réglage de la RAM, j'ai peut-etre un debut de solution. Je m'explique :

Kiwi, j'ai vu dans ton code que t'avais défini deux constantes représentant respectivement la quantité de RAM recommandée a la JVM (RECOMMANDED_HEAP_SIZE) et le minimum de RAM a allouer (MINIMUM_HEAP_SIZE).

Donc, en prenant en compte ces constantes, faudrait les manipuler via les constantes memoires de Java (tu sais, les parametres -Xms512m -Xmx1024m, ce genre quoi). Pour ça, suffit simplement de deux JComboBox dans les options du Launcher, avec chaque option attibuant ces valeurs là (tout en prevoyant que la quantité de RAM minimum doit etre strictement inferieure ou egale a la quantité recommandée a la JVM).

La suite est alors simple : pour eviter tout souci avec ta methode actuelle, suffit de faire deux accesseurs retournant la valeur, casté en int, de ces deux ComboBox.

Voila, mais j'ai assez blablaté, demain je code ça et y'aura plus qu'a consulter mon code !

@ ++ les codeurs ^^

Arcandian commented 11 years ago

NB : pour le cast en type primitif, faut pas caster en int primitif directement mais en Integer, la classe enveloppante de int. Sinon la valeur donnée est incorrecte 1

Arcandian commented 11 years ago

Tant que j'y suis, je vais forker ton répertoire dans eclipse pour prendre en compte les nouvelles MAJs =)

Je m'y mets ^^

Arcandian commented 11 years ago

Bon bah j'ai crée visuellement la façon de sélectionner son allocation RAM dans le menu des options du Launcher si tu veux =)

Arcandian commented 11 years ago

Euh petite question Kiwi : les parametres de la machine virtuelle, tu les ajoutes bien après que tu ai instancié le theme du Launcher?

KokaKiwi commented 11 years ago

Euh petite question Kiwi : les parametres de la machine virtuelle, tu les ajoutes bien après que tu ai instancié le theme du Launcher?

Les params de la machine virtuelle dans le main sont là pour vérifier...Euh j'sais plus quoi, c'était déjà dans le launcher de base en fait ^^ Mais normalement, c'est avant que tout le launcher démarre que ça fais cette vérif' je crois :o

Arcandian commented 11 years ago

On dirait, parce que y'a, je suppose, un tableau "params" qui, avec la methode "params.add("Le parametre de la JVM"). Donc grosso modo, faudrait pouvoir agir sur ce tableau de parametres. Seulement, pour ça, si je tente de proceder, faudrait que je change l'ordre de chargement du launcher, a savoir le theme (pour recuperer le contenu de mes JComboBox parsé en Long) PUIS les parametres, ce qui est theoriquement pas possible. Normal, pour instancier, faut d'abord demarrer la JVM, et donc, lui filer les parametres...

HAAAAAAAAAX !!!!!!! (Brain is dead...)

Arcandian commented 11 years ago

Bon ben je ne trouve toujours pas de solutions. Tu as eu de nouvelles pistes de ton côté?

KokaKiwi commented 11 years ago

Pas trop cherché pour le moment (pas beaucoup de temps :/)

Arcandian commented 11 years ago

Ok ^_^ Bah je m'y recolle alors XD

Je te tiens au courant si j'ai une piste intéressante