# Custom Ore Gem Mod

## Description

Custom Ore Gem est un mod Minecraft développé avec MCreator pour Forge 1.20.1. Ce mod modifie la distribution des ressources dans Minecraft en ajoutant de nouvelles variantes de minerais avec des drops configurables et des outils personnalisés.

> **Note importante** : Ce mod est conçu pour être utilisé avec KubeJS et ne doit pas être utilisé seul.

## Informations Techniques

- **Version de Minecraft** : 1.20.1
- **Mod Loader** : Forge (version 47.3.0)
- **Version de Java** : Java 17
- **Mod ID** : `custom_ore_gen`
- **Version** : 2.1.5
- **Auteur** : Aulyrius (créé via MCreator)
- **Site web** : https://lanro.eu


## Avant garde

### Dépendances Requises

* **KubeJS** (OBLIGATOIRE) - Ce mod ne peut pas fonctionner sans KubeJS installé
  - Le mod refusera de se lancer si KubeJS n'est pas présent
  - Le mod crée automatiquement le script de suppression des minerais vanilla au premier lancement dans `kubejs/startup_scripts/custom_ore_gen_remove_vanilla_ores.js`

* **Biomes O' Plenty** (Recommandé) - Pour profiter des biomes supplémentaires (69 biomes BOP supportés)

* **Biome Replacer** (Optionnel) - Pour supprimer les biomes caves qui n'ont pas de sens de température

  ```properties
  biome_replacer.properties:
  minecraft:deep_dark > null
  minecraft:dripstone_caves > null
  minecraft:lush_caves > null
  ```

### Script KubeJS Automatique

Le mod crée automatiquement le script suivant au premier lancement dans `kubejs/startup_scripts/custom_ore_gen_remove_vanilla_ores.js` :

```javascript
// priority: 0

WorldgenEvents.remove(event => {
    var minecraftOreList = [
        'minecraft:coal_ore',
        'minecraft:deepslate_coal_ore',
        'minecraft:copper_ore',
        'minecraft:deepslate_copper_ore',
        'minecraft:iron_ore',
        'minecraft:deepslate_iron_ore',
        'minecraft:gold_ore',
        'minecraft:deepslate_gold_ore',
        'minecraft:redstone_ore',
        'minecraft:deepslate_redstone_ore',
        'minecraft:emerald_ore',
        'minecraft:deepslate_emerald_ore',
        'minecraft:diamond_ore',
        'minecraft:deepslate_diamond_ore',
        'minecraft:lapis_ore',
        'minecraft:deepslate_lapis_ore'
    ];

    event.removeOres(props => {
        props.blocks = minecraftOreList
    });
});
```

> **Note** : Le script n'est recréé que s'il n'existe pas déjà. Vous pouvez le modifier manuellement sans risque.
## Fonctionnalités Principales

### Nouveaux Minerais (16 blocs)

Le mod ajoute plusieurs variantes de minerais personnalisés :

#### Variantes de Diamant
- **Deepslate Shard Diamond Ore** (`deepslatesharddiamondore`) : Un minerai de diamant qui droppe des éclats de diamant
  - Se génère dans tous les biomes (forge:any)
  - Se génère uniquement en profondeur (deepslate)
  - Taille des filons : 16 blocs
  - Drop : 1-2 Diamond Shards (Fortune supporté)
- **Concentrated Diamond Ore** (`concentrateddiamondore`) : Un minerai de diamant plus concentré
  - Se génère dans les biomes froids (cold_biomes)
  - Drop : 1-2 Diamants (Fortune supporté)

> **Note** : La version surface du minerai Shard Diamond a été désactivée dans la version 2.1.5. Seule la version deepslate est disponible.

#### Variantes d'Or
- **Pure Golden Ore** (`puregoldenore`) : Un minerai d'or pur de haute qualité
  - Se génère dans les biomes chauds (hot_biomes)
  - Hauteur : 0 à 256
  - Drop : 2-4 Pépites d'or
- **Deepslate Pure Golden Ore** (`deepslatepuregoldenore`) : Version deepslate du minerai d'or pur

