Je sais pas si tu as trouvé un moyen mais voici ma proposition pour déterminer la vitesse du transport entre A et B
Chateau A : Xa, Ya
Chateau B : Xb, Yb
Distance entre les 2 points : Ca c'est pas compliqué (tu connais la formule)
Niveau de transport de la zone : L'idée est de tracer un rectangle sur la carte avec les positions des 2 chateaux comme coin opposé au rectangle. De calculer le % de case de type route et d'ajouter ce % à la vitesse de base (sans route)
Donc tu prends toutes les cases de type route entre [Xa-Ya], [Xa-Yb], [Xb-Ya], [Xb-Yb].
Exemple :
10 cases de type chemin de terre
5 cases de type chemin de pierre (*3 car route meilleurs que terre)
sur un rectangle qui fait 200 cases
Cela donne (10+5*3)/200 = 12.5%. Ce % peut être multiplié par un coéficient genre *2 ou *3
Niveau de transport de vendeur : En fonction du niveau de commerce du joueur faire évoluer la vitesse
Au final:
vitesse = Distance * (vitesse de base * % de zone * 1.05 Exp(Niv commerce ou niv de transport)