Résolu Ajouter une fonction au plugin Jobs Reborn

Ablascion

Aventurier
2 Décembre 2016
13
0
1
34
Bonjour à tous et à toutes.
Je suis en ce moment même en train de configurer mon serveur.
J'utilise entre autre le plugin 'Jobs Reborn' (https://mods.curse.com/bukkit-plugins/minecraft/jobs-reborn).
Pour faire simple, dans la configuration de base un joueur va gagner de l'argent en cassant un bloc/tuant des monstres et j'en passe.
Dans le fichier generalconfig.yml, j'ai la possibilité de brider le gain d'argent si les joueurs tuent des mobs près d'un spawner. Nerf indirect de la chasse , ok j'adhère.

Cependant, rien n'empêche un joueur de poser un bloc, de le casser, le reposer, le recasser, etc etc...
Et de gagner de l'argent à chaque fois.
Hors j'aimerai faire en sorte que le plugin reconnaisse si le bloc à été posé par un joueur avant ou non.

Voici le generalconfig.yml : http://pastebin.com/5fcGEcQ0

Merci de m'avoir lu !
Cordialement, Ablascion
 
Si Jobs ne permet pas de faire ça (ce que le titre de ton topic laisse à suggérer), il faut modifier son code interne (pas que son fichier de config) en ce sens.

Et ça paraît compliqué, car en l'état, le serveur passe l'évènement "bloc cassé par xxx" au plugin, qui effectue sa tanbouille (lecture de la conf, crédit sur le compte de xxx, etc).
Mais s'il faut déterminer si le bloc a été posé / cassé / reposé par xxx, c'est beaucouo plus complexe ; ça sous entend de garder un historique complet des blocs posés / détruits dans une base de données...
 
Pourtant dans les configurations on peut choisir de gagner de l'argent ou non si le mob sort d'un spawner.
J'ai CoreProtect qui sauvegarde déjà le base de données des blocs, il n'y a pas moyen de faire une corrélation entre les 2 plugins sans toucher au code interne?
Si non, il n'existe pas un plugin de job qui possède cette fonctionnalité?
 
un moyen que j'avais vu, c'était de faire perdre de l'argent quand il pose le bloc (exactement la même somme). Par contre si c'est juste pour le bûcheron, par exemple, le pécheur peut très bien poser le bloc à sa place, donc il faut aussi enlevé l'argent au pêcheur. Mais du coup, le pêcheur ne pourra pas construire de maison en bûche, sinon il va perdre beaucoup d'argent.
C'est le seul moyen que j'ai vu avec ce plugin sur les serveur, il y a peut être un autre moyen au niveau du code mais je ne le connais pas
 
Salut,

Au niveau développement c'est tout à fait possible ;)
Il y a par contre un point important à relever. La manière pour empêcher de gagner de l'argent concernant un block que l'on a posé est d'enregistrer tous les blocs qui ont été posé. Seulement cela risque d'être très grand à enregistrer :/
Pour enregistrer cela on peut le faire de plusieurs manière:
  • En RAM
    Le désavantage c'est que la RAM est assez limité en général et également que tout ce qui est en RAM est perdu à chaque redémarrage :/
  • En base de donnée
    Il faudrait donc stocker en base de donnée tous les blocs posé. D'autres plugins le font (comme LogBlock). Il faut cependant garder à l'esprit que l'on casse/pose beaucoup de blocs dans minecraft (surtout lorsqu'il y a beaucoup de joueur). Il faudra donc "purger" (faire un tri quoi) dans cette base de donnée à un moment.

Bref, sur papier c'est possible. En pratique aussi mais cela n'est pas simple :P
A ma connaissance aucun plugin ne propose cela. Il faudra donc que tu trouves quelqu'un pour te le faire xD


Bonne chance pour ton projet
Cordialement,
Detobel36
 
Myuto => Je connais ce moyen et c'est applicable dans quelques métiers. Mais comme tu le dis, un bûcheron ne pourra donc pas construire, et tu peux contourner le problème en faisant poser le/les blocs par quelqu'un d'autres. Et j'aimerai que les métiers sur mon serveur soit vraiment un moyen sympa de gagner de l'argent, pas un truc ou on passe les 2/3 de sa journée à casser le même bloc et le reposer en boucle.

