CONNEXION
  • RetourJeux
    • Tests
    • Soluces
    • Previews
    • Sorties
    • Hit Parade
    • Les + attendus
    • Tous les Jeux
  • RetourActu
    • Culture Geek
    • Astuces
    • Réalité Virtuelle
    • Rétrogaming
    • Toutes les actus
  • RetourHigh-Tech
    • Actus JVTECH
    • Bons plans
    • Tutoriels
    • Tests produits High-Tech
    • Guides d'achat High-Tech
    • JVTECH
  • RetourVidéos
    • A la une
    • Gaming Live
    • Vidéos Tests
    • Vidéos Previews
    • Gameplay
    • Trailers
    • Chroniques
    • Replay Web TV
    • Toutes les vidéos
  • RetourForums
    • Hardware PC
    • PS5
    • Switch
    • Xbox Series
    • Overwatch 2
    • FUT 23
    • League of Legends
    • Genshin Impact
    • Tous les Forums
  • PC
  • PS5
  • Xbox Series
  • PS4
  • One
  • Switch
  • Wii U
  • iOS
  • Android
  • MMO
  • RPG
  • FPS
En ce moment Genshin Impact Valhalla Breath of the wild Animal Crossing GTA 5 Red dead 2
Etoile Abonnement RSS
Minecraft
  • Tout support
  • PC
  • Xbox Series
  • Switch
  • PS4
  • ONE
  • WiiU
  • PS3
  • 360
  • Vita
  • iOS
  • Android
  • Web
  • New 3DS
Forum
  • Accueil
  • Actus
  • Tests
  • Vidéos
  • Images
  • Soluces
  • Forum

Sujet : [Help] Command block

DébutPage précedente
1
Page suivantePage suivante
Pitbull-18 Pitbull-18
MP
Niveau 6
27 septembre 2017 à 23:40:43

Bonsoir, voila je recherche a faire un effet supplementaire sur un beacon, en vanilla.
Je voudrais pouvoir rajouter un effet qui empeche de pouvoir casser les blocs, et idealement par joueur.
Je m'explique, supposons que je construise une maison, je pose un beacon, et en selectionnant l'effet ou non je soit le seul a pouvoir interagir avec les bloc dans le rayon d'effet du beacon.
Je sais pas si je me fait bien comprendre. J'ai cru voir quelques personne faire des nouveaux items en command block permettant de faire ce que je demande mais impossible de retrouver, et je trouve pas grand chose a ce sujet, de plus etant neophite totale dans ce domaine, sa n'aide pas.

Je prend toutes aides passante qui permettrais de m'aider, meme si c'est pas pile poil ce que je demande a partir du moment ou ca reviens au meme.

Merci d'avance a ceux qui prendrons le temps de m'aider.

mathaym25 mathaym25
MP
Niveau 7
28 septembre 2017 à 15:29:37

Salut,

Alors par ou commencer....
La seule façon de rajouter un effet de potion à un beacon est via une commande qui va influencer ses tags.
On en distingue 2 : Primary et Secondary. Chacun prend en argument un ID d'effet de potion, et si c'est le même, alors l'effet de potion sera de niveau 2.

Tu souhaites maintenant que cet effet soit "Mining Fatigue" afin d'empêcher le minage de blocs. Cet effet agit comme il suit : une fonction chelou ressemblant à une exponentielle que j'ai la flemme de décrire mais fait moi confiance.
Comme tu peux le constater, empêcher complètement (ou même partiellement) le minage d'un bloc requiert que le niveau de l'enchantement soit bien supérieur a 2, ce qui rend la méthode du beacon par modification de ces effets impossible.
Autre gros problème : le mining fatigue affecte aussi la vitesse de frappe. Empêcher quelqu'un de miner l'empêchera donc aussi de frapper quoi que ce soit.

Nous nous retrouvons donc avec 2 problématiques ;

  • Il faudrait donc trouver une autre méthode pour donner ton effet, à la rigueur toujours en nécessitant un beacon, mais sans l'utiliser de manière directe.
  • Il faudrait donc aussi trouver un autre effet à appliquer pour empêcher le minage.

--_--_--_--

Répondre à la deuxième problématique est simple : le gamemode 2.
Les avantages : empêche aussi la casse des blocs qui se brisent instantanément, nous permet de ne pas avoir à gérer l’exception du "telle personne peut casser les blocs donc on lui enlève l'effet de potion".
L'inconvénient : il ne peut pas placer de blocs (avantage si ces blocs sont de la TNT et un levier mais désavantage si ce sont des blocs pour sortir d'un trou mis (in)volontairement par le ayant-droit des lieux).

--_--_--_--

