Kobayashimarucommander developmentlog v0.3.0 - NDark/KobayashiMaruCommanderOS GitHub Wiki
- 文件 : 部件的建構流程 20121107
- 文件 : 攻擊與被擊中 整理修改 20121107
- 重構 : 新增ObjectSet 用來設定名稱與取得物件的資料結構 20121108
- 臭蟲 : 敵人碰到隕石跟 玩家也會扣血 20121109
- 文件 : 功能文件的重新review. 20121108 20121109 20121110
- 重構 : 名稱的銜接寫成函式 ConstName.cs 20121110
- 重構 :製作部件參數表
- 重構 : GUI 的參數 設計 Display name 的屬性 20121110
- 重構 : 單位表要跟著關卡 要不然就是 關卡檔要能修改參數 或是單位表要不同的單位能指定相同3DTemplate (template與單位資料脫鉤) 20121110
- 思考 武器參數是否要獨立出來,不要寫在單位的關卡檔案內. 單位 武器 部件 20121110
- 跟 ComponentParam一樣建立 WeaponParam的parsing 同樣使用ComponentName作索引.
- 重構 : 整合 GUI中 UnitData更新 Target與MainCharacter的部份 20121110
- 重構 : 整合 GUI中 Shield 與 Weapon更新的方式 20121110
- 文件整理 UnitData介面創造 20121111
- 重構 : 石塊更新統一暫停的方式 20121111
- 將移動量堆在 UnitData::m_ForceToMoveVec 上 然後在MainUpdate統一做更新
注意 每個畫格必定清除 避免停止後一次跳太多的現象
- 將移動量堆在 UnitData::m_ForceToMoveVec 上 然後在MainUpdate統一做更新
- 重構 : 整合 unit data component update 20121111
- 創造出來的物件必須存一份指標在 UnitData – UnitComponentData
這樣未來把資料放到 Weapen3DObject Shield3DObject時 才知道要怎麼統一 從UnitData找到那些物件 避免找錯.
- 創造出來的物件必須存一份指標在 UnitData – UnitComponentData
- 重構 : 傷害特效的整合 20121111
- 整理 文件攻擊與被擊中
- 復原 攝影機震動特效
- 復原 防護罩震動特效
- 重構 : 將武器特效物件的更新做成script 綁定在prefab上面, 將weaponset資料複製到特效物件的script上 20121112
WeaponPhaserEffect.cs
WeaponPhotonTorpedoEffect - 重構 : 聲音必須做在武器物件上.而不是weaponSystem 20121112
- 重構 : 光雷碰撞偵測物件 需改用script的 OnEnter 製造傷害給被碰到的物件 20121112
- 新功能 : 實裝武器的距離參數 20121114
- 臭蟲 : GUI_Unit_Update:OnDestroy() 似乎物件已經消失 20121114
- 臭蟲 : 超出範圍時 GUI要消失 20121114
- 臭蟲 : 光雷如何擊中非目標的敵艦 單位是否要綁定collider的問題 : component製作 UnitIntagraty 的3D物件 20121114
- 新功能 : 隕石會因為外力被推動 20121115
- 新功能 : 開火時智慧型鎖定敵艦(簡化操作) 20121115
- 臭蟲 : AI 死亡動畫時會開火 20121116
- 臭蟲 : AI單位死亡後武器特效沒有移除 20121116
- 整合 ShiftEffect 20121116
- 重要新功能 : 簡化控制 滑鼠也能玩 20121117, 20121119
操作簡化計畫
目標滑鼠也能操控船艦- 移動,改為使用滑鼠右鍵 20121121
按下右鍵時,在該點出現一黑鎖定框動畫,同時觸發移動往該方向的自動駕駛(有時間限制,如果一定時間內轉向失敗,就會停止該script)。
目標越遠速度越快。 - 行動,在沒有切換模式之下,使用滑鼠左鍵,按下單位時,依然是鎖定功能(done)
- 行動,使用滑鼠左鍵,長按自己單位時,會出現一排控制按鈕,然後在該按鈕上放開時會切換目前武器,此時按下左鍵就是發射指定武器(功能)
- 如果沒有成功切換到指定武器,就放開長按的左鍵,就沒有切換任何武器。
- 切換行動之後按右鍵就是取消。20121119
- 移動,改為使用滑鼠右鍵 20121121
- 切換模式之後的GUI圖案 20121119
- 臭蟲: 檢查摧毀武器的null檢查 (weapondataset的initialized) 20121121
- 臭蟲: 檢查 impulse engine有無打錯 20121121
- 調整: 減低飄動的速度 20121121
- 調整: 減低最大角轉速 20121121
- 重要新功能 : 牽引光束 20121121, 20121122 , 20121123
- 牽引光束的部件 TrackorBeam01
3D物件 樣板名稱 Template_Unit_TrackorBeam01 - 牽引光束的音效
TractorBeam - 牽引光束的特效物件
Template_Effect_TrackorBeam01 - 創造的流程
是否與武器一致? 差別在於命名是 Weapon_TrackorBeam01 或 TrackBeam01
data set是否要放在武器data set中? 發射時是否要透過武器系統?
音效play不同. trackbeam不能停止. 是否將play方式放在參數內? - 特效設定方式 參考 WeaponPhaserEffect 製作 TrackorBeamEffect 並且將 PullForce 加到指定物件上
- 武器特效物件的script WeaponTrackorBeamEffect
- 新增到目標上的script PullForce
- 效用 : 力量,最大維持距離
- 力量/重量 => 每畫格提供速度
- 維持距離vec
- 維持目標物(牽引單位)
- 拔掉 PullForce的時機
- 牽引單位死亡 (done)
- 牽引單位主動關閉
- 牽引單位檢查 超出 最大維持距離
- 牽引光束的部件 TrackorBeam01
- 把牽引光束的貼圖反過來 20121123
- 臭蟲: 修正推力 20121123
- 把WeaponDataSet的GameObjectName改為NamedObject 20121123
- 文件: 牽引光束 20121124
- 重構: 調整prefab的路徑 20121124
- 關卡選擇場景 重新修正讀場景的方式 20121124
- 重要新功能 : 小地圖 20121124
- 只參考主角的SensorSystem
- 將範圍內的單位創造並放到指定位置(場景下)
- 使用另一個攝影機拍攝
- 攝影機為主攝影機的child
- 將產生出來的小地圖單位掛在空節點下
- 主角的固定顯示物件
- 其他單位的顯示圖
- 設定正確的範圍(包含UnitSensorSystem)
把感測距離加大 - 小地圖的背景
- 把光雷武器範圍加大 20121124
- 小地圖的更新頻率 20121124
- 修改勝利後回到選關畫面 20121125
- 重要新功能 : 勝利失敗判定事件的模組化參數化 20121125
- 勝利失敗判定的模組化
使用參數關卡內讀入
不同的條件物件會依照參數產生
條件物件掛到指定物件(GlobalSingleton)的勝利判定script的勝利條件容器/失敗條件容器內 - 勝利失敗判定的script VictoryEvent
檢查失敗 : 檢查容器
檢查成功 : 檢查容器
觸發失敗
觸發成功
狀態切換 - 條件物件 VictoryCondition
是否觸發
三態的狀態切換 - 失敗條件
- 玩家死亡 LoseCondition_MainCharacterIsDead
- 指定船隻死亡 Condition_SpecifiedUnitIsDead
- 勝利條件
- 敵人死光 VictoryCondition_RemainingEnemyNum
- 指定船隻到達指定物件範圍 Condition_UnitIsReachLocation
- 勝利失敗判定的模組化
- 單位要增加陣營屬性 20121125
- 小地圖的顯示圖由陣營來決定 20121125
- 把TrackorBeam裝上ControlPanelGUI 20121125
- 製作兩種隕石大隕石與小隕石 20121125
- 當大隕石死亡時,會產生兩個小隕石。 20121125
- 重要新功能 : 事件產生的模組化參數化 20121126
- AddScriptOnObject 在物件上裝上script
- EnemyGeneration 單位產生事件 必須使用單位初始相同的參數(也許未來會整合起來) 新增一個時間參數
- UsualEvent
- GUITextureShowTimeEvent
startSec
elapsedSec
objectName
audioClipName
- GUITextureShowTimeEvent
- 重要新功能 : 關卡選擇場景 決定 name 關卡選擇取得singleton data資料 將關卡場景合併. 201211
- 背景音樂要用關卡檔來設定
- MessageCard_EnemyEvent2
- MessageCard Tutorial
- Tutorial Event
- 把EnemyEvent整理為 UsualEventObject – UsualEvent
- MainCharacterStartPosition 在參數中創造及設定 20121127
- EnemyStartPosition 在參數中創造及設定 20121127
- 製作運輸艦 20121128
- 3D/Data
NealsonCargoship
Template_NealsonCargoship
UnitDataTemplate_NealsonCargoship
NealsonCargoshipMaterial
NealsonCargoshipTexture.png
GUI_UnitDataBackground_Template_NealsonCargoshipTexture.png - 運輸艦的AI朝向某物件移動
- 3D/Data
- 單位抵達地點的勝利判定 20121128
- 調整右鍵移動的長度 20121128
- 製作基地單位 20121129
當作運輸艦的終點
Template_SheetStarbase01
UnitDataTemplate_SheetStarbase01 - 把勝利訊息修改為共通 20121130
- 新關卡 : 20121130
護衛船隻穿過垃圾區 然後玩家要幫忙清除前方的隕石.用光砲打只會讓垃圾越來越多. 用身體撞是自殺. 應該要用牽引光束一個個拉走.- 背景音樂
- 目標說明
- 製作牽引光束對有危險船隻的傷害
- 暫用的感謝頁面 20121201
- 新的教學 20121201
- 將左右 加減速 整合為一個說明頁
- 將點選敵艦獨立一個說明頁
- 說明控制面板的作用方式
- 調整第一關教學關的場景 20121201
- 將目標改為中英 20121201
- 將勝利失敗說明改為中英 20121201
- 調整牽引光速的參數 20121201
- 調整場景及參數 20121201 20121202
- 將Data 放到resource內 20121202
- 修改開網頁改用新視窗 20121202
- 縮小碰撞盒大小 20121202
雖然改成0.8 但是事實上防護罩的範圍會超過可視的大小 很容易碰到其他單位 - 使用 PlayerPref 儲存已經開啟的關卡 20121202
- 招募人員頁面 20121202
- 加上簽名
- Join Facebook 中文說明
- 背景音樂 中文說明
- 讓 Klingon Style 面板的顯示 不中斷 20121203
- 發布為web player的調整 20121203
- 移動 改使用左鍵.但是必須判定沒有點到物件才能移動.如果有點選行為就不可移動 (done)
- 移動的教學要改
- 啟動/關閉面板改為 點自己 (done)
點自己都是關閉功能
沒有點功能版 就再點一次自己關閉面板 - 如果點到功能版 則 啟動功能 (done)
- 面板的教學要改