Operation G.H.O.S.T.
Operation G.H.O.S.T. |
---|
Developer: SKonec Entertainment This game has uncompiled source code. |
A sequel to Sega AM2's rail shooter Ghost Squad, only this time without AM2's involvement.
Internal Project Name
The .exe and .ini files are named gs2, which likely stands for Ghost Squad 2.
Unused Graphics
Found within some UI image files are UI_video_chat_form.png and UI_routemap_movie.png, two placeholder graphics for cutscene imagery.
There's also placeholder graphics, UI_TO_cam1.png and UI_TO_cam2.png, in the UI_route_demo folder for the "Reference Room" and "Elevator Hall" text in the second stage's route map, respectively.
Unused Video
og_tobecontinued3-2.wmv is a cutscene promoting a "completed" version of the game, likely leftover from a location tested or prototype version.
Uncompiled Source Code
Present in the same folder as the unused "to be continued" video are two equally-unused Lua scripts for it.
main.lua
------------------------------- UTF-8로 저장하기 위한 코멘트/UTF-8でセーブするためのコメント require ("tools/bindEx" ) require ("tools/og_sequence" ) require ("tools/og_task" ) require ("Sound/Sound" ) local frame = 0 local s_TaskMgr = nil local g_GeneralSE = new_SoundBank("SE_general.sound", true) PlayInfo.GM_ToBeContinue() local function TobeContinueObject() local TobeCon_movie = LwMovie( "scene/to_be_continue/og_tobecontinued3-2.wmv" ) local TobeCon_img_movie = TobeCon_movie:GetTexture() local led_space = 12 TobeCon_img_movie:SetCell( 0, RECT( 0,0,1024 + led_space * 2, 600 + led_space * 2 ) ) local tbl = { Main = function(self) end, Draw = function(self) lwMatrix:Push() do lwMatrix:Translate( 0, 600 , 0 ); local x = 1024 / ( 1024 + led_space * 2 ); local y = 600 / ( 600 + led_space *2 ); lwMatrix:Scale( x, -y,1.0 ); TobeCon_img_movie:DrawCell( 0 ); end lwMatrix:Pop() lwMisc:DebugPrint( "Status".. TobeCon_movie:GetStatus() ); end, Stop = function(self) s_TaskMgr:Remove(self) end, IsPlay = function( self ) return TobeCon_movie:GetStatus() == 3 end, } do ChangeBGM("OG_bgm_tobecontinue.sound") lwPostEffect:SetMode( PEM_MOVIE ) TobeCon_movie:SetPosition(0, 0, SCR_W, SCR_H) TobeCon_movie:SetEnableRepeat(0) lwMisc:DebugEvent( "TobeCon:Play" ) TobeCon_movie:Play() lwMisc:DebugLog( "TobeCon" .. TobeCon_movie:GetStatus() ); end s_TaskMgr:Add( "continue", tbl ) return tbl end local GameOverObject = function() local nCurrentFrame = 0 local animation = nil local KeepFrame = nil local function GameOverSeq() while true do if nCurrentFrame > KeepFrame then while true do coroutine.yield() end end nCurrentFrame = nCurrentFrame + 1 coroutine.yield() end end local m_co = coroutine.wrap( function() while true do local tempPath = AppSetting.ConvertPath("img/UI/UI_gameover/UI_@/UI_gameover.anim") animation = LwAnimation(tempPath, forLua.PRI_IMMEDIATELY) KeepFrame = animation:GetAnimationLength(0) - 1 GameOverSeq() animation = nil while true do coroutine.yield() end end end ) local tbl = { Main = function(self) m_co() end, Draw = function(self) local f = nCurrentFrame if f > KeepFrame then f = KeepFrame end animation:DrawAnimation(0, f) end, Stop = function(self) s_TaskMgr:Remove(self) animation = nil end, } g_GeneralSE:Play("gameover") s_TaskMgr:Add( "taskGameOver", tbl ) return tbl end function WaitFrame(frame) local iFrame = 0 while iFrame < frame do iFrame = iFrame + 1 coroutine.yield() end end local function sequence() if true then local tobecon = TobeContinueObject() while tobecon:IsPlay() do coroutine.yield(); end tobecon:Stop() end if true then local gameover = GameOverObject() WaitFrame( 200 ) gameover:Stop() end lwLauncher:SetFile( "scene/title/main.lua" ) while true do coroutine.yield(); end end local function Init() s_TaskMgr = og_task.ManagerCreate( "task" ) s_TaskMgr:Add( "Sequence", og_sequence.ManagerCreate( sequence, "Sequence" ) ) end function Main() if frame == 0 then Init() end s_TaskMgr:Main() frame = frame + 1 end function Draw() s_TaskMgr:Draw() s_TaskMgr:DebugPrint( 2 ) end
seq_m3_result.lua
------------------------------- UTF-8로 저장하기 위한 코멘트/UTF-8でセーブするためのコメント local TobeCon_movie = LwMovie( "scene/m_desert_result/og_tobecontinued_wmv9_95.wmv" ) local TobeCon_img_movie = TobeCon_movie:GetTexture() local led_space = 12 TobeCon_img_movie:SetCell( 0, RECT( 0,0,1024 + led_space * 2, 600 + led_space * 2 ) ) function MovieDraw() lwMatrix:Push() do lwMatrix:Translate( 0, 600 , 0 ); local x = 1024 / ( 1024 + led_space * 2 ); local y = 600 / ( 600 + led_space *2 ); lwMatrix:Scale( x, -y,1.0 ); TobeCon_img_movie:DrawCell( 0 ); end lwMatrix:Pop() end local TobeContinueObject = function() local nCurrentFrame = 0 local taskMgr = nil local tbl = { Main = function(self) nCurrentFrame = nCurrentFrame + 1 end, Draw = function(self) MovieDraw() end, Start = function(self, taskMgr_) taskMgr = taskMgr_ taskMgr:Add( "taskTobeContinue", self ) ChangeBGM("OG_bgm_tobecontinue.sound") lwPostEffect:SetMode( PEM_MOVIE ) end, Stop = function(self) taskMgr:Remove(self) taskMgr = nil end, } return tbl end local GameOverObject = function() local nCurrentFrame = 0 local taskMgr = nil local aniGameOver = nil local KeepFrame = nil local function GameOverSeq() while true do if nCurrentFrame > KeepFrame then while true do coroutine.yield() end end nCurrentFrame = nCurrentFrame + 1 coroutine.yield() end end local m_co = coroutine.wrap( function() while true do local tempPath = AppSetting.ConvertPath("img/UI/UI_gameover/UI_@/UI_gameover.anim") aniGameOver = LwAnimation(tempPath, forLua.PRI_IMMEDIATELY) KeepFrame = aniGameOver:GetAnimationLength(0) - 1 GameOverSeq() aniGameOver = nil while true do coroutine.yield() end end end ) local tbl = { Main = function(self) m_co() end, Draw = function(self) local f = nCurrentFrame --img:SetCell( 0, RECT( 0,0,SCR_W,SCR_H) ) --img:DrawCell(0) if f > KeepFrame then f = KeepFrame end aniGameOver:DrawAnimation(0, f) end, Start = function(self, taskMgr_) taskMgr = taskMgr_ taskMgr:Add( "taskGameOver", self ) g_GeneralSE: Play("gameover") end, Stop = function(self) taskMgr:Remove(self) taskMgr = nil aniGameOver = nil end, } return tbl end -- seq info Seq_m3_result_Info = function() return { name = "Seq-m3-result", main = Seq_m3_result, goto = { }, preload = "scene/to_be_continue/seq_m3_result.preload", } end function Seq_m3_result() SetShootable(false) g_bTestHUD = false local RO = dofile("lua/Direction/ResultScreen.lua") RO:Start( g_TaskMgr ) RO:Stop() RO = nil -- 로케 대응 코드 local tobecon = TobeContinueObject() tobecon:Start(g_TaskMgr) --厭廃汽 advertise Movie亜 馬球 坪漁 鞠嬢赤嬢辞 --差紫 細食隔奄稽 ToBeContinueMovie 坦軒鞠醸製. 託板 呪舛戚 琶推敗. do -- play TobeCon_movie:SetPosition(0, 0, SCR_W, SCR_H) TobeCon_movie:SetEnableRepeat(0) lwMisc:DebugEvent( "TobeCon:Play" ) TobeCon_movie:Play() lwMisc:DebugLog( "TobeCon" .. TobeCon_movie:GetStatus() ); while TobeCon_movie:GetStatus() == 3 do lwMisc:DebugPrint( "WaitStop".. TobeCon_movie:GetStatus() ); coroutine.yield(); end end WaitFrame(100) tobecon:Stop() tobecon = nil local gameover = GameOverObject() gameover:Start(g_TaskMgr) WaitFrame(200) gameover:Stop() gameover = nil ResetCritical() lwLauncher:SetFile( "scene/m_ship/Main.lua" ) end
The Ghost Squad series
| |
---|---|
Arcade | Ghost Squad Evolution • Operation G.H.O.S.T. |
- Pages missing developer references
- Games developed by SKonec Entertainment
- Pages missing publisher references
- Games published by Sega
- Arcade games
- Pages missing date references
- Games released in 2011
- Games released in October
- Games with uncompiled source code
- Games with hidden development-related text
- Games with unused graphics
- Games with unused cinematics
- Games with unused music
- Ghost Squad series
Cleanup > Pages missing date references
Cleanup > Pages missing developer references
Cleanup > Pages missing publisher references
Games > Games by content > Games with hidden development-related text
Games > Games by content > Games with uncompiled source code
Games > Games by content > Games with unused cinematics
Games > Games by content > Games with unused graphics
Games > Games by content > Games with unused music
Games > Games by developer > Games developed by SKonec Entertainment
Games > Games by platform > Arcade games
Games > Games by publisher > Games published by Sega
Games > Games by release date > Games released in 2011
Games > Games by release date > Games released in October
Games > Games by series > Ghost Squad series