> For the complete documentation index, see [llms.txt](https://wiki.novadev.ovh/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://wiki.novadev.ovh/novashard/3.-features.md).

# 3. features

## Solde de shards

Chaque joueur possède un portefeuille de shards persistant, sauvegardé en base de données (SQLite ou MySQL).\
Le solde est chargé à la connexion et sauvegardé à la déconnexion.

**Commande :** `/shards balance` - affiche votre solde actuel.

> `/shards` sans argument affiche la page d'aide du plugin (version, licence, liste des commandes).

## Gains automatiques

Les joueurs peuvent gagner des shards de plusieurs façons :

### Temps de jeu (Playtime)

Des shards sont attribués automatiquement toutes les X heures passées en ligne.

### PvP (Kills)

Un joueur gagne des shards en éliminant un autre joueur.\
Un cooldown de 24 heures par victime évite les abus.

### Mode AFK

Les joueurs placés en mode AFK (via `/afk`) gagnent des shards à intervalle régulier, tant qu'ils restent au point AFK.

### Régions WorldGuard *(optionnel)*

Si WorldGuard est installé, des shards peuvent être attribués aux joueurs présents dans des régions spécifiques.\
Chaque région a son propre montant et intervalle, configurés dans `config.yml`.

### Grades *(optionnel)*

Des shards peuvent être attribués selon le grade (permission) du joueur.\
Seul le grade de plus haute priorité est pris en compte - pas de cumul.

## Récompense quotidienne

À chaque connexion, les joueurs reçoivent une récompense journalière.\
Un **système de série** (streak) permet d'augmenter le multiplicateur au fil des jours consécutifs.

* Trois niveaux de difficulté disponibles : `easy`, `mid`, `hard`
* Le multiplicateur augmente tous les N jours selon le niveau choisi
* La série est réinitialisée si le joueur ne se connecte pas dans les temps

## Boutique

Interface graphique (GUI) accessible via `/store`.\
Les admins peuvent ajouter, modifier et retirer des items directement en jeu sans redémarrage.

Les items affichent leur prix en shards et peuvent avoir un nom et un lore personnalisés.

## Transferts

Les joueurs peuvent s'envoyer des shards via `/transfer <joueur> <montant>`.\
Une interface de confirmation s'ouvre avant que le transfert soit effectué.\
Le transfert vers soi-même est bloqué.

## Classement

Un classement paginé des joueurs les mieux classés en shards, accessible via `/leaderboard [page]`.

## PlaceholderAPI

Si PlaceholderAPI est installé, trois placeholders sont disponibles pour vos scoreboards, holograms et menus.\
Voir \[8. placeholderapi.md]\(8. placeholderapi.md) pour les détails.

## Noms de commandes configurables

Toutes les commandes et sous-commandes peuvent être renommées dans `config.yml` (sections `commands` et `subcommands`).\
Utile pour éviter les conflits avec d'autres plugins ou adapter les noms à votre serveur.

> Les sous-commandes `about` et `help` sont toujours disponibles et ne peuvent pas être renommées.\
> Un redémarrage est nécessaire pour que les changements prennent effet.

## Gestion admin avancée

### Redéfinir le solde d'un joueur

La commande `/shards set <joueur> <montant>` permet à un admin de forcer le solde d'un joueur à une valeur exacte (contrairement à `give`/`remove` qui ajoutent ou retirent).

L'option `-s` (silent) supprime la notification envoyée au joueur :

```
/shards set Steve 500     → définit le solde à 500, Steve est notifié
/shards set Steve 500 -s  → définit le solde à 500, Steve n'est pas notifié
```

### Configuration en jeu

`/novashard configure` permet aux admins de modifier les paramètres du plugin directement depuis le jeu, sans éditer de fichier.

* Sans argument : affiche les paramètres paginés (8 par page)
* Avec un numéro : navigue vers cette page (`/novashard configure 2`)
* Avec une clé : affiche la valeur actuelle (`/novashard configure earning.playtime.amount`)
* Avec une clé et une valeur : modifie et sauvegarde immédiatement

```
/novashard configure                              → page 1
/novashard configure 2                            → page 2
/novashard configure earning.playtime.amount      → affiche la valeur
/novashard configure earning.playtime.amount 5    → modifie
```

Les modifications sont sauvegardées dans `config.yml` à la volée, sans redémarrage.

## Autocomplétion (Tab)

Toutes les commandes du plugin bénéficient d'une autocomplétion intelligente :

* `/shards` + TAB → affiche les sous-commandes disponibles ainsi que toutes les autres commandes du plugin
* `/shards give` + TAB → liste les joueurs en ligne
* `/shards set` + TAB → joueurs, montants suggérés, puis `-s`
* `/novashard` + TAB → sous-commandes + toutes les commandes du plugin
* `/novashard configure` + TAB → liste les clés configurables, puis `true`/`false` ou valeur actuelle

## Stockage

NovaShard supporte deux backends :

* **SQLite** - fichier local, aucune configuration requise (défaut)
* **MySQL** - base de données distante, pour les réseaux multi-serveurs

Le backend peut être changé à chaud via `/novashard reload` si le type est modifié dans `config.yml`.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://wiki.novadev.ovh/novashard/3.-features.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
