Страница 1 из 1

Скорость малого транспорта

Добавлено: 25 окт 2009, 13:55
Kotyara
Объясните пожалуйста, почему у малого транспорта при установленом на нем Импульсном двигателе и базовой скорости 10000 скорость полета растет не на 20% при каждом уровне развития импульсного двигателя, а лишь на 10% (как при ракетном)?

Например:
Уровень ИД: 7
Скорость МТ: 17000 (базовая 10000)

Re: Скорость малого транспорта

Добавлено: 05 ноя 2009, 01:04
Lustrator
Кстати довольно интересный вопрос, хотелось бы услышать на него ответ)

Re: Скорость малого транспорта

Добавлено: 05 ноя 2009, 02:41
dioan
самому стало интересно
попытался построить формулу расчета ...

1. что влияет на скорость
- уровень технологий двигателей
- уровень офицера - генерал


2. обозначение переменных
базовая скорость - Bv
реактивный двигатель - Rm
импульсный двигатель - Im
офицер "Генерал" - Of_gen
процент увеличения мощности при уровне генерала - Of_general_persent
процент увеличения - persent

3. расчет

Для большого транспорта (используется только реактивный двигатель, базовая скорость Bv_bt=7500, persent_Rm = 0,1, Of_general_persent=0.25)
V_bt = Bv_bt + Bv_bt*Of_general_persent*Of_general + (Bv_bt + Bv_bt* (Rm-1)*persent_Rm)

если подставим константы то получим следующую формулу

V_bt = Bv_bt + Bv_bt*0.25*Of_general + (Bv_bt + Bv_bt* (Rm-1)*0.1)

Для переработчика тоже работает


для малого транспорта у меня получилась следующая формула после при Импульсном двигателе 9-го уровня
Bv_mt=10000
persent_Im = 0.2


V_mt_imp = [Bv_mt + Bv_mt*Of_general_persent*Of_general + (Bv_mt + Bv_mt* (Im-5)*persent_Im)] - 3000*0.75

3000*0.75 - вот откуда этот хвостик взялся ??? похоже что связан с уровнем офицера "Генерал"
это же число получится при таком расчете 5000*0,1*0,75*6 .... хорошо бы увидеть реальную формулу расчета ...

Re: Скорость малого транспорта

Добавлено: 05 ноя 2009, 09:53
Gorlum
function GetFleetMaxSpeed ($FleetArray, $Fleet, $Player) {
global $reslist, $pricelist;

if ($Fleet != 0) {
$FleetArray[$Fleet] = 1;
}
foreach ($FleetArray as $Ship => $Count) {
if ($Ship == 202) {
if ($Player['impulse_motor_tech'] >= 5) {
$speedalls[$Ship] = ($pricelist[$Ship]['speed2'] + (($pricelist[$Ship]['speed'] * $Player['impulse_motor_tech']) * 0.2)) * (1 + 0.25 * $Player['rpg_general']);
} else {
$speedalls[$Ship] = ($pricelist[$Ship]['speed'] + (($pricelist[$Ship]['speed'] * $Player['combustion_tech']) * 0.1)) * (1 + 0.25 * $Player['rpg_general']);
}
}
if ($Ship == 203 or $Ship == 204 or $Ship == 209 or $Ship == 210) {
$speedalls[$Ship] = ($pricelist[$Ship]['speed'] + (($pricelist[$Ship]['speed'] * $Player['combustion_tech']) * 0.1)) * (1 + 0.25 * $Player['rpg_general']);
}
if ($Ship == 205 or $Ship == 206 or $Ship == 208) {
$speedalls[$Ship] = ($pricelist[$Ship]['speed'] + (($pricelist[$Ship]['speed'] * $Player['impulse_motor_tech']) * 0.2)) * (1 + 0.25 * $Player['rpg_general']);
}
if ($Ship == 211) {
if ($Player['hyperspace_motor_tech'] >= 8) {
$speedalls[$Ship] = ($pricelist[$Ship]['speed2'] + (($pricelist[$Ship]['speed'] * $Player['hyperspace_motor_tech']) * 0.3)) * (1 + 0.25 * $Player['rpg_general']);
} else {
$speedalls[$Ship] = ($pricelist[$Ship]['speed'] + (($pricelist[$Ship]['speed'] * $Player['impulse_motor_tech']) * 0.2)) * (1 + 0.25 * $Player['rpg_general']);
}
}
if ($Ship == 207 or $Ship == 213 or $Ship == 214 or $Ship == 215 or $Ship == 216) {
$speedalls[$Ship] = ($pricelist[$Ship]['speed'] + (($pricelist[$Ship]['speed'] * $Player['hyperspace_motor_tech']) * 0.3)) * (1 + 0.25 * $Player['rpg_general']);
}
}
if ($Fleet != 0) {
$ShipSpeed = $speedalls[$Ship];
$speedalls = $ShipSpeed;
}

return $speedalls;
}

Re: Скорость малого транспорта

Добавлено: 05 ноя 2009, 17:47
dioan
if ($Ship == 202) {
if ($Player['impulse_motor_tech'] >= 5) {
$speedalls[$Ship] = ($pricelist[$Ship]['speed2'] + (($pricelist[$Ship]['speed2'] * $Player['impulse_motor_tech']) * 0.2)) * (1 + 0.25 * $Player['rpg_general']);
} else {
$speedalls[$Ship] = ($pricelist[$Ship]['speed'] + (($pricelist[$Ship]['speed'] * $Player['combustion_tech']) * 0.1)) * (1 + 0.25 * $Player['rpg_general']);
}
}

.....

if ($Ship == 211) {
if ($Player['hyperspace_motor_tech'] >= 8) {
$speedalls[$Ship] = ($pricelist[$Ship]['speed2'] + (($pricelist[$Ship]['speed2'] * $Player['hyperspace_motor_tech']) * 0.3)) * (1 + 0.25 * $Player['rpg_general']);
} else {
$speedalls[$Ship] = ($pricelist[$Ship]['speed'] + (($pricelist[$Ship]['speed'] * $Player['impulse_motor_tech']) * 0.2)) * (1 + 0.25 * $Player['rpg_general']);
}
}


испльзовалась первая базовая скорость для расчета , так должно быть нормально