Ne perdez plus vos objets ni votre experience (Mode solo)

tuxsouffle

Aventurier
19 Décembre 2013
3
0
1
49
Bonjour,

débutant dans Minecraft, j'ai vite ressenti la frustration de perdre un objet que j'avais eu du mal a fabriquer tout ça a cause d'une araignée qui vous pousse dans le vide GRRRRR !!!!
J'ai donc ressorti mes vieux souvenir de programation en Batch pour pouvoir revenir en arrière en cas de besoin.

Copiez ce qui suit dans un fichier "trucmuche.bat" et enregistrez le dans le dossier "C:\Users\%user%\AppData\Roaming\.minecraft". Il faut que minecraft.exe soit également dans ce dossier.


-----------------------------------------------------------------------------------------------------------------------


@Echo off

REM Ce scripte a pour but de vous permettre de revenir en arrière si vous mourez
REM et ainsi ne pas perdre vos précieux objets ni votre expèrience

REM Pour que ce scripte fonctionne il faut le placer ainsi que le fichier minecraft.exe
REM dans le dossier ou sont stockées vos données de jeu (C:\Users\%user%\AppData\Roaming\.minecraft)

REM Vous devrez utiliser ce fichier en guise de lanceur du jeu quand vous voulez jouer en mode solo




REM 1 - Conservation des sauvegardes du jeu (On conserve 2 parties en arrière)

REM On efface la sauvegarde la plus ancienne
rd /s /q savesbak2

REM La sauvegarde la plus récente devient la plus ancienne
ren savesbak savesbak2

REM On sauvegarde le jeu tel qu'il était la dernière fois qu'on l'a quitté
xcopy /e /i /y saves savesbak

REM Lancement du jeu
minecraft.exe



REM 2 - Sauvegarde automatique toutes les 5 minutes en cours de partie (30 minutes en arrière au total)

:autosave


REM On attend 5 minutes en vérifiant toutes les 5 secondes que le jeu est toujours actif

set compteur=0

:tempo

ping localhost -n 5 > NUL
Tasklist | findstr javaw.exe >NUL

REM Si le jeu n'est plus actif on quitte le programme

If not %errorlevel%==0 Goto fin

set /a compteur=%compteur%+1

REM Tant qu'on n'est pas a 5 minutes on vérifie si le jeu est actif

If not %compteur%==60 Goto tempo


REM On supprime la sauvegare la plus ancienne et on décale les autres

rd /s /q autosave005
ren autosave004 autosave005
ren autosave003 autosave004
ren autosave002 autosave003
ren autosave001 autosave002

REM On sauvegarde le jeu en cours
xcopy /e /i /y saves autosave001

REM Et on recommence
Goto autosave
:fin

-----------------------------------------------------------------------------------------------------------------------

Have fun !!!!
 

Monta

Map Maker
26 Août 2011
275
10
124
Sinon: échap, open to lan, cheats: on et tu fais "/gamerule keepInventory true"

Pour le code, tu as une balise associé qui permet de le lire / copier plus facilement.
 
  • J'aime
Reactions: super_matis

tuxsouffle

Aventurier
19 Décembre 2013
3
0
1
49
Bonjour.
Mon but avec ce script n'est pas seulement de conserver son inventaire mais surtout de pouvoir faire un "rollback" si quelque chose se passe mal. (syndrome du "fait ch... j'aurais pas dû !!!")

Pour ceux que ça intéresse, je poste une petite mise a jour à dézipper dans le dossier .minecraft

Et comme le dirait Yoda après un bon cassoulet : "May the fart be with you." :p
 

Fichiers joints

  • Rollback.zip
    350.6 KB · Affichages: 40

tuxsouffle

Aventurier
19 Décembre 2013
3
0
1
49
Je vais essayer.
En + ça a l'air bien commenter :)
Si ça marche, j'en fais un logiciel pour ça ^.^

PS: comment changer l'interval de l'autosave (ici de 5mn) ?


Bonjour,

ping localhost -n 5 > NUL : Cette ligne fait que le scripte attend 5 secondes avant de continuer (il vérifie si le jeu est toujours lancé)

If not %compteur%==60 Goto tempo : Celle ci fait que le cycle de 5 secondes se déroule 60 fois (60 x 5 secondes = 5 minutes) entre chaque sauvegarde

donc deux solutions : soit on change le nombre de cycle (le 60), soit la durée du cycle (le 5)

Si on augmente le "5", la fenêtre "MsDOS" restera affichée plus longtemps après la fermeture du jeu.