SyssonBen écoute je suis en train de regarder sur la map en ce moment et je ne comprends pas du tout ce que tu essayes de faire avec ce dépot en stop intermédiaire, désolé
A la base, je voulais faire un système "simple" à partir des règles vanilla du jeu en jouant sur le fait qu'une station soit active ou non en fonction de sa situation (pas assez de ressources pour une station "provider" ou "trop" de ressources pour une station requester -> désactivation). L'idée était alors que toutes les stations qui ont besoin de la même ressource (ou qui fournissent la même ressource) aient le même nom (par ex, "charbon-out" pour les stations qui fournissent du charbon, et "charbon-in" pour celles qui en attendent). Ainsi, un même train peut aller dans l'un des "charbon-out" pour se charger, et délivrer les ressources dans l'un des "charbon-in".
Le problème que ça pose, c'est que le train va toujours choisir, parmi les N stations qui ont le même nom, celle qui est la plus proche. Du coup, ça risque de créer un phénomène de surcharge (une station va recevoir bien plus que ce dont elle a besoin), de famine (les N-1 autres stations ne vont rien recevoir), voir d'épuisement "non-homogène" (on va toujours puiser au même endroit, même si c'est "vide" !). Mon idée était donc de désactiver les stations en fonction de leur état : une station "provider" se coupe quand elle n'a pas de quoi remplir un train (ça limite l'épuisement "non-homogène", mais ça évite aussi qu'un train ne vienne pour rien), et qu'une station "requester" se coupe quand elle a assez de ressources (ça évite la surcharge, et ça va permettre aux autres stations, plus éloignées, de recevoir le matériel). Jusque là, tout va bien
Je pensais (à tort !) que quand un train devait joindre une station désactivée, qu'il se stoppait en attendant qu'elle s'active à nouveau. Si on suppose que c'est le comportement des trains (ce n'est pas le cas), ça veut dire qu'un train pouvait attendre bêtement dans une station (et donc bloquer éventuellement d'autres trains) ou, si plusieurs trains font le même approvisionnement, que l'un d'eux s'arrête bêtement au milieu de nul part et bloque le trafic. C'est pour ça que j'ai mis un "dépôt" par lequel les trains doivent toujours passer, pensant que si la station suivante dans la liste était inactive, il attendrait sagement au dépôt qu'elle se ré-active.
Sauf qu'évidemment, ce n'est pas le cas. Quand une station est désactivée, le train passe d'office à la suivante. Le "dépôt" ne sert donc à rien dans la situation actuelle (à part charger en carburant, mais on peut le faire ailleurs). Et puisqu'un train avec une destination désactivée passe automatiquement à la station suivante, ça veut dire qu'un train qui fait, par exemple, "charbon-out" puis "charbon-in" et qui voit "charbon-in" inactif (car il y a assez de charbon) va pour l'instant faire en boucle "charbon-out" puis "dépôt". On ne gagne donc rien avec ce système, à part d'avoir des trains qui circulent en permanence même quand c'est pas nécessaire. Evidemment, l'avantage d'avoir un "dépôt central", c'est qu'on peut centraliser le ravitaillement en carburant, mais qu'on pourra aussi envisager des systèmes bien plus complexes par la suite, grâce aux circuit networks
Donc, à ta convenance, on peut le supprimer pour simplifier le réseau et les itinéraires (il faut juste mettre le ravitaillement en carburant dans la base principale, mais c'est facile à faire vu que ça s'y trouvait y a 2 jours
) et si un jour on en a besoin (genre si on passe à LTN ou qu'on veut implémenter le système nous mêmes), il sera toujours temps de le re-construire