Detobel36 => Je me doute que niveau développement il y a moyen d'arriver à ce genre de chose, je pense même que pour quelqu'un d’aguerri ça doit même être facile.
Je connais un serveur qui a fait cette modification sur son plugin de job.
Mais effectivement si ça devient un truc hyper compliquer à mettre en place, j'vais devoir trouver autre chose à mettre en place pour faire gagner de l'argent à mes joueurs =/
Tu me parles de trouver quelqu'un pour programmer, autant lui demander de faire un plugin de job directement, non?

Merci de vos conseils, je me rends compte en écrivant ces lignes que c'est peut être pas à ma portée et que je vais devoir surement trouver autre chose pour mettre en place un système de job sur le serveur.

Cordialement,
Ablascion
 
Salut,

Tu me parles de trouver quelqu'un pour programmer, autant lui demander de faire un plugin de job directement, non?
Tout dépend la personne qui te fais ça, ses compétences, tes besoins, ... Je ne me suis pas penché sur le sujet pour savoir si le plugin que tu as choisi était opensource et "modulable" (histoire de pas passer 4h à intégrer la modification :P ).

Merci de vos conseils, je me rends compte en écrivant ces lignes que c'est peut être pas à ma portée et que je vais devoir surement trouver autre chose pour mettre en place un système de job sur le serveur.
Qu'est-ce que j'aimerais lire ces lignes plus souvent sur le forum <3 Essayer d'être ambitieux mais réaliste... Rien que pour ça j'aimerais encore plus t'aider :P (bon, j'ai pas trop le temps de faire plus que répondre à des questions... m'enfin c'est déjà ça xD)


Cordialement,
Detobel36
 
Salut!

Tout dépend la personne qui te fais ça, ses compétences, tes besoins, ... Je ne me suis pas penché sur le sujet pour savoir si le plugin que tu as choisi était opensource et "modulable" (histoire de pas passer 4h à intégrer la modification :p ).

J'ai changé mon fusil d'épaule et je vais plutôt faire en sorte que les joueurs aient beaucoup de chose à payer pour tenter d'éviter d'avoir rapidement des joueurs avec des sommes astronomiques. (J'ai choisis pas mal de plugin qui m'ajoute du contenu, ça aide)

Qu'est-ce que j'aimerais lire ces lignes plus souvent sur le forum 3 Essayer d'être ambitieux mais réaliste... Rien que pour ça j'aimerais encore plus t'aider :p (bon, j'ai pas trop le temps de faire plus que répondre à des questions... m'enfin c'est déjà ça xD)

Comme beaucoup j'ai envie que mon serveur soit '''''unique''''', et je connais mes limites, il y a certaines choses qui prennent du temps mais qui sont réalisable (Choisir mes différents admin shop, quoi, quel prix, configuration des plugins, etc etc...)
Je ne vais pas m'inventer codeur alors que je n'aime pas ça, y'a toujours des solutions annexes, ducoup j'en ai trouvé une et mon problème est réglé! (Voir au dessus)

Merci de ton 'soutien', rien que d'avoir répondu à mes questions m'a énormément aidé.

Cordialement, Ablascion
 
Salut a tous, je sais que mon aide arrive tard mais il existe bien une option de jobs reborn déjà implanté depuis plus d'un an, qui permet de mettre des cooldown (temps de remonétisation d'un bloc venant d'être posé) a chaque blocs du jeu.

Tu possède dans ton dossier Jobs un fichier du nom de restrictedBlocks.yml et voici comment il fonctionne

blocksTimer: <- obligatoire
Stone: <- ton block a CoolDown
id: 1 <- ID Minecraft du block
cd: 2100000 <- Temps du CD en seconde (2100000 est la plus grande valeur supporté par le plugin représentant 21 jours)
Coal_ore:
id: 16
cd: 2100000
Iron_ore:
id: 15
cd: 2100000
Gold_ore:
id: 14
cd: 2100000

Voila voila j'espère que cella aura pu vous aider
 
Ho! Merci de ta réponse, lorsque je voudrais refaire les métiers sur mon serveur je penserai à ça! Merci beaucoup!