La première problématique est évidement plus complexe. Il faut donc passer en gm2 les joueurs entrant dans la zone, et les remettre en gm0 dès qu'ils en ressortent, en mettant comme exception le propriétaire du beacon. Bref ca va être chaud mais soyons confiant. :doute:
Je décompose les choses à faire en plusieurs points afin de clarifier les choses. Note que je marque aussi mon raisonnement, utile si tu souhaites piger et pas juste appliquer bêtement.

  • On veut donc un equivalent au beacon. Hors seuls les entités permettent de faire des commandes de façon relatives. Nous allons donc utiliser un armor stand comme marqueur, qui sera donc petit, invisible, invunerable et sans hitbox (je reviendrait sur comment l'invoquer par la suite).
  • On veut ensuite faire en sorte que ce faux beacon qu'est l'armorstand soit caché dans un vrai, necessaire à l'effet gm2.

Pour cela, nous allons procéder de la sorte (il existe d'autres méthodes mais passons) : la réunion de 1 ou plusieurs items sur un même bloc, qui plus est un beacon, fera disparaître les objets et fera appaitre notre armorstand marqueur dans le bloc beacon.
De plus, le fait de casser le beacon (donc de détecter que l'armorstand marqueur n'est plus dans celui-ci) killera l'entité et fera apparaître les items qui ont été nécessaires à sa création.

  • Bon là on a notre marqueur c'est cool. Maintenant il faut qu'il prenne le comportement du beacon, c'est à dire que l'effet "gm2" ne permet pas de mettre d'autre effets (à moins que tu veuilles qu'il soit considéré uniquement comme l'effet primaire ou secondaire, a toi de me dire) et qu'il émette dans une portée égale à la portée normale d'un beacon a X étage(s).

Pour le premier cas on utilise le tag Lock afin de verrouiller l'accès au bloc beacon.
Pour le second cas on fait un testforblock en regardant la valeur du tag Levels.

  • Maintenant qu'on a un faux beacon fonctionnel, il faut faire en sorte que cet effet ne soit pas appliqué a son proprio, et surtout que cela soit unique a chaque proprio, et la on va se marrer. :ok:

Le seul système que je vois se divise en 2 cas :
- Le proprio place son premier beacon : on lui associe donc à lui et à l'armorstand une valeur aléatoire dans un score de telle sorte que la proba que 2 proprio est la même valeur soit quasi impossible (et encore on devrait pouvoir mettre une sécurité qui test si la valeur a deja été attribuée et qui refait un test d'aléaoire sinon.
- le proprio n'en n'est pas à son premier beacon : on récupère la valeur de son score pour l'appliquer a notre armorstand.
Si t'a bien suivi on a donc chaque proprio qui possède la même "clé" (ici un score) que tous ses armorstands-beacons.

  • Maintenant tu te demandes sans doute "mékékekommen on jèr sa ?". :ouch2:

C'est tout simple, on fait une chaîne de commande dans l'ordre suivant :
- attribution du tag "PasCasser" aux joueurs dans la zone d'un armorstand
- tester si un score d'un joueur correspond avec celui de l'armorstand, si oui lui enlever le tag
- mettre en gm 2 tous les joueurs avec le tag
- mettre en gm 0 tous les joueurs sans le tag
- enlever le tag à tous les joueurs qui ont le tag
- et c'est reparti pour un tour

Je crois ne pas avoir oublier d'étapes, avec tout ce bazar on devrait donc avoir le système fonctionnel.
Il ne reste plus qu'a mettre tout ça en commandes et à définir les items à jeter sur le beacon ainsi que le rôle de l'effet (primaire, secondaire ou les deux en même temps ?).
Je te laisse déjà digérer tout ça, on s'occupe des commandes dans un second temps :-)
Je fais remarquer tant qu'a faire que mon systeme permet certains trucs funs comme bypasser un autre beacon avec le sien en faisant en sorte que les zones d'actions de beacon soient communes, ou encore mettre en vente via un PNJ custom des outils capables de break certains blocs voir memes les beacons afin de se la jouer agent secret :p
.

PS : je t'annonce déjà 2 failles au système :

  • une personne qui connait la clé de lock (un admin donc) peut quand même mettre des effets au beacon
  • si quelqu'un est plus pret que toi du beacon pendant que tu lances les items, il sera défini comme le proprio

PPS : pour virer manuellement un beacon relou qui met en GM2, plusieurs solutions :

  • se give une pioche qui permet de miner les beacons même en gm 2
  • detruire le beacon via un setblock
  • kill l'amorstand (assez dangereux en cas de fail attention)

PPPS : c'est cool ca fait du bien de se casser la tête de temps en temps, belle problématique en tout cas :-)))
Aller je m'auto-attribue mon petit :pave: et mon petit bravo :bravo: pour la forme.

Message édité le 28 septembre 2017 à 15:32:15 par mathaym25
Pitbull-18 Pitbull-18
MP
Niveau 6
28 septembre 2017 à 19:45:30

Un grand merci a toi dans un premier temps car voila la reponse ! Rien que pour ca chapeau bas tu merite ton pave cesar ^^
Bon pour etre totallement honnete, j'ai pas compris a 100% surtout au passage des tags pour les clés. ainsi que pourquoi faut imperativement un armor stand... Mais je te fait confiance.
Pour rajouter 2/3 informations pour compléter ma demande, donc sa serais pour etre utilisé sur un pt'it serveur privé vanilla entre potes (actuellement 3 joueurs mais possiblement 4/5 bientot).
Apres concernant tes propositions, j'etais partis dans le meme sens a peu pres. Je me penche de plus en plus pour pouvoir rajouter un item en command bloc qui aurait l'effet voulu.

Sinon une question importante pour moi que j'ai pas preciser, est ce que sa risque de provoquer du lag ? Car ayant une petite configue (tres petite) je tourne tant bien que mal a 25/30 FPS.

Encore merci deja pour ta reponse =D

mathaym25 mathaym25
MP
Niveau 7
29 septembre 2017 à 16:57:17

Mais au plaisir de t'aider :)

Pour l'histoire des clés : j'ai besoin de reconnaître le propriétaire du beacon. Chaque joueur ayant un score aléatoire qui lui a été attribué, je peux donc associer ce même score à ses armorstand. Vois le score de l'amorstand comme la serrure et le code du propriétaire comme la clé. Le joueur restera en gm 0 uniquement si les scores correspondent :-)))

Pour les armorstands : on a vu qu'il était impossible de donner l'effet via le beacon. Vu qu'il est impossible de dire "eh salut le jeu, dit a tout tes blocs beacon de faire telle action !", on le fait via les entités. Le choix de l'armorstand est purement facultatif, j'aurais très bien pu dire un zombie, une poule ou un ghast. Ca reste l'entité la plus pratique avec l'entityareacloud pour faire des marqueurs.

Bon si c'est pour un serveur de ce type il ne devrait pas y avoir de pb ;)
Pour ton item je te conseille de passer par un villageois custom au spawn, vu que les crafts customs ne seront pas la avant la 1.13.

Ton client gère l'affichage du jeu, c'est le serveur qui s'occupe des calculs, y compris pour les commandes. Tant que ces ajouts ne font pas apparaitre des particules ou une grande quantité d'entités, ton jeu ne verra même pas la différence ;)
Mais analysons quand même les commandes qui s’exécutent en boucle :
Nous avons des tests de tags sur des entités et des blocs (absolument pas source de lags), la boucle décrite à la fin qui ne fait que des attributions de tag et des tests de score (idem) et puis c'est tout. Nous allons en plus utiliser des fonctions, bien plus optimisées que les command blocks.

Par contre par curiosité : tu fais tourner le serveur sur ton PC ou vous avez loué une machine quand même ?
Après dans les deux cas ton jeu ne sera pas ralenti vu la quantité infime de commandes qui tournent en boucle.

mathaym25 mathaym25
MP
Niveau 7
30 septembre 2017 à 03:45:32

Bon j'ai bien avancé, j'ai fait toutes les commandes exceptés celles concernant le proprio du beacon qui ne doit pas être mis en gamemode 2.
Je te tiens au jus.

Je ne te cache pas que j'en ai bavé x)

mathaym25 mathaym25
MP
Niveau 7
30 septembre 2017 à 22:48:26

Tout est fini et marche à merveille ;)
Tiens moi au courant pour la suite !

