Aller au contenu

4rno

Donateur
  • Compteur de contenus

    149
  • Inscription

  • Dernière visite

  • Jours gagnés

    3
  • Crédits

    3 [Faire un don]

Tout ce qui a été posté par 4rno

  1. 4rno

    Être autonome en Skript

    Merci ! Dans la même optique, moi-même et plusieurs autres personnes (actuellement @Angel_ et @The__V) sommes entrain de faire la liste des erreurs Skript, avec traductions et solutions ;) Voilà le lien: [Contenu masqué] 4rno
  2. 4rno

    Être autonome en Skript

    Bon bah alors ça ne te dérange pas si je reprends certaines de tes descriptions d'erreurs (et en ajoutant celles que tu n'a pas marqué) ? Comme ça il y aura une description complète de la plupart des erreurs possible ;) 4rno
  3. 4rno

    Être autonome en Skript

    @Mikioul @NaolShow Effectivement c'est pour ça que je me suis décidé à faire ce tuto (et sur le discord c'est pire, vu que t'as l'instantanéité qui leurs permettent de redemander un truc toutes les 2 minutes ^^)
  4. Bonjour/bonsoir ! Beaucoup énormément de gens demande de l'aide sur le forum ou bien sur le discord inutilement. Pas forcément des questions idiotes -bien qu'il y en a ^^- , mais qu'ils pourraient trouver par eux même, en expérimentant et en testant; c'est pourquoi j'ai décidé de faire ce tutoriel ;) - Installer/Configurer les outils nécessaires - Déjà pour commencer, on va installer/configurer tout ce qu'il faut pour pouvoir débugger/tester du code facilement ! Il y a -pour moi- plusieurs choses quasiment indispensable au développement Skript: Utiliser un éditeur de texte correct ! Exit les notes-blocs Windows et autres, faites place à quelque chose de performant et complet ! Selon moi, un "bon" éditeur de texte doit satisfaire plusieurs critères: Utilisation efficace des fonctions basiques: chercher/remplacer, indentation du code automatique, ... Affichage des caractères invisibles, à activer absolument car ça permet d'éviter des bêtes erreurs de tabulations/espaces mélangés au sein d'un même bloc de code Idéalement, une coloration syntaxique adaptée, ça aide également ^^ Que ce soit Sublime Text, Atom ou bien NotePad++ pour ne citer que les plus connus, chacun peut trouver son bonheur grâce à la multitude des éditeurs de textes existants. N'hésitez donc pas à en tester plusieurs pour vous faire votre propre avis ;) Le deuxième point important, c'est de posséder un serveur MC dédié au développement, local de préférence, pour pouvoir développer tranquillement, sans crainte de tout casser ^^ Sur ce serveur, je vous conseille d'installer Skript et ses addons habituels, mais également d'activer dans Skript les "effects commands" ! Cette option se trouve dans le fichier config.sk du dossier Skript, vous devez passer la ligne "enable effect commands" à "true", mais également la ligne "allow ops to use effect commands" à "true". Les "effect commands" sont une fonctionnalité de Skript vous permettant d'exécuter des effets directement à partir du chat de Minecraft, un peu comme les commandes. Pour cela, il vous suffit de mettre un point d'exclamation "!" au début de votre message. C'est très pratique pour tester des effets sans devoir écrire dans un fichier et recharger un script ;) Maintenant que l'on a tout configuré comme il faut, on peut voir quelques "bonnes pratiques", utile pour éviter de spammer le channel #aide du discord toutes les 2 minutes. - Écrire du code - Tout d'abord, si vous cherchez comment formuler quelque chose en Skript, je vous invite à tout d'abord effectuer un recherche sur SkUnity (et vérifiez les addons nécessaires !), dans la grande majorité des cas, vous y trouverez la réponse attendue. Sinon, vous avez également à votre disposition une quantité colossale de tutoriels et autres disponibles sur internet (et ce forum entre autre). il se peut également que la fonctionnalité recherchée ne soit pas implémentée tel quel dans Skript (ou ses addons). À ce moment, il est probable que ce soit possible de le faire de façon détournée (par exemple avec les NBT, très utiles eux aussi). Si par contre ce n'est pas la syntaxe qui vous bloque mais plus la logique de programmation, que vous n'arrivez pas à imaginer comment faire quelque chose, n'hésitez pas prendre une feuille de papier, un crayon et à imaginer une structure, une logique de programmation qui vous permettra d'arriver à vos fins. De plus, n'hésitez pas non plus à tester votre code (par exemple de légères variantes si la syntaxe n'est pas acceptée et que vous ne trouvez pas de documentation précise). - Débugger du code - Après une heure de travail acharné, Skript vous sort une montagne d'erreurs ? Ne vous inquiétez pas, la plupart du temps ce n'est que des bêtes erreurs de syntaxes faciles à corriger. Cependant, @Gaël Erhlich a déjà fait un tutoriel décrivant les différents messages d'erreurs. Skript ne vous sort plus d'erreurs, mais votre code ne fonctionne toujours pas ? Il est alors intéressant de placer à différents endroits du code des messages de debugs (Ex. des "broadcast" qui vont vous permettre de vous assurez que tout va bien jusque là). Cela vous permettra de voir précisément à quel endroit il y a un problème, et de ainsi pouvoir le résoudre efficacement. Si et seulement si, après avoir suivi les conseils de ce tutoriel, vous ne parvenez toujours pas à résoudre votre problème, les membres de Skript-MC peuvent vous être d'une aide utile, mais, pour ma part, je redirigerai désormais toute question bête ou peu évoluée vers ce topic ^^ 4rno
  5. Bonjour ! @AlexLew m'avait obligé demandé de présenter un petit système de traduction que j'avais imaginé pour l'aider dans l'optimisation de ses scripts, mais vu qu'il est impatient il l'a présenté lui même, en oubliant certains éléments (et optimisations :O). Voilà pourquoi je vous présente aujourd'hui un petit système de traduction amélioré. Bon alors on est pas dans la section tutoriel, et puis le code ne fait que 5 lignes, donc je vous décris pas chaque lignes de codes, mais plutôt son utilisation ! function MsgLang(id: text, p: player, arg: texts="NoValue") :: text: set {_content} to single value "ID.%{_id}%.%{lang::%{_p}%}%" get of "language.yml" loop (size of {_arg::*}) times: replace all "[%loop-value%]" in {_content} with {_arg::%loop-value%} return {_content} L'idée de base de cette fonction est de, en lui renseignant le joueur et un ID de texte, renvoyer le texte correspondant dans la langue du joueur (définie par {lang::%player%}). Toutes ces traductions vont être enregistrées au préalable dans un fichier au format YAML, en suivant cet exemple: ID: newjoin: FR: [1] a rejoint pour la première fois le serveur, dites lui bienvenue ! EN: [1] is a new player on the server, say him hello ! NL: [1] is een nieuwe speler op de server, zeg hem hallo ! jointeam: FR: Vous avez rejoint l'équipe [1] ! Vos équipiers sont [2]. EN: You joined the [1] team. Your teammates are [2]. NL: Je ben in de [1] ploeg. Jouwe teamgenoten zijn [2]. Donc comme déjà dit, ce système est légèrement amélioré dans le sens où vous pouvez utiliser des arguments/paramètres/champs personnalisés (appelez ça comme vous voulez) destinés à contenir une liste de joueurs, un timer, ... bref, une donnée variable ! En gros, dans votre fichier de traduction, vous pouvez inclure à des endroits des [1], [2], etc (utilisez en autant que vous voulez) pour dire à la fonction "À cet endroit là, je veux que tu utilises ce texte: ..." À ce moment là, vous indiquer en troisième argument de la fonction le ou les champs à compléter. Petite astuce, vous pouvez écrire directement la liste de "champs personnalisés" à passer sans utiliser de variables liste en utilisant: MsgLang(<id>, <player> , ("<première argument>", "<deuxième argument>", ...)) Cependant, ce système a quelques défauts, par exemple, dans le 2e texte "jointeam", il faudrait également traduire les couleurs des équipes disponibles... Voilà c'est tout, il ne vous reste plus qu'à créer un système pour définir la langue du joueur, par exemple avec une commande, et à compléter le fichier de traduction ! 4rno
  6. 4rno

    Message Skript Sur La Console

    Il te suffit de traduire le message ^^ [skript] Impossible d'enregister suffisamment vite les variables dans la base de données 'default', les performances du serveur peuvent en être impactés et beaucoup de variables seront perdues si le serveur crash (cet avertissement sera répété au plus une fois toutes les 10 secondes). T'as pas un code qui enregistre des variables en permanence ? C'est peu être la cause du problème... 4rno
  7. Bonjour, pour give des têtes custom en Skript tu as 2 possibilités: give "MHF_Golem" parsed as offline player's skull to player ou bien give player head with nbt "{SkullOwner:MHF_Golem}" to player (SkStuff nécessaire) 4rno
  8. 4rno

    Structures dans fichier yml

    Pour aider un peu, Sk-Schematic sauvegarde le type de bloc et sa position relave dans 2 variables listes: {struc::location.%player%.%nom de la structure%::*} et {struc::block.%player%.%nom de la structure%::*}; et les variables listes sont "liées" car elles ont le même index (permettant de faire correspondre le type d'un block et sa position). Cdlt, 4rno
  9. Bonsoir, visiblement, tu satures ton serveur au reload, plusieurs explications possibles: Un code ou autre trop gourmand en ressources système. As tu beaucoup de scripts sur ton serveur ? Pour trouver lequel fait crash ton serv, désactive les tous (en les renommant avec un tiret devant), et réactive les un par un, si tu ne sais pas pourquoi le script est si problématique, envoie le ;) Un bug de Skript/Addons, dans ce cas, écris un simple script (genre une commande qui t'envoie un message) et essaye de le charger. Cdlt, 4rno
  10. @PheonBest ton code ne fonctionnera pas correctement: si on t'as déjà tiré dessus, puis qu'on te tue à l'épée, le message annoncé sera incorrect... Si le tir est instantané (ou presque), on peut faire un rapide wait, puis supprimer la variable; sinon, on pourrait tester la cause des dégâts (je suppose qu'ils ne sont pas reconnus par Skript, donc "unknown").
  11. 4rno

    Probleme variable sur arg 1

    Bonjour, Ceci devrait fonctionner: command /bienvenu [<player>]: trigger: if arg 1 is not set: send "&6[Fantasya] &cVous devez précisez un nouveau joueur" to player if arg 1 is set: if {firstjoin::%arg-1%} is not set: make player execute command "/pay %arg 1% 5" broadcast "&6[Fantasya] &eDédicasse a %player% pour sa générosité :)" Cdlt, 4rno
  12. 4rno

    Demande d'aide pour débutant

    Bonjour, Oui c'est tout à fait possible ! :) Pour les commandes, tu peux en apprendre plus ici et là ! Pour les groupes, tu peux chercher sur la doc de SkUnity, c'est en anglais mais très complet ! Dans ton cas, il faudrait que tu crées la commande, puis, en fonction du groupe du joueur, tu lui envoies un message différent, tu dois donc chercher du côté des conditions pour les groupes ;) De plus, le forum de Skript-MC dispose d'une section Tutoriaux, tu devrais y trouver ton bonheur ! Cdlt, 4rno
  13. 4rno

    Aide Classement

    Bonjour, Tout d'abord, pour pouvoir classer, tu dois utiliser des variables listes (dans ton cas, tu remplace juste le "." de ta variable par "::"; du coup ça donne {luckyblock::%player%}). À partir de là, tu peux utiliser ce code ci: loop {luckyblock::*}: set {_list::%loop-index%} to loop-value loop {luckyblock::*}: set {_max} to 1000 clear {_max-index} loop {_list::*}: if loop-value-2 < {_max}: set {_max} to loop-value-2 set {_max-index} to loop-index-2 clear {_list::%{_max-index}%} add {_max-index} to {_top::*} send "Top:" loop {_top::*}: send "%loop-index%: %loop-value%" Dans ce code, tu as la variable {_top::%classement%} qui contient à chaque fois le nom du joueur correspondant. Cdlt, RebellCraft
  14. 4rno

    Enchantement

    Bonjour, Pour les enchantements, il existe 2 types différents: "enchantment" et "enchantment type". Le premier ne peux contenir qu'un enchantement (ex. sharpness, ...); alors que le second peut prendre également le niveau de l'enchantement. Je te conseille donc, lorsque tu déclares ta commande, d'utiliser ceci: command /enchant <enchantment type>: Cdlt, RebellCraft
  15. 4rno

    Tête d'animaux dans un GUI

    Bonjour, tu peux utiliser les têtes "MHF_" mises à dispositions par Mojang (il te suffit de faire apparaître des têtes de joueur avec le pseudo correspondant. Pour la liste des têtes disponibles, c'est là: [Contenu masqué] Cdlt, RebellCraft
  16. 4rno

    Experience

    Bonjour, pour l'xp du joueur, dans ton cas il faut utiliser l'expression "player's level" qui correspond au niveau d'xp que dispose le joueur (et non "player's xp" qui correspond au nombre d'orbes absorbées d'un joueur). Tu peux utiliser "add <number> to player's level" et "remove <number> from player's level" pour ajouter et retirer des niveaux d'expérience au joueur. En espérant que ça puisse t'éclairer, 4rno
  17. 4rno

    Un commande avec une pancarte

    Oui je viens de tester sans être op. Ah bah si t'es en 1.8... Teste toujours les addons que je t'ai passé, si ça fonctionne tant mieux x')
  18. 4rno

    Un commande avec une pancarte

    @Niromash Ben chez moi ça fonctionne sans problème : [ATTACH=full]5617[/ATTACH] Au cas où, voici les addons: [Contenu masqué]
  19. 4rno

    Un commande avec une pancarte

    @Niromash j'ai donné les addons nécessaires, wildskript ou skutilities en fonction de la syntaxe
  20. 4rno

    Probleme bungee

    Bonsoir, pourquoi ne pas simplement tester if amount of players in world "world" <= 249: C'est plus simple non ?
  21. 4rno

    Problème loop-player

    C'est normal, tu as mis un "stop", il va donc loop un seul joueur, puis s'arrêter et ne jamais loop les autres... Retire le ou décale le d'une tabulation (ou de 4 espaces) vers la gauche, il n'y aura plus de problèmes ;) 4rno
  22. @sam57730 dans certains cas skript peut faire chier si tu demandes des integers dans des fonctions, genre quand tu utilises le résultat d'un calcul. Là ça va car tu donnes directement le nombre, ou tu réutilises directement l'argument de la commande qui lui est un integer; mais dans d'autres cas ça peut poser des problèmes... 4rno
  23. 4rno

    No scripts were found

    Mais... t'avais réussis à l'installer juste avant ?!? Je comprends plus x')
  24. 4rno

    No scripts were found

    Il faut Wildskript (si tu l'as pas va là -> [Contenu masqué] )
  25. 4rno

    No scripts were found

    Bonjour, Es tu sûr que tes fichiers ne sont pas nommés en .sk.txt ou quelque chose du même style ? Pour voir quels sont les fichiers dans plugins -> Skript -> scripts tu peux utiliser le skript qui est attaché à ce message (le "unix" pour macos et linux; et windows pour... windows. Il y a 2 versions car pour indiquer un sous fichier, sous windows c'est \ et sous les autres c'est / ) Là au moins tu sera fixé ;) 4rno
×
×
  • 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.