Dynamique du marché

  • Dynamique du marché
  • Dynamique du marché
  • Dynamique du marché
  • Dynamique du marché
tisonK
495 abonnés
V1.2.0.8
18 694

Dynamique du marché FS25 – Tarification dynamique des cultures

Tarification des cultures inspirée du monde réel pour Farming Simulator 25. Les prix augmentent et diminuent quotidiennement et intrajournalièrement en fonction des événements mondiaux, de l'offre et de la demande, de sorte qu'il n'y a pas deux parties identiques. Bloquez les contrats à terme, surmontez les chocs du marché et regardez tout cela sur un écran de marché en direct. Les marchés restent volatils mais jamais absurdes, coincés entre 50 % et 200 % de la base.

✨ Caractéristiques
- Moteur de tarification dynamique
- Dix événements mondiaux
- Contrats à terme
- Écran de marché en direct
- Événements configurables
- Synchronisation multijoueur
- Intégrations de modules
- 26 langues

🎮 Contrôles
- Boîte de dialogue Ouvrir un nouveau contrat : N (ou cliquez sur "Nouveau contrat" sur l'écran Marché)

Notez que tout fait autorité sur le serveur en multijoueur et que vous pouvez supprimer le mod en toute sécurité en cours de sauvegarde, il ignore simplement ses données au prochain chargement !

Fonctionne très bien avec : FS25_FuturesMission et FS25_UsedPlus (les intégrations s'activent automatiquement lorsqu'elles sont détectées).
Mission Futures : https://github.com/Mmtrx/FS25_FuturesMission

====================================================================
Dépôt GitHub :
https://github.com/TheCodingDad-TisonK/FS25_MarketDynamics]
====================================================================
AVIS DE COPYRIGHT :
Tous droits réservés. Redistribution, copie,
toute modification ou revendication de ce mod comme étant le vôtre est strictement interdite.

Auteur original : TisonK
====================================================================

Serveur
Consoles
Changelog
22
  • [ Quoi de neuf ]
    - Les alertes d'événements mondiaux apparaissent désormais sous la forme d'une bannière non modale au lieu d'une fenêtre contextuelle qui interrompt ce que vous faites.
    - Nouveau paramètre "Bannière d'événement compacte" si vous préférez une alerte plus petite (la boîte de dialogue complète reste la valeur par défaut).

    [Corrections]
    - Les contrats à terme sont désormais réglés au prix exact que vous avez bloqué.
    - Les horaires des contrats se synchronisent correctement sur les serveurs dédiés (corrige un décalage multijoueur).

  • - Crash du serveur dédié : remplacement de streamWriteFloat64 (indisponible sur les versions dédiées) par streamWriteInt32 (secondes) pour le délai de livraison du contrat
    - Livraison du contrat comptée deux fois : suppression du hook addFillLevelFromTool – les stations de vente standard appellent les deux hooks au même niveau de pile, contournant la garde de réentrée et gonflant la progression du contrat à 2×
    - Trop d'événements sur Rare : échelle de fréquence Rare réduite de 0,4 → 0,15 ; ajout d'un plafond par contrôle de 1 nouvel événement avec un ordre mélangé pour éviter les tempêtes d'événements
    - Changement de paramètre de fréquence retardé : la minuterie des événements mondiaux se réinitialise désormais immédiatement lorsque eventFrequency ou eventsEnabled modifie les paramètres.

  • - Panneau de paramètres supprimé des paramètres du jeu
    - Panneau de paramètres personnalisés intégré (DOIT ÊTRE LIÉ)

  • - Remplacement des indicateurs ▲/▼ car FS25 ne l'aime pas
    - Correction de l'erreur « nill » due à la chaîne l10n manquante
    - Mise à jour de tous les fichiers de traduction (de nouvelles clés ont été ajoutées)

  • - Cliquez sur l'en-tête de colonne Recadrer, Prix ou Modifier dans l'onglet Prix pour trier la liste — cliquez à nouveau pour inverser la commande. Une petite flèche ▲/▼ indique quelle colonne est active.

    - MDM utilise désormais correctement les prix de base fixés par le mod Realistic Economy. Si vous avez installé les deux, les fluctuations de prix et les événements mondiaux de MDM s'ajouteront aux prix réels de REM au lieu de les ignorer.

  • Les administrateurs du serveur dédié n'ont pas pu ajouter ou supprimer des types de remplissage personnalisés de
    événements mondiaux – les changements semblaient fonctionner mais revenaient silencieusement à chaque fois. Ceci
    la mise à jour corrige ce problème et facilite également la recherche des noms de cultures sur les serveurs
    exécutant de nombreux mods de cultures.

    Ce qui est corrigé/Quoi de neuf :

    • Les types de remplissage personnalisés sont désormais correctement enregistrés pour les administrateurs de serveur dédié – plus rien.
    les modifications disparaissent après la fermeture de la boîte de dialogue
    • La suppression d'un type de remplissage d'une liste d'événements reste désormais effective (ferme le numéro 77)
    • La boîte de dialogue « Parcourir les types de remplissage » comporte une nouvelle barre de recherche en temps réel : saisissez une partie d'un
    nom du recadrage pour filtrer instantanément la liste au lieu de faire défiler plus de 100 entrées
    • Toutes les langues existantes mises à jour avec le nouveau libellé de recherche

    Aucune migration de sauvegarde n'est nécessaire : les sauvegardes existantes se chargent normalement.

  • - Correction du contrat par défaut au redémarrage en conservant le temps de jeu absolu et en ajoutant un garde de synchronisation dans la boucle de mise à jour.
    - Implémenter une action « Forfait » pour les propriétaires de contrats, permettant aux clients non-administrateurs sur des serveurs dédiés de gérer leurs propres contrats.
    - Refactoriser la sérialisation XML pour utiliser l'API de classe XMLFile FS25 moderne, améliorant ainsi la stabilité et corrigeant les erreurs de script liées au type.
    - Correction d'une boucle infinie dans la logique de chargement d'UPIntegration qui provoquait le blocage du jeu à 100 % de chargement.
    - Supprimez les erreurs « Échec de l'ouverture du XML » pour les fichiers de configuration hérités manquants.
    - Assurer des vérifications d'autorisation appropriées pour les administrateurs et les utilisateurs principaux sur les éléments de l'interface utilisateur.

  • Market Dynamics réagit désormais à ce qui se passe dans le monde. Si le monde est aléatoire
    Les événements déclenchent un krach boursier, les prix le refléteront. Si vos champs sont sous
    En raison du stress généralisé sur les cultures, la pression de l’offre fait grimper les prix.

    Quoi de neuf/corrigé :
    - Intégration d'événements mondiaux aléatoires : événements économiques et sur le terrain actifs maintenant
    modifier directement les prix des cultures (boom du marché +12 %, krach -13 %, exportations
    opportunité +18%, crise économique -20%, et plus)
    - Intégration du stress saisonnier des cultures : lorsque plusieurs de vos champs sont soumis
    stress critique, une légère augmentation des prix sous pression sur l’offre se déclenche
    - L'unité de délai de livraison (jours réels vs jours en jeu) est désormais une unité globale unique.
    paramètre dans ESC> Paramètres> Dynamique du marché au lieu d'un contrat par contrat
    choix — les contrats existants ne sont pas affectés
    - Nouveau HUD de contrat affichant vos contrats actifs en un coup d'œil
    - Alertes d'événements repensées avec des notifications plus propres
    - Correction des contrats ne se complétant pas correctement dans les points de vente
    - Correction de l'heure de début de livraison qui n'était pas enregistrée correctement lors des rechargements
    - Correction d'un avertissement d'échelle de temps qui pouvait se déclencher incorrectement lors d'une avance rapide
    - Boîte de dialogue Parcourir les types de remplissage pour une configuration d'événement plus facile
    - Livraison immédiate du contrat maintenant disponible
    - Les paramètres d'événement se synchronisent correctement en multijoueur

    Enregistre : aucune migration nécessaire. Les contrats existants sont reportés.

  • - Ajout d'un nouveau HUD lorsqu'il y a un contrat actif
    - Ajout d'une boîte de dialogue qui apparaît lorsqu'un événement a commencé
    - Ajout de nouvelles chaînes aux 25 fichiers de traduction
    - Correction d'un problème où les contrats conclus ne pouvaient pas être exécutés lors du déchargement à la station de vente
    - Ajout de chaînes manquantes dans tous les fichiers de traduction

  • - Ajout d'un nouveau HUD lorsqu'il y a un contrat actif
    - Ajout d'une boîte de dialogue qui apparaît lorsqu'un événement a commencé
    - Ajout de nouvelles chaînes aux 25 fichiers de traduction

  • - Ajout des champs deliveryStartTime et bcManaged manquants à MarketSerializer et à la synchronisation réseau (#64)
    - Correction du décalage du délai d'intégration BCIntegration pour utiliser DaysPerPeriod (#64)
    - Ajout de crochets UPIntegration et de clés de suppression de modificateur fixes (#64)
    - Ajout des solutions de repli onLoad et getExtraData à tous les événements sans état pour la sécurité de la sauvegarde du chargement (#64)
    - Correction de l'application de type de remplissage supplémentaire en double de TradeDisruptionEvent (#64)
    - Ajout d'un délai de grâce de début de session à MarketDynamics pour empêcher les défauts de contrat immédiats au redémarrage du serveur (#63, #60)
    - Implémentation de MDMMarketSyncEvent pour synchroniser les prix des serveurs et les événements actifs avec les clients, corrigeant les désynchronisations (#62)
    - Ajout d'une logique déterministe d'exécution du contrat le plus ancien en premier
    - Enregistrement des boîtes de dialogue manquantes et ajout de gardes nulles sur les systèmes principaux

  • - Parcourir les types (étendu) — Vous pouvez désormais ajouter des types de remplissage individuels directement aux événements via l'interface utilisateur du navigateur.
    - Gestion des produits étendue — les événements prennent désormais en charge tous les types de remplissage, pas seulement les cultures
    - Paramètres d'événements multijoueurs/serveur dédié améliorés pour une meilleure cohérence et fiabilité
    - Problème d'achèvement des contrats qui pourrait empêcher les contrats de se terminer correctement

  • - Création de MDMSettingsSyncEvent.lua : un nouvel événement réseau qui gère la synchronisation de tous les paramètres (basculements de prix, fréquence des événements, volatilité, événements désactivés et types de fruits personnalisés) entre le serveur et tous les clients connectés.
    - Synchronisation lors de l'adhésion : lorsqu'un nouveau joueur rejoint le serveur, il reçoit désormais automatiquement tous les paramètres actuels du serveur afin de voir exactement ce que l'hôte voit.
    - Mises à jour en temps réel : chaque fois qu'un joueur (avec autorisation) modifie un paramètre dans l'interface utilisateur des paramètres ou dans les boîtes de dialogue Paramètres d'événement, cette modification est désormais instantanément diffusée au serveur et à tous les autres clients.
    - Persistance côté serveur : étant donné que le serveur reçoit désormais ces mises à jour en temps réel, il inclura correctement vos types de fruits personnalisés lors de la prochaine sauvegarde du jeu.

  • - Les contrats se synchronisent désormais correctement avec tous les clients sur un serveur dédié
    - Correction d'un échec de chargement causé par des chemins de fichiers incorrects dans le mod zip
    - Le basculement de l'unité de temps (heures/jours) a été déplacé dans la boîte de dialogue du contrat à laquelle il appartient
    - Fenêtre contextuelle de saisie du contrat relookée et repositionnée - plus de champ de texte tronqué
    - Suppression d'un panneau de paramètres restant qui provoquait des conflits d'onglets en multijoueur
    - Paramètres d'événement est désormais un bouton de pied de page (à côté de Nouveau contrat), plus facile à trouver

  • - Amélioration de tous les dialogues (devraient être moins bruyants)
    - 2 nouvelles options de création de contrat (montant personnalisé et jours personnalisés)
    - Ajout d'une bascule d'unité de temps pour choisir entre les jours en jeu et les jours réels
    - Refonte des commandes d'administration
    - Plusieurs petits bugs corrigés

  • Au lieu de choisir parmi des quantités prédéfinies, vous pouvez désormais saisir n'importe quelle quantité (litres ou unités) à l'aide de la nouvelle boîte de dialogue de saisie personnalisée. Idem pour les fenêtres de livraison : saisissez n'importe quel nombre de jours dans le jeu ou dans le monde réel.

    [Enregistrer le correctif du chemin]
    - Le fichier de sauvegarde n'est plus créé dans un sous-dossier de votre répertoire de sauvegarde. Cela résout un problème où les serveurs dédiés rejetaient les sauvegardes téléchargées. Les sauvegardes existantes de la v1.1.4.x sont automatiquement migrées lors du premier chargement.

    [Disposition des boutons de boîte de dialogue]
    - Les boutons de quantité prédéfinie dans la boîte de dialogue des contrats à terme ne débordent plus en dehors des limites de la boîte de dialogue.

    [Boîte de dialogue de saisie personnalisée]
    - Le texte de l'indice au bas de la boîte de dialogue de saisie personnalisée est désormais entièrement visible (il était tronqué dans la mise en page précédente).

    Journal des modifications complet -> https://github.com/TheCodingDad-TisonK/FS25_MarketDynamics/blob/main/CHANGELOG.md

  • FS25_FuturesMission a été mis à jour -> https://github.com/Mmtrx/FS25_FuturesMission/releases/tag/v1.1.0.1

    L'onglet Dynamique du marché écrasait l'onglet PARAMÈTRES DU SERVEUR lors de la lecture sur un serveur multijoueur. L'onglet MDM s'insère désormais toujours après tous les onglets de jeu existants (y compris l'onglet PARAMÈTRES DU SERVEUR réservé aux MP) et récupère automatiquement si quelque chose change la position des onglets.

  • 3 nouveaux événements ajoutés !

    - ColdSnapEvent.lua — événement de gel dans des directions mixtes ; céréales/oléagineux en hausse, fourrage en baisse ; persistance complète de sauvegarde/chargement via getExtraData/onLoad
    - FinancialPanicEvent.lua — choc macroéconomique du cygne noir ; supprime toutes les cultures simultanément ; sol rare et de haute intensité
    - ProteinPremiumEvent.lua — tendance des protéines tirées par la demande ; stimule le soja/canola et le blé/orge de mouture à des taux différents
    - Clés de traduction mdm_event_cold_snap, mdm_event_financial_panic, mdm_event_protein_premium ajoutées aux 26 fichiers de langue

  • - Les contrats à terme ne font plus immédiatement défaut lors du premier rechargement après la signature
    - Prise en charge multijoueur complète des contrats à terme. Toutes les actions du contrat (créer, compléter, annuler, supprimer) sont désormais envoyées au serveur pour une exécution faisant autorité et synchronisées avec tous les clients connectés.

  • Cette mise à jour apporte une intégration complète avec FS25_FuturesMission (par Mmtrx), corrige plusieurs bugs de contrat et de tarification qui se sont glissés depuis le lancement et nettoie les messages déroutants dans le jeu afin que vous sachiez toujours où aller.

    Quoi de neuf/corrigé :
    • Intégration de FuturesMission : lorsque FS25_FuturesMission est installé, les contrats à terme sont créés via le flux de mission BetterContracts et MDM gère automatiquement la tarification.
    • Migration des sauvegardes : les contrats MDM existants sont transmis proprement à FuturesMission lors du premier chargement ; aucune étape manuelle n'est nécessaire
    • Prix fixes affichant parfois 0 $ sur l'écran du marché
    • Correction de la liste des contrats ne répondant pas aux clics dans certaines situations
    • Correction d'un gel du jeu qui pouvait survenir en appuyant sur Nouveau contrat avec BetterContracts actif.
    • Correction des délais de contrat et des minuteries d'événements désynchronisées au cours de longues sessions de jeu.
    • Les messages dans le jeu nomment désormais correctement FS25_FuturesMission et vous indiquent où l'obtenir si vous ne l'avez pas.

    Aucune migration de sauvegarde n'est nécessaire : votre sauvegarde existante fonctionne telle quelle.

  • Les contrats à terme suivent désormais correctement les livraisons de récoltes. Auparavant, les contrats étaient bloqués à 0 % d'exécution, quelle que soit la quantité livrée. (PriceHook.lua — utilisez fillDelta au lieu de la valeur de retour sellFillType, qui n'est pas le nombre de litres accepté dans FS25.)

Mods requis
1
Crédits
Commentaires
27