Pitbull-18 Pitbull-18
MP
Niveau 6
30 septembre 2017 à 23:38:01

Tin t'aura pas mis longtemps Oo surtout que pour le coup je veux bien te croire que c'etais pas quelque chose d'aisé !
Merci pour les eclaircissements, car je t'avouerais que sa aurait provoqué du lag j'aurais regarder a deux fois...

En tout cas un grand merci pour le temps que tu aura consacré, c'est franchement sympa de voir du monde encore cool quand sa concerne autre personne.

mathaym25 mathaym25
MP
Niveau 7
01 octobre 2017 à 01:23:49

Ahah, quand je me lance dans un truc j’en le rush x)
J’ai surtout eu du fil à retord avec la commande /stats que je ne maîtrisais pas ^^

Par contre petite précision, afin de rendre la chose plus équilibrée, je n’ai pas eu le choix que rendre les zones à portée de plusieurs beacon comme non détruisables. Contrairement à mon idée de base.
Et les personnes en gm1 et gm3 ne sont pas affectées par les zones :-)))

Tout le plaisir est pour moi merci !!

(Tu regarderas tes MP :p)

DébutPage précedente
1
Page suivantePage suivante
Répondre
Prévisu
?
Victime de harcèlement en ligne : comment réagir ?
Infos 0 connecté(s)

Gestion du forum

Modérateurs : Evilash08, Vortex646, Tomy-Fett, Leirok, ]Faustine[, Latios[JV], Remysangfamy
Contacter les modérateurs - Règles du forum

Sujets à ne pas manquer

Meilleures offres
ONE 18.99€ Switch 27.99€ ONE 28.50€ ONE 28.95€ Switch 33.55€ PS4 54.90€
Marchand
Supports
Prix
La vidéo du moment