User Tools

Site Tools


japanesemanual:ja_gm_stocks

株式ゲームメカニクス

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

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

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

変数

名称 説明 名称 説明
Money あなたの会社が持っている現金の額 Total_Debt 融資、社債額面金額、信用枠を含む負債総額
Branch_Construction_Costs 全支店の総価値 Factory_Construction_Costs 完成した工場の総価値
Vehicle_Inventory 車両在庫に車両の平均単価をかけたもの Total_Design_Costs すべての部品と車両の設計費を10で割ったもの
Share_Holdings あなたが所有している他の会社の株式の価値 Global_Stock_Rate TurnEvents.xmlファイルで定義されたグローバル株価レート
Revenues_12_Months 過去12ヶ月間の収益 GameStartYear ゲームを開始した年
Evaluation 価格評価の項目で定義した評価 EPS_Growth 過去1年間のEPS評価の変化
Total_Shares 発行済み株式総数 CurrentSharePrice 前月の株価
Last_EPS 前四半期のEPS Current_EPS 今四半期のEPS
EPS_Q# 前四半期からのEPS Delisted 現在、株式は公開されていません
LY_YTD_Profits 昨年度の総利益 CurrentFunds 会社が現在持っている資金の額
Turn_Expenses 先月の費用 Turn_Income 先月の収益
LastYear_Expenses 昨年の費用 LastYear_Income 昨年の収益
Current_Construction_Costs 工場建設による現在の全費用

価格評価

Money - Total_Debt + Branch_Construction_Costs +
Factory_Construction_Costs + Vehicle_Inventory + 
Total_Design_Costs + Share_Holdings

IPO評価

PriceEvaluation =  PriceEvaluation/2.0 + ((PriceEvaluation/2.0) * Global_Stock_Rate)
 
PriceEvaluation = PriceEvaluation * 1.2 + (Revenues_12_Months * (3 * Global_Stock_Rate))
 
IPO_Share_Price = 10
 
Shares_Issued = PriceEvaluation / IPO_Share_Price

株価

if(Year > 2000)
{
    if(Year-GameStartYear > 8 )
        NewSharePrice  = ((Evaluation*0.4) + (Revenues_12_Months*1.0*Global_Stock_Rates) *
                (0.75 * EPS_Growth)) / (Total_Shares);
    else
    {
        NewSharePrice  = ((Evaluation*(0.4+((8-(Year-GameStartYear))*0.1))) +
            (Revenues_12_Months*1.0*Global_Stock_Rates) *
            (((Year-GameStartYear)*0.1) * EPS_Growth)) / (Total_Shares);
    }
}
else
{
    if(Year-GameStartYear > 8 )
        NewSharePrice  = ((Evaluation*0.4) + (Revenues_12_Months*(10.0-((Year-1900)/10))*
            Global_Stock_Rates) *(0.75 * EPS_Growth)) / (Total_Shares);
    else
    {
        NewSharePrice  = ((Evaluation*(0.4+((8-(Year-GameStartYear))*0.1))) +
            (Revenues_12_Months*(10.0-((Year-1900)/10))*Global_Stock_Rates) *
            (((Year-GameStartYear)*0.1) * EPS_Growth)) / (Total_Shares);
    }
}
 
 
 
 
NewSharePrice = CurrentSharePrice +
    ( ((NewSharePrice - CurrentSharePrice) / 3.5) +
    ((((NewSharePrice - CurrentSharePrice) / 3.0)) -
    (NewSharePrice - CurrentSharePrice) / 6.0) )
 
if(NewSharePrice < 0)
    NewSharePrice = 0.01;
 
