User Tools

Site Tools


japanesemanual:ja_gm_penalties

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
japanesemanual:ja_gm_penalties [2023/06/04 04:50] nichirinmotorjapanesemanual:ja_gm_penalties [2023/06/12 08:01] (current) nichirinmotor
Line 1: Line 1:
 +======= 車両ペナルティ =======
  
 +
 +マニュアルのゲームメカニクスセクションは、ゲームの計算で使用される内部式の詳細を説明します。マニュアルのこのセクションは疑似コードを使用しており、ゲーム内のコードと100%同じとは限りません。
 +
 +マニュアルのゲームメカニクスパートは、主に "なぜX、Y、Zをするとこの評価になるのか?"というよくある質問に対するリファレンスとして設計されています。通常、この答えには多くの異なる変数が含まれており、マニュアルのこのセクションではそれを実証しています。
 +
 +**マニュアルのゲームメカニクスセクションは、[[https://idioms.thefreedictionary.com/seeing+how+the+sausage+gets+made|ソーセージがどのように作られるか]]を示しています。ですから、ゲームを楽しむなら、このマニュアルの部分は避けた方がいいかもしれません。**
 +
 +
 +===== 変数 =====
 +
 +
 +^ 名称 ^ 説明 ^ ^ 名称 ^ 説明 ^
 +| **year** | 現在のゲーム年 | | **Engine_Year** | この車両のエンジンは設計されています | 
 +| **Chassis_Year** | この車両のシャーシが設計された年 | | **Gearbox_Year** | この車両のギアボックスが設計された年 | 
 +| **CarDesignYear** | この車両が設計された年 | | **BuyersRating** | 販売台数の算出に使用される車両の最終スコアです。この数値が高いほど、その車両の販売台数は多くなります。 | 
 +| **baseTopSpeed** | 特定の車種に必要な最高速度を算出するために使用する基準最高速度です。 | | **CarType_Rating_Performance** | 車種別パフォーマンス評価です | 
 +| **Car_Top_Speed** | 車両の最高速度です。 | | **soldAtBranch** | 車両の販売台数です。 | 
 +| **Chassis_Sliders_Suspension_Stability** | サスペンションの安定性を高めるシャーシスライダー位置です | | **Chassis_Sliders_Suspension_Comfort** | サスペンションの快適性を高めるシャーシスライダー位置です | 
 +| **Chassis_Sliders_Suspension_Performance** | サスペンションのパフォーマンスを高めるシャーシスライダー位置です | | **Chassis_Sliders_Suspension_Braking** | サスペンションのブレーキ力を高めるシャーシスライダー位置です | 
 +| **Chassis_Sliders_Suspension_Durability** | サスペンションの耐久性を高めるシャーシスライダー位置です | | **Chassis_Sliders_Technology_Materials** | 材料技術を高めるシャーシスライダー位置です | 
 +| **Chassis_Sliders_Technology_Tech** | 技術を高めるシャーシスライダー位置です | | **Engine_Sliders_FuelEco** | 燃費を高めるエンジンスライダー位置です | 
 +| **Engine_Sliders_Materials** | 材料を高めるエンジンスライダー位置です | | **Engine_Sliders_Technology** | 技術を高めるエンジンスライダー位置です | 
 +| **Engine_Sliders_Components** | 部品品質を高めるエンジンスライダー位置です | | **Gearbox_Sliders_Technology_Material** | ギアボックスの材料技術スライダー | 
 +| **Gearbox_Sliders_Technology_Parts** | ギアボックスのパーツ技術スライダー | | **Gearbox_Sliders_Technology_Techniques** | ギアボックスの技術(テクニック)スライダー | 
 +| **Gearbox_Sliders_Technology_Tech** | ギアボックスの技術(テクノロジー)スライダー | | **Car_Sliders_InteriorStyle** | 車両内装スタイルスライダー |
 +| **Car_Sliders_InteriorLuxury** | 車両内装高級感スライダー | | **Car_Sliders_InteriorComfort** | 車両内装快適性スライダー |
 +| **Car_Sliders_InteriorTech** | 車両内装技術スライダー | | **Car_Sliders_Material_Material_Quality** | 車両材質品質スライダー |
 +| **Car_Sliders_Material_Material_InteriorQuality** | 車両内装品質スライダー | | **Car_Sliders_Material_Manufacturing_Tech** | 車両製造技術スライダー | 
 +| **SellPrice** | 車両の販売価格 | | **UnitCosts** | 車両の材料費 | 
 +| **CarType_WealthIndex** | [[gamemanual:references_vehicletypeimportance|裕福度指標]]の下にある車種別裕福度指標 
 +
 +===== 旧式ペナルティ =====
 +
 +<code cpp>
 +collectiveAge = 0;
 +
 +if(((year) - Engine_Year) > 12)
 +{
 +    collectiveAge = collectiveAge + (year - (Engine_Year+12)) * 0.05;
 +
 +    if((year - Engine_Year) > 15)
 +        collectiveAge = collectiveAge +  (year - (Engine_Year+15)) * 0.25;
 +
 +}
 +
 +if(((year) - Chassis_Year) > 12)
 +{
 +    collectiveAge = collectiveAge +  (year - (Chassis_Year+12)) * 0.05;
 +
 +    if((year - Chassis_Year) > 15)
 +        collectiveAge = collectiveAge +  (year - (Chassis_Year+15)) * 0.25;
 +}
 +
 +if((year - Gearbox_Year) > 12)
 +{
 +    collectiveAge = collectiveAge +  (year - (Gearbox_Year+12)) * 0.05;
 +
 +    if((year - Gearbox_Year) > 15)
 +        collectiveAge = collectiveAge +  (year - (Gearbox_Year+15)) * 0.25;
 +
 +}
 +
 +if((year - CarDesignYear) + 4 > 9)
 +    collectiveAge = collectiveAge +  (((year - CarDesignYear) + 4)/10.0)^1.6;
 +else
 +    collectiveAge = collectiveAge +  0.8;
 +
 +if(collectiveAge > 1)
 +    collectiveAge = collectiveAge^1.2;
 +
 +if( collectiveAge^1.2 != 0)
 + BuyersRating = BuyersRating / collectiveAge^1.2;
 +
 +</code>
 +===== 最高速度ペナルティ =====
 +
 +<code cpp>
 +baseTopSpeed = 10;
 +
 +if(year < 2020)
 +{
 +    baseTopSpeed = baseTopSpeed + 1.05 * (year-1899);
 +}
 +else
 +{
 +    baseTopSpeed = baseTopSpeed + 127.5;
 +}
 +
 +adjustedTopSpeed = (baseTopSpeed + (baseTopSpeed*(CarType_Rating_Performance-0.3)));
 +
 +if(adjustedTopSpeed <= 0)
 +    adjustedTopSpeed = 1;
 +
 +
 +if(Car_Top_Speed < adjustedTopSpeed)
 +{
 +    topSpeedMod = Car_Top_Speed / adjustedTopSpeed;
 +}
 +else
 +{
 +    topSpeedMod = 1;
 +}
 +
 +soldAtBranch = soldAtBranch * topSpeedMod;
 +
 +</code>
 +===== 低いスライダーのペナルティ =====
 +
 +<code cpp>
 +
 +lowSlidersPenality = 1.0;
 +
 +
 +
 +if( (Chassis_Sliders_Suspension_Stability + Chassis_Sliders_Suspension_Comfort +
 +    Chassis_Sliders_Suspension_Performance + Chassis_Sliders_Suspension_Braking) < 1.0)
 +{
 +    lowSlidersPenality =  lowSlidersPenality - 0.07;
 +}
 +
 +    
 +if((Chassis_Sliders_Suspension_Durability + Chassis_Sliders_Technology_Materials +
 +    Chassis_Sliders_Technology_Tech) < 0.35)
 +{
 +    lowSlidersPenality =  lowSlidersPenality - 0.05;
 +}
 +
 +
 +if( (Engine_Sliders_FuelEco + Engine_Sliders_Materials + 
 +    Engine_Sliders_Technology + Engine_Sliders_Compoenents) < 0.45)
 +{
 +    lowSlidersPenality =  lowSlidersPenality - 0.06;
 +}
 +
 +
 +if( (Gearbox_Sliders_Technology_Material + Gearbox_Sliders_Technology_Parts +
 +    Gearbox_Sliders_Technology_Tech + Gearbox_Sliders_Technology_Techniques) < 0.45)
 +{
 +    lowSlidersPenality =  lowSlidersPenality - 0.08;
 +}
 +
 +
 +if( (Car_Sliders_InteriorStyle + Car_Sliders_InteriorLuxury +
 +    Car_Sliders_InteriorComfort + Car_Sliders_InteriorTech) < 0.45)
 +{
 +    lowSlidersPenality =  lowSlidersPenality - 0.08;
 +}
 +
 +
 +if( (Car_Sliders_Material_Material_Quality + 
 +    Car_Sliders_Material_Material_InteriorQuality +
 +    Car_Sliders_Material_Manufacturing_Tech) < 0.36)
 +{
 +    lowSlidersPenality =  lowSlidersPenality - 0.08;
 +}
 +
 +
 +BuyersRating = BuyersRating * lowSlidersPenality ;
 +
 +</code>
 +===== 価格吊り上げペナルティ =====
 +
 +
 +<code cpp>
 +if(SellPrice > UnitCosts * (3.5 + CarType_WealthIndex / 5.0))
 +{
 +    overPriced = 1.0 - (SellPrice/(UnitCosts * 
 +        (3.5 + CarType_WealthIndex / 5.0))/2.0);
 +
 +    if(overPriced < 0)
 +        overPriced = 0;
 +}
 +
 +soldAtBranch = soldAtBranch * overPriced;
 +</code>