HORDETOWN

← Retour à la présentation Discord

Nouveautés et correctifs

HordeTown est développé activement. Voici ce qui arrive bientôt, puis ce qui a changé ces derniers jours, du plus récent au plus ancien.

En préparation

Bientôt : ces fonctions ne font pas encore partie du plugin livré.

  1. En préparation

    Un bot Discord pour suivre votre serveur

    HordeTown Bot relaie dans Discord ce qui se passe en jeu. Deux liens : le lien de serveur (admin) envoie les événements généraux — vagues, boss, caravane, marchand d’armes, nouvel avant-poste ou donjon conquérable, Citadelle — et le lien de ville (chef ou second) envoie ceux de la ville : mort du Maire, siège imminent, boss de nuit près de la ville, avant-poste attaqué, arrivées et départs. Chaque ligne se règle (salon, rôle à pinger, langue FR/EN/IT) depuis un panneau web, et les commandes (/town, /ranking, /stats) ne répondent que pour le serveur ou la ville liée. Le bot s’invite sur n’importe quel Discord, y compris celui d’une ville.

  2. En préparation

    La Citadelle : un siège à l’envers

    Un événement rare, lancé à la main par l’admin (au plus une fois par semaine) : une forteresse sort de terre en un lieu tiré au hasard sur la carte déjà explorée, loin de toutes les villes, et tant qu’elle se dresse aucune ville n’est assiégée. Cette fois, ce sont les joueurs qui attaquent : ils enfoncent la herse au bélier sous l’huile bouillante pendant que des défenseurs ne cessent d’apparaître devant la porte, nettoient la cour tenue par une garnison d’élite, puis forcent le donjon. Des fragments et des clés, gagnés sur les caravanes et le colosse, révèlent où elle se dresse ou ouvrent un portail jusque dans sa cour.

  3. En préparation

    La Citadelle : le Seigneur et le grand final

    Dans la grande salle attend le Seigneur de la Citadelle, un squelette du Wither géant en quatre phases (un bouclier tenu par quatre bannières à arracher, le duel, les flammes, la furie), dont la vie suit le nombre de joueurs présents. Quand il tombe, la salle se scelle au bout de 60 secondes et le dernier camp debout, une ville ou des villes alliées, plante son drapeau ; l’admin choisit au lancement si ce final se joue en PvP entre villes, en survie contre la horde, ou les deux. Une Citadelle prise reste pillable 24 heures, puis s’effondre et le terrain revient exactement comme avant ; chaque prise rend la suivante plus dure.

  4. En préparation

    La Citadelle : le butin et la gloire

    La prise rapporte de l’Acier de la Citadelle, rangé dans le nouveau coffre des prix de la ville (dans le menu du Maire, pour le chef et ses seconds) : chez le Maître d’armes, il forge les armes aux niveaux 6 et 7, offre un artefact au choix ou un cor d’acier à cinq souffles. Chaque participant touche sa part d’un pot d’argent, selon ce qu’il a fait pendant l’assaut. Le meilleur attaquant devient Champion de la Citadelle, un titre qui passe au suivant à chaque prise, avec des braises sur son nom débloquées à vie ; les villes gagnantes portent la Couronne ♔ pendant 7 jours et gardent un motif de bannière réservé. Les coffres de la forteresse s’ouvrent au fil de l’assaut, un classement compte les Citadelles prises, une semaine sans conquête rend la suivante plus riche, et ceux qui ne combattent pas suivent la bataille depuis la tribune, en spectateurs.

  5. En préparation

    Des saisons à durée libre

    Aucune durée imposée : c’est le serveur qui décide combien de temps dure une saison. Elle court jusqu’à ce qu’un admin tape la commande qui lance le compte à rebours de sa fin.

  6. En préparation

    Le Dernier Rempart, le grand final de la saison

    Une commande admin le déclenche, normalement le dernier jour. Toutes les villes sont assiégées chaque nuit, par une horde qui se renforce vite et creuse plus vite ; personne ne peut rejoindre une ville tant qu’il est en cours. Les dernières villes debout remportent le classement de la saison.

