Aller au contenu

Messages recommandés

Posté(e) (modifié)

————————————————————————————————————————————————————————

PvPSoup Skript

—————————————————————————————————

Bonjour à tous je me présente je m'appelle slzy_ et durant cette série de tutoriel je vais vous apprendre à développer un serveur PvPSoup

Prérequis:

- Skript 

- WildSkript

- SkQuery

I) Options et Setspawn

Tout d'abord pour commencer nous allons définir les options qui permettent d'éviter de se répéter au niveau du préfix ou bien même au niveau des noms

options:
    tag: &f[&bSkSoup]
    itemkit: compass
    nomitemkit: &bWarps

Ensuite nous allons définir le point de spawn du serveur dans notre cas la variable {spawn} sera celle enregistrer depuis la location du joueur à l'aide de la commande /setspawn

command /setspawn:
    permission: setspawn
    permission-message: &cVous n'avez pas la permission d'utiliser cette commande
    trigger:
        set {spawn} to location of player
        send "{@tag} &fVous venez de mettre le point de spawn en &b%location of player%"

II) Join/respawn Item

Une fois la première étape terminer voici l'évènement qui permettra de téléporter les joueurs au spawn et de donner les objets définie plus haut au niveau des options, faites ensuite exactement la même chose avec l'évènement respawn

on join:
    teleport player to {spawn}
    wait 1 tick
    clear player's inventory
    set slot 0 of player to {@itemwarp} named "{@nomitemwarp}"

on respawn:
    teleport player to {spawn}
    wait 1 tick
    clear player's inventory
    set slot 0 of player to {@itemwarp} named "{@nomitemwarp}"

III) Gui

Passons maintenant au Menu , pour commencer choisissez si vous préférez le click droit (Right click) ou bien le click gauche (Left click), une fois votre choix fait copier coller les lignes suivantes.

Dans la première ligne rien de bien compliquer il s'agit simplement de l'évènement lors du clique de la souris sur notre objet définit dans les options.

Dans la deuxième ligne cela permet de vérifier si le nom de notre objet en main et bien celui avec lequel l'évènement doit avoir lieu.

Dans les lignes suivantes rien de bien compliquer un simple menu de 1 lignes (A savoir que les slots d'inventaires commencent à 0 c'est à dire pour la première ligne de 0 à 8

Vous pouvez apercevoir à la fin des format slots " [make player execute command "/§earlyhg"] " cela permet d'éffectuer une commande directement en cliquant sur l'objet (Nous allons le voir juste après)

on rightclick with {@itemkit}:
    name of tool is "{@nomitemwarp}":
        open chest with 1 rows named "{@nomitemwarp}" to player
        wait 0.5 tick
        format slot 2 of player with stone sword named "&bEarlyHG" to close then run [make player execute command "/§earlyhg"]
        format slot 4 of player with lava bucket named "&bChallenge" to close then run [make player execute command "/§challenge"]
        format slot 6 of player with lava bucket named "&bSalle des teams" to close then run [make player execute command "/§sdt"]

IV) EarlyHG

Grace à ses deux commandes votre premiers mode de jeu va pouvoir être mis en place, commencer par créer la commande pour poser un point de spawn au mode de jeu (dans notre cas EarlyHG)

Ensuite créer une commande qui sera ainsi effectuer une fois l'objet sélectionner dans le menu (ci-dessus), dans notre cas cela sera la commande qui donnera le stuff

command /setearlyhg:
    permission: earlyhg
    permission-message: setearlyhg
    trigger:
        set {earlyhg} to location of player
        send "{@tag} &fVous venez de mettre le point de spawn du earlyhg en &b%location of player%"

command earlyhg:
    trigger:
        teleport player to {earlyhg}
        clear player's inventory
        set slot 0 of player to stone sword
        give 35 mushroom stew to player       
        set slot 14 of player to 42 brown mushroom
        set slot 13 of player to 42 bowl        
        set slot 15 of player to 42 red mushroom

		

 

V) Nerf Damage et Soup

Pour commencer on va utiliser l'évènement on damage qui permet de changer ses fonctionnalités

