====== エンジンゲームメカニクス ====== マニュアルのゲームメカニクスセクションでは、ゲームの計算で使用される内部式の詳細を説明します。このセクションでは擬似的なコードを使用しており、ゲーム内のコードと100%同じとは限りません。 マニュアルのゲームメカニクスパートは、主に 「なぜX、Y、Zをするとこの評価になるのか?」というよくある質問に対するリファレンスとして設計されています。通常、この答えには多くの異なる変数が含まれており、マニュアルのこのセクションではそれを実証しています。 **マニュアルのゲームメカニクスセクションは、[[https://idioms.thefreedictionary.com/seeing+how+the+sausage+gets+made|ソーセージがどのように作られるか]]を示しています。ですから、ゲームを楽しむのであれば、このマニュアルの部分は避けた方がいいかもしれません。** ===== 変数 ===== 計算式で使用する変数とその説明の表です。 ==== スライダー ==== ^ 変数 ^ 説明 ^ ^ 変数 ^ 説明 ^ | **Slider_Layout_Bore ** | スライダー:エンジンデザインレイアウト ⇒ ボア | | **Slider_Layout_Stroke ** | スライダー:エンジンデザインレイアウト ⇒ ストローク | | **Slider_Layout_Length** | スライダー:エンジンデザインレイアウト ⇒ 長さ | | **Slider_Layout_Width** | スライダー:エンジンデザインレイアウト ⇒ 幅 | | **Slider_Layout_Displacement** | (スライダーレイアウトボア+スライダーレイアウトストローク) ÷ 2.0 | | **Slider_Layout_Weight** | スライダー:エンジンデザインレイアウト ⇒ 重量 | | **Slider_Performance_Revolutions** | スライダー:エンジンデザインパフォーマンス ⇒ 回転数 | | **Slider_Performance_Torque** | スライダー:エンジンデザインパフォーマンス ⇒ エンジントルク | | **Slider_Performance_FuelEconomy** | スライダー:エンジンデザインパフォーマンス ⇒ 燃費 | | **Slider_DesignFocus_Performance** | スライダー:エンジンデザインフォーカス ⇒ パフォーマンス重視 | | **Slider_DesignFocus_FuelEconomy** | スライダー:エンジンデザインフォーカス ⇒ 燃費重視 | | **Slider_DesignFocus_Dependability** | スライダー:エンジンデザインフォーカス ⇒ ディペンダビリティ重視 | | **Slider_DesignFocus_DesignPace ** | スライダー:エンジンデザインフォーカス ⇒ 開発ペース | | **Slider_Technology_Materials** | スライダー:エンジンデザイン技術 ⇒ 材料品質 | | **Slider_Technology_Components** | スライダー:エンジンデザイン技術 ⇒ 部品品質 | | **Slider_Technology_Technologies** | スライダー:エンジンデザイン技術 ⇒ 技術 | | **Slider_Technology_Techniques** | スライダー:エンジンデザイン技術 ⇒ 製造技術 | ==== サブコンポーネント ==== ^ 変数 ^ 説明 ^ ^ 変数 ^ 説明 ^ | **SubComponent_Layout_UnitCosts** | エンジンレイアウトユニットコスト | | **SubComponent_Layout_DesignCosts** | エンジンレイアウトデザインコスト | | **SubComponent_Layout_DesignRequirements** | エンジンレイアウト設計要件 | | **SubComponent_Layout_ManufacturingRequirements** | エンジンレイアウト製造要件 | | **SubComponent_Layout_Reliability** | エンジンレイアウト信頼性値 | | **SubComponent_Layout_Weight** | エンジンレイアウト重量値 | | **SubComponent_Layout_FinishTime** | エンジンレイアウト開発期間値 | | **SubComponent_Layout_Width** | エンジンレイアウト幅値 | | **SubComponent_Layout_Length** | エンジンレイアウト長さ値 | | **SubComponent_Layout_Smoothness** | エンジンレイアウト滑らかさ値 | | **SubComponent_Layout_ValveLimit** | エンジンレイアウトバルブレイアウトにつかえるもの | | **SubComponent_Layout_UseDisplacement** | エンジンレイアウト排気量 | | **SubComponent_Layout_CylinderLengthArrangment** | エンジンレイアウトシリンダーバンク数 | | **SubComponent_Layout_FuelRatings** | エンジンレイアウト燃費値 | | **SubComponent_Layout_PowerRatings** | エンジンレイアウトパワー評価値 | | **SubComponent_Layout_Turbined** | エンジンレイアウトの円形 | | **SubComponent_Cylinders_UnitCosts** | シリンダーユニットコスト値 | | **SubComponent_Cylinders_DesignCosts** | シリンダーデザインコスト値 | | **SubComponent_Cylinders_DesignRequire** | シリンダー設計要件 | | **SubComponent_Cylinders_ManufacturingRequire** | シリンダー製造要件 | | **SubComponent_Cylinders_PowerRating** | シリンダーパワー値 | | **SubComponent_Cylinders_FuelRating** | シリンダー燃費値 | | **SubComponent_Cylinders_ReliabilityRating** | シリンダー信頼性値 | | **SubComponent_Cylinders_Weight** | シリンダー重量値 | | **SubComponent_Cylinders_FinishTime** | シリンダー開発期間値 | | **SubComponent_Cylinders_CylinderCount** | シリンダー数 | | **SubComponent_Cylinders_SmoothnessRating** | シリンダー滑らかさ値 | | **SubComponent_FuelType_UnitCosts** | 燃料タイプユニットコスト | | **SubComponent_FuelType_DesignCosts** | 燃料タイプデザインコスト | | **SubComponent_FuelType_DesignRequirements** | 燃料タイプレイアウト設計要件 | | **SubComponent_FuelType_ManufacturingRequirements** | 燃料タイプレイアウト製造要件 | | **SubComponent_FuelType_PowerRating** | 燃料タイプパワー値 | | **SubComponent_FuelType_FuelRating** | 燃料タイプ燃費値 | | **SubComponent_FuelType_ReliabilityRating** | 燃料タイプ信頼性値 | | **SubComponent_FuelType_Weight** | 燃料タイプ重量値 | | **SubComponent_FuelType_FinishTime** | 燃料タイプ開発期間値 | | **SubComponent_FuelType_RPM** | 燃料タイプRPM値 | | **SubComponent_FuelType_SmoothnessRating** | 燃料タイプ滑らかさ値 | | **SubComponent_FuelType_PopularityRating** | 燃料タイプ人気値 | | **SubComponent_Induction_UnitCosts** | 過給機ユニットコスト | | **SubComponent_Induction_DesignCosts** | 過給機デザインコスト | | **SubComponent_Induction_DesignRequirements** | 過給機設計要件 | | **SubComponent_Induction_ManufacturingRequirements** | 過給機製造要件 | | **SubComponent_Induction_PowerRating** | 過給機パワー値 | | **SubComponent_Induction_FuelRating** | 過給機燃費値 | | **SubComponent_Induction_ReliabilityRating** | 過給機信頼性値 | | **SubComponent_Induction_Weight** | 過給機重量値 | | **SubComponent_Induction_FinishTime** | 過給機開発期間値 | | **SubComponent_Valve_UnitCosts** | バルブシステムユニットコスト | | **SubComponent_Valve_DesignCosts** | バルブシステムデザインコスト | | **SubComponent_Valve_DesignRequirements** | バルブシステム設計要件 | | **SubComponent_Valve_ManufacturingRequirements** | バルブシステム製造要件 | | **SubComponent_Valve_FuelRating** | バルブシステム燃費値 | | **SubComponent_Valve_ReliabilityRating** | バルブシステム燃料信頼性値 | | **SubComponent_Valve_Weight** | バルブシステム燃料重量値 | | **SubComponent_Valve_FinishTime** | バルブシステム開発期間値 | | **SubComponent_Valve_RPM** | バルブシステムRPM値 | | **SubComponent_Valve_SmoothnessRating** | バルブシステム滑らかさ値 | | **SubComponent_Valve_Size** | バルブシステムサイズ値 | | **SubComponent_Valve_PowerRating** | バルブシステムパワー値 | ==== グローバル ==== ^ 変数 ^ 説明 ^ ^ 変数 ^ 説明 ^ | ** Year ** | 現在のゲーム年 | | **Marq_DesignEngineSkill** | 選択したブランドのエンジンデザインスキル | | ** AdjustedYear ** | 年 - 1899年(2020年以降は121に設定されています) | | ** PreResearchEngineAmountEffect ** | エンジンデザインに関する研究チームのボーナス | | ** Global_Interest_Rate ** | TurnEvents.xmlファイルで定義されているグローバル金利 | | ** carPriceRate ** | TurnEvents.xmlファイルで定義されているグローバル車両コスト変数 | | ** ex_0d996p_year50R ** | 0.996%%^%%(2050-year) if Year > 2020: 0.901037361 | | ** ex_1d0023p_year99 ** | 1.0023%%^%%(year-1899) | | ** ex_1d0024p_year99 ** | 1.0024%%^%%(year-1899) | | ** ex_1d003p_year99 ** | 1.003%%^%%(year-1899) | | ** ex_1d0035p_year99 ** | 1.0035%%^%%(year-1899) | | ** ex_1d004p_year99 ** | 1.004%%^%%(year-1899) | | ** ex_1d005p_year99 ** | 1.005%%^%%(year-1899) | | ** ex_1d0051p_year99 ** | 1.0051%%^%%(year-1899) | | ** ex_1d006p_year99 ** | 1.006%%^%%(year-1899) | | ** ex_1d007p_year99 ** | 1.007%%^%%(year-1899) | | ** ex_1d008p_year99 ** | 1.008%%^%%(year-1899) | | ** ex_1d01p_year99 ** | 1.01%%^%%(year-1899) | | ** ex_1d025p_year99 ** | 1.025%%^%%(year-1899) | | ** ex_1d03p_year99 ** | 1.03%%^%%(year-1899) | | ** ex_1d033p_year99 ** | 1.033%%^%%(year-1899) | | ** ex_1d035p_year99 ** | 1.035%%^%%(year-1899) | | ** ex_1d038p_year99 ** | 1.038%%^%%(year-1899) | | ** ex_1d039p_year99 ** | 1.039%%^%%(year-1899) | | ** ex_1d04p_year99 ** | 1.04%%^%%(year-1899) | | ** ex_1d05p_year99 ** | 1.05%%^%%(year-1899) | ===== 仕様 ===== ==== ボア ==== 数値はミリメートル単位です。 Bore_mm = スライダーの横にあるテキストボックスの値。 ==== ストローク ==== 数値はミリメートル単位です。 Stroke_mm = スライダーの横にあるテキストボックスの値 ==== 排気量 ==== 数値は立方センチメートル(cc)です Displacement_CC = (0.7854 * ((Bore_mm/10) * (Bore_mm/10)) * (Stroke_mm/10) * SubComponent_Cylinders_CylinderCount) ==== トルク ==== 数値はlb-ft単位です。 Torque = 10 + (Marq_DesignEngineSkill/20.0) + ((((25) * ((Slider_Performance_Torque - 0.4)*1.5)*ex_1d01p_year99) + ((4*(SubComponent_Layout_Length + SubComponent_Layout_Width) )*ex_1d005p_year99) - (14 * (Slider_Performance_FuelEconomy+Slider_DesignFocus_FuelEconomy) * ex_1d004p_year99) + (SubComponent_Layout_PowerRatings*5 + SubComponent_Cylinders_PowerRating*13 + SubComponent_FuelType_PowerRating*24 + 100*SubComponent_Induction_PowerRating + (5 * ex_1d004p_year99 * Slider_DesignFocus_Performance) + 8*(Slider_Technology_Components+Slider_Technology_Materials + Slider_Technology_Technologies +Slider_Technology_Techniques))*ex_1d0024p_year99)) Torque = Torque * ((SubComponent_Cylinders_CylinderCount * Stroke_mm*0.93 * Bore_mm*0.9)*0.000027)+5 if year < 2050 then: Torque = Torque * ex_0d996p_year50R Torque = Torque * SubComponent_Valve_PowerRating ==== RPM ==== tmpAY = AdjustedYear if tmpAY > 80 then: tmpAY = 80 + ((AdjustedYear-80)/5) rpm = ((((tmpAY^4)*0.00000420875) - ((19*(tmpAY^3))*0.00016835) + ((427*(tmpAY^2))*0.00126) + ((1315*(tmpAY))*0.01515) + 620 ) + (265 * ex_1d01p_year99 * Slider_DesignFocus_Performance) + (465 * ex_1d0105p_year99 * (Slider_Performance_Revolutions*5.5)) - (10 * ex_1d01p_year99 * SubComponent_Induction_PowerRating) + (55 * ex_1d005p_year99 * (1-Slider_Layout_Weight)) - (30* ex_1d005p_year99 * (Slider_DesignFocus_FuelEconomy + Slider_Performance_FuelEconomy))+ (25 * ex_1d01p_year99 * Slider_Technology_Components) + (25 * ex_1d01p_year99 * Slider_Technology_Materials) + (25 * ex_1d01p_year99 * Slider_Technology_Technologies)) * SubComponent_FuelType_RPM rpm = rpm * SubComponent_Valve_RPM rpm = rpm - ((rpm/1.5) * (Stroke_mm/221.136364)) if rpm < 25 then: rpm = 25 ==== 馬力 ==== 数値は馬力です。 hp = (Torque * rpm) / 5252 ==== 長さ ==== 数値はインチ単位です。 === SubComponent_Layout_CylinderLengthArrangment Equals 1 === Length = (3 + (Displacement_CC/((47.3)+277))) * SubComponent_Layout_Length + ((SubComponent_Cylinders_CylinderCount)*(Bore_mm/130.0)) + (SubComponent_Cylinders_CylinderCount+(5*(Bore_mm/130.0))+ 2*SubComponent_Valve_Size) Length = Length + (0.16 * Length * Slider_Layout_Length) === SubComponent_Layout_CylinderLengthArrangment Equals -1 Or Less === Bank = SubComponent_Layout_CylinderLengthArrangment * -1 Length = 3+(0.039 * (Bore_mm * 2)) + 5 * Slider_Layout_Length Length = Length * Bank === SubComponent_Layout_CylinderLengthArrangment Equals Any Other Value === Banks = 0.5; if SubComponent_Layout_CylinderLengthArrangment > 0 Banks = 1.0/SubComponent_Layout_CylinderLengthArrangment Length = (4 + ((Displacement_CC*(Banks*2))/((47.3)+277))) * SubComponent_Layout_Length + ((SubComponent_Cylinders_CylinderCount*Banks)* (Bore_mm/130.0)) + ((SubComponent_Cylinders_CylinderCount*(Banks*2))+ (5*(Bore_mm/130.0))+2*SubComponent_Valve_Size) Length = Length + (0.16 * Length * Slider_Layout_Length); ==== 幅 ==== 数値はインチ単位です。 Width = (6 + (Displacement_CC/((57.3)+302))) * SubComponent_Layout_Width + ((6*(Bore_mm/115.0))+5*SubComponent_Valve_Size) Width = Width + (0.16 * Width * Slider_Layout_Width) if(SubComponent_Layout_CylinderLengthArrangment < -1) { Bank = 1/(SubComponent_Layout_CylinderLengthArrangment * -1) Width = Width * Bank } ==== 重さ ==== 数値はlb単位です。 Weight = 30 + (55*((SubComponent_Valve_Weight+ SubComponent_Layout_Weight + SubComponent_FuelType_Weight + SubComponent_Induction_Weight + SubComponent_Cylinders_Weight)/5.0) ) + (100*(Stroke_mm/80.0)) + (((Length*1.95*Width)/80.0) + ( 40 + (42 * (((Slider_Layout_Width+Slider_Layout_Length)/2.0)+0.05)) + ((15+(15*(SubComponent_Valve_Weight+ SubComponent_Layout_Weight + SubComponent_FuelType_Weight + SubComponent_Induction_Weight + SubComponent_Cylinders_Weight)/5.0 ) ) * (Slider_Layout_Weight + 0.1)) - (15 * Slider_Technology_Materials) + (5 * SubComponent_Induction_Weight)+ (8*(Slider_Layout_Width+Slider_Layout_Length)) ) * ((Length*1.78*Width)/800.0)) + ((5+(5*SubComponent_Cylinders_Weight))*(SubComponent_Cylinders_CylinderCount)) if(SubComponent_Layout_CylinderLengthArrangment > 2) Weight = Weight * (SubComponent_Layout_CylinderLengthArrangment/2.9) ==== 燃費 ==== 数値はlb単位です。 FuelConsumption_MPG = 95 + ((55 * ex_1d0023p_year99) * (Slider_Performance_FuelEconomy+0.1)) + (40 * ex_1d0023p_year99 * Slider_DesignFocus_FuelEconomy ) FuelConsumption_MPG = FuelConsumption_MPG + (12 * ex_1d0023p_year99*SubComponent_FuelType_FuelRating) + (7 * ex_1d0023p_year99*Slider_Technology_Technologies) FuelConsumption_MPG = FuelConsumption_MPG - (15 * ex_1d0051p_year99 * (Slider_Performance_Torque + Slider_Performance_Revolutions + Slider_DesignFocus_Performance)) - (20 * Slider_Layout_Displacement)+(10*SubComponent_Valve_FuelRating) FuelConsumption_MPG = (FuelConsumption_MPG + (6*SubComponent_Cylinders_FuelRating)+ (6*SubComponent_Layout_FuelRatings))*SubComponent_Induction_FuelRating + (Marq_DesignEngineSkill/50.0) if( (1.5+Displacement_CC/350.0) > 0 ) FuelConsumption_MPG = FuelConsumption_MPG/(1.5+Displacement_CC/350.0) FuelConsumption_MPG = FuelConsumption_MPG + 5 if( FuelConsumption_MPG < 1 ) FuelConsumption_MPG = 1; if( SubComponent_FuelType_FuelRating < 5 AND FuelConsumption_MPG > 30) { if( SubComponent_FuelType_FuelRating > 1.5 AND FuelConsumption_MPG > (30+(SubComponent_FuelType_FuelRating*2.0)) ) { FuelConsumption_MPG = FuelConsumption_MPG + -FuelConsumption_MPG^0.85+18+(SubComponent_FuelType_FuelRating*2.0) } else { FuelConsumption_MPG = FuelConsumption_MPG + -FuelConsumption_MPG^0.85+18 } } ===== 評価 ===== ==== 設計要件 ==== Design_Requirements = (5 * Slider_DesignFocus_Dependability) + (5 * Slider_DesignFocus_FuelEconomy) + (5 * Slider_DesignFocus_Performance) + (3 * Slider_Performance_Revolutions) + (2 * Slider_Performance_FuelEconomy) + (2 * Slider_Performance_Torque) + (2 * Slider_Technology_Technologies) + (1-Slider_Layout_Weight) + (Slider_Layout_Displacement + (1-Slider_Layout_Length + (1-Slider_Layout_Width))) - (2 * Slider_Technology_Techniques) Design_Requirements = Design_Requirements + (SubComponent_Cylinders_DesignRequire) + (SubComponent_FuelType_DesignRequirements) + (SubComponent_Valve_DesignRequirements) + (5 * SubComponent_Induction_DesignRequirements) + (3* SubComponent_Layout_DesignRequirements) Design_Requirements = 2.7027 * Design_Requirements ==== 製造要件 ==== Manufacturing_Requirements = (Slider_Layout_Displacement ) + (2*(1-Slider_Layout_Length)) + (2*(1-Slider_Layout_Width)) + (Slider_Performance_FuelEconomy) + (Slider_Performance_Revolutions * 2) + (2 * Slider_Performance_Torque) + (Slider_Technology_Components + Slider_Technology_Materials + Slider_Technology_Technologies + (3 * Slider_Technology_Techniques)) Manufacturing_Requirements = Manufacturing_Requirements + (3 * SubComponent_Cylinders_ManufacturingRequire) + ( 3 * SubComponent_Layout_ManufacturingRequirements) + ( 2 * SubComponent_Induction_ManufacturingRequirements) + (SubComponent_FuelType_ManufacturingRequirements) + ( 2 * SubComponent_Valve_ManufacturingRequirements) Manufacturing_Requirements = Manufacturing_Requirements * 3.7037 ==== パワー評価 ==== if( SubComponent_Cylinders_CylinderCount > 0 ) Power_Rating = Torque / ( (100 * ex_1d007p_year99) * SubComponent_Cylinders_CylinderCount / 2.2 ) Power_Rating = Power_Rating * 50 if( Power_Rating > 50 ) Power_Rating = 50 Power_Rating = Power_Rating + ( 50 * ( Torque/2000.0 ) ) if( Power_Rating > 100 ) Power_Rating = 100 ==== 燃費評価 ==== FuelEconomy_Rating = (FuelConsumption_MPG / 120.0)* 100; if(FuelEconomy_Rating >100) FuelEconomy_Rating = 100; ==== 信頼性 ==== Reliability_Rating = (6 * Slider_DesignFocus_Dependability) + (3* (1-Slider_DesignFocus_Performance)) + (5*(1-(rpm/10000.0))) + (2*1-Slider_Performance_Torque) + (3*1-Slider_Performance_Revolutions) + (3 * Slider_Technology_Components) + (2 * Slider_Technology_Materials) + (1-Slider_Technology_Technologies) + (Slider_Technology_Techniques) Reliability_Rating = Reliability_Rating + (1 * SubComponent_Cylinders_ReliabilityRating) + (1 * SubComponent_FuelType_ReliabilityRating) + (1 * (1-SubComponent_Induction_ReliabilityRating)) + (1 * SubComponent_Layout_Reliability) + (2*SubComponent_Valve_ReliabilityRating) Reliability_Rating = Reliability_Rating + (8 * (1-(Stroke_mm/150.0))) Reliability_Rating = Reliability_Rating / 4.5 Reliability_Rating = Reliability_Rating * 10 Reliability_Rating = Reliability_Rating + (Marq_DesignEngineSkill/10.0) if(Reliability_Rating<0) Reliability_Rating = 0 if(Reliability_Rating>100) Reliability_Rating = 100 ==== 滑らかさ ==== Smoothness_Rating = (-(1.0/10.0)*((SubComponent_Cylinders_CylinderCount-8) * (SubComponent_Cylinders_CylinderCount-8))+5) Smoothness_Rating = Smoothness_Rating + (SubComponent_Cylinders_SmoothnessRating * 2) + (SubComponent_FuelType_SmoothnessRating * 2) + (SubComponent_Layout_Smoothness*2) + (Slider_Technology_Components * 3) + (Slider_Technology_Technologies * 2) + (Slider_Technology_Techniques * 3) + (SubComponent_Valve_SmoothnessRating*2) + (Marq_DesignEngineSkill/25) Smoothness_Rating = Smoothness_Rating * 4 if( Smoothness_Rating > 100 ) Smoothness_Rating = 100 if(Smoothness_Rating < 1 ) Smoothness_Rating = 1; ==== 総合 ==== Overall_Rating = (Reliability_Rating + FuelEconomy_Rating + Power_Rating + Smoothness_Rating + (Marq_DesignEngineSkill))/5 Overall_Rating = Overall_Rating + (5*PreResearchEngineAmountEffect) if(Overall_Rating > 100) Overall_Rating = 100 ===== その他 ===== ==== 単価 ==== Unit_Costs =((((((70* ex_1d01p_year99 * (((1-Slider_Layout_Length) + (1-Slider_Layout_Width))/2.0)) + (220 * ex_1d004p_year99 * (((0.25+(Slider_Performance_Revolutions * Slider_Performance_Revolutions) + (Slider_Performance_Torque * Slider_Performance_Torque))/2.0) - (0.5-(Slider_Performance_FuelEconomy*Slider_Performance_FuelEconomy)) ) ) + (60 * ex_1d01p_year99) * ((Slider_Performance_Revolutions * Slider_Performance_Revolutions) + (Slider_Performance_Torque * Slider_Performance_Torque)) + 220 * ex_1d008p_year99*(0.1+(((Slider_Technology_Materials*Slider_Technology_Materials)+ (Slider_Technology_Techniques*Slider_Technology_Techniques ) + (Slider_Technology_Components*Slider_Technology_Components))) ) + 170 * ex_1d008p_year99*(Slider_Technology_Technologies*Slider_Technology_Technologies) + 50 * ex_1d0035p_year99 * (Slider_DesignFocus_Dependability * Slider_DesignFocus_Dependability) + 180 * ex_1d0035p_year99 * (Slider_DesignFocus_Performance * Slider_DesignFocus_Performance )+ (260 * ex_1d006p_year99 * (2.168 * Slider_Layout_Displacement^1.5 -4.44 * Slider_Layout_Displacement^3 + 2.646 * Slider_Layout_Displacement^4.5 + 3.126 * Slider_Layout_Displacement^6 )+ (70 * ex_1d005p_year99 * (SubComponent_Cylinders_CylinderCount/6.0) + (.75 + Slider_Layout_Displacement^1.5) - (Slider_Layout_Weight^2)) + 10 * (Slider_DesignFocus_FuelEconomy^2) - 50 ) * ex_1d003p_year99 + (160 * SubComponent_Cylinders_UnitCosts)^ex_1d003p_year99 + (120 * SubComponent_Layout_UnitCosts)^ex_1d004p_year99 + (140 * SubComponent_Valve_UnitCosts)^ex_1d004p_year99 + (435 * SubComponent_Induction_UnitCosts)^ex_1d004p_year99 + (120 * SubComponent_FuelType_UnitCosts)^ex_1d004p_year99) * (.125 + 0.12 * SubComponent_Cylinders_CylinderCount)) * (Global_Interest_Rate/2.0)) + 50) * carPriceRate) * (designRandomVal); Hyper_Sliders = ((Slider_Layout_Displacement*2 + (1-Slider_Layout_Length) + (1-Slider_Layout_Width) + (1-Slider_Layout_Weight)) + (Slider_Performance_Revolutions + Slider_Performance_Torque + Slider_Performance_FuelEconomy) + (Slider_DesignFocus_Performance + Slider_DesignFocus_FuelEconomy + Slider_DesignFocus_Dependability) + (Slider_Technology_Materials + Slider_Technology_Components + Slider_Technology_Techniques + Slider_Technology_Technologies))/13.0; Hyper_Costs = 475 * ex_1d04p_year99 * (Hyper_Sliders*Hyper_Sliders*Hyper_Sliders*Hyper_Sliders); Unit_Costs = Unit_Costs + Hyper_Costs - ((Unit_Costs/10) * (Marq_DesignEngineSkill/100)); ==== 設計コスト ==== Design_Costs = (((18000 * ( 0.05+Slider_Layout_Displacement^1.5 ) *ex_1d025p_year99 + (4000 * (1-(Slider_Layout_Weight*Slider_Layout_Weight)) *ex_1d033p_year99) + 5000 * (0.15+(Slider_Technology_Materials * Slider_Technology_Materials ) + (Slider_Technology_Techniques * Slider_Technology_Techniques ) + (Slider_Technology_Components * Slider_Technology_Components))^ (0.1 + (Slider_DesignFocus_Performance * Slider_DesignFocus_Performance) + (Slider_DesignFocus_Dependability * Slider_DesignFocus_Dependability) + (Slider_DesignFocus_FuelEconomy * Slider_DesignFocus_FuelEconomy)) * ex_1d033p_year99+2500*((1.01 - Slider_Layout_Weight)*(1.01-Slider_Layout_Weight)) * ex_1d033p_year99 - 2500 * ex_1d033p_year99 * ((1-Slider_Layout_Width)+ (1-Slider_Layout_Length)) + 12000 * (0.2+(Slider_DesignFocus_Performance*Slider_DesignFocus_Performance) + (Slider_DesignFocus_FuelEconomy*Slider_DesignFocus_FuelEconomy)) * ex_1d05p_year99 +1500*(3.5+ (Slider_DesignFocus_Dependability*Slider_DesignFocus_Dependability)) * ex_1d039p_year99)*ex_1d03p_year99 + (4000 * ((Slider_Performance_FuelEconomy *Slider_Performance_FuelEconomy ) + (Slider_Performance_Revolutions * Slider_Performance_Revolutions ) + (Slider_Performance_Torque*Slider_Performance_Torque)) * ex_1d038p_year99) + (3000 * (Slider_Technology_Technologies * Slider_Technology_Technologies) * ex_1d035p_year99) + (Hyper_Costs * (500*ex_1d035p_year99)) + ((95 * SubComponent_Cylinders_DesignCosts)^ex_1d01p_year99) + ((115 * SubComponent_Layout_DesignCosts)^ex_1d01p_year99) + ((195* SubComponent_Induction_DesignCosts)^ex_1d01p_year99) + ((90* SubComponent_Valve_UnitCosts)^ex_1d01p_year99) + ((90 * SubComponent_FuelType_DesignCosts)^ex_1d01p_year99) * (Global_Interest_Rate)) * ex_1d003p_year99) if(year > 1910 && year < 1930) Design_Costs = Design_Costs * (SubComponent_Cylinders_CylinderCount*(1 - 0.0375 * (year-1910))) else if(year > 1930 && year < 1950) Design_Costs = Design_Costs * (SubComponent_Cylinders_CylinderCount*(0.25 - ( 0.005 * (year-1930) ))) else if( year > 1950 ) Design_Costs = Design_Costs * (SubComponent_Cylinders_CylinderCount * 0.15); Design_Costs = (Design_Costs * 0.85) + ((Design_Costs *0.15 ) * SubComponent_Cylinders_DesignCosts) Design_Costs = (Design_Costs/5)+(Design_Costs*(Slider_DesignFocus_DesignPace*Slider_DesignFocus_DesignPace*4.5)) ==== 開発期間 ==== Finish_Time = (((0.55 * Slider_Layout_Displacement) + (1- Slider_Layout_Weight) + 0.45 * (Slider_Performance_Revolutions + Slider_Performance_Torque + Slider_Performance_FuelEconomy) + 0.45 * (Slider_DesignFocus_Dependability + Slider_DesignFocus_FuelEconomy + Slider_DesignFocus_Performance))*ex_1d004p_year99 + (SubComponent_Cylinders_FinishTime) + (SubComponent_Layout_FinishTime) + (.75 * SubComponent_Induction_FinishTime) + (.55 * SubComponent_FuelType_FinishTime)) + SubComponent_Valve_FinishTime + 1- (2*(FactOverallVAL/100.0))+ (1.15*ex_1d003p_year99*Hyper_Sliders) Finish_Time = Finish_Time + ((year-1850)/50) additionalTime = 0; if(year < 2021) { if(( Slider_DesignFocus_DesignPace + 0.05 ) > 0) additionalTime = ( ((year-1840)/15.0 ) *((0.5/( Slider_DesignFocus_DesignPace+0.05) ) - 0.45) ) else additionalTime = ( ((year-1840)/15.0 ) *((0.5/(0.05) ) -0.45) ) } else { if(( Slider_DesignFocus_DesignPace+0.05) > 0) additionalTime = ( ((2020-1840)/15.0 ) *((0.5/( Slider_DesignFocus_DesignPace+0.05) ) - 0.45) ) else additionalTime = ( ((2020-1840)/15.0 ) *((0.5/(0.05) ) -0.45) ) } if(Slider_DesignFocus_DesignPace < 0.5) { Finish_Time = Finish_Time + additionalTime } else { turnsOff = (Slider_DesignFocus_DesignPace - 0.5)/0.20 Finish_Time = Finish_Time + (additionalTime - turnsOff) } if(Finish_Time < 1) Finish_Time = 1 ==== 所要従業員 ==== if(year < 2021) Engineers_Required = Design_Requirements * (0.11833*(year-1899)+0.275); else Engineers_Required = Design_Requirements * (0.11833*(121)+0.275); Engineers_Required = Engineers_Required/5 + ((Engineers_Required/1.2)* Slider_DesignFocus_DesignPace) + 3;