Minecraft Region Fixer

De Nefald Wiki
Aller à : navigation, rechercher


Minecraft Region Fixer
Minecraft Region Fixer
Définition
Développeur Fenixin
Environnement Microsoft Windows, GNU/Linux, MacOSX
Langue Anglais
Licence Libre
Site web Minecraft Region Fixer sur GitHub



Minecraft Region Fixer est un logiciel développé en python permettant de scanner et détecter toutes les erreurs que l'on puisse trouver sur une map.

Détecter et corriger les chunks corrompus


REMARQUE

Si vous avez téléchargé la version exe pour Windows, utilisez région-fixer.exe au lieu de python-région fixer.py.

Scanner une région ou un ensemble de régions

La version 0.1.0 de Region-Fixer peut analyser les fichiers de zone individuels ou un ensemble de régions, aléatoirement.

Par exemple, si vous savez exactement où se situe le problème, vous pouvez scanner un fichier de région uniquement au lieu de balayer le monde en entier. Vous pouvez également scanner quelques régions localisées en différents endroits.

  • commande - python region-fixer.py ~/.minecraft/saves/World1/region/r.0.0.mca
exemple
$ python region-fixer.py ~/.minecraft/saves/World1/region/r.0.0.mca

Welcome to Region Fixer!

############################################################
############## Scanning separate region files ##############
############################################################
Scanning:  1 /  1 100% [########################################] Time: 00:00:01

Found 0 corrupted, 0 wrong located chunks and 0 chunks with too many entities of a total of 976


Scanner un monde en entier

Plus simple mais plus long à faire, le scan du monde en entier

  • commande - python region-fixer.py ~/.minecraft/saves/corrupted-world
$ python region-fixer.py ~/.minecraft/saves/corrupted-world

Welcome to Region Fixer!

############################################################
############ Scanning world: Testing corruption ############
############################################################
Scanning directory...
Info: No nether dimension in the world directory.
Info: No end dimension in the world directory.
There are 1 region files and 1 player files in the world directory.

-------------------- Checking level.dat --------------------
'level.dat' is redable

------------------ Checking player files -------------------
All player files are readable.

------------------ Scanning the overworld ------------------
Scanning:  1 /  1 100% [########################################] Time: 00:00:20

Found 19 corrupted, 0 wrong located chunks and 0 chunks with too many entities of a total of 625

Options

Mode verbose et suppression automatique des chunks

  • Vous pouvez utiliser l'option --verbose ou -v si vous souhaitez plus d'informations. Cette option affichera une ligne par fichier scanné et indiquera tous les problèmes rencontrés.
  • Pour supprimer automatiquement les chunks corrompus utilisez --delete-corrupted ou --dc
$ python region-fixer.py --delete-corrupted ~/.minecraft/saves/corrupted-world

Welcome to Region Fixer!

############################################################
############ Scanning world: Testing corruption ############
############################################################
Scanning directory...
Info: No nether dimension in the world directory.
Info: No end dimension in the world directory.
There are 1 region files and 1 player files in the world directory.

-------------------- Checking level.dat --------------------
'level.dat' is redable

------------------ Checking player files -------------------
All player files are readable.

------------------ Scanning the overworld ------------------
Scanning:  1 /  1 100% [########################################] Time: 00:00:19

Found 19 corrupted, 0 wrong located chunks and 0 chunks with too many entities of a total of 625

################ Deleting  corrupted chunks ################
 Deleting chunks in region set "/home/alejandro/.minecraft/saves/corrupted-world/region/": Done! Removed 19 chunks
Done!
Deleted 19 corrupted chunks

Réparer les chunks à partir d'un backup

Si vous possédez un backup de votre monde, vous pouvez l'utiliser afin de réparer les chunks endommagés à partir de celui-ci. Seul bémol, votre console sera spammée; pour chaque chunk, un log sera écrit :

  • commande - python region-fixer.py --backups ~/backup/2013.01.05/ --replace-corrupted ~/.minecraft/saves/corrupted-world
$ python region-fixer.py --backups ~/backup/2013.01.05/ --replace-corrupted ~/.minecraft/saves/corrupted-world

Welcome to Region Fixer!

############################################################
############ Scanning world: Testing corruption ############
############################################################
Scanning directory...
Info: No nether dimension in the world directory.
Info: No end dimension in the world directory.
There are 1 region files and 1 player files in the world directory.

-------------------- Checking level.dat --------------------
'level.dat' is redable

------------------ Checking player files -------------------
All player files are readable.

------------------ Scanning the overworld ------------------
Scanning:  1 /  1 100% [########################################] Time: 00:00:19

Found 19 corrupted, 0 wrong located chunks and 0 chunks with too many entities of a total of 625

############ Trying to replace corrupted chunks ############

---------- New chunk to replace! Coords (-16, 9) -----------
Backup region file found in:
  ~/backup/2013.01.05/region/r.-1.0.mca
Replacing...
Chunk replaced using backup dir: ~/backup/2013.01.05/

---------- New chunk to replace! Coords (-10, 19) ----------
Backup region file found in:
  ~/backup/2013.01.05/region/r.-1.0.mca
Replacing...
Chunk replaced using backup dir: ~/backup/2013.01.05/

    ... long log of replaced chunks ...

---------- New chunk to replace! Coords (-13, 16) ----------
Backup region file found in:
  ~/backup/2013.01.05/region/r.-1.0.mca
Replacing...
Chunk replaced using backup dir: ~/backup/2013.01.05/

---------- New chunk to replace! Coords (-13, 25) ----------
Backup region file found in:
  ~/backup/2013.01.05/region/r.-1.0.mca
Replacing...
Chunk replaced using backup dir: ~/backup/2013.01.05/

19 replaced chunks of a total of 19 corrupted chunks



Supprimer les entités

Une autre fonction de Region-Fixer - et non pas des moindres - permet de supprimer les entités présentes sur les chunks. En effet, un trop gros nombres d'entités sur un seul et même chunk pour surcharger de façon significatif le CPU d'un serveur. Ce peut être n'importe quel mobs ou items.

Ce problème peut aisément être réglé. Utilisez l'option --delete-entities et Region-Fixer supprimera toutes les entités sur les chunks comportant plus d'entités que la limite indiquée ( entity-limit). Cela n'affecte pas les TilesEntities (coffres, noteblocks, etc...).

Sont stockés dans les chunks au moment de l'écriture les entités suivantes :

  • mobs
  • projectiles (flèches, boules de neige...)
  • TNT
  • ender crystal
  • peintures
  • items au sol (les coffres ne seront pas concernés)
  • véhicules (bateaux et minecarts)
  • tiles dynamiques ( et TNT active)



  • commande - python region-fixer.py --entity-limit 50 --delete-entities ~/.minecraft/saves/corrupted-world
python region-fixer.py --entity-limit 50 --delete-entities ~/.minecraft/saves/corrupted-world

Welcome to Region Fixer!

############################################################
############ Scanning world: Testing corruption ############
############################################################
Scanning directory...
Info: No nether dimension in the world directory.
Info: No end dimension in the world directory.
There are 1 region files and 1 player files in the world directory.

-------------------- Checking level.dat --------------------
'level.dat' is redable

------------------ Checking player files -------------------
All player files are readable.

------------------ Scanning the overworld ------------------
Deleted 102 entities in chunk (14,8) of the region file: r.-1.0.mca
Deleted 111 entities in chunk (14,10) of the region file: r.-1.0.mca
Deleted 84 entities in chunk (15,4) of the region file: r.-1.0.mca
Deleted 75 entities in chunk (21,4) of the region file: r.-1.0.mca
Scanning:  1 /  1 100% [########################################] Time: 00:00:20

Found 0 corrupted, 0 wrong located chunks and 0 chunks with too many entities of a total of 625

Mode interactif

Depuis la version v0.1.0, il existe un mode interactif. Si vous ne savez pas exactement ce qui ne tourne pas rond sur votre map, ce mode peut vous être très utile. Pour utiliser ce mode, ajoutez l'option --interactive :

python region-fixer.py --interactive ~/.minecraft/saves/corrutped-world

Dans ce mode, les résultats du scan sont sauvegardés dans la mémoire, de fait vous pourrez supprimer des chunks, supprimer des entités, remplacer des chunks, remplacer les chunks avec trop d'entités et lire le résumé de ce qui dysfonctionne sans avoir besoin de re-scanner votre map. Pratique!

exemple
$ python region-fixer.py --interactive ~/.minecraft/saves/corrupted-world
Welcome to Region Fixer!
Minecraft Region-Fixer interactive mode.
(Use tab to autocomplete. Type help for a list of commands.)

#-> scan
Scanning directory...
Info: No nether dimension in the world directory.
Info: No end dimension in the world directory.
There are 1 region files and 1 player files in the world directory.

-------------------- Checking level.dat --------------------
'level.dat' is redable

------------------ Checking player files -------------------
All player files are readable.

------------------ Scanning the overworld ------------------
Scanning:  1 /  1 100% [########################################] Time: 00:00:21

#-> summary

############################################################
############## World name: Testing corruption ##############
############################################################

level.dat:
    'level.dat' is readable

Player files:
    All player files are readable.

Overworld:
Region file: r.-1.0.mca
 |-+-Chunk coords: header (16, 9), global (-16, 9).
 | +-Status: Corrupted

    ... big summary...

 |-+-Chunk coords: header (19, 25), global (-13, 25).
 | +-Status: Corrupted
 |
 +


#-> remove_chunks corrupted
 Deleting chunks in region set "/home/alejandro/.minecraft/saves/corrupted-world/region/": Done! Removed 19 chunks
Done! Removed 19 chunks
#->