Modding d'Hytale
Information vérifiée

Questions-Réponses des développeurs et informations techniques

Résumé complet des informations techniques données par les développeurs d'Hytale, couvrant l'architecture, le modding, les systèmes de gameplay, et la philosophie de développement.

Questions-Réponses des développeurs et informations techniques

Cette session étendue de Questions-Réponses avec les développeurs d'Hytale révèle des détails techniques critiques sur l'architecture du jeu, la philosophie de modding, les systèmes de gameplay, et l'approche de développement.

Architecture technique

Réseau et infrastructure

  • Protocole : QUIC (un UDP fiable avec des canaux peu fiables) au lieu de TCP
  • Compatibilité des serveurs : fonctionne sur toute plateforme supportant Java 25
  • Méthode de connexion : entrer l'adresse IP du serveur au début, page de découverte de serveurs prévue après la sortie
  • Couche de données : le format de sérialisation personnalisé actuel sera remplacé après la sortie
  • Performances : prise en charge multicœur - chaque monde à un thread principal + des exécutions parallèles
  • Rendu : OpenGL 3.3 pour la compatibilité avec Mac, future migration potentielle sur Vulkan/Metal
  • Modèle de Tick : la fréquence de ticks de base du serveur est de 30 TPS (ticks par secondes) ; peut être modifié en utilisant des plugins serveur

Sécurité et distribution

  • Pas d'exécution de code côté-client : empêche les failles d'exécution de code à distance
  • Téléchargements limités à : fichiers de configuration et assets uniquement
  • Distribution des mods : plateformes communautaires (CurseForge, Modrinth), pas de marché immédiat en jeu
  • Hébergement de serveurs : disponible dès le jour 1, pas d'accord commercial requis (seulement l'EULA (en français : CLUF) et TOS (en français : CGU))

Capacités de modding

La puissance du côté-serveur

  • Accès Java complet : connexions aux bases de données, requêtes web, toutes les fonctionnalités de Java
  • Librairies personnalisées : possibilité de créer des scripts Lua, des frameworks ML ou n'importe quelle bibliothèque Java
  • Modification du serveur : le code source partagé permet des modifications lourdes du serveur
  • Hot Reload : supporté pour la plupart des types d'assets
  • Documentation : GitBook public planifié, bien qu'initialement éparpillé

Création de contenu (Aucun code requis)

  • Génération du monde : Biomes et cartes personnalisés sans besoin de Java
  • PNJs et objets : configurations basées sur JSON
  • Recettes : système basé sur les données
  • Visual Scripting : Remplace les blocs de commandes, entièrement en bac à sable
  • Système de préfabriqués : blocs de construction sophistiqués avec un éditeur en jeu

Modding avancé

  • Système de combat : système d'interaction basé sur les données pour les combos d'attaque et les capacités
  • Sous-boîtes de collision : support des mécaniques complexes des boss (nécessite une amélioration)
  • Effets de statut : système de buff/debuff avec des effets et des statistiques personnalisés
  • Interface utilisateur personnalisée : la transition vers NoesisGUI permet une personnalisation puissante de l'interface
  • Physique des blocs : système sélectif (les arbres tombent, mais pas les blocs placés)

Systèmes de gameplay

Mécaniques principales

  • Système d'endurance : pas de système de faim par défaut (peut être moddé)
  • Gravité : physique des blocs sélective - les arbres s'effondrent, mais les bâtiments peuvent flotter
  • Éclairage : refonte majeure pour corriger les incohérences des modèles/voxels
  • Hauteur du monde : actuellement limitée, pourrait changer avec des mises à jour du stockage des voxels
  • Automatisation : pas d'équivalent à la redstone au lancement (mais pourrait être moddé)

Systèmes liés au joueur

  • Modèles de personnages : humains par défaut, peut être modifié en mode créatif
  • Avatars multijoueurs : contrôlés par le serveur (pas de modèles personnalisés en multijoueur)
  • Skins : personnalisation complète possible ("Moddez vous en une pomme de terre")
  • Changement de forme : les potions de transformation existent pour le fun/modding

Monde et PNJs

  • Système de factions : monde vivant avec des interactions dynamiques avec les PNJs
  • Système de villages : villages dynamiques prévus avec des relations et des comportements
  • Chargement des chunks : les entités se déchargent lorsqu'elles sont en dehors de la distance de rendu de tous les joueurs
  • Graines de génération : support du partage de graines de génération de monde

Philosophie de développement

Stratégie de sortie

  • Priorité du jeu de base : le mode Aventure est le principal objectif, l'architecture du modding le supporte
  • Dette technique : reconnue comme nécessaire pour la sortie, engagement d'amélioration
  • Fréquence de mise à jour : des mises à jour très fréquentes sont prévues, en particulier après le lancement
  • Politique de version : toujours la dernière version, mais les serveurs peuvent exécuter des versions modifiées

Points concernant la communauté

  • Support des créateurs : primes de développement prévues pour les contributeurs de la communauté
  • Tutoriels : des tutoriels officiels de modding sont prévus avec des partenaires
  • Intégration des commentaires : un engagement fort envers les améliorations proposées par la communauté
  • Accessibilité : conçu pour un matériel bas de gamme, et des exigences système sont raisonnables

Outils et documentation

  • Intégration Blockbench : remplace l'éditeur de modèle personnalisé d'Hytale
  • Outils de machinima : capacités de création cinématographique complètes
  • Outils créatifs : une révélation majeure est prévue concernant les fonctionnalités de construction/création
  • Acces aux sources : le code source du serveur ne sera pas obfusqué et contiendra les commentaires des développeurs

Support des plateformes

  • Actuellement : Windows (principalement)
  • Prévu : le support de Mac/Linux est activement en développement
  • Réalité virtuelle : impossible dans un futur proche
  • Performances : fréquence d'images non plafonnée, conçu pour l'accessibilité
  • Jeu hors ligne : le mode solo fonctionne sans connexion internet

Monétisation et mentions légales

  • Pas de Pay-to-Win : engagement strict contre les mécaniques P2W
  • Cosmétiques seulement : packs de cosmétiques à bas prix pour supporter l'infrastructure
  • EULA serveur : conditions en cours de finalisation pour les politiques de monétisation des serveurs
  • Blocage QUIC : problème reconnu dans certaines régions, pas de protocole alternatif

Limitations actuelles

  • Shader personnalisé : non supportés jusqu'à ce qu'une solution bac à sable soit trouvée
  • Limitations de l'interface utilisateur / des inputs : en cours d'extension, mais actuellement restreint
  • Documentation : sera éparpillée au début, mais va s'améliorer au cours du temps
  • Mods client : pas d'exécution de code côté-client pour des raisons de sécurité
  • Nameplates : personnalisation actuellement limitée

Cette base technique complète place Hytale en tant que plateforme sécurisée et extensible qui donne le pouvoir aux créateurs tout en maintenant leur performance, leur accessibilité, et leur engagement à une amélioration continue.