diff options
author | michi_cc <michi_cc@openttd.org> | 2011-01-04 18:12:28 +0000 |
---|---|---|
committer | michi_cc <michi_cc@openttd.org> | 2011-01-04 18:12:28 +0000 |
commit | 868d035b45a10e0a84c2e687bb7229cd4285073d (patch) | |
tree | 82b17c5954e71ce60625ac8bc9b5add5c200eab6 /src | |
parent | 6a38f88bd1f62cfa7a5459dfca670d6f09d4c8f1 (diff) | |
download | openttd-868d035b45a10e0a84c2e687bb7229cd4285073d.tar.xz |
(svn r21712) -Change: Tune 'realistic' acceleration even more to make more trains reach their top speed.
Diffstat (limited to 'src')
-rw-r--r-- | src/ground_vehicle.cpp | 5 | ||||
-rw-r--r-- | src/train.h | 5 |
2 files changed, 5 insertions, 5 deletions
diff --git a/src/ground_vehicle.cpp b/src/ground_vehicle.cpp index 80a43b6a3..cc2360d3f 100644 --- a/src/ground_vehicle.cpp +++ b/src/ground_vehicle.cpp @@ -127,7 +127,7 @@ int GroundVehicle<T, Type>::GetAcceleration() const } /* Air drag; the air drag coefficient is in an arbitrary NewGRF-unit, * so we need some magic conversion factor. */ - resistance += (area * this->gcache.cached_air_drag * speed * speed) / 500; + resistance += (area * this->gcache.cached_air_drag * speed * speed) / 1000; resistance += this->GetSlopeResistance(); @@ -151,7 +151,8 @@ int GroundVehicle<T, Type>::GetAcceleration() const } if (mode == AS_ACCEL) { - return (force - resistance) / (mass * 2); + /* Divide by 4 to compensate for the wacky game scale. */ + return (force - resistance) / (mass * 4); } else { return min(-force - resistance, -10000) / mass; } diff --git a/src/train.h b/src/train.h index 4cc9ea7a2..1b472d4c4 100644 --- a/src/train.h +++ b/src/train.h @@ -462,11 +462,10 @@ protected: // These functions should not be called outside acceleration code. */ FORCEINLINE uint32 GetRollingFriction() const { - /* Rolling friction for steel on steel is between 0.1% and 0.2%, - * but we use a higher value here to get better game-play results. + /* Rolling friction for steel on steel is between 0.1% and 0.2%. * The friction coefficient increases with speed in a way that * it doubles at 512 km/h, triples at 1024 km/h and so on. */ - return 30 * (512 + this->GetCurrentSpeed()) / 512; + return 15 * (512 + this->GetCurrentSpeed()) / 512; } /** |