if(A Quarter Month)
{
    if(Last_EPS > 0)
    {
        if(Current_EPS > Last_EPS * 2.0)
            NewSharePrice = NewSharePrice * 1.15; 
        else if(Current_EPS > Last_EPS * 1.2)
            NewSharePrice = NewSharePrice * 1.1; 
        else if(Current_EPS > Last_EPS * 1.1)
            NewSharePrice = NewSharePrice * 1.05; 
        else if(Current_EPS < Last_EPS * 0.9)
            NewSharePrice = NewSharePrice * 0.95; 
        else if(Current_EPS < Last_EPS * 0.8)
            NewSharePrice = NewSharePrice * 0.85; 
        else if(Current_EPS < Last_EPS * 0.7)
            NewSharePrice = NewSharePrice * 0.75;
    }
    else if(Last_EPS < 0)
    {
        if(Current_EPS > Last_EPS * 0.7)
            NewSharePrice = NewSharePrice * 1.15;
        if(Current_EPS > Last_EPS * 0.8)
            NewSharePrice = NewSharePrice * 1.1;
        if(Current_EPS > Last_EPS * 0.9)
            NewSharePrice = NewSharePrice * 1.05;
        else if(Current_EPS < Last_EPS * 1.1)
            NewSharePrice = NewSharePrice * 0.95;
        else if(Current_EPS < Last_EPS * 1.2)
            NewSharePrice = NewSharePrice * 0.85;
        else if(Current_EPS < Last_EPS * 1.3)
            NewSharePrice = NewSharePrice * 0.75;
    }
    else if(Last_EPS == 0)
    {
        if(Current_EPS > Last_EPS )
            NewSharePrice = NewSharePrice * 1.05;
        else if(Current_EPS < Last_EPS )
            NewSharePrice = NewSharePrice * 0.95;
        else if(Current_EPS == 0 && Last_EPS == 0 && eps3 == 0 && eps4 == 0)
        {
            NewSharePrice = NewSharePrice * (Random Number Between (0 AND 0.2) + 0.95);
        }
 
    }
 
}
 
if(NewSharePrice < ((Evaluation * 0.7) / Total_Shares))
{
    NewSharePrice = ((Evaluation * 0.7) / Total_Shares);
}
 
 
 
if(CurrentSharePrice != 0)
{
    priceChange = NewSharePrice / CurrentSharePrice;
}

株式分割

分割

if(NewSharePrice>(30+((Year-1899)*2)) OR 
(((EPS_Q1+EPS_Q2+EPS_Q3+EPS_Q4)>(4+((Year-1899)/3))) AND NewSharePrice > 5) )
{			
    NewSharePrice = NewSharePrice / 2.0;
    TotalShares = TotalShare * 2;
 
}

株式併合

if(NewSharePrice < 1)
{
 
    if(TotalShares / 2 > 1000)
    {
        TotalShares = TotalShares / 2;					
        NewSharePrice = NewSharePrice * 2;
    }
    else
    {
        Delisted     
    }
 
}

公開買付価格

if(Shares_Needed > 0)
{
    if(EPS_Year < -0.5)
    {
            AqusitionCosts = ((((Price_Evaluation*1.1)/(Shares_Needed)/5) +
             (PricePerShare*1.3)) * Shares_Needed)*DifficultyBonus ;
 
    }
    else
    {        
            AqusitionCosts = ((((Price_Evaluation*1.2)/(Shares_Needed)/2.5) +
                (PricePerShare*1.75)) * Shares_Needed) * ((EPS_Year/10.0) + 1)*DifficultyBonus;       
 
    }
 
    PricePerShare = (AqusitionCosts / (Shares_Needed));
}
else
    AqusitionCosts = ((Price_Evaluation/10))*DifficultyBonus;

AIの株式の購入/売却

機関投資

購入

if(priceChange > 7%)
    Buy 10% of the available shares.
else if(priceChange > 4%)
    Buy 7% of the available shares.
else if(priceChange > 0% AND Random Number Between (0 AND 4) = 0)
    Buy 3.5% of the available shares.

売却

if(priceChange < -10% AND Random Number Between (0 AND 12) = 0)
    Sell 4% of shares owned.
else if(priceChange < 0.95 AND Random Number Between (0 AND 12) = 0)
    Sell 2.5% of shares owned.
else if(Random Number Between (0 AND 12) = 0)
    Sell 1% of shares owned.

AI企業

購入

if(LY_YTD_Profits > 0 && CurrentFunds > (LY_YTD_Profits*2) )
    Buy 10% of CurrentFunds worth of stock shares.

売却

 
IF (( CurrentFunds < ( (Turn_Expenses-Turn_Income) * 3 )  AND 
	CurrentFunds < (LastYear_Expenses - LastYear_Income) ) OR 
	CurrentFunds < (Turn_Expenses-Current_Construction_Costs-Turn_Income))
{
    if( Company owns more than 25% of self )
        Sell 5% of shares owned of their company.
    else
        Sell all shares of random company.
}
 
japanesemanual/ja_gm_stocks.txt · Last modified: 2023/04/14 10:17 by nichirinmotor