(svn r21712) -Change: Tune 'realistic' acceleration even more to make more trains reach their top speed.

pull/155/head
michi_cc 14 years ago
parent 679afa362e
commit c1091569d0

@ -127,7 +127,7 @@ int GroundVehicle<T, Type>::GetAcceleration() const
} }
/* Air drag; the air drag coefficient is in an arbitrary NewGRF-unit, /* Air drag; the air drag coefficient is in an arbitrary NewGRF-unit,
* so we need some magic conversion factor. */ * 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(); resistance += this->GetSlopeResistance();
@ -151,7 +151,8 @@ int GroundVehicle<T, Type>::GetAcceleration() const
} }
if (mode == AS_ACCEL) { 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 { } else {
return min(-force - resistance, -10000) / mass; return min(-force - resistance, -10000) / mass;
} }

@ -462,11 +462,10 @@ protected: // These functions should not be called outside acceleration code.
*/ */
FORCEINLINE uint32 GetRollingFriction() const FORCEINLINE uint32 GetRollingFriction() const
{ {
/* Rolling friction for steel on steel is between 0.1% and 0.2%, /* 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.
* The friction coefficient increases with speed in a way that * The friction coefficient increases with speed in a way that
* it doubles at 512 km/h, triples at 1024 km/h and so on. */ * 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;
} }
/** /**

Loading…
Cancel
Save