Index: src/lang/english.txt =================================================================== --- src/lang/english.txt (revisi¢n: 18673) +++ src/lang/english.txt (copia de trabajo) @@ -1082,6 +1082,13 @@ STR_CONFIG_SETTING_TRAIN_ACCELERATION_MODEL :{LTBLUE}Train acceleration model: {ORANGE}{STRING1} STR_CONFIG_SETTING_TRAIN_ACCELERATION_MODEL_ORIGINAL :Original STR_CONFIG_SETTING_TRAIN_ACCELERATION_MODEL_REALISTIC :Realistic +STR_CONFIG_SETTING_TRAIN_SLOPE_STEEPNESS :{LTBLUE}Slope steepness for trains {ORANGE}{STRING1} +STR_CONFIG_SETTING_TRAIN_SLOPE_STEEPNESS_1 :1% +STR_CONFIG_SETTING_TRAIN_SLOPE_STEEPNESS_2 :2% +STR_CONFIG_SETTING_TRAIN_SLOPE_STEEPNESS_3 :3% +STR_CONFIG_SETTING_TRAIN_SLOPE_STEEPNESS_4 :4% +STR_CONFIG_SETTING_TRAIN_SLOPE_STEEPNESS_5 :5% +STR_CONFIG_SETTING_TRAIN_SLOPE_STEEPNESS_6 :6% STR_CONFIG_SETTING_FORBID_90_DEG :{LTBLUE}Forbid trains and ships to make 90 deg turns: {ORANGE}{STRING1} {LTBLUE} (not with OPF) STR_CONFIG_SETTING_JOINSTATIONS :{LTBLUE}Join train stations built next to each other: {ORANGE}{STRING1} STR_CONFIG_SETTING_DISTANT_JOIN_STATIONS :{LTBLUE}Allow to join stations not directly adjacent: {ORANGE}{STRING1} Index: src/settings_gui.cpp =================================================================== --- src/settings_gui.cpp (revisi¢n: 18673) +++ src/settings_gui.cpp (copia de trabajo) @@ -1427,6 +1427,7 @@ static SettingEntry _settings_vehicles_trains[] = { SettingEntry("vehicle.train_acceleration_model"), + SettingEntry("vehicle.train_slope_steepness"), SettingEntry("vehicle.mammoth_trains"), SettingEntry("gui.lost_train_warn"), SettingEntry("vehicle.wagon_speed_limits"), Index: src/table/settings.h =================================================================== --- src/table/settings.h (revisi¢n: 18673) +++ src/table/settings.h (copia de trabajo) @@ -372,6 +372,7 @@ SDT_CONDVAR(GameSettings, economy.found_town, SLE_UINT8,128, SL_MAX_VERSION, 0,MS,TF_FORBIDDEN,TF_BEGIN,TF_END - 1, 1, STR_CONFIG_SETTING_TOWN_FOUNDING, TownFoundingChanged), SDT_VAR(GameSettings, vehicle.train_acceleration_model, SLE_UINT8, 0,MS, 0, 0, 1, 1, STR_CONFIG_SETTING_TRAIN_ACCELERATION_MODEL, TrainAccelerationModelChanged), + SDT_CONDVAR(GameSettings, vehicle.train_slope_steepness, SLE_UINT8,133, SL_MAX_VERSION, 0,MS, 3, 1, 6, 1, STR_CONFIG_SETTING_TRAIN_SLOPE_STEEPNESS, NULL), SDT_BOOL(GameSettings, pf.forbid_90_deg, 0, 0, false, STR_CONFIG_SETTING_FORBID_90_DEG, NULL), SDT_BOOL(GameSettings, vehicle.mammoth_trains, 0,NN, true, STR_CONFIG_SETTING_MAMMOTHTRAINS, NULL), SDT_BOOL(GameSettings, order.gotodepot, 0, 0, true, STR_CONFIG_SETTING_GOTODEPOT, NULL), Index: src/train_cmd.cpp =================================================================== --- src/train_cmd.cpp (revisi¢n: 18673) +++ src/train_cmd.cpp (copia de trabajo) @@ -523,9 +523,9 @@ if (u->track == TRACK_BIT_DEPOT) max_speed = min(max_speed, 61); if (HasBit(u->flags, VRF_GOINGUP)) { - incl += u->tcache.cached_veh_weight * 60; // 3% slope, quite a bit actually + incl += u->tcache.cached_veh_weight * 20 * _settings_game.vehicle.train_slope_steepness; } else if (HasBit(u->flags, VRF_GOINGDOWN)) { - incl -= u->tcache.cached_veh_weight * 60; + incl -= u->tcache.cached_veh_weight * 20 * _settings_game.vehicle.train_slope_steepness; } } Index: src/settings_type.h =================================================================== --- src/settings_type.h (revisi¢n: 18673) +++ src/settings_type.h (copia de trabajo) @@ -307,6 +307,7 @@ struct VehicleSettings { bool mammoth_trains; ///< allow very long trains uint8 train_acceleration_model; ///< realistic acceleration for trains + uint8 train_slope_steepness; ///< Steepness of hills for trains when using realistic acceleration bool wagon_speed_limits; ///< enable wagon speed limits bool disable_elrails; ///< when true, the elrails are disabled UnitID max_trains; ///< max trains in game per company Index: src/saveload/saveload.cpp =================================================================== --- src/saveload/saveload.cpp (revisi¢n: 18673) +++ src/saveload/saveload.cpp (copia de trabajo) @@ -47,7 +47,7 @@ #include "saveload_internal.h" -extern const uint16 SAVEGAME_VERSION = 132; +extern const uint16 SAVEGAME_VERSION = 133; SavegameType _savegame_type; ///< type of savegame we are loading