#### Variantes de Charbon
- **Concentrated Coal Ore** (`concentratedcoalore`) : Charbon plus concentré
  - Se génère dans les biomes tempérés (tempered_biomes)
  - Drop : 2-4 Charbons

#### Variantes de Fer
- **Iron Ore** (`ironore`) : Variante personnalisée du minerai de fer
  - Se génère dans les biomes tempérés (tempered_biomes)
- **Deepslate Iron Ore** (`deepslateironore`) : Version deepslate du minerai de fer

#### Variantes d'Émeraude
- **High Emerald Ore** (`highemeraldore`) : Émeraude de haute qualité
  - Se génère dans les biomes de montagne (mountain_biomes)
- **Lower Emerald Ore** (`loweremeraldore`) : Émeraude de basse qualité
  - Se génère dans les biomes très rares (rare_biomes : mushroom_fields, ice_spikes)

#### Variantes de Redstone
- **Redstone Ore** (`redstoneore`) : Variante personnalisée du minerai de redstone
- **Deepslate Redstone Ore** (`deepslateredstoneore`) : Version deepslate

#### Variantes de Lapis
- **Lapis Ore** (`lapisore`) : Variante personnalisée du minerai de lapis
- **Deepslate Lapis Ore** (`deepslatelapisore`) : Version deepslate

#### Variantes de Cuivre
- **Copper High Ore** (`copperhighore`) : Variante haute du minerai de cuivre
  - Se génère dans les biomes chauds (hot_biomes)
- **Copper Lower Ore** (`copperlowerore`) : Variante basse du minerai de cuivre
  - Nom affiché : "deepslate copper ore"

### Nouveaux Objets

#### Diamond Shard (Éclat de Diamant) (`diamondshard`)
- **Description** : "Diamond sparkle, to create tools or to create a diamond"
- **Rareté** : RARE
- **Stack** : 64
- **Utilisation** :
  - Permet de créer des outils en éclats de diamant
  - Peut être crafté en diamant complet (9 éclats = 1 diamant)

#### Ore Biome Finder (`ore_biome_finder`)
- **Description** : Un outil permettant d'identifier les minerais présents dans le biome actuel
- **Stack** : 1 (non stackable)
- **Utilisation** : Clic droit pour afficher les informations du biome actuel
- **Informations affichées** :
  - Nom du biome et ID
  - Tags du mod applicables au biome (cold_biomes, hot_biomes, etc.)
  - Liste des minerais trouvables dans ce biome
- **Craft** : Compass + Diamond Shards (voir recettes ci-dessous)

### Outils en Diamond Shard

Le mod introduit une nouvelle catégorie d'outils située entre le fer et le diamant :

#### Pioche en Éclat de Diamant (`sharddiamondpickaxe`)
- **Durabilité** : 200 utilisations
- **Vitesse de minage** : 7.0
- **Dégâts d'attaque** : 1
- **Réparation** : Utilise des Diamond Shards

#### Pelle en Éclat de Diamant (`sharddiamondshovel`)
- **Durabilité** : 200 utilisations
- **Vitesse de minage** : 4.0
- **Dégâts d'attaque** : 2

#### Hache en Éclat de Diamant (`sharddiamondaxe`)
- **Durabilité** : 200 utilisations
- **Vitesse de minage** : 7.0
- **Dégâts d'attaque** : 6

#### Paxel en Éclat de Diamant (`sharddiamondpaxel`)
- **Description** : Outil combiné pioche + pelle + hache, tout-en-un pour le minage
- **Durabilité** : 1000 utilisations
- **Vitesse de minage** : 6.5
- **Dégâts d'attaque** : 1 (pas fait pour le combat)
- **Réparation** : Utilise des Diamond Shards
- **Fonctionnalités** :
  - Mine tous les blocs (pierre, bois, terre, etc.)
  - Efficace sur tous les types de blocs
  - Remplace les 3 outils séparés

### Armure en Diamond Shard