on damage:

Ensuite nous allons définir un attacker et une victime

attacker is a player
victim is a player

Ensuite nous allons dire que si l'objet que tiens un attacker c'est à dire un attaquant est une épée en pire alors les damages seront annuler et seront donc remplacer par 2

if attacker's held item is stone sword:
    set damage to 0		
    damage victim by 2

Voici ensuite un bug très fréquent des serveurs pvpsoup le "mjbug" afin d'y remédier (Switch soup épée) voici le code

if attacker's held item is mushroom stew or bowl:     
    set damage to 0
    damage victim by 0	

Voici le code complet

on damage:
    attacker is a player
    victim is a player
    if attacker's held item is stone sword:
        set damage to 0		
        damage victim by 2	
    if attacker's held item is mushroom stew or bowl:     
        set damage to 0
        damage victim by 0

Voici l'évènement pour annuler la perte de nourriture

on hunger level change:
    cancel event

N'oubliez pas d'ajouter le skript soup ! Le voici

on right click with mushroom soup:
    if player's health is not equal to player's max health:
        cancel event
        heal the player by 3.5 hearts
    set tool to bowl

Dans la suite nous verrons les autres parties WARPS

Modifié par slzy_
Explication
  • slzy_ a verrouillé ce sujet
Posté(e)

 

Bonjour, pour le coup tu ne fait pas vraiment un tutorial, c'est plutôt du code que tu donnes x)

Il faut expliquer certianes lignes qui sont peut être compliqué à comprendre pour les débutants en skript

 

Cordialement Yghore

  • J'aime 2
  • slzy_ a déverrouillé ce sujet
Posté(e)

Salut, j'ai cru au début que ce sujet avait été posté en 2017, mais non en 2021 ?? Skript a évolué et il ne faut pas encourager de mauvaises pratiques en prenant de vieux skript comme ça qui sont plutôt a éliminer par exemple: les commandes avec "§" qui peuvent être utiliser avec des mods et qu'on peut facilement remplacer avec des fonctions

, l'addon Wildskript beugé et vieux,

les vieux gui Skquery qui font beugé et qui ne fonctionne pas tout le temps selon les reload, Skript-Gui ou les gui vanilla de base avec le plugin skript dans ses nouvelles versions sont les deux meilleurs choix.

Donc je ne suis pas ici pour te décourager de "cette série de tutoriel je vais vous apprendre à développer un serveur PvPSoup", mais plutôt si tu fais un tuto de 2016 ne le fais juste pas soit tu update soit tu le fais pas, mais fais pas un vieux tuto obsolète.

Posté(e)

Salut, je ne suis absolument pas un "codeur skript" à la base je suis développeur Java mais vu que ses derniers temps je n'avais rien à faire j'ai décider de faire un tutoriel avec mes connaissances pour ceux qui voudrait crée un mini-serveur voilà tout et non pas pour créer le skript de l'année car on sait très bien que skript est très loin du java 

Posté(e)
Le 12/02/2021 à 05:18, slzy_ a dit :

Salut, je ne suis absolument pas un "codeur skript" à la base je suis développeur Java mais vu que ses derniers temps je n'avais rien à faire j'ai décider de faire un tutoriel avec mes connaissances pour ceux qui voudrait crée un mini-serveur voilà tout et non pas pour créer le skript de l'année car on sait très bien que skript est très loin du java 

Salut, c'est avec des scripts éclaté comme ça que skript est très loin du java comme tu le dis je suis d'accord, mais avec du bon code la différence est minime c'est pour quoi je n'ai pas aimé voir un tutoriel qui encourage le mauvais code et donc des performances pitoyable comparé au java si tu dev en java je te verrais plus faire un tuto java que faire un tuto skript bonne journée

Créer un compte ou se connecter pour commenter

Vous devez être membre afin de pouvoir déposer un commentaire

Créer un compte

Créez un compte sur notre communauté. C’est facile !

Créer un nouveau compte

Se connecter

Vous avez déjà un compte ? Connectez-vous ici.

Connectez-vous maintenant
×
×
  • 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.