mirror of
https://github.com/OpenTTD/OpenTTD.git
synced 2025-03-06 14:27:16 +00:00
(svn r21712) -Change: Tune 'realistic' acceleration even more to make more trains reach their top speed.
This commit is contained in:
parent
6a38f88bd1
commit
868d035b45
@ -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…
Reference in New Issue
Block a user