Le mod introduit une armure intermédiaire située entre le fer et le diamant :

| Pièce | Protection | Durabilité | Craft |
|-------|-----------|------------|-------|
| Casque | 3 | 250 | 5 Diamond Shards |
| Plastron | 7 | 300 | 8 Diamond Shards + 1 Diamant |
| Jambières | 5 | 280 | 7 Diamond Shards + 1 Diamant |
| Bottes | 2 | 230 | 4 Diamond Shards |
| **Total** | **17** | **1060** | **24 Shards + 2 Diamants** |

**Comparaison** : Fer (15 armure, 535 durabilité) | Diamond Shard (17 armure, 1060 durabilité) | Diamant (20 armure, 2048 durabilité)

## Distribution des Minerais par Biomes

Le mod utilise une classification logique des biomes pour la génération des minerais via les biome modifiers de Forge. Le support de **Biomes O' Plenty** est inclus avec 69 biomes supplémentaires.

### Vue d'ensemble

| Catégorie | Minerais | Biomes Vanilla | Biomes BOP |
|-----------|----------|:--------------:|:----------:|
| **Cold** | Lapis, Deepslate Lapis, Concentrated Diamond | 22 | 11 |
| **Hot** | Pure Gold, Deepslate Pure Gold, Copper High, Copper Lower, Redstone, Deepslate Redstone | 20 | 15 |
| **Mountain** | High Emerald | 22 | 10 |
| **Rare** | Lower Emerald | 10 | 10 |
| **Tempered** | Iron, Deepslate Iron, Concentrated Coal | 23 | 23 |
| **All** | Deepslate Shard Diamond | - | - |

---

### 🔷 forge:any (Tous les biomes)
**Minerais** : Deepslate Shard Diamond Ore
- **TOUS** les biomes (vanilla + mods)
- **Se génère uniquement en profondeur (deepslate)**

---

### ❄️ cold_biomes (Biomes Froids)
**Minerais** : Lapis Ore, Deepslate Lapis Ore, Concentrated Diamond Ore

**Biomes Vanilla (22)** :
| Nom du Biome | Traduction |
|--------------|------------|
| snowy_slopes | Pentes enneigées |
| snowy_beach | Plage enneigée |
| snowy_plains | Plaines enneigées |
| snowy_taiga | Taïga enneigée |
| ice_spikes | Pics de glace |
| old_growth_pine_taiga | Taïga ancienne de pins |
| old_growth_spruce_taiga | Taïga ancienne d'épicéas |
| taiga | Taïga |
| cold_ocean | Océan froid |
| deep_cold_ocean | Océan profond froid |
| frozen_ocean | Océan gelé |
| deep_frozen_ocean | Océan profond gelé |
| frozen_peaks | Pics gelés |
| jagged_peaks | Pics déchiquetés |
| stony_peaks | Pics pierreux |
| dripstone_caves | Grottes de spéléothèmes |
| deep_dark | Deep Dark |
| frozen_river | Rivière gelée |
| grove | Bosquet |

**Biomes BOP (11)** :
| Nom du Biome | Traduction |
|--------------|------------|
| snowy_coniferous_forest | Forêt de conifères enneigée |
| snowy_maple_woods | Bois d'érables enneigés |
| snowy_orchard | Verger enneigé |
| snowy_fir_clearing | Clairière de sapins enneigée |
| alpine_foothills | Contreforts alpins |
| alpine | Alpin |
| snowy_tundra | Toundra enneigée |
| snowy_plains | Plaines enneigées |
| glacier | Glacier |
| ice_spikes | Pics de glace |
| icy_beach | Place verglacée |

---

### 🔥 hot_biomes (Biomes Chauds)
**Minerais** : Pure Golden Ore, Deepslate Pure Golden Ore, Copper High Ore, Copper Lower Ore, Redstone Ore, Deepslate Redstone Ore

