-
Compteur de contenus
710 -
Inscription
-
Dernière visite
-
Jours gagnés
59
Type de contenu
Profils
Forums
Téléchargements
Tout ce qui a été posté par Vengelis_
-
W.B.P.S. - WorldBorder Program System
Vengelis_ a posté un fichier dans Gestion de monde (worledit, ...)
Version 1.0.1.2
22 téléchargements
Version : 1.0.1.2 C'est quoi WBPS ? WBPS est un skript qui va vous permettre de gérer les worldborders de manière automatique de vos mondes PlotSquared. Comment fonctionne WBPS ? C'est très simple, le screen ci-dessous vous expliquera tout: Assurez vous d'être au centre de votre plot centrale quand vous faites /wbps setcenter ! Les configurations sont-elles modifiables ? Il n'y a aucune configuration ! Tout peut se faire par commande ! (Sauf le coefficient de plot libre qui est défini en option sur le skript. Laissez le à 90 c'est très bien) J'ai besoin de quels add-ons ? - Skript 2.2 (dev-36 minimum) - SkQuery - MundoSk - SkUniversal (2.5 impérativement !) A savoir: C'est un skript que j'ai fait pour un pote mais je vous le partage ^^ N'hésitez pas à donner des retours ! Amusez vous bien ! Vengelis_ -
Résolu ?
-
Le giant est mob boss rajouté à minecraft mais ses fonctionnalités n'ont jamais été ajoutées. Il est donc passif.
-
Tu fais avec un while: on script load: set {loaded} to true set {ClicPosJoinPvP} to position 296.500, 76, 303.500 in world "world" spawn 1 armor stand at {ClicPosJoinPvP} add "{Invisible:1b,NoBasePlate:1b,ShowArms:1b,Equipment:[{},{},{},{},{id:minecraft:diamond_block}]}" to nbt of last spawned entity set {x} to -360 while {loaded} is true: wait 1 tick add "{Pose:{Head:[0f,%{x}%f,0f]}}" to nbt of last spawned entity add 3 to {x} on unload: delete {loaded} loop all entities in radius 1 around {ClicPosJoinPvP}: loop-value is not a player delete loop-entity
-
inactif ✖ ATM configurable sans SkQuery
Vengelis_ a répondu à un(e) sujet de MasterPNJ dans Inactifs
Comme dit précédemment pour faire du moddé avec des plugins, passe à la 1.12.2 avec Atom ou CatServer. Thermos 1.7.10 est un remake un peu plus opti de cauldron mais outdated en plus d’être abandonné. Tout les mods en 1.7.10 sont aussi en majorité en 1.12.2, tu retrouveras une meilleure stabilité entre serveur et mods. Tu auras aussi plus de choix avec skript car tu auras des versions plus récentes du plus et de ces addons. Que du plus et je pense que ça réglera aussi ton soucis de « crash ». -
Faut que je te l’adapte car il est pas fini mais je pense te le donner dans la fin de la semaine. Ou le veux tu comme tel maintenant ?
-
Je sais pas si c’est fait en armor stand l’animation ou si c’est juste un item en lévitation. Je vais voir pour essayer de faire un truc mais je garantis rien
-
Le sujet a été résolu. Il a donc été verrouillé. Cordialement, l'équipe.
-
CheatChecker - Vélocity (AntiKB) | 100% FIABLE
Vengelis_ a donné son avis sur un(e) fichier de iSwiftness_ dans Correctifs (anti-cheat, anti-lag, ...)
Je comprend pas pourquoi utiliser des random integer quand on peut faire une simple équation de vitesse. L'équation elle est simple: Vitesse = Distance/Temps. Juste ça c'était suffisant pour rendre le script un peu plus crédible et faut pas être bac + 7 pour faire une équation de vitesse. Ça s'apprend au collège.- 2 commentaires
-
- funcraft cc v
- funcraft
-
(et 3 en plus)
Étiqueté avec :
-
Version de Minecraft : test Version de Skript : test Type du skript : test Description du script : test
-
Merci de lire ce topique avant de commencer à poster: Règlement de section Cordialement
-
Système de log hors du dossier Skript
Vengelis_ a répondu à un(e) sujet de Lou' dans Fragments codes
Stop les hors sujets et on reprend le fil de la discussion normalement. Le topique n'était pas destiné à faire débat sur quel est l'addons le mieux ou parce que machin à fait ça pub mais plutôt pour avoir des retours sur la fonction et comment l'améliorer -
Petit script complet et efficace. J'ai vu que tu as utilisé les variables listes alors quoi avoir fait des variables simples (CF: {kit.%{_slot}%.%arg-2%} ) ? Tu pouvais là aussi utiliser des variables listes qui sont plus légère à rappeler en mémoire. Petite comparaison car j'ai fait un test: 1 000 000 de variables listes aléatoires prennent 1,6Go de RAM en stockage et met 7.71 à se faire supprimer avec un processeur I5-7400 donc tu peux y aller xD
-
L'équipe vous annonce que le topique a été verrouillé pour éviter de "déterrer une tombe". Cordialement.
-
CourbeSk - Génération de courbe quadratique minecraft
Vengelis_ a posté un fichier dans Mécanisme (système sans fil, ...)
Version 0.0.2.0
27 téléchargements
C'est quoi ? CourbeSk est un script qui va vous permettre de tracer des courbes paraboliques dans minecraft avec 1 commande. Le script rajoute aussi une fonction que vous allez pouvoir implémenter pour générer automatiquement une courbe type f(x) = -ax²+b Pour ceux qui veulent plus de détails, voici mon tutoriel sur la génération en question: Skript-Mc Tutoriel Courbes Quadratiques Comment on utilise le script ? Vous avez deux possibilités d'utilisation: - Avec des commandes: - /start -> Poser le point de départ du traçage de la courbe - /end -> Poser le point d'arrivée de référence du traçage de la courbe - /courbe -> Tracer la courbe - Avec la fonction: - traceParabole(<position d’exécution du départ>, <Coordonnée X de la position du départ>, <Coordonnée X de la position d'arrivée>, <Coordonnée Z de la position du départ>, <Coordonnée Z de la position d'arrivée>, <exécuteur>, <true (activer les retours par messages)/false>) Ça donne quoi au final ? Ça donne quelque chose du genre par exemple Quels sont les add-ons requis ? - Skript 2.2dev36 (au minimum) et rien de plus ! Je vous laisse me dire par review ce que je peux rajouter plus tard ^^ Ce skript sera implémenté dans AFR probablement. Bon jeu à vous ! -
Générer des courbes type f(x)=-x² Difficulté: Partie 1: Difficile | Partie 2: Expert Partie 1 - Les bases mathématiques Une équation du second degrés c'est quoi ? En mathématiques, une équation du second degré est une équation polynomiale de degré 2, c'est-à-dire qu'elle peut s'écrire sous la forme: ax² +bx+c (a,b et c sont des paramètres coefficient dont a différent de 0 et x l'inconnue) Les équations du second degrés sont représentées sur un graphique de la manière suivante: y est appelé "équation de courbe" x1 et x2 représente les deux solution en y=0 de l'équation de courbe. Ces deux solutions nous intéresse pour notre skript en question ainsi que notre équation de courbe. Pour plus d'informations, checkez sur internet ou vos cours de mathématiques de la seconde générale au lycée ^^ Wow trop d'info ! on en fait quoi de l'équation de courbe ? Déjà on va devoir réfléchir à une équation quadratique simple. Pour mon exemple on va prendre y = -0.85x²+100 Version difficile: -0.85x² aura donc les limites suivantes (voir les exemple de la courbe bleu du schéma ci-dessus) - Limx->-inf|x<0 -0.85x² = -infini (quand l'inconnu x ira vers -infini alors -0.85x² ira vers un résultat vers - infini) - Limx->0 -0.85x² = 0 - Limx->+inf|x>0 -0.85x² = -infini En français ça donne ceci: Cette courbe vas donc être croissante pour x allant de -infini à 0 puis décroissante pour x allant de 0 à +infini (cependant l'exemple n'est pas valable pour Lim cos(x) ou Lim sin(x) qui tout deux n'ont pas de limite !) Le +100 nous permet de faire en sorte que f(0)=100 c'est à dire que quand x = 0 (en abscisse) alors y = 100 (en ordonnée) Jusque là ce n'est pas trop difficile de faire de la lecture graphique sur sa calculatrice pour constater de -0.85x²+100 fait une courbe croissante au départ avec une approximation d'un x1 vers -11 puis décroissante à partir de x=0 et la présence d'un x2 vers +11. Version résumé: Si vous êtes paumé, c'est normal xD. Je vous ai expliqué des trucs qui ne sont pas facile à comprendre quand on fait pas des mathématiques plus difficile. Au collège on n'apprend pas ça et au lycée on ne voit que les limites vers la terminal scientifique ou technologique. Pas d'inquiétude, retenez juste le fait que grâce à l'équation -0.85x²+100 on aura une courbe qui monte et qui descend avec des coupure vers des x1 = -11 et x2 =+11. Pour inverser le sens du genre, je veux que la courbe descende puis remonte, il faut juste changer le signe du coefficient a) Partie 2 - L'algorithme Quel repère ? Minecraft étant un jeu 3 dimensions, on va avoir besoin d'un repère 3 dimensions (O,x,y,z) (dont O étant une position absolue) Commençons par le plus simple: positionner notre départ et notre "arrivée". notre point de départ représente le x1 de notre courbe et l'arrivée le x2. On commence par quoi ? Voici 3 commandes: # Supprimer toutes les variables command /reset: trigger: delete {CourbeSk::*} # Poser le départ command /start: trigger: set {CourbeSk::PosStart} to player's location set {CourbeSk::StartX} to x-location of player set {CourbeSk::StartZ} to z-location of player message "&7Position de départ: &aX: %{CourbeSk::StartX}% &7- &aZ: %{CourbeSk::StartZ}%" # Poser la potentielle arrivée command /end: trigger: set {CourbeSk::EndX} to x-location of player set {CourbeSk::EndZ} to z-location of player message "&7Position d'arrivée: &aX: %{CourbeSk::EndX}% &7- &aZ: %{CourbeSk::EndZ}%" On sépare bien les variables X et Z pour pouvoir comparer les distances plus tard. Les 3 commandes ci-dessus sont essentielles pour le reste du skript. Le skript ne va pas deviner la position de départ ni d'arrivée. On va faire ensuite l'algo qui va dire dans quels sens sont le départ et l'arrivée. On va détecter si X-Départ est négatif/positif et plus loin/près que de X-Arrivée par rapport au centre de la map. C'est pas simple à comprendre quand on l'explique en français mais regardez le code vous allez comprendre. command /courbe: trigger: # /// Vérification du sens if {CourbeSk::StartX} > 0: if {CourbeSk::EndX} > 0: if {CourbeSk::EndX} > {CourbeSk::StartX}: set {CourbeSk::SigneX} to 1 message "&cX1 &ax> z> &ee>s &31" if {CourbeSk::EndX} < {CourbeSk::StartX}: set {CourbeSk::SigneX} to -1 message "&cX2 &ax> z> &ee<s &3-1" if {CourbeSk::StartX} < 0: if {CourbeSk::EndX} < 0: if {CourbeSk::EndX} > {CourbeSk::StartX}: set {CourbeSk::SigneX} to 1 message "&cX3 &ax< z< &ee>s &31" if {CourbeSk::EndX} < {CourbeSk::StartX}: set {CourbeSk::SigneX} to -1 message "&cX4 &ax< z< &ee<s &3-1" if {CourbeSk::StartX} > 0: if {CourbeSk::EndX} < 0: if {CourbeSk::EndX} > {CourbeSk::StartX}: set {CourbeSk::SigneX} to 1 message "&cX5 &ax> z< &ee>s &31" if {CourbeSk::EndX} < {CourbeSk::StartX}: set {CourbeSk::SigneX} to -1 message "&cX6 &ax> z< &ee<s &3-1" if {CourbeSk::StartX} < 0: if {CourbeSk::EndX} > 0: if {CourbeSk::EndX} > {CourbeSk::StartX}: set {CourbeSk::SigneX} to 1 message "&cX7 &ax< z> &ee>s &31" if {CourbeSk::EndX} < {CourbeSk::StartX}: set {CourbeSk::SigneX} to -1 message "&cX8 &ax< z> &ee<s &3-1" if {CourbeSk::StartZ} > 0: if {CourbeSk::EndZ} > 0: if {CourbeSk::EndZ} > {CourbeSk::StartZ}: set {CourbeSk::SigneZ} to 1 message "&cZ1 &ax> z> &ee>s &31" if {CourbeSk::EndZ} < {CourbeSk::StartZ}: set {CourbeSk::SigneZ} to -1 message "&cZ2 &ax> z> &ee<s &3-1" if {CourbeSk::StartZ} < 0: if {CourbeSk::EndZ} < 0: if {CourbeSk::EndZ} > {CourbeSk::StartZ}: set {CourbeSk::SigneZ} to 1 message "&cZ3 &ax< z< &ee>s &31" if {CourbeSk::EndZ} < {CourbeSk::StartZ}: set {CourbeSk::SigneZ} to -1 message "&cZ4 &ax< z< &ee>s &3-1" if {CourbeSk::StartZ} > 0: if {CourbeSk::EndZ} < 0: if {CourbeSk::EndZ} > {CourbeSk::StartZ}: set {CourbeSk::SigneZ} to 1 message "&cZ5 &ax> z< &ee>s &31" if {CourbeSk::EndZ} < {CourbeSk::StartZ}: set {CourbeSk::SigneZ} to -1 message "&cZ6 &ax> z> &ee<s &3-1" if {CourbeSk::StartZ} < 0: if {CourbeSk::EndZ} > 0: if {CourbeSk::EndZ} > {CourbeSk::StartZ}: set {CourbeSk::SigneZ} to 1 message "&cZ7 &ax< z> &ee>s &31" if {CourbeSk::EndZ} < {CourbeSk::StartZ}: set {CourbeSk::SigneZ} to -1 message "&cZ8 &ax< z> &ee<s &3-1" L'algo ci-dessus ne sert qu'a savoir la direction d'un vecteur entre deux points. Il peut donc vous servir pour autre chose. Notez que cet algo ne fonctionne que pour des vecteurs horizontaux Quand j'envoie des messages type "Z8 x< z> e<s -1" c'est: - Z8: Huitième paramètres de direction - x< : X négatif - z> : Z positif - e<s : E représente l'arrivée et S le départ. Dans ce cas là le Z-Arrivée est plus petit que Z-Départ - -1 : Représente le signe Grace aux 8 possibilités de X et Z on peut savoir parfaitement le sens d'un vecteurs dans un monde minecraft défini par deux points. Bon, on a fait la moitié ! Le plus difficile reste à faire ^^. On va avoir besoin de calculer les distances entre chaque blocs de la courbe. A noter que la valeur "coefficient réducteur de distance" que je vais citer ne fonctionne que pour cette équation et qu'elle a été trouvée par du bidouillage ! # (P1) /// Définition des distances (P1) set {CourbeSk::CompX} to difference between {CourbeSk::StartX} and {CourbeSk::EndX} set {CourbeSk::CompZ} to difference between {CourbeSk::StartZ} and {CourbeSk::EndZ} # (P2) /// Mise du signe + ou - sur les distances (qui sera reset plus tard) (ce passage est inutile xD) (P2) set {CourbeSk::FianlCompX} to {CourbeSk::SigneX}*{CourbeSk::CompX} set {CourbeSk::FianlCompZ} to {CourbeSk::SigneZ}*{CourbeSk::CompZ} message "&a%{CourbeSk::CompX}% - %{CourbeSk::CompZ}% &7| &6%{CourbeSk::FianlCompX}% - %{CourbeSk::FianlCompZ}%" # (P3) /// Tracage de la courbe (P3) set {_loc} to {CourbeSk::PosStart} set {_y} to 0 set {_x} to 0 # (P4) /// Défintion du coef de distance réducteur (+ la distance sera grande, moins ça sera précis) (P4) set {CourbeSk::LocStartX} to abs({CourbeSk::FianlCompX}/34) set {CourbeSk::LocStartZ} to abs({CourbeSk::FianlCompZ}/34) message "&5%{CourbeSk::LocStartX}% &7 &5%{CourbeSk::LocStartZ}%" (P1): Déjà expliqué, on va prendre la distance des deux points (départ et arrivée) que l'on va diviser plus tard pour avoir une distance relative pour chaque blocs de la courbe. (P2): On défini le signe pour savoir dans quelle direction on va suivant les axes X et Z du monde minecraft. Cette valeur est transmise par l'algorithme de détection de direction. Ce passage est aussi inutile car les signes vont être enlevés par la conversion par valeur absolue (P3): Ce sont les variables temporaires qui vont nous servir pour tracer la courbe (P4): On fait une division pour trouver la valeur qui représentera la distances des blocs en X et Z. 34 est la valeur la plus précise que j'ai trouvé pour être le plus précis. Si vous réduisez cette valeur, la courbe dépassera de plus loin que le point d'arrivé et si vous mettez une trop grande valeur, la courbe s’arrêtera avant le point d'arrivée. On a donc un point d'arrivée qui ne sert que de repère d'arrivée de la courbe. En bidouillant cette valeur, vous pourrez potentiellement tomber sur le point d'arriver. Elle est comprise entre 36 et 33 pour l'équation -0.85x²+100. Une fois ça fait, on attaque l'algo de traçage: loop 300 times: add 1 to {_x} add 0.25 to {_y} set {_result} to ((-0.85)*({_y}*{_y}))+100 if {_result} < 1: if {_result} > -300: #Moitié -100 #message "&7f(&e%{_y}%&7)=&a%{_result}%" # /// Message d'affichage de f(x) = 0.85x²+100 if {_y} <= 30: #Moitée 14.75 # \/ Coeficient de hauteur #(PE) set {_loc} to location {_loc}'s x-coordinate+({CourbeSk::SigneX}*{CourbeSk::LocStartX}), {_loc}'s y-coordinate+({_result}/7)+14, {_loc}'s z-coordinate+({CourbeSk::SigneZ}*{CourbeSk::LocStartZ}) set block at {_loc} to redstone block #message "&7f(&e%{_y}%&7) = &a%{_result}%" # /// Message d'affichage de f(x) = 0.85x²+100 wait 1 tick wait 1 tick Ça c'est notre algo pour tracer la courbe. Pour commencer on loop 300 fois pour avoir une plage de valeur y la plus grande sans trop abuser non plus. Pour une assez bonne précision, on met un pas pour la suite {_y} de 0.25 c'est à dire que que loop de cette variable, on ajouter 0,25. On défini {_result} comme le résultat de l'équation de la courbe à la position de {_y} quand {_x} = nloopé. On check si notre valeur est inférieur à 1 puis supérieur à -200 (c'est environ 32 blocs de check ce qui correspond presque au même Y de départ qu'il y aura à l'arrivée) ou -300 pour être large et aller plus bas que le Y de départ de la courbe. On regarde si {_y} ne dépasse pas une limite de 30 (sachant que 30 représente 120 blocs de checks avec un pas de 0.25) (PE) Si on est bien dans toute les conditions réunies, on pose un bloc en X et Z avec les positions défini précédemment puis on place en Y avec la valeur de notre équation + un coefficient de hauteur (surélever les blocs sinon la courbe ce trace par le bas). {CourbeSk::SigneX} et {CourbeSk::SigneZ} sont soit égale 1 ou -1. C'est le coefficient multiplicateur qui sert à donner le signe du coup il a pour valeur 1 ou -1. Voila, on va donc avoir une jolie courbe comme ceci: J’espère que ce tuto va pouvoir vous aider dans des algorithme complexes ou même basique. Perso je vais m'en servir pour AFR-ICBM (skript à venir très prochainement !) Dans tout les cas n'hésitez pas à le partager et à en faire une bonne grosse utilisation pour prouver à vos potes que Skript c'est pas de la merde si on le met entre de bonne mains 😛 . J'ai eu pas mal de mal à le faire même si il m'a demandé qu'une soirée pour le réaliser. J'y ai pensé des heures carrés à le faire et le voila enfin ! J’espère surtout vous avoir débloqué sur des trucs ! Je vais le poster comme ressource sur le forum ^^ Bonne continuation à vous tous !
-
L'end crystal n'est pas considéré comme un bloc mais comme une entité. Du coup utilise "on click on entity - if entity is end crystal" par exemple
-
inactif ✖ ATM configurable sans SkQuery
Vengelis_ a répondu à un(e) sujet de MasterPNJ dans Inactifs
Tu n'as pas d'autres choix que d'utiliser SkQuery en 1.7.10 car Tuske ne fonctionne pas en 1.7.10. En plus tu pourrais passer en moddé en 1.12.2 car il exsite Atom ou CatServer par exemple pour faire du moddé avec des plugins (les deux supporte Skript) -
Il me semble que beaucoup de syntaxes de la version 2.2 à la version 2.3 sont différentes. Personnellement je reste en 1.12.2 pour le moment le temps d'avoir une version stable pour la 1.14.4
-
@KneaXy on l'espère 😄
-
J'allais le faire ;-; Voleur xD
