Table of Contents

販売ゲームメカニクス

マニュアルのゲームメカニクスセクションは、ゲームの計算で使用される内部式の詳細を説明します。マニュアルのこのセクションは疑似コードを使用しており、ゲーム内のコードと100%同じとは限りません。

マニュアルのゲームメカニクスパートは、主に “なぜX、Y、Zをするとこの評価になるのか?”というよくある質問に対するリファレンスとして設計されています。通常、この答えには多くの異なる変数が含まれており、マニュアルのこのセクションではそれを実証しています。

マニュアルのゲームメカニクスセクションは、ソーセージがどのように作られるかを示しています。ですから、ゲームを楽しむなら、このマニュアルの部分は避けた方がいいかもしれません。

バイヤープール

変数

名称 説明 名称 説明
Adjusted_Years 現在の年 - 1899年 Buying_Percentage 任意の車両を購入した人の月間割合。
Global_Buy_Rate TurnEvents.xmlファイルで定義されているグローバルなバイヤー評価 Global_Interest_Rates TurnEvents.xmlファイルで定義されているグローバル金利
City_ECOGROWTH 特定都市の経済成長値。 City_POPULATION 特定都市の人口
City_INF 特定都市のインフラ評価 City_CAP 特定都市の所得
City_GOVERN 特定都市の政府安定性評価。1=平和、0=小規模な軍事衝突、-1以下、戦争中/停戦。 Consumer_Fluctuation_Rate 新規ゲーム開始時のオプションで定義される変数。
Vehicle_Type_Popularity 特定の車種の人気度です。 Vehicle_Type_Fuel_Rating 特定の車種の燃費です
Vehicle_Type_People 特定の都市で、この車種を購入することに興味がある人の数です。 Vehicle_Type_WealthIndex 特定の車種の富裕度で、詳細は車種別重視するランキングをご覧ください。
Vehicle_Unit_Costs 特定の車の材料単価です。 moneyBoost 新しいゲームの開始オプションで定義された消費者購買力です。
Car_Sales_Price 特定の車の販売価格 Car_Quality_Rating 特定の車の品質評価
Car_Top_Speed 特定の車の最高速度 Minimum_Top_Speed ペナルティが適用される前に、この車種に要求される最低最高速度
indexMove マーケティング効率による富裕層への効果 Dealerships 特定の車を販売している会社のディーラー数
Company_Racing_Image 特定の車を販売している会社のレーシングイメージ Global_Gas TurnEvents.xmlファイルで定義された国際燃料価格
Branch_Staff_Value 支店の従業員スライダー、従業員数、士気値 Branch_Sales_Resources 支店の販売リソーススライダー
Sum_Of_BuyerRatings 特定の都市における、特定の車を含む車種に対するすべてのバイヤーの評価の合計。 Used_Cars_BuyerRating 特定の都市におけるこの車種の中古車のバイヤーの評価。
Car_BuyerRating 特定の車のバイヤーの評価 Max_Rating_For_Type_In_City この特定の都市におけるこの車種のバイヤーの評価の最高値。
Collective_Age シャーシ、エンジン、ギアボックス、車両設計の古さ Top_Speed_Mod 最高速度のペナルティ
overPriced 高価格ペナルティ Hard_Difficulty_Sales_Mod ハードモードとナイトメアモードでのAIの売上アップ
Not_A_Player_Company あなたではない boycottPlayer あなたの会社が何らかの理由で抗議されている場合。

都市/車種 購入者数

if(Adjusted_Years <= 25)
{
    Buying_Percentage = (((0.00155*Adjusted_Years) 
        +0.003)*City_ECOGROWTH)*Global_Buy_Rate*Global_Interest_Rates
}
else if(Adjusted_Years <= 105)
{
    Buying_Percentage = (((0.00025*Adjusted_Years)+0.035)*City_ECOGROWTH) *
        Global_Buy_Rate * Global_Interest_Rates
}
else if(Adjusted_Years <= 130)
{
    Buying_Percentage = (((-0.002*Adjusted_Years)+0.27125)*City_ECOGROWTH) * 
        (Global_Buy_Rate)*Global_Interest_Rates
}
else
{
    Buying_Percentage = (0.011 *City_ECOGROWTH) * Global_Buy_Rate * Global_Interest_Rates
}
 
 
if(City_GOVERN >= 1)
{
    govEffect = 0.5;
}
else if(City_GOVERN == 0)
{
    govEffect = 0.25;
}
else
{
    govEffect = 0;
}
 
RandomNumber = Random Number Between 0 AND ((City_INF/400.0)*
    (Consumer_Fluctuation_Rate))
 
//Total City Buying Pool
City_Buying_Population = (((((City_POPULATION)) * Buying_Percentage) *
    popBooster)*( RandomNumber + 0.85)) * City_BuyerRate* govEffect
 
//Vehicle Type Buying Pool
Vehicle_Type_Buyers = City_Buying_Population * Vehicle_Type_Popularity

バイヤーの評価

バイヤーの評価表レポートを参照。

売上げの計算