Nouveautés

Ce qui a été ajouté, et comment ça marche.

  1. Rentrer chez soi : /ht town

    /ht town tout seul ramène maintenant le joueur dans SA ville. Un délai s’applique (town.warp-cooldown) et la commande est refusée en plein combat. L’ancienne fiche de ville est devenue /ht town info ; /ht town warp [ville] reste là pour rejoindre une ville alliée. HordeTown n’utilise plus un warp EssentialsX : il fonctionne sans Essentials, et /warp City n’existe plus. Un serveur qui a encore un warp « City » peut le supprimer avec /delwarp City.

  2. Outils d’admin : bypass, objets, gains, catalogue

    /ht admin bypass fait de l’admin un membre de tous les claims, et lui permet d’utiliser tous les villageois. /ht admin items permet de prendre ou d’interdire chaque objet du plugin (la liste est écrite dans items-forbidden.json). /ht admin money <joueur> [jours] affiche ce qu’un joueur a gagné (earnings.json). /ht admin catalog permet maintenant de modifier les listes vanilla et le stock du marchand de caravane.

  3. Invitations : stockées dans la ville, avec une durée de vie

    Une invitation est désormais enregistrée dans la ville elle-même : elle expire au bout de town.invite-days jours et survit à un redémarrage du serveur. Rappel du réglage guilds.open-join, qui est faux par défaut : rejoindre une ville demande une invitation.

  4. PvP de ville : /ht town pvp on/off

    Le chef ou le second active ou coupe le PvP de la ville avec /ht town pvp on/off, ou avec le bouton prévu. L’ouverture prend 10 secondes, la fermeture est immédiate. Un titre s’affiche à l’entrée d’un claim. Réglage à connaître : le plugin ne force jamais le PvP du monde, la gamerule pvp du monde doit donc être vraie.

  5. Boussole : /ht compass <caravan|boss>

    /ht compass caravan ou /ht compass boss (ou le bouton cliquable [Boussole]) donne une boussole qui pointe vers la caravane ou le boss. Une seule par zone de carte ; elle est reprise à tous les joueurs à la fin de l’événement.

  6. Méga : se joue avec la ville, une défaite remet à zéro

    Le méga se joue avec les membres de la ville présents à 50 blocs ou moins, avec une laisse de 50 blocs puis de 35 blocs. Une défaite ne supprime plus la ville : elle la renvoie à zéro (territoire 3×3, vague 0). Un événement public, TownFellEvent, signale la chute pour les autres plugins.

  7. Caravane : étal chez le Maire, réputation, route sûre

    L’étal de la caravane s’installe chez le Maire (3 sources de marchandises) et survit à un redémarrage. La réputation de la caravane est visible. La caravane apparaît à un endroit sûr, sa route est dégagée, et elle se met en pause quand elle est bloquée au lieu de s’obstiner.

  8. Dimensions verrouillées et nuit noire

    Une téléportation vers le Nether ou l’End verrouillé par la ville est refusée, quel que soit le plugin qui la déclenche. Dans la nuit noire, une torche, la vision nocturne ou le nouvel enchantement de casque « Vision nocturne » la rend supportable (26 enchantements au total).

  9. Ponts optionnels : ModelEngine et Discord

    Un pont ModelEngine est disponible, désactivé par défaut (models.enabled). Un webhook Discord l’est aussi (discord.enabled, faux par défaut) ; il reçoit deux nouveaux événements publics : colosse apparu et caravane en attente.

  10. IA de la horde : le champ de flux activé par défaut

    Au cor, la horde calcule une seule fois, pour tout le siège, la route jusqu’à la Mairie (jusqu’à 128 blocs autour) : elle contourne les collines, la lave et l’eau, va vers une porte ou le pan de mur le plus faible, et ne perce un mur que près de la ville. Près de la Mairie, ou quand un mob reste bloqué, l’ancienne marche reprend la main. Mesuré sur un serveur à 2 cœurs avec 5 sièges et environ 830 mobs : aucun coût mesurable, 20 TPS. Réglable : wave.ai.flow.enabled.

  11. Nuit des Déchus : les morts creusent, l’aube reconstruit

    Un Déchu bloqué devant le mur de celui qu’il chasse le perce maintenant comme la horde (mêmes règles de dureté), et garde sa proie en tête même quand le mur la lui cache ; ceux qui tirent de loin (arc, arbalète, trident, sortilège) s’approchent d’abord du mur. Tout ce qu’ils cassent est remis en place à l’aube, gratuitement, sans rien laisser tomber ni écraser ce que quelqu’un a construit entre-temps. Ils ne touchent jamais un bloc qui contient quelque chose (coffre, four, lit…), le coffre du colosse ni un spawner ; réglable : fallen.dig, fallen.rebuild-at-dawn.

  12. 13 événements pour les autres plugins

    HordeTown émet ses propres événements Bukkit : ville sur le point d’être fondée (annulable), fondée ou dissoute, membre arrivé ou parti, vague lancée ou terminée, boss abattu, zone prise ou perdue, caravane arrivée ou perdue, contrat accompli. Une clé de caisse après un siège gagné, une annonce Discord, une quête « gagner trois sièges » : d’autres plugins peuvent les écouter. Ils sont en lecture seule, émis sur le thread principal et stables d’une version à l’autre ; HordeTown ne dépend d’aucun plugin qui les écoute.

  13. Caravane : une escorte chronométrée

    Le premier joueur d’une ville à rejoindre une caravane choisit sa route : le raccourci (3 min d’escorte, plus de pillards, prime ×1,5), le gué (4 min, prime ×1,2) ou le grand tour (5 min, le plus calme). Sa ville l’escorte pendant ce temps ; si le marchand principal est encore en vie à la fin, les marchands filent à la Mairie, les 400 $ de base se partagent entre les escorteurs et un étal ouvre pendant 10 minutes. Les pillards se multiplient avec le nombre d’escorteurs (8 par étape au plus), et depuis le 30 septembre les golems d’escorte ne s’étouffent plus.

  14. Outils d’admin : localiser, contester, forcer

    /ht admin locate trouve les donjons du plugin depuis votre position. /ht admin contest lance le jour de contestation à la demande (jusqu’à 72 h), pour tester les prises de zones sans attendre dimanche. /ht admin forcewave <ville> lance une vague tout de suite : la ville visée est le premier argument.

  15. Le territoire d’une ville protège ses animaux, golems et villageois

    Sur les terres d’une ville, seuls ses membres et ses alliés peuvent blesser ses animaux, ses golems, ses villageois (les siens comme ceux du plugin) et ses animaux apprivoisés. Épée, flèche, TNT ou potion : un joueur d’une autre ville est refusé, avec un message qui dit pourquoi. Les mobs de la horde ne sont pas concernés par cette règle.

  16. Les défenseurs de zone se battent comme la horde

    La garnison et le boss d’un avant-poste ou d’un donjon utilisent la même IA que la horde : ils creusent, sapent les piliers, grimpent et attaquent à tour de rôle, mais restent en laisse autour de leur socle (24 blocs). Se percher sur un pilier à côté de la bannière ne protège donc plus. Désactivable : objective.defenders.ai.

  17. 10 mini avant-postes faits main

    Sur terrain libre, l’avant-poste tiré est l’un des 10 mini avant-postes bâtis à la main (6 dans l’Overworld, 2 dans le Nether, 2 dans l’End), choisi selon le biome et orienté au hasard ; si aucun n’y tient, le petit camp du plugin prend le relais. Son coffre suit la table de butin vanilla de sa dimension. Il ne se pose jamais sur une structure, une construction de joueur ou un joueur, et quand la zone est remplacée, le terrain revient comme il était.

  18. 10 donjons maison, générés avec le monde

    HordeTown écrit son propre datapack au démarrage (rien de tiers à installer) et le monde génère ses 10 donjons avec les chunks, comme une salle des épreuves : crypte, prison du marais, catacombes de l’ossuaire, forge de basalte, observatoire du Vide… Plus le palier monte, plus ils sont grands, profonds et riches ; /locate structure les trouve. Ils apparaissent au redémarrage suivant, dans les chunks générés ensuite ; leur fréquence se règle (dungeons.frequency, 50 par défaut, soit la moitié de la densité d’origine).

  19. Zones à conquérir : un tirage deux fois par semaine

    Chaque mercredi et chaque dimanche (réglable), entre 10 h et 22 h, de nouvelles zones apparaissent, chacune à son heure et annoncée dans le chat : 3 avant-postes et 3 donjons dans l’Overworld, plus 1 de chaque dans le Nether et dans l’End une fois ces portails ouverts. Chaque zone est gardée par un boss ; la prendre rapporte une prime, la tenir rapporte une rente quotidienne partagée entre tous les membres (900 $ au plus par jour). Une zone reste 7 à 15 jours à sa ville, puis la horde la reprend avec des défenseurs plus forts ; le dimanche, une autre ville peut déjà prendre la moitié la plus ancienne de ses zones, et rien n’est jamais généré pour en poser une.

  20. IA de la horde : escouades, tours d’attaque, sape

    Les mobs d’un même lot marchent en escouades derrière un chef (8 au plus) et sont 4 au plus au contact d’un même joueur : les autres attendent leur tour. La horde creuse selon la dureté des blocs, grimpe les murs de 3 blocs et plus, sape le pilier d’un défenseur perché et reste active même loin des joueurs, avec un budget partagé de 2 ms par tick. Mesuré sur un serveur nu à 4 cœurs (Paper 1.21.11, aucun autre plugin) : 5 sièges simultanés (environ 235 mobs) coûtent 13 ms par tick ; environ 600 mobs, 21 ms en médiane, toujours 20 TPS.

  21. Des journées plus longues, la nuit inchangée

    Le jour dure 1,5 fois plus longtemps (15 minutes réelles au lieu de 10) pour avoir le temps de construire, de miner et de se préparer ; la nuit, qui est la fenêtre du siège, ne bouge pas. Réglable : cycle.day-factor (1.0 = vanilla). Les lits et /time set marchent comme d’habitude.

  22. 90 boss originaux, en cinq hordes

    Le catalogue livré compte 90 boss en cinq hordes de difficulté croissante, des niveaux 1 à 100, avec leur nom en français, en anglais et en italien. Ce sont de petites fiches YAML dans plugins/HordeTown/bosses/ : vous pouvez en ajouter, et une mise à jour garde chaque fiche que vous avez modifiée et ne touche jamais aux vôtres.

