1. Le forum de Minecraft-France va définitivement fermer ses portes. Celui-ci restera en lecture seule mais vous ne pourrez plus y apporter de nouveaux topics. Nous vous invitons à nous rejoindre sur le Discord de Minecraft-France qui permet de présenter vos projets, discuter avec la communauté etc.. Merci à tous d'avoir fait vivre ce forum de nombreuses années. Pour nous rejoindre sur Discord, Cliquez ici

une limite de requête de command block pour un serveur ?

Discussion dans 'Serveurs' créé par clownmechant, 25 Sept 2016.

  1. clownmechant

    clownmechant Enter the World

    Inscrit:
    22 Juil 2016
    Messages:
    26
    Points:
    20
    Sexe:
    Homme
    Bonjour !

    Déjà désolé si ce n'est pas la bonne section, j'ai longuement hésité avant de choisir dans laquelle poster !

    Voilà ma question/problème :
    J'ai réalisé la partie "technique" en command block pour un événement "Achievement Get". Hier soir, nous étions 20, et on lance le bouzin ... Et là le serveur n'a clairement pas tenu du tout !

    Grosso modo pendant le jeu j'ai plus de 400 clock ( CB 1.9) allumées en même temps pour checker les 10 équipes X les 34 achievements, les affichages de score et le compte des points.

    Le serveur est un mutualisé chez verygames avec 6Go de ram et slot infini. C'était sur un Minecraft vanilla 1.10.2.
    Le CPU noté 34% d'utilisation, les ram n'avait pas atteint leur limite non plus, mais c'est comme si il n'arrivait pas à gérer toutes les requêtes envoyés par les CB en même temps. Du coup, alors qu'il était 21h50, la console serveur indiquait toujours 20h40 et essayait, tant bien que mal, de réaliser toutes les requêtes pour rattraper son retard temporel, jusqu'à crash. Bref, grosse loose, gros fail, on a été obligé d'annoncer à tout le monde que l'évent n'aurait pas lieu :/

    Du coup, je me pose la question :
    - Y'a-t-il une limite théorique ou bien avec un serv dédié ça aurait pu marcher ?
    et par extension, y'a-t-il une limite au command-block, genre, des choses qu'on pourrait théoriquement faire mais qui dans la pratique sont impossibles ?!

    PS : Nous avions testé plusieurs fois l'évent en amont à 6, sans aucun soucis niveau serv,lag, ou quoique ce soit ...

    Merci d'avance pour vos suggestions/réponses
     
  2. Calambiel

    Calambiel Résident de l'End

    Inscrit:
    5 Août 2014
    Messages:
    6 595
    Points:
    229
    Je dis peut-être une bêtise, mais il me semble en effet qu'il y a une limite de commandes par tick, par contre je suis incapable de te donner le chiffre qui doit être assez gros de toute façon, en tout cas il n'a pas de raison d'être inconstant.

    Exécuter 400 clocks en permanence (avec probablement plusieurs commandes pour chaque), c'est déjà énorme, encore plus s'il s'agit d'execute où en effet tu vas multiplier la charge.

    Tu peux toujours diviser réduire le nombre d'activation de 20 par seconde à 5, pas besoin de plus pour des achievement (la précision sera alors du quart de seconde au lieu d'être exact, mais est-ce vraiment génant ?) et cela fera une différence énorme pour la charge du serveur. De plus, il faut bien penser à désactiver le sendCommandFeedback et le logAdminCommands, cela augmente la charge.
     
  3. clownmechant

    clownmechant Enter the World

    Inscrit:
    22 Juil 2016
    Messages:
    26
    Points:
    20
    Sexe:
    Homme
    J'aurais du mal a retrouver 20 joueurs juste pour test, mais en effet, je vais modifs cette partie là, en activant les commandes toutes les secondes ( largement suffisant aussi).

    Concernant la limite ( et si elle vient des CB / tick ou de la puissance serv) je suis toujours bredouille... assez curieux de savoir. La seule info trouvée concerne la modification de block et le wiki dit : la limite maximale est de 65 536 mises à jour de blocs en un tick de jeu.
     
  4. Horld3n

    Horld3n Bûcheron

    Inscrit:
    14 Fev 2016
    Messages:
    129
    Points:
    53
    Sexe:
    Homme
    Malheureusement tu te confrontes à un problème que beaucoup de personne ont lorsqu'ils font des commandblocks, lorsque tu fais un give avec comme argument une sélection de zone et qu'il y a plus de 20 joueurs, ça ne suivra pas et la commande ne s’exécutera pas complètement. Théoriquement ça devrait fonctionner mais dans la pratique les commandblocks sont malheureusement limités
     

Partager cette page