Чуть подробнее. Я не программист, языков не знаю, поэтому прошу не пинать, если где-то убрал лишнее. Пока что ошибок не замечено.
В res_bld.a в конце файла ищем 5 правил (rule 1-5). Нас интересуют правила 1-3. 4-5 касаются постройки орбитальных верфей и лаб. По идее там можно изменить необходимое кол-во заводов и научных центров для постройки орбиталок.
Меняем установленные там значения 0-х на 0. Также сразу под правилами меняем формулы. У меня получилось так:
► Показать
// rule 1:
// MaxMines<=0 OR Mines*MaxFactories <= MaxFactories*MaxMines
PreRule = call UFBldCreateMayBuildRule()
call UFBldMayBuildRuleAddMaxBldCheck(PreRule, bldReidComplex, 0)
call UFBldMayBuildRuleAddMaxBldCheck(PreRule, bldPlutoniumSh, 0)
call UFBldMayBuildRuleAddMaxBldCheck(PreRule, bldIronSh, 0)
call UFBldMayBuildRuleAddMaxBldCheck(PreRule, bldOrganicSh, 0)
call UFBldMayBuildRuleAddMaxBldCheck(PreRule, bldTransfer, 0)
Rule = call UFBldAddMayBuildRule()
call UFBldMayBuildRuleAddPreCheck(Rule, PreRule)
call UFBldMayBuildRuleAddComplexBldCheck(Rule, bldReidComplex, bldPlanetaryFactory, Yes, Yes)
call UFBldMayBuildRuleAddComplexBldCheck(Rule, bldPlutoniumSh, bldPlanetaryFactory, Yes, Yes)
call UFBldMayBuildRuleAddComplexBldCheck(Rule, bldIronSh, bldPlanetaryFactory, Yes, Yes)
call UFBldMayBuildRuleAddComplexBldCheck(Rule, bldOrganicSh, bldPlanetaryFactory, Yes, Yes)
call UFBldMayBuildRuleAddComplexBldCheck(Rule, bldTransfer, bldPlanetaryFactory, Yes, Yes)
call UFBldMayBuildRuleAddComplexBldCheck(Rule, bldPlanetaryFactory, bldReidComplex, Yes, Yes)
call UFBldMayBuildRuleAddComplexBldCheck(Rule, bldPlanetaryFactory, bldPlutoniumSh, Yes, Yes)
call UFBldMayBuildRuleAddComplexBldCheck(Rule, bldPlanetaryFactory, bldIronSh, Yes, Yes)
call UFBldMayBuildRuleAddComplexBldCheck(Rule, bldPlanetaryFactory, bldOrganicSh, Yes, Yes)
call UFBldMayBuildRuleAddComplexBldCheck(Rule, bldPlanetaryFactory, bldTransfer, Yes, Yes)
call UFBldMayBuildRuleAddComplexMaxBldCheck(Rule, bldPlanetaryFactory, bldReidComplex, No)
call UFBldMayBuildRuleAddComplexMaxBldCheck(Rule, bldPlanetaryFactory, bldPlutoniumSh, No)
call UFBldMayBuildRuleAddComplexMaxBldCheck(Rule, bldPlanetaryFactory, bldIronSh, No)
call UFBldMayBuildRuleAddComplexMaxBldCheck(Rule, bldPlanetaryFactory, bldOrganicSh, No)
call UFBldMayBuildRuleAddComplexMaxBldCheck(Rule, bldPlanetaryFactory, bldTransfer, No)
call UFBldMayBuildRuleSetExplanationEvent(Rule, "EXPLAIN FACTORIES AND MINES")
on event "EXPLAIN FACTORIES AND MINES" call ExplainFactoriesFarmsAndScience(EventParmInt, EventParmInt1) lazy always
//call ExplainFactoriesAndMines(EventParmInt, EventParmInt1) lazy always
// rule 2:
// (Farms + OceanFarms<=0 OR Farms + OceanFarms <= 100)
PreRule = call UFBldCreateMayBuildRule()
call UFBldMayBuildRuleAddBldCheck(PreRule, bldFarm, 0)
call UFBldMayBuildRuleAddBldCheck(PreRule, bldOceanFarm, 0)
Rule = call UFBldAddMayBuildRule()
call UFBldMayBuildRuleAddPreCheck(Rule, PreRule)
call UFBldMayBuildRuleAddBldCheck(Rule, bldFarm, 0)
call UFBldMayBuildRuleAddBldCheck(Rule, bldOceanFarm, 0)
call UFBldMayBuildRuleAddCheckConst(Rule, 100)
call UFBldMayBuildRuleAddBldCheck(Rule, bldReidComplex, 0)
call UFBldMayBuildRuleAddBldCheck(Rule, bldPlutoniumSh, 0)
call UFBldMayBuildRuleAddBldCheck(Rule, bldIronSh, 0)
call UFBldMayBuildRuleAddBldCheck(Rule, bldOrganicSh, 0)
call UFBldMayBuildRuleAddBldCheck(Rule, bldTransfer, 0)
call UFBldMayBuildRuleAddBldCheck(Rule, bldPlanetaryFactory, 0)
call UFBldMayBuildRuleSetExplanationEvent(Rule, "EXPLAIN FACTORIES AND FARMS")
on event "EXPLAIN FACTORIES AND FARMS" call ExplainFactoriesFarmsAndScience(EventParmInt, EventParmInt1) lazy always
// rule 3:
// (ScienceCenters<=0 OR ScienceCenters*4 <= (Max(ScienceCenters)*4))
PreRule = call UFBldCreateMayBuildRule()
call UFBldMayBuildRuleAddBldCheck(PreRule, bldScienceCenter, 0)
Rule = call UFBldAddMayBuildRule()
call UFBldMayBuildRuleAddPreCheck(Rule, PreRule)
call UFBldMayBuildRuleAddBldCheck(Rule, bldScienceCenter, 0)
// call UFBldMayBuildRuleAddCheckConst(Rule, 80)
call UFBldMayBuildRuleAddMaxBldCheck(Rule, bldScienceCenter, 4)
call UFBldMayBuildRuleAddBldCheck(Rule, bldReidComplex, 0)
call UFBldMayBuildRuleAddBldCheck(Rule, bldPlutoniumSh, 0)
call UFBldMayBuildRuleAddBldCheck(Rule, bldIronSh, 0)
call UFBldMayBuildRuleAddBldCheck(Rule, bldOrganicSh, 0)
call UFBldMayBuildRuleAddBldCheck(Rule, bldTransfer, 0)
call UFBldMayBuildRuleAddBldCheck(Rule, bldPlanetaryFactory, 0)
call UFBldMayBuildRuleAddBldCheck(Rule, bldFarm, 0)
call UFBldMayBuildRuleAddBldCheck(Rule, bldOceanFarm, 0)
call UFBldMayBuildRuleSetExplanationEvent(Rule, "EXPLAIN SCIENCE")
on event "EXPLAIN SCIENCE" call ExplainFactoriesFarmsAndScience(EventParmInt, EventParmInt1) lazy always
Файл economics.a возможно править не нужно, я начинал свои попытки с него. В начале файла указаны условия проверки phrase CheckTotalBalance. Поменял условия на такие: