Vorps Posté 3 avril 2018 Partager Posté 3 avril 2018 Bonjour, Je suis un nouveau membre du serveur freebuild et j'ai remarquer quand j'ai redéfinit mon claim que je ne pouvait pas prendre une sélection conforme a la limite de claim. Après quelque temps à me demander pourquoi j'ai trouver la solution sur le wiki mais celle-ci, certes marche mais ne me satisfait pas. Je sais que le bug à déjà été rapporter mais je vient la pour y apporter une solution pour que les prochain nouveau joueur comme moi ne ce souci pas de sa. Je suis développeur sur différent langage depuis plusieurs année et j'ai longtemps participer aux développement de serveur. Voici ma solution. I - Présentation du problème. Actuellement lorsqu'on souhaite redéfinir un claim il y a un problème au niveau des limites de claim. Les blocks de la sélection du future claim s'ajoute au block du claim actuelle si bien que si on fait un claim qui s'étend jusqu’à la limite de block de claim on ne peut plus le redéfinir Ex .Voila un claim qui fait 80 blocks, ma limite de block est de 80. J'essaie de la redéfinir avec une sélection de 9 un message m'indique que je dépasse la limite c'est pas le comportement attendu. II - Résolution Code avant (Lire commentaire) Code après (Lire commentaire) Test Même contexte que tout a l'heure mais avec le nouveau code et cette fois ci ça fonctionne =) Un autre problème sur les commandes RP sont sur le temps de calcul il servent à déterminer si la zone du nouveau claim n’empiète pas sur une autre zone de claim. Le problème est que ces calcul son long et ce temps augmente de façon linéaire face la taille des claim. Cette partie de code a été développé sur le même Thread que Spigot et ces calculs le bloque et toute action des joueurs ne sont plus prit en compte et mène à des rollback voir à des crachs du serveur. La solution est tout simplement de calculer cette opération en parallèle grâce a un nouveau Thread. Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
Bot 2.0 Posté 3 avril 2018 Partager Posté 3 avril 2018 C'est le plugin qui fonctionne pas de la meilleure façon pour cela et rien ne sera fait par le dév : Le mieux est de refaire totalement le claim. Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
EpiCanard Posté 3 avril 2018 Partager Posté 3 avril 2018 Tu peux poster une issue sur le github du dev avec un peu de chance il va close ton issue dans 6 mois sans même regarder ce que tu as écris en te disant de tester la dernière version du plugin 2 Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
EpiCanard Posté 3 avril 2018 Partager Posté 3 avril 2018 enjoy notre dernière tentative https://github.com/FabioZumbi12/RedProtect/issues/175 1 2 Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
Vorps Posté 4 avril 2018 Auteur Partager Posté 4 avril 2018 Mdr =) Sa ne m’étonne pas qu'il a du mal a maintenir son code, c'est développer de façon un peu "bourrin" et pas du tout optimisé. Par exemple on trouve dans le code des blocks entier recopié plusieurs fois et des calculs un peu douteux. Je pense que le plugin reste quand même solide mais c'est uniquement au prix de centaine de ligne non réfactoré par-ci par-la et au prix de calcul lourd. C'est vrai que le mieux pour vous serais de refaire totalement le plugin ;) Sa serais un gain de mémoire et de temps de CPU sur chaque commande réaliser. Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
Bot 2.0 Posté 4 avril 2018 Partager Posté 4 avril 2018 il y a 13 minutes, Vorps a dit : Sa serais un gain de mémoire et de temps de CPU sur chaque commande réaliser. Ah ça je peux te l'affirmer il est gourmand son plugin ! Le problème de refaire le plugin c'est qu'il faut quelqu'un et surtout qu'il reste dans le coin, FabioZumbi (le créateur du plugin) n'est peut-être pas parfait mais il reste à peu près actif malgré tout, ça fait 2 ans qu'on utilise son plugin au moins. Après il y a toujours possibilité de lui faire des suggestions dans son code, bref faut voir ce qu'il prépare pour la 1.13 mais il y a un manque réel de compétences je pense, c'est dommage car son plugin est vachement bien donc ça explique certaines imperfections (lag lors de gros claim, lag sur la dynmap, sql impossible...) Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
EpiCanard Posté 4 avril 2018 Partager Posté 4 avril 2018 il y a 19 minutes, Vorps a dit : C'est vrai que le mieux pour vous serais de refaire totalement le plugin C'est très généreux de ta part de te proposer Si tu te lances dedans envoie nous le github moi ça m'intéresse grandement à @Darkilen aussi 1 Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
Vorps Posté 4 avril 2018 Auteur Partager Posté 4 avril 2018 Ouai si j'ai le temps un jour je pourrais en faire un mais pour l'instant je peut vous proposer la version avec les correctifs des problèmes cité au dessus. Ça ne changera rien au niveau de la mémoire mais la correction du bug et de l'optimisation sur les commande de claim changera l'utilisation du CPU par le plugin. Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
Bot 2.0 Posté 4 avril 2018 Partager Posté 4 avril 2018 il y a 56 minutes, Vorps a dit : Ouai si j'ai le temps un jour je pourrais en faire un mais pour l'instant je peut vous proposer la version avec les correctifs des problèmes cité au dessus. Ça ne changera rien au niveau de la mémoire mais la correction du bug et de l'optimisation sur les commande de claim changera l'utilisation du CPU par le plugin. Si tu es motivé propose le sur le github du dév car si tu lui proposes lui il valide (ou non) et après c'est mis sur spigot (donc vu par eux aussi). C'est une sécurité nécessaire pour un serveur, on sait jamais ^^ Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
Messages recommandés
Rejoindre la conversation
Vous pouvez écrire votre message dès maintenant. Avant de le poster il vous sera demandé de vous inscrire. Si vous avez un compte, connectez-vous maintenant pour publier.