For Every Car In Every Type Sold In City
{
 
	People = Vehicle_Type_People + ((Vehicle_Type_People*0.2) * indexMove^2) +
		((Vehicle_Type_People*0.01+3) * (0.1*(10-Vehicle_Type_WealthIndex))) * Dealerships
 
	People = People + ((Vehicle_Type_People *0.05) * 
        (Company_Racing_Image/100.0)) +
		((Vehicle_Type_People *0.15) * indexMove)
 
	People = People + ((Vehicle_Type_People *0.05) * 
        (Vehicle_Type_Fuel_Rating * Global_Gas))
 
	Branch_Effect = 0.5+(0.25*((Branch_Staff_Value*0.0125) + (Branch_Sales_Resources*0.0125)))
 
	if(Vehicle_Unit_Costs != 0)
	{	Quality_To_Price_Ratio = (0.9 + 
            (Car_Sales_Price/(Vehicle_Unit_Costs*(3.0+3*(Car_Quality_Rating/5.0)))))
	}
	else
		Quality_To_Price_Ratio = 1
 
 
	if(Car_Top_Speed < Minimum_Top_Speed && Minimum_Top_Speed != 0 )
		Top_Speed_Mod = Car_Top_Speed / Minimum_Top_Speed
	else
		Top_Speed_Mod = 1
 
 
        Vehicle_Type_Max_Money = City_CAP*moneyBoost*((Vehicle_Type_WealthIndex/50.0)+1)
 
 
        priceIndex = Car_Sales_Price/(1+Vehicle_Type_Max_Money)
 
        if(Vehicle_Type_WealthIndex > 6 AND priceIndex < 5)
        {
            priceIndex = priceIndex + (5-priceIndex)
        }
        else
        {
            priceIndex = priceIndex - (0.001 * priceIndex)
        }
 
        if(year > 1945 AND Vehicle_Type_WealthIndex != 0)
        {
            priceIndex = priceIndex + ( ( priceIndex / Vehicle_Type_WealthIndex ) / 2.0)
        }
 
 
	Wealth_Demographic =  (0.005 - ((priceIndex-4.0-(0.1*Vehicle_Type_WealthIndex)) * 0.00002))
 
	if(Vehicle_Type_WealthIndex > 5 &&  priceIndex < 25)
	     Ultrawealthy_VehicleType_Quality = Random Number Between 0 and (Car_Quality_Rating/20)
	else
	     Ultrawealthy_VehicleType_Quality = 0
 
	if( Sales Price is signicantly lower than material costs )
	  Sold_At_Branch = 1000000
	else
	{
        if(Sum_Of_BuyerRatings+Used_Cars_BuyerRating != 0)
        {
            Sold_At_Branch = 0.5 + 
                (((People * ((Car_BuyerRating)/((Sum_Of_BuyerRatings+Used_Cars_BuyerRating)))) *
         		( (Random Number Between 0 and 0.2) + 0.9)) * Branch_Effect)
        }
        else
        {
            Sold_At_Branch = 0.5 + People * 
                ((Random Number Between 0 and 0.2) + 0.9) * Branch_Effect
        }
 
        Sold_At_Branch = Sold_At_Branch *  Wealth_Demographic
 
        if(year > 1995)
            Sold_At_Branch = Sold_At_Branch + People * 0.003
        else if(year > 1945 && year < 1995)
            Sold_At_Branch = Sold_At_Branch + People * (0.001 + (0.00004*(year-1945)))
        else
            Sold_At_Branch = Sold_At_Branch + People * 0.001
 
        if(Sold_At_Branch < 3 && People > 50 &&  Wealth_Demographic > 0.01)
        {
            if(Car_BuyerRating > Max_Rating_For_Type_In_City * 0.6)
            {
                if( (Car_BuyerRating / Max_Rating_For_Type_In_City) > 0.98)
                    Sold_At_Branch = Sold_At_Branch + 3
                else if( (Car_BuyerRating / Max_Rating_For_Type_In_City) > 0.8)
                    Sold_At_Branch = Sold_At_Branch + 2
                else
                    Sold_At_Branch = Sold_At_Branch + 1
            }
 
        }
 
 
        if(Collective_Age > 10)
        Sold_At_Branch = Sold_At_Branch / ((Collective_Age/6.0)+1)
 
 
        Sold_At_Branch = Sold_At_Branch / Quality_To_Price_Ratio
 
        if(Car_BuyerRating/Sum_Of_BuyerRatings > 0.1)
        {
                if(Random number between 0 and 2 = 0)
                    Sold_At_Branch = Sold_At_Branch + 1
        }
 
 
        Sold_At_Branch = Sold_At_Branch * Top_Speed_Mod
 
        Sold_At_Branch = Sold_At_Branch * overPriced
 
        if(Hard_Difficulty_Sales_Mod > 0 AND Not_A_Player_Company)
                Sold_At_Branch = Sold_At_Branch * hardDifficultySalesMod
 
        if(Sold_At_Branch <0)
                Sold_At_Branch = 0
 
        if(boycottPlayer)
            Sold_At_Branch = Sold_At_Branch * (0.75 + Random Number Between 0 and 0.10)
 
 
 
 
 
	}
}