Correctifs

Bugs corrigés, exploits fermés, équilibrage ajusté.

  1. Bug

    Villes fondées serveur allumé : la machinerie démarre tout de suite

    La machinerie de siège d’une ville fondée alors que le serveur tourne démarre immédiatement ; avant, il fallait redémarrer, et le méga à la mort du Maire ne se déclenchait pas. Le personnel des villes fondées en direct démarre aussi, et les boss de nuit sont balayés ville par ville.

  2. Bug

    Reprise après crash : une vague interrompue reprend enfin

    Un drapeau « vague en cours » est maintenant tenu par ville. Avant, une vague interrompue par un crash ne reprenait jamais ; le défaut était présent depuis le 16 septembre.

  3. Bug

    Comptoirs et villageois : demande par ville, clients réservés

    La demande des comptoirs est calculée PAR VILLE. Les villageois ne servent que les membres de la ville, les mercenaires engagés et l’admin en bypass ; pas de lit, pas de commerce.

  4. Exploit

    Décors protégés dans un claim, ville fermée par défaut

    Les armor stands, cadres, tableaux, wagonnets et bateaux à coffre sont protégés dans un claim (DecorGuard) et ne se vident ou ne se cassent plus à la main d’un étranger. De plus, guilds.open-join est faux par défaut : rejoindre une ville demande une invitation.

  5. Exploit

    Prime de bienvenue : deux moitiés, un quota, et seulement pour rattraper

    La prime d’un nouveau joueur (50 $ par vague battue par la ville, 2 000 $ au plus) se verse en deux moitiés : la première quand il rejoint une ville, la seconde une fois qu’il a vraiment combattu lors d’un de ses sièges. C’est une prime de rattrapage : une ville qui n’avait encore rien à rattraper quand il y est entré (moins de 3 vagues battues, toujours le cas pour ses fondateurs) ne la lui verse jamais, même plus tard ; elle reste de côté s’il rejoint un jour une ville plus avancée. Une ville en verse au plus 2 par semaine ; si elles sont déjà parties, la prime attend la fin d’un de ses prochains sièges. Une seule prime par compte : multiplier les comptes jetables ne rapporte plus rien.

  6. Exploit

    Fermes à spawners freinées

    Les objets lâchés par les mobs d’un spawner baissent au fil de l’heure : 100 % pour ses 100 premiers mobs tués, 50 % pour les 100 suivants, puis 25 %, avant de remonter à 100 % à chaque nouvelle heure. L’XP et le nombre de mobs ne changent jamais, et la règle est écrite sur la fiche d’achat du spawner, à l’étal de la caravane. Depuis le 27 septembre, seuls les spawners achetés se récupèrent ; un spawner naturel (donjon, mine) se détruit comme en vanilla.

  7. Bug

    /ht admin night fallen : refusée en plein jour au lieu d’échouer en silence

    La commande ne change le ciel que pour les joueurs de la ville, alors que le serveur lit l’heure du monde : lancée en plein jour, elle relevait les Déchus et le soleil les effaçait deux secondes plus tard, juste après avoir annoncé qu’ils étaient relevés. Elle refuse maintenant en plein jour et explique quoi faire (attendre la nuit ou passer le monde en nuit). Au passage, les commandes de nuit étoilée et de présage ne font plus tomber la nuit quand elles sont refusées.

  8. Bug

    Remettre une ville à zéro ne touche plus les autres

    /ht admin reset <ville> effaçait par erreur toutes les villes du serveur. Il ne remet maintenant à zéro que la ville nommée : son Maire, son territoire, son calendrier, ses spécialistes, ses générateurs, ses zones, ses commandes et ses contrats de mercenaires. Les autres villes, le marché, ainsi que l’argent, les compétences et les statistiques des joueurs ne bougent pas.

  9. Bug

    Une ville dissoute libère ses zones tout de suite

    Les zones tenues par une ville qui n’existait plus restaient « tenues » jusqu’au bout de leurs 7 à 15 jours. Elles retombent maintenant aussitôt à la horde, avec une seule annonce pour le serveur, que la ville ait été dissoute par son dernier membre, par un admin ou perdue lors d’une Méga Lune de Sang.

  10. Équilibrage

    Boss plus grands et plus durs

    Les boss nommés ont 50 % de vie en plus et, sauf le colosse, frappent 25 % plus fort, tirs compris. Leur taille grandit aussi : ×1,4 pour les capitaines et les champions de zone, ×1,3 pour les Déchus, ×2,5 pour le colosse du jour (et le capitaine d’une nuit de géants mesure 2,5 fois la taille normale). Un boss ainsi grandi ne peut pas s’étouffer dans un mur ; réglable : bosses.might.

  11. Équilibrage

    Les gardiens des zones suivent le niveau du serveur

    Le niveau d’une garnison était figé au tirage : sur un serveur neuf, tout partait au niveau 1, et un camp tiré tôt restait faible pendant toute sa durée. À chaque réveil, la garnison est maintenant levée à la plus haute vague qu’une ville du serveur a battue, si elle dépasse la sienne (jamais à la baisse). Chaque palier a aussi un plancher : facile 3, moyen 5, difficile 8, Nether 10, End 12.

  12. Équilibrage

    Les costauds creusent plus vite, les cœurs de la horde se voient de loin

    Ravageurs, Wardens, ours polaires, hoglins, zoglins, piglins barbares, vindicateurs et tous les boss percent un mur plus vite que leur santé ne le laisse croire. Le Warden, que les murs arrêtaient toute la nuit, creuse maintenant. Les cœurs et les colonnes que la horde plante au-delà des murs sont aussi signalés par un panache de particules visible jusqu’à 512 blocs, au lieu de 32.

  13. Exploit

    Argent bloqué pour les comptes neufs

    Sur un serveur en mode hors ligne, un nouveau pseudo est un nouveau compte. Un compte doit maintenant avoir joué 120 minutes avant que son argent puisse aller à un autre joueur : /ht pay, achat d’une offre du marché, publication d’une commande. Recevoir, vendre et livrer restent libres ; une taxe et un plafond quotidien sont disponibles en option (pay.*).

  14. Exploit

    Mercenaires plafonnés, payés seulement s’ils se battent

    Une ville ne peut plus engager que 3 mercenaires à la fois (mercenary.max-per-town). Chacun ne touche sa part (10 %) que s’il est connecté et a frappé la horde du siège en cours : on ne peut plus multiplier les comptes secondaires pour encaisser sans combattre.

  15. Bug

    Un fichier de données illisible n’est plus jamais écrasé

    Si un fichier vital (joueurs, villes, zones, marché, commandes, mercenaires…) et sa copie .bak sont illisibles, HordeTown refuse de démarrer et l’explique dans la console, au lieu de repartir de zéro puis d’écraser le fichier à la sauvegarde suivante. Une copie du fichier abîmé est mise de côté : l’admin le répare, ou repart de zéro en connaissance de cause.

  16. Bug

    Commandes : seuls les objets simples se livrent

    On livre une commande par un clic droit sur le Maire, la marchandise en main. Le plugin pouvait alors prendre le premier tas du même matériau trouvé dans l’inventaire, même enchanté, usé ou renommé. Seuls les objets simples (sans enchantement, sans nom, sans usure) sont désormais acceptés, et le tas tenu en main part en premier.

  17. Exploit

    Coffre du colosse : plus de contournement

    Le coffre que laisse le colosse du jour est réservé à la ville qui a le plus frappé. Un rival pouvait pourtant le vider ou le détruire par des moyens détournés (entonnoirs, explosions) : c’est fermé, et la horde ne le casse jamais non plus.

  18. Exploit

    La horde ne tombe plus dans les pièges à trappe ouverte

    Le pathfinding de Minecraft (son calcul de trajet) prend une trappe ou un portillon ouverts pour un sol plein, le vieux défaut derrière les pièges à mobs. La horde repère maintenant ce faux sol sur son chemin : elle le casse quand elle a le droit de creuser à cet endroit, puis recalcule sa route au lieu d’avancer dessus.

  19. Équilibrage

    La horde laisse les animaux et les villageois ordinaires tranquilles

    Un siège laissait derrière lui des moutons, des vaches et des villageois ordinaires morts. Les mobs de vague ne visent plus que les joueurs, le Maire et les spécialistes de la ville ; tout le reste est épargné, même quand il frappe en premier. Seule exception : un golem qui frappe un mob de la horde peut être frappé en retour pendant quelques secondes.

  20. Équilibrage

    Appeler la vague : 5 heures réelles entre deux appels

    /ht callwave fait tomber la prochaine vague dès le crépuscule suivant. Sonner le cor toutes les quelques minutes rendait la progression trop facile : une ville doit maintenant attendre 5 heures réelles entre deux appels réussis (wave.call-cooldown-hours, 0 pour désactiver).

Lire la présentation (PDF)

Démo en direct sur demande

tomboliniwork@gmail.com