Aller au contenu

Classement


Contenu populaire

Affichage du contenu avec la meilleure réputation depuis le 09/07/22 dans toutes les zones

  1. 1 point
    Suite à une forte augmentation de l'intérêt porter à MongoDB au sein de la communauté FR de Skript j'ai décidé de faire ce petit tuto pour vous expliquez étape par étape comment setup votre serveur MongoDB. Avant de commencer : - Ce tuto n'est disponible que pour les plateformes Debian 10/11 - Il ne traiterais que l'installation de l'édition communautaire - Ce tuto est inspiré de l'article disponible à cette adresse : ici - Pour allez plus loin ça se passe ici : Documentation MongoDB - Les fonctions avancées de permission ne sont pas abordé - Ce tuto sera mis à jour si des maj importantes sont publiées par l'équipe de MongoDB - Cette installation supporte les panel type Ptero ou Puffer. Pour toute demande je suis disponible sur discord : Hecate#0667 C'est parti Installer le cluster sur la machine Avant de commencer installons les outils nécessaires à l'installation de MongoDB sudo apt install wget curl gnupg software-properties-common apt-transport-https ca-certificates lsb-release Importons la clé GPG nécessaire curl -fsSL [Contenu masqué] gpg --dearmor -o /etc/apt/trusted.gpg.d/mongodb-6.gpg On ajoute les repos de mongo à notre source.list Debian 11 echo "deb [Contenu masqué] bullseye/mongodb-org/6.0 main" | sudo tee /etc/apt/sources.list.d/mongodb-org-6.0.list Debian 10 echo "deb [Contenu masqué] buster/mongodb-org/6.0 main" | sudo tee /etc/apt/sources.list.d/mongodb-org-6.0.list Plus qu'a effectuer une petite mise à jour de la liste des packages sudo apt update Installons MongoDB sudo apt install mongodb-org Activez MongoDB systemctl start mongod Félicitation vous venez de setup un serveur MongoDB sur votre VPS Installer un service est une chose, le configurer en est une autre. Il est maintenant l'heure de configurer MongoDB Créer un utilisateur root On se connecte à la base via l'utilitaire mongosh (L'interface classique de linux risque de changer ne paniquez pas) mongosh 127.0.0.1:27017 On se place dans la base admin use admin On créé un utilisateur root db.createUser({ user: "AdminCharismatique" , pwd: "monsuperpassword", roles: ["root"]}) (Configurer les paramètres user et pwd. Pour les mot de passe n'utilisez pas de caractères spéciaux sur une base local , la raison vous sera expliquez plus tard) Génial nous avons créé un utilisateur root, il est l'heure de se connecté à notre base distante Visualiser sa base avec Mongo DB Compass Pour cela nous allons utiliser le logiciel MongoDB Compass facilement trouvable en ligne A votre première ouvertures cette interface vous sera proposé. Déroulez les options avancées et éditez le connection string. Parfait, éditons le string de connexion mongodb://utilisateur:[email protected]:27017/ (Remplacez simplement les informations par les votres. Malheureusement MongoDB Compass ne supporte pas les caractères spéciaux) Le Tunnel SSH, votre allié contre le VPN Rentrons dans une partie un peut plus technique, par défaut MongoDB écoute sur le port 27017 et accepte uniquement les requêtes provenant de l'adresse de loopback (127.0.0.1). Cette configuration est en soit la plus sécuriser qu'il vous est possible de faire avec un simple VPS. Nous allons donc créer un tunnel SSH entre votre PC et votre VPS pour vous permettre d'atteindre votre base de donnée sans ouvrir de port supplémentaire, pas de panique c'est extrêmement simple Dans la section avancé, rendez vous dans la catégorie PROXY/SSH puis dans SSH with Password : Vous pouvez saisir les informations de connexion SSH fournie par votre hébergeur N'oubliez pas de sauvegarder votre configuration Et voilà ! Votre Client MongoDB Compass peut maintenant atteindre votre base de donnée sans avoir besoin d'ouvrir un port Pterodactyl Pour les personnes utilisant Pterodactyl il vous sera impossible en l'état de joindre votre base MongoDB via MongoSK sans configurer la bind adress. Cela vient du fait que Pterodactyl conteneurise vos serveur, il ne partage donc pas la même adresse de loop back. Pour rendre MongoDB compatible avec Pterodactyl éditez la config de MongoDB nano /etc/mongodb.conf Il ne vous reste plus qu'a éditez le champ : bindIp et remplacé 127.0.0.1 par 172.18.0.1 N'oubliez pas de modifier dans votre string de connexion par l'adresse précédemment modifier ! GNU nano 5.4 /etc/mongod.conf # mongod.conf # for documentation of all options, see: # [Contenu masqué] # Where and how to store data. storage: dbPath: /var/lib/mongodb journal: enabled: true # engine: # wiredTiger: # where to write logging data. systemLog: destination: file logAppend: true path: /var/log/mongodb/mongod.log # network interfaces net: port: 27017 bindIp: 172.18.0.1 # how the process runs processManagement: timeZoneInfo: /usr/share/zoneinfo #security: #operationProfiling: #replication: #sharding: ## Enterprise-Only Options: #auditLog: #snmp:
  2. 1 point
    Salut, je crois que l'utilisation directe de %uuid of player% ne fonctionne pas et r'envoie <none>, et il ne semble pas aimer essaye ça : on join: set {_uuid} to uuid of player load yaml "plugins/PlayerData/Global/%{_uuid]%.yml" as "Global_data-%{_uuid}%"
  3. 1 point
    Salut à toi et bienvenue sur ce tutoriel ! Dans ce post je vais te faire découvrir ou t'apprendre les listes. Premièrement, une liste est un "tableau", ou vous renseignez une id et une valeur (donnée). Je vous montrerai : I. Représentation codée d'une liste II. Comment add une donnée à votre tableau III. Comment delete une donnée de votre tableau IV. Comment lister votre tableau V. Conditions de listes VI. Comment générer une entrée aléatoire de votre tableau VIII. Comment supprimer votre tableau IX. Conclusion I. Représentation codée d'une liste. Pour utiliser une liste dans votre code, une liste se présente comme cela: {liste::*} -> Comme une variable, a laquelle on ajoute "::" après la premiere "partie" de variable, qui ici est "liste". Si l'on met une étoile ("*"), toutes vos entrées (chaque ligne du tableau, pour reprendre la représentation) sont concernées. Si l'on met {liste::uneentrée}, alors c'est votre entrée "uneentrée" qui sera concernée. II. Ajout de donnée à un tableau. Premièrement, nous allons ajouter une entrée à notre tableau. Pas besoin d'un effet pour créer ce tableau, il existe a partir du moment ou vous ajoutez une entrée. Exemple : j'ajoute une entrée de type texte à mon tableau (liste): Cela donne ( en ligne d'effet ) : add "Hello" to {mots::*} Donc ici, on créer une nouvelle ligne avec comme valeur "Hello". III. Retirer une donnée d'un tableau Ensuite, nous allons retirer une entrée à notre tableau. Pour retirer cette entrée, nous allons faire: Cela donne (en ligne d'effet ) remove "Hello" from {mots::*} Comme cela, on retire la ligne qui porte la valeur "Hello" dans la liste "mots". IV. Lister notre tableau Ici, en reprenant toujours en encore notre même liste "mots", nous voulons lister, simplement ce tableau. Comment allez vous me dire ? Je vais vous montrer 2 types d'affichage de listes. La première, la plus simple, comme mon ami @imSizk vous l'a sûrrement expliquée, est, l'affichage comme une variable : send "%{mots::*}% Une méthode plus poussée, que j'utilise utilise la notion de loop. Je ne l'ai pas encore expliquée mais ne cherchez pas, lisez juste ce que je vous dit ;) Donc, pour listez correctement notre tableau, on va utiliser le loop. Cela se déroule sous cette forme : loop {mots::*}: send "%loop-index% -> %loop-value%" De cette manière, on va nous dire "numéro de la ligne -> valeur de la ligne" V. Génération aléatoire d'une ligne de la liste Pour générer quelque chose d'aléatoire, il vous suffit d'avoir cet effet : set {_donneealéatoire} to a random element of {mots::*} Ici on met la variable temporaire "donnealéatoire" sur un élément aléatoire de la liste "mots". VI. Conditions de liste Pour les conditions de liste, certains mon posés la question : "C'est bien les listes, mais comment je fais pour savoir si une donnée est déjà mise dans la liste ?". Donc je vais vous répondre ici ! : Pour voir si une donnée est déjà rentrée, une donnée ajoutée à la liste est "mise" dans la liste, donc elle "existe" dans la liste. Pour ce faire voici une condition : if {mots::Hello} is set: send "Hello" Chose très bête hein ^^ Mais vous pouvez remplacer le "Hello" dans la condition par un "%arg-1%" s'il s'agit d'une commande. VII. Supprimer une liste Après tout ça et en chapitre "final" du tutoriel, je vous propose de voir un effet qui vous permettre de remettre à zéro une liste. Voici l'effet concerné : clear {mots::*} L'effet "clear" vous permet de nettoyer votre liste. Et, comme je vous l'ai dit précédemment, une liste sans ligne est une liste nule, donc inexistante, donc elle est supprimée ! VIII. Conclusion Les listes sont, pour moi une des choses les plus importantes dans Skript, vous pouvez ajouter des informations, les récupérer les supprimer, etc... (Je vous invite à voir l'algorithme conçu à l'ajout automatique de données dans une liste en cliquant ici) Merci à vous d'avoir suivi ce tutoriel, n'hésitez pas à mettre un like pour m'encourager à vous faire des tutos complets ! :) Cordialement, Hugo / Azen.
  4. 1 point
    Bonjour, aujourd'hui je vais vous montrer comment mettre le nombre de personnes connectées sur un serveur dans une variable, cela marche pour les serveurs BungeeCord et tout les autres. Le codes est simple: Command /infox: trigger: set {_g} to text from "[Contenu masqué]" send "&7Nombre de joueurs connéctés sur &eEpiCube&7: %{_g}%" Voici un exemple en mettant l'IP d'Epicube:
  5. 1 point
    On right-click on diorite: if player has permission "eboueur": # Tu rajoutes cette permission au groupe éboueur if {e::*} contains location of event-block: message "&cÉboueur &4> &cCette poubelle est vide stop add location of event-block to {e::*} give flint named "&8Sac poubelle plein" to player message "&6Éboueur &2> &6Vous avez récupérer un sac poubelle plein ! wait 10 minutes remove location of event-block from {e::*} stop message "&cÉboueur &4> &cTu n'es pas éboueur ! Tu ne peux donc pas fouiller les poubelles" Voili voilou, n'hésite pas à mettre un piti coeur si tu penses que je le mérite !
  6. 1 point
    Merci finalement je suis partit sur un plugin "ShopGui+" malgré que sa soit payant je n'en suit pas déçu ! Merci pour ton aide ( crée un tout petit shop en skript oui, mais un qui fait tous c'est énorme comme investissement )
  7. 1 point
    Bonjour, aujourd'hui je vais vous apprendre à faire des barres de progression facilement avec un tout petit peu de mathématique. L'utilité d'une barre de progression ? Montrer la progression de tel ou tel objectif sur son maximum Exemple d'utilisation : Barre d’expérience, Barre de chargement [ATTACH=full]3453[/ATTACH] Donc pour créer un barre de progression il va nous falloir 2 éléments indispensables: La valeur "actuelle" et la valeur maximum. Pour faire un exemple on va dire que j'ai un système d'augmentation de level avec un certain nombre d'xp que l'on gagne en tuant des mobs: Je vais avoir une variable {Xp.%player%} et {Level.%player%}. De plus je vais définir le nombre d'xp nécessaire pour augmenter de level : 80 ici. Pour créer ma barre de progression à partir de ces 3 éléments je vais devoir aussi définir l'échelle de ma barre par exemple 10,20,50,75,100.... on va prendre 20 ici. Donc pour comprendre le petit calcule mathématique: C'est simple on va calculer le pourcentage de la valeur actuelle sur la valeur max : set {_1} to ({Xp.%player%}/80) A partir de ce pourcentage on va calculer la valeur qu'il représente sur notre échelle Je m'explique : On va dire que j'ai 5 xp donc {Xp.%player%} = 5 Le calcule: "set {_1} to (5/80)" va donné "{_1} = environ 0.06" 0.06 veut dire que nous avons atteint 6% de l'objectif (80) On va rapporter cette progression 6% sur notre échelle 20 set {_1} to rounded down ({_1} * 20) Le calcule: "set {_1} to rounded down (0.06/20)" va donné "{_1} = environ 1.2" --> 1.2/20 Après avoir cette donnée il ne reste plus qu'a créer la barre: Il va falloir mettre 1 barre verte (1.2 arrondi) et 19 barres rouge set {_total} to "" loop {_1} times: ----> 1 set {_total} to "%{_total}%&a▋" ----> On ajoute une barre verte loop (20 - {_1}) times: ----> 20 - 1 = 19 set {_total} to "%{_total}%&c▋" ----> On ajoute une barre rouge message "&eVotre progression &7[%{_total}%&7] Résultat pour {Xp.%player%} = 5: [ATTACH=full]3455[/ATTACH] Résultat pour {Xp.%player%} = 57: [ATTACH=full]3456[/ATTACH] Code complet avec des options pour plus de facilité : options: Max: 100 Echelle: 20 Logo: ▋ valeur: {Xp.%player%} command /barre: trigger: set {_1} to ({@valeur}/{@Max}) set {_1} to rounded down ({_1} * {@Echelle}) set {_total} to "" loop {_1} times: set {_total} to "%{_total}%&a{@Logo}" loop ({@Echelle} - {_1}) times: set {_total} to "%{_total}%&c{@Logo}" message "&6>> &a{@valeur}&e/&a{@Max} &4- &7[%{_total}%&7]"
  8. 1 point
    C'est plutôt simple en fait : set {_SlotNo} to 0 while {_SlotNo} is less than 40: set {Inventaire.%player%::%{_SlotNo}%} to slot {_SlotNo} of player add 1 to {_SlotNo} set {_SlotNo} to 0 while {_SlotNo} is less than 40: set slot {_SlotNo} of player to {Inventaire.%player%::%{_SlotNo}%} add 1 to {_SlotNo} Tu attribues un numéro de la liste à un numéro de slot et tu remplis, où tu fais l'opération inverse.
  9. 1 point
    Pourquoi ne pas utiliser WorldGuard ? ^^
  10. 1 point
    Je ne sais plus si le code est exact et est toujours d'actualité mais un jour j'ai utilisé ceci qui a très bien marché: on death of player: heal player by 255 hearts execute console command "/spawn %player%"
  11. 1 point
    Bonjour, En réponse à votre demande, je vous présente Beautiful Tab List, un petit script permettant d'afficher un message personnalisé dans la liste des joueurs (TAB). Configuration: Tous les messages sont éditables, il suffit de modifier la catégorie "options". Commandes et Permissions: /beautifultablist refresh ou /btl refresh Permet de rafraichir la liste de tous les joueurs. permission: skript.beautifultablist Droits: Vous êtes autorisés à utiliser et modifier ce script comme bon vous semble, mais s'il vous plait, ne le republiez pas, donnez plutôt le lien vers ce sujet. De plus, je vous demanderai de bien vouloir me laisser le crédit de la création de ce script. [spoiler=Beautiful Tab List] # SKRIPT - BeautifulTabList # # # # Description: Permet d''afficher un message personnalisé # # dans la liste des joueurs (TAB). # # Auteur: The__V # # Dependances: Skript, WildSkript, SkRayFall # options: tabHeader: "&5Bienvenue sur %server name% %loop-player%" tabFooter: "&7&oEn ligne: &d%amount of players%&7/&5%max players%" refreshLog: "[beautifulTabList] Raffraichissement des tabLists terminé avec succès." refreshNotif: "&7[&b&lBeautifulTabList&r&7] &bRaffraichissement des tabLists terminé avec succès." On Skript Start: execute console command "/beautifultablist refresh" On Join: execute console command "/beautifultablist refresh" On Quit: execute console command "/beautifultablist refresh" command /beautifultablist refresh: aliases: btl description: Permet de rafraichir les tabLists de tous les joueurs. Requis en cas modification des messages. permission: skript.beautifultablist executable by: console and players trigger: loop all players: set tab header to {@tabHeader} and footer to {@tabFooter} for loop-player wait 1 tick log {@refreshLog} if command sender is not console: message {@refreshNotif} to the command sender
×
×
  • Créer...

Information importante

Nous avons placé des cookies sur votre appareil pour aider à améliorer ce site. Vous pouvez choisir d’ajuster vos paramètres de cookie, sinon nous supposerons que vous êtes d’accord pour continuer.