117 lines
4.6 KiB
Markdown
117 lines
4.6 KiB
Markdown
# Farm Tracker — application Linux
|
|
|
|
Une vraie application de bureau (Electron). Au premier lancement, elle te demande
|
|
ton dossier `.minecraft`, **une seule fois**. Tu arrives ensuite sur un écran
|
|
d'accueil avec une liste d'outils (pour l'instant : Farm Tracker). Ouvrir un outil
|
|
ne ferme pas les autres : ils continuent de tourner en arrière-plan, même quand
|
|
tu es revenu à l'accueil ou sur un autre outil.
|
|
|
|
Tout se sauvegarde **automatiquement** sur le disque : kills, items, cols, prix
|
|
de vente, et chances de drop — rien à exporter ni recharger toi-même au jour le
|
|
jour. Au prochain lancement, l'appli retrouve directement ton dossier et reprend
|
|
exactement où tu en étais.
|
|
|
|
## Où sont stockées les données (et pourquoi en deux fichiers)
|
|
|
|
Tout est dans `~/.config/farm-tracker/` :
|
|
|
|
- **`app-state.json`** — le dossier Minecraft choisi, et l'état de session de
|
|
chaque outil (kills, xp, items, prix...). Personnel, pas fait pour être
|
|
partagé.
|
|
- **`dropstats.json`** — uniquement les chances de drop cumulées. Volontairement
|
|
séparé du reste : c'est le fichier fait pour être **lu, partagé et fusionné**
|
|
avec celui d'autres joueurs (voir plus bas). Les noms d'items y sont stockés
|
|
en clair (`"name": "Peau de Sanglier"`) en plus du format coloré du jeu, pour
|
|
que tu puisses l'ouvrir et le comprendre sans l'appli.
|
|
|
|
## 1. Installer et lancer
|
|
|
|
```bash
|
|
node -v # si absent : sudo apt install nodejs npm (ou via nvm)
|
|
npm install
|
|
npm start
|
|
```
|
|
|
|
## 2. (Optionnel) Construire un AppImage
|
|
|
|
```bash
|
|
npm run dist
|
|
```
|
|
|
|
Voir la section "entrée de menu" plus bas si tu veux l'épingler à ton menu
|
|
d'applications.
|
|
|
|
## 3. Partager et fusionner les chances de drop entre joueurs
|
|
|
|
C'est le point important si plusieurs personnes farment le même mob : un seul
|
|
joueur a un échantillon limité (quelques dizaines de kills), mais en combinant
|
|
15 joueurs vous obtenez un échantillon de plusieurs centaines de kills — bien
|
|
plus fiable pour estimer les drops rares.
|
|
|
|
**Option A — depuis l'appli (le plus simple) :**
|
|
|
|
Dans le panneau "Chance de drop" de Farm Tracker :
|
|
- **📤 Exporter mes stats** → choisis où sauvegarder ton fichier (clé USB,
|
|
Discord, dossier partagé...).
|
|
- **📥 Importer / fusionner…** → sélectionne **plusieurs fichiers à la fois**
|
|
(ceux de tous les autres joueurs) : tout est additionné en une seule fois
|
|
dans tes propres stats.
|
|
|
|
**Option B — en ligne de commande (pratique si quelqu'un centralise les 15
|
|
fichiers de tout le monde) :**
|
|
|
|
```bash
|
|
node tools/merge-dropstats.js fusion.json joueur1.json joueur2.json joueur3.json ...
|
|
```
|
|
|
|
Ça fusionne tous les fichiers donnés en un seul `fusion.json`, avec un résumé
|
|
affiché (mobs suivis, kills cumulés). Ce script ne nécessite que Node — pas
|
|
besoin d'installer Electron juste pour fusionner des fichiers. Le fichier
|
|
résultat peut ensuite être réimporté par n'importe qui via l'option A.
|
|
|
|
## 4. Utilisation générale
|
|
|
|
- **Accueil** : clique sur une tuile pour ouvrir l'outil correspondant.
|
|
- **🏠 Accueil** (en haut) : revient à la liste d'outils sans rien arrêter.
|
|
- **Changer de dossier** (en haut, global) : repointe tous les outils vers un
|
|
autre dossier `.minecraft`. Remet à zéro la session de farm en cours, mais
|
|
**ne touche jamais** aux chances de drop déjà enregistrées.
|
|
- **Réinitialiser la session** (dans Farm Tracker) : remet à zéro kills/xp/items
|
|
de la session affichée, sans toucher aux chances de drop.
|
|
- **Réinitialiser** (dans le panneau Chance de drop) : efface l'historique
|
|
cumulé de drop — sépare exprès de la réinitialisation de session, exporte
|
|
avant si tu veux le garder.
|
|
|
|
## 5. Sauvegarder / migrer tes données manuellement
|
|
|
|
```bash
|
|
cp -r ~/.config/farm-tracker ~/backup-farm-tracker-$(date +%F)
|
|
```
|
|
|
|
Pour restaurer (l'appli doit être fermée) :
|
|
|
|
```bash
|
|
cp -r ~/backup-farm-tracker-2026-06-28/* ~/.config/farm-tracker/
|
|
```
|
|
|
|
## 6. Entrée de menu (AppImage)
|
|
|
|
Si tu as construit l'AppImage (`npm run dist`), utilise
|
|
`install-desktop-entry.sh` (fourni séparément) pour créer l'entrée de menu —
|
|
il détecte automatiquement le fichier `.AppImage` dans `dist/`.
|
|
|
|
## Structure du projet
|
|
|
|
```
|
|
farm-tracker-app/
|
|
├── package.json
|
|
├── main.js → process principal : fenêtre, fichiers, persistance
|
|
├── preload.js → pont sécurisé entre main.js et l'interface
|
|
├── lib/
|
|
│ └── dropstats.js → logique de fusion, partagée appli + script CLI
|
|
├── tools/
|
|
│ └── merge-dropstats.js → fusionne N fichiers dropstats.json en ligne de commande
|
|
└── renderer/
|
|
└── index.html → écran dossier -> accueil -> outils, toute la logique UI
|
|
```
|