**Biomes Vanilla (20)** :
| Nom du Biome | Traduction |
|--------------|------------|
| desert | Désert |
| badlands | Badlands |
| eroded_badlands | Badlands érodés |
| wooded_badlands | Badlands boisés |
| deep_lukewarm_ocean | Océan profond tiède |
| lukewarm_ocean | Océan tiède |
| warm_ocean | Océan chaud |
| mangrove_swamp | Marais de mangroves |
| bamboo_jungle | Jungle de bambous |
| jungle | Jungle |
| sparse_jungle | Jungle clairsemée |
| savanna | Savane |
| savanna_plateau | Plateau de savane |
| windswept_savanna | Savane balayée par le vent |
| basalt_deltas | Deltas de basalte |
| crimson_forest | Forêt écarlate |
| nether_wastes | Déserts du Nether |
| soul_sand_valley | Vallée de sable des âmes |
| warped_forest | Forêt distordue |
| deep_dark | Deep Dark |

**Biomes BOP (15)** :
| Nom du Biome | Traduction |
|--------------|------------|
| tropical_rainforest | Forêt tropicale |
| tropics | Tropiques |
| bayou | Bayou |
| arid_highlands | Hautes terres arides |
| scrubland | Broussailles |
| volcano | Volcan |
| wasteland | Terres désolées |
| wasteland_steppe | Steppe désolée |
| oasis | Oasis |
| outback | Outback |
| rocky_rainforest | Forêt tropicale rocheuse |
| rocky_shrubland | Broussailles rocheuses |
| seasonal_forest | Forêt saisonnière |
| temperate_rainforest | Forêt tempérée humide |

---

### ⛰️ mountain_biomes (Biomes Montagneux)
**Minerais** : High Emerald Ore

**Biomes Vanilla (22)** :
| Nom du Biome | Traduction |
|--------------|------------|
| windswept_hills | Collines balayées par le vent |
| windswept_gravelly_hills | Collines graveleuses balayées |
| snowy_slopes | Pentes enneigées |
| frozen_peaks | Pics gelés |
| jagged_peaks | Pics déchiquetés |
| stony_peaks | Pics pierreux |
| meadow | Prairie |
| extreme_hills | Collines extrêmes |
| extreme_hills_edge | Bord des collines extrêmes |
| extreme_hills_plus | Collines extrêmes plus |
| extreme_hills_plus_trees | Collines extrêmes arborees |
| modified_wooded_badlands_plateau | Plateau badlands boisé modifié |
| modified_badlands_plateau | Plateau badlands modifié |
| badlands_plateau | Plateau badlands |
| wooded_badlands_plateau | Plateau badlands boisé |
| eroded_badlands | Badlands érodés |
| modified_gravelly_mountains | Montagnes graveleuses modifiées |
| gravelly_mountains | Montagnes graveleuses |
| modified_gravelly_mountains_plus | Montagnes graveleuses plus modifiées |
| gravelly_mountains_plus | Montagnes graveleuses plus |
| sunflower_plains | Plaines de tournesols |

**Biomes BOP (10)** :
| Nom du Biome | Traduction |
|--------------|------------|
| highland | Hautes terres |
| highland_moor | Landes de haute altitude |
| alpine_foothills | Contreforts alpins |
| alpine | Alpin |
| mountain | Montagne |
| mountain_foothills | Contreforts montagneux |
| overgrown_cliffs | Falaises envahies |
| cliffs | Falaises |
| rocky_mountains | Montagnes rocheuses |
| rocky_peak | Pic rocheux |

---

### ✨ rare_biomes (Biomes Rares)
**Minerais** : Lower Emerald Ore

**Biomes Vanilla (10)** :
| Nom du Biome | Traduction |
|--------------|------------|
| mushroom_fields | Champignonnières |
| sparse_jungle | Jungle clairsemée |
| savanna_plateau | Plateau de savane |
| sunflower_plains | Plaines de tournesols |
| windswept_gravelly_hills | Collines graveleuses balayées |
| cherry_grove | Bosquet de cerisiers |
| flower_forest | Forêt fleurie |
| deep_dark | Deep Dark |
| old_growth_birch_forest | Forêt de bouleaux ancienne |
| ice_spikes | Pics de glace |

**Biomes BOP (10)** :
| Nom du Biome | Traduction |
|--------------|------------|
| rainbow_hills | Collines arc-en-ciel |
| origin_valley | Vallée d'origine |
| tropics | Tropiques |
| volcano | Volcan |
| mystic_grove | Bosquet mystique |
| bamboo_grove | Bosquet de bambous |
| jade_cliffs | Falaises de jade |
| visceral_heap | Tas viscéral |
| crystalline_chasm | Abîme cristallin |
| withered_abyss | Abîme flétri |

---

### 🌳 tempered_biomes (Biomes Tempérés)
**Minerais** : Iron Ore, Deepslate Iron Ore, Concentrated Coal Ore

**Biomes Vanilla (23)** :
| Nom du Biome | Traduction |
|--------------|------------|
| plains | Plaines |
| sunflower_plains | Plaines de tournesols |
| river | Rivière |
| beach | Plage |
| stony_shore | Rivage pierreux |
| birch_forest | Forêt de bouleaux |
| dark_forest | Forêt sombre |
| flower_forest | Forêt fleurie |
| forest | Forêt |
| old_growth_birch_forest | Forêt de bouleaux ancienne |
| windswept_forest | Forêt balayée par le vent |
| swamp | Marais |
| mushroom_fields | Champignonnières |
| cherry_grove | Bosquet de cerisiers |
| old_growth_pine_taiga | Taïga ancienne de pins |
| windswept_gravelly_hills | Collines graveleuses balayées |
| deep_ocean | Océan profond |
| ocean | Océan |
| lush_caves | Grottes luxuriantes |
| deep_dark | Deep Dark |
| dripstone_caves | Grottes de spéléothèmes |

**Biomes BOP (23)** :
| Nom du Biome | Traduction |
|--------------|------------|
| maple_woods | Bois d'érables |
| maple_forest | Forêt d'érables |
| orchard | Verger |
| flower_meadow | Prairie fleurie |
| deciduous_forest | Forêt de feuillus |
| deciduous_forest_cleared | Forêt de feuillus défrichée |
| shrubland | Broussailles |
| lush_grassland | Pâturage luxuriant |
| lush_swamp | Marais luxuriant |
| marsh | Marais |
| moor | Landes |
| bog | Tourbière |
| dead_forest | Forêt morte |
| dead_swamp | Marais mort |
| mediterranean_forest | Forêt méditerranéenne |
| mediterranean_woodland | Bois méditerranéen |
| dense_forest | Forêt dense |
| woodland | Bois |
| coniferous_forest | Forêt de conifères |
| fir_clearing | Clairière de sapins |
| spruce_woods | Bois d'épicéas |
| field | Champ |
| prairie | Prairie |

---

## Support Biomes O' Plenty

Le mod inclut un support complet pour **Biomes O' Plenty** avec des biome modifiers dédiés pour chaque catégorie :
- `cold_bop_biomes` (11 biomes)
- `hot_bop_biomes` (15 biomes)
- `mountain_bop_biomes` (10 biomes)
- `rare_bop_biomes` (10 biomes)
- `tempered_bop_biomes` (23 biomes)

Les minerais se génèrent automatiquement dans les biomes BOP correspondants à leur catégorie vanilla.

## Mécaniques de Jeu

### Génération du Monde

- **Distribution des minerais** : Utilise le système de biome modifiers de Forge avec des tags de biomes personnalisés
- **Profondeur** : Configurable pour chaque type de minerai via le fichier de configuration
- **Taille des filons** : Configurable via le fichier de configuration

### Mécaniques de Drop

Le mod utilise un système de drops configurable (`ConfigurableOreDropsProcedure`) :

- **Expérience** : Tous les minerais personnalisés dropent 2 orbes d'expérience (configurable)
- **Silk Touch** : Supporté - les minerais peuvent être minés avec l'enchantement Silk Touch
- **Fortune** : Supporté pour Shard Diamond Ore et Concentrated Diamond Ore (configurable)

### Caractéristiques des Blocs

- **Light Block** : 15 (les minerais bloquent la lumière)
- **Sound Type** : STONE
- **Resistance** : Variable selon le type (3f pour Concentrated Diamond/Coal, 1.3f pour Shard Diamond)
- **Requires Correct Tool** : Tous les minerais nécessitent l'outil approprié pour être minés

## Recettes de Craft

### Ore Biome Finder
```
[DiamantShard] [Compas] [DiamantShard]
[Compas]        [ ]       [Compas]
[DiamantShard] [Compas] [DiamantShard]
    = 1 Ore Biome Finder
```

### Diamant à partir d'Éclats
```
[Éclat] [Éclat] [Éclat]
[Éclat] [Éclat] [Éclat]
[Éclat] [Éclat] [Éclat]
    = 1 Diamant
```

### Outils en Diamond Shard
Les recettes suivent le pattern standard des outils Minecraft :
- **Pioche** : 2 Diamond Shards + 3 bâtons
- **Pelle** : 1 Diamond Shard + 2 bâtons
- **Hache** : 3 Diamond Shards + 2 bâtons

### Paxel en Diamond Shard
```
[Hache]  [Pelle]  [Pioche]
[Bâton]  [  ]     [Bâton]
    = 1 Paxel en Diamond Shard
```

### Armure en Diamond Shard
Les recettes suivent le pattern standard des armures Minecraft :
- **Casque** : 5 Diamond Shards
- **Plastron** : 8 Diamond Shards + 1 Diamant
- **Jambières** : 7 Diamond Shards + 1 Diamant
- **Bottes** : 4 Diamond Shards

## Commandes

### `/ores` ou `/ore`
Une commande permettant d'identifier les minerais présents dans le biome actuel.

**Utilisation** :
- Jouez uniquement (doit être exécutée par un joueur)
- Affiche les mêmes informations que l'Ore Biome Finder

**Informations affichées** :
- Nom du biome et ID (ex: `minecraft:plains`)
- Tags du mod applicables au biome (cold_biomes, hot_biomes, mountain_biomes, tempered_biomes, rare_biomes)
- Liste des minerais trouvables dans le biome actuel

**Exemple de sortie** :
```
=== Minerais dans: plains ===
Biome ID: minecraft:plains
Tags du mod: tempered_biomes
Minerais trouvables:
  * Charbon Concentre
  * Fer (stone)
  * Fer (deepslate)
  * Diamant Shard (deepslate)
  * Bloc Diamant Shard
```

## Intégration

### Mode Créatif
Le mod ajoute un onglet créatif personnalisé **"Custom Ore Gen"** contenant tous les items du mod :
- Tous les minerais (15 blocs - le minerai surface Shard Diamond est désactivé)
- Diamond Shards et Ore Biome Finder
- Tous les outils Diamond Shard (pioche, pelle, hache, paxel)
- Toute l'armure Diamond Shard (casque, plastron, jambières, bottes)

Les items restent également disponibles dans les onglets vanilla Minecraft :
- **INGREDIENTS** : Diamond Shards
- **TOOLS_AND_UTILITIES** : Outils et Ore Biome Finder
- **COMBAT** : Armure Diamond Shard

### Langue
Le mod inclut des fichiers de localisation en anglais (`en_us.json`) avec des noms descriptifs pour tous les blocs et objets.

## Configuration

Le mod inclut un système de configuration complet (`ModConfigs.java` avec `ConfigHelper.java`) qui permet aux utilisateurs et aux pack makers de personnaliser de nombreux aspects.

### Emplacement du Fichier de Configuration

Après le premier lancement du mod, un fichier de configuration est généré à :
```
config/custom_ore_gen-common.toml
```

### Options de Configuration

#### Génération des Minerais [ore_generation]
- **shard_diamond_ore** : Hauteur min/max, filons par chunk, taille des filons
- **concentrated_diamond_ore** : Filons par chunk, taille des filons
- **pure_golden_ore** : Filons par chunk, hauteur min/max
- **concentrated_coal_ore** : Filons par chunk
- **impure_ores** : Filons de fer/or par chunk
- **emerald_ores** : Filons high/lower par chunk
- **copper_ores** : Filons high/lower par chunk

#### Stats des Outils [tool_stats]
- **shard_diamond_tools** : Durabilité, vitesse, dégâts pour pioche, hache et pelle

#### Drops des Minerais [drops]
- **shard_diamond_ore** : Min/max drops, activation Fortune
- **concentrated_diamond_ore** : Min/max drops, activation Fortune
- **concentrated_coal_ore** : Min/max drops
- **pure_golden_ore** : Min/max drops
- **ash_coal_ore** : Min/max drops
- **impure_ores** : Min/max drops pour fer et or
- **oreExperience** : Expérience droppée par les minerais personnalisés

#### Activation des Fonctionnalités [features]
- **enableShardDiamondTools** : Active les outils en éclats de diamant
- **enableShardDiamondOre** : Active la génération du minerai d'éclats
- **enableConcentratedOres** : Active les minerais concentrés (Diamant, Charbon)
- **enableImpureOres** : Active les minerais impurs (Fer, Or)
- **enableAshCoalOre** : Active le minerai de charbon de cendre
- **enablePureGoldenOre** : Active le minerai d'or pur
- **enableCustomEmeraldOres** : Active les minerais d'émeraude personnalisés
- **enableCustomCopperOres** : Active les minerais de cuivre personnalisés
- **enableVanillaOreVariants** : Active les variantes de minerais vanilla

## Installation

1. Assurez-vous d'avoir Minecraft 1.20.1 installé avec Forge 47.3.0+
2. **Installez KubeJS** (OBLIGATOIRE) - Le mod ne fonctionnera pas sans KubeJS
3. Placez le fichier `.jar` du mod dans le dossier `mods` de votre installation Minecraft
4. Lancez le jeu avec le profil Forge
5. Le mod créera automatiquement le script KubeJS nécessaire au premier lancement

> **Important** : Ce mod nécessite KubeJS pour fonctionner. Le script de suppression des minerais vanilla sera créé automatiquement dans `kubejs/startup_scripts/custom_ore_gen_remove_vanilla_ores.js`.

## Architecture du Code

### Structure des Paquets

```
net.mcreator.customoregen/
├── CustomOreGenMod.java          # Classe principale du mod
├── OresCommand.java              # Commande /ores pour détecter les minerais
├── KubeJSIntegration.java       # Création automatique du script KubeJS
├── ShardDiamondArmorMaterial.java # Classe de matériau d'armure Diamond Shard
├── block/                        # Classes des blocs (15 minerais)
│   ├── SharddiamondblockoreBlock.java
│   ├── ConcentrateddiamondoreBlock.java
│   ├── ConcentratedcoaloreBlock.java
│   ├── PuregoldenoreBlock.java
│   ├── DeepslatepuregoldenoreBlock.java
│   ├── IronoreBlock.java
│   ├── DeepslateironoreBlock.java
│   ├── LapisoreBlock.java
│   ├── DeepslatelapisoreBlock.java
│   ├── RedstoneoreBlock.java
│   ├── DeepslateredstoneoreBlock.java
│   ├── CopperhighoreBlock.java
│   ├── CopperloweroreBlock.java
│   ├── HighemeraldoreBlock.java
│   ├── LoweremeraldoreBlock.java
│   └── DeepslatesharddiamondoreBlock.java
├── config/                       # Système de configuration
│   ├── ModConfigs.java          # Configuration Forge
│   └── ConfigHelper.java        # Helper pour la configuration
├── item/                         # Classes des items
│   ├── DiamondshardItem.java    # Item Diamond Shard (RARE)
│   ├── OreBiomeFinderItem.java  # Item Ore Biome Finder
│   ├── SharddiamondpickaxeItem.java
│   ├── SharddiamondshovelItem.java
│   ├── SharddiamondaxeItem.java
│   ├── SharddiamondpaxelItem.java    # Paxel (outil combiné)
│   ├── SharddiamondhelmetItem.java   # Casque en Diamond Shard
│   ├── SharddiamondchestplateItem.java  # Plastron en Diamond Shard
│   ├── SharddiamondleggingsItem.java   # Jambières en Diamond Shard
│   └── SharddiamondbootsItem.java      # Bottes en Diamond Shard
├── procedures/                   # Procédures et logique
│   ├── ConfigurableOreDropsProcedure.java  # Drops configurables
│   └── OreexperienceProcedure.java         # Drops d'XP
└── init/                         # Registres Forge
    ├── CustomOreGenModBlocks.java  # 15 blocs
    ├── CustomOreGenModItems.java   # Items + BlockItems
    └── CustomOreGenModTabs.java    # Onglets créatifs
```

### Classes Principales

- **CustomOreGenMod** : Point d'entrée du mod, gère l'initialisation et le réseau
- **KubeJSIntegration** : Crée automatiquement le script KubeJS de suppression des minerais vanilla au premier lancement du jeu
- **ShardDiamondArmorMaterial** : Classe de matériau d'armure Diamond Shard avec gestion des textures
- **OresCommand** : Commande `/ores` pour identifier les minerais du biome actuel
- **OreBiomeFinderItem** : Item utilisable pour détecter les minerais du biome (clic droit)
- **SharddiamondpaxelItem** : Paxel combinant pioche + pelle + hache en un seul outil
- **Sharddiamondhelmet/chestplate/leggings/bootsItem** : Armure en Diamond Shard
- **ModConfigs** : Configuration complète avec 4 sections (ore_generation, tool_stats, drops, features)
- **ConfigurableOreDropsProcedure** : Gère les drops des minerais avec support Fortune/Silk Touch
- **OreexperienceProcedure** : Gère les drops d'expérience lors du minage

## Philosophie du Mod

Custom Ore Gen est conçu pour :
- **Modifier la distribution des ressources** Minecraft avec de nouvelles variantes de minerais basées sur la température des biomes
- **Fournir une dépendance obligatoire à KubeJS** avec création automatique du script de suppression des minerais vanilla
- **Introduire une progression intermédiaire** à travers les Diamond Shards (outils et armure entre fer et diamant)
- **Offrir des outils d'exploration** avec l'Ore Biome Finder et la commande `/ores`
- **Proposer un outil tout-en-un** avec le Paxel en Diamond Shard (1000 durabilité)
- **Fournir une armure intermédiaire** entre fer et diamant (17 protection, 1060 durabilité)
- **Faciliter l'installation** avec création automatique des scripts KubeJS nécessaires
- **Supporter Biomes O' Plenty** avec 69 biomes supplémentaires classés par température
- **Fournir un onglet créatif dédié** regroupant tous les items du mod

## Changements de Version

### Version 2.1.5
- ✅ Ajout de l'armure complète Diamond Shard (casque, plastron, jambières, bottes)
- ✅ Ajout du Paxel Diamond Shard (outil tout-en-un : pioche + pelle + hache)
- ✅ Création d'un onglet créatif personnalisé "Custom Ore Gen"
- ✅ KubeJS est maintenant une dépendance obligatoire (le mod refuse de se lancer sans KubeJS)
- ✅ Création automatique du script KubeJS de suppression des minerais vanilla au premier lancement
- ✅ Nouvelle texture Diamond Shard (32x32 pixels)
- ✅ Correction des textures d'armure (plus de texture violette)
- ✅ Désactivation du minerai Shard Diamond en surface (seulement la version deepslate reste disponible)
- ✅ Amélioration du système de matériau d'armure avec `ShardDiamondArmorMaterial`

## Crédits

- **Auteur** : Aulyrius
- **Outil de développement** : MCreator (https://mcreator.net/about)
- **Site web** : https://lanro.eu
- **Framework** : Minecraft Forge 1.20.1 (version 47.3.0)

---

**Version** : 1.0.0
**Pour Minecraft** : 1.20.1
**Mod ID** : custom_ore_gen
**License** : Not specified
