Difference between revisions of "Gob Scripts"
Jump to navigation
Jump to search
CrystalBen (talk | contribs) |
CrystalBen (talk | contribs) m (→Functions) |
||
(39 intermediate revisions by the same user not shown) | |||
Line 32: | Line 32: | ||
===Functions=== | ===Functions=== | ||
* o2_getFreeMem is for keeping up Memory (RAM) to | * o2_getFreeMem is for keeping up Memory (RAM) to prevent to produce any out of memory problems. on PCs that have low Memory. | ||
* o2_writeData is for | * o2_writeData is for write Data in a specfic File. | ||
* o7_copyFile copy a File to a other Directory. | * o7_copyFile copy a File to a other Directory. | ||
* o7_readData reads a specfic File. | * o7_readData reads a specfic File. | ||
* o5_deleteFile is for deleting a specfic File. | * o5_deleteFile is for deleting a specfic File. | ||
* o2_checkData checks for a specfic File if its exists | * o2_checkData checks for a specfic File if its exists. | ||
* o1_manageDataFile is for using the STK File or loading the next STK File into ScummVM. | * o1_manageDataFile is for using the STK File or loading the next STK File into ScummVM. | ||
* o4_playVmdOrMusic is for playing a specfic VMD File that contains a Movie or Music. | * o4_playVmdOrMusic is for playing a specfic VMD File that contains a Movie or Music. | ||
Line 47: | Line 47: | ||
* oPlaytoons_openItk for opening a specfic ITK for the next Files. | * oPlaytoons_openItk for opening a specfic ITK for the next Files. | ||
* o2_closeItk when the ITK finished opening and reading Files from it then closes. | * o2_closeItk when the ITK finished opening and reading Files from it then closes. | ||
* o3_copySprite is for copying the Sprite in the Game. | |||
* o6_createSprite is for creating Sprites. | * o6_createSprite is for creating Sprites. | ||
* o1_loadSpriteToPos to load a Sprite to a specfic Position. | * o1_loadSpriteToPos to load a Sprite to a specfic Position. | ||
Line 73: | Line 74: | ||
* o2_getplayCDTrack is for playing is playing a specfic Track of the Disc. | * o2_getplayCDTrack is for playing is playing a specfic Track of the Disc. | ||
* o1_return returns in the Game as example Gobliins if you click on certain places in the Game. | * o1_return returns in the Game as example Gobliins if you click on certain places in the Game. | ||
* o1_loadObjects load the Objects into the Game. | |||
* o1_drawObjects is for drawing the Objects when they got loaded into the Game. | |||
* o1_loadMap is for loading up the Map. | |||
* o1_renderStatic is for Render Animation to a static Image. | |||
* o1_loadSpriteContent is for loading the Contents of the Sprite. | |||
* o1_animateObjects makes the Object to an Animation. | |||
* o1_waitEndPlay it waits until the End of the Song / Voice is played. | |||
* o1_getAnimLayerInfo is for to get Information about the Layer of the Animation. | |||
* o1_animatePalette is for selecting for the Animation the correct Palette. | |||
* o1_animateCursor is for animate the Cursor. | |||
* o1_clearCursorAnim is for clearing the Cursor Animation for the next initialization. | |||
* o2_stopCD is for stop the current CD from playing. | |||
* o2_getCDTrackPos is for playing the needed Track for the Game. | |||
* o2_playCDTrack is for playing a specfic Track of the CD. | |||
* o2_readLIC is for reading the Game Name. | |||
* o1_blitCursor is for blitting the Cursor. | |||
* o3_getTotTextItemPart is for if you move the Cursor on a Item and the Text is getting displayed. It also used by o1_printTotText in a similar way. | |||
* o2_readData is for reading Data from a File, in some cases from a .INF File. | |||
* o2_openItk is for opening a specfic ITK File for the Game. | |||
* o2_playImd is for playing a IMD File. | |||
* o5_getSystemCDSpeed is for getting the Information of the CD-Drive how fast it is. | |||
* o5_getSystemRAM is for getting Information of how much RAM the PC have. | |||
* o5_getSystemCPUSpeed to find out which CPU Speed / Clock the CPU has. | |||
* o5_getSystemDrawSpeed is for maybe the Graphics Card or for ddraw. | |||
* o5_totalSystemSpecs from this the Settings for the best Performance get grabbed for the Game. | |||
* o5_loadSystemSpecs is for loading then the Game in the best possible Graphics. | |||
* o1_strToLong is to jump to var8 & var32 variables. | |||
===Geisha Functions=== | ===Geisha Functions=== | ||
Line 83: | Line 111: | ||
* oGeisha_playMusic it plays Music in Geisha. | * oGeisha_playMusic it plays Music in Geisha. | ||
* oGeisha_gameDiving it dive into Geisha and checks for a specfic Value. | * oGeisha_gameDiving it dive into Geisha and checks for a specfic Value. | ||
* oGeisha_gamePenetration its similar to oGeisha_gameDiving it also checks for certain Values | * oGeisha_gamePenetration its similar to oGeisha_gameDiving it also checks for certain Values. | ||
* oGeisha_caress1 compares two numbers for the most part it is (-1, 0). | |||
* oGeisha_caress2 is doing the same as for oGeisha_caress1. | |||
===Gobliins Functions=== | |||
* o1_loadGoblin loads Goblin into the Game. | |||
* o2_moveGoblin is for move Goblin. | |||
* o1_moveGoblin0 its for moving Goblin0 similar to o2_moveGoblin. | |||
* o2_setGoblinState is for setting the current State in Gobliins. | |||
===Fascination Functions=== | |||
* oFascin_setRenderFlags is for setting the Flags for Rendering. | |||
* oFascin_setWinFlags is settings Flags for Windows. | |||
* oFascin_setWinSize for setting the right Window Size. | |||
* oFascin_openWin is for opening a new Window. | |||
* oFascin_closeWin is for closing the current Window. | |||
* oFascin_copySprite loads / copy a specfic Sprite into the Game. | |||
===Bargon Attack Functions=== | |||
* oBargon_intro1 executes / load something from INTRO1.TOT. | |||
* oBargon_intro2 executes / load something from INTRO2.TOT. | |||
* oBargon_intro3 executes / load something from INTRO3.TOT. | |||
==External links== | ==External links== | ||
*[https://buildbot.scummvm.org/#/dailybuilds Dailybuild of the ScummVM Tools] (and click in the Section of ScummVM Tools on your Platform) | *[https://buildbot.scummvm.org/#/dailybuilds Dailybuild of the ScummVM Tools] (and click in the Section of ScummVM Tools on your Platform) |
Latest revision as of 14:06, 29 March 2023
- Degob is a Tool that decompiles for you the TOT Files
- Recommended is always use the Latest Version of Degob you get the latest Version of Degob. Download it from the Buildbot / Daily Build
Usage of Degob
- Usage: ./degob <version> <file.tot> [-o <offset>] [--lib] [<file.ext>] [<commun.ext>]
- The disassembled script will be written to stdout.
- Supported versions:
- Gob1 - Gobliiins 1
- Gob2 - Gobliins 2
- Gob3 - Goblins 3
- Ween - Ween: The Prophecy
- Bargon - Bargon Attack
- Fascin - Fascination
- Lost - Lost in Time
- Woodruff - The Bizarre Adventures of Woodruff and the Schnibble
- Dynasty - The Last Dynasty
- Urban - Urban Runner
- Geisha - Geisha
- LittleRed - Once Upon A Time: Little Red Riding Hood
- Adibou2 - Adibou 2
- <file.tot> the .tot file to decompile
- -o <offset> script entry point in the .tot file, defaults to the value read in script header. _start is the Entry Point at offset 128
- --lib library mode: all offsets from .IDE named functions file are used as entry points
- <file.ext> external script resource file (<script name>.EXT)
- <commun.ext> external common script resource file (commun.EXT)
Functions
- o2_getFreeMem is for keeping up Memory (RAM) to prevent to produce any out of memory problems. on PCs that have low Memory.
- o2_writeData is for write Data in a specfic File.
- o7_copyFile copy a File to a other Directory.
- o7_readData reads a specfic File.
- o5_deleteFile is for deleting a specfic File.
- o2_checkData checks for a specfic File if its exists.
- o1_manageDataFile is for using the STK File or loading the next STK File into ScummVM.
- o4_playVmdOrMusic is for playing a specfic VMD File that contains a Movie or Music.
- o1_loadFont is for loading a specfic Font File.
- o1_printTotText is showing up the Text that contains the TOT if you go with the Mouse on any object and that displays a Text on the Display.
- o2_printText is for print / display some Text of the Icons or any Names.
- o1_loadTot is for loading the next TOT File.
- o1_setFrameRate this is for setting a custom Framerate the Game uses.
- oPlaytoons_openItk for opening a specfic ITK for the next Files.
- o2_closeItk when the ITK finished opening and reading Files from it then closes.
- o3_copySprite is for copying the Sprite in the Game.
- o6_createSprite is for creating Sprites.
- o1_loadSpriteToPos to load a Sprite to a specfic Position.
- o2_loadSound which Sound the Game needs to load.
- o1_playSound is for playing a specfic Sound.
- o2_stopSound is for stopping a Sound that is currently running.
- o1_setMousePos is for set the Mouse Position.
- o1_loadAnim for loading a Animation.
- o1_updateAnim for updating the current Animation.
- o1_initCursorAnim is for initialize the Cursor Animation.
- o1_initCursor is for initialize the Cursor.
- o7_loadCursor is for loading the Cursor.
- o1_getObjAnimSize gets the right Obj Animation Size.
- o2_loadMapObjects is for loading the Objects of the Map (example in the Garden it loads the House as an object (Adibou2)).
- o1_renewTimeInVars Renew the Time in the Var Functions.
- o7_callFunction is for loading something for the Game up.
- o7_getDBString is for getting various Strings of the Database.
- o7_displayWarning is for warn the Player when something hangs as example.
- o7_opendBase is for start the Environment.
- o7_loadImage loads a static Image with the File Extension .LBM.
- o1_keyFunc detects if the Mouse or Keyboard executes any inputs.
- o1_palLoad is for choosing different Videos (VMDs).
- o2_initScreen is for blitting the Sprites.
- o1_callSub for call / load the TOT File with the right offset.
- o1_if for if you wanna click on some Text that is displays
- o2_getplayCDTrack is for playing is playing a specfic Track of the Disc.
- o1_return returns in the Game as example Gobliins if you click on certain places in the Game.
- o1_loadObjects load the Objects into the Game.
- o1_drawObjects is for drawing the Objects when they got loaded into the Game.
- o1_loadMap is for loading up the Map.
- o1_renderStatic is for Render Animation to a static Image.
- o1_loadSpriteContent is for loading the Contents of the Sprite.
- o1_animateObjects makes the Object to an Animation.
- o1_waitEndPlay it waits until the End of the Song / Voice is played.
- o1_getAnimLayerInfo is for to get Information about the Layer of the Animation.
- o1_animatePalette is for selecting for the Animation the correct Palette.
- o1_animateCursor is for animate the Cursor.
- o1_clearCursorAnim is for clearing the Cursor Animation for the next initialization.
- o2_stopCD is for stop the current CD from playing.
- o2_getCDTrackPos is for playing the needed Track for the Game.
- o2_playCDTrack is for playing a specfic Track of the CD.
- o2_readLIC is for reading the Game Name.
- o1_blitCursor is for blitting the Cursor.
- o3_getTotTextItemPart is for if you move the Cursor on a Item and the Text is getting displayed. It also used by o1_printTotText in a similar way.
- o2_readData is for reading Data from a File, in some cases from a .INF File.
- o2_openItk is for opening a specfic ITK File for the Game.
- o2_playImd is for playing a IMD File.
- o5_getSystemCDSpeed is for getting the Information of the CD-Drive how fast it is.
- o5_getSystemRAM is for getting Information of how much RAM the PC have.
- o5_getSystemCPUSpeed to find out which CPU Speed / Clock the CPU has.
- o5_getSystemDrawSpeed is for maybe the Graphics Card or for ddraw.
- o5_totalSystemSpecs from this the Settings for the best Performance get grabbed for the Game.
- o5_loadSystemSpecs is for loading then the Game in the best possible Graphics.
- o1_strToLong is to jump to var8 & var32 variables.
Geisha Functions
- oGeisha_loadSound loads the Sound (in the most cases it loads a .SND File) in Geisha.
- oGeisha_loadTot load the TOT File in Geisha.
- oGeisha_checkData checks the Data (if a TOT File is present) in Geisha.
- oGeisha_loadCursor loads the Cursor into Geisha.
- oGeisha_loadTitleMusic it loads the Title Music of Geisha.
- oGeisha_stopMusic it stops the current playing Music in Geisha.
- oGeisha_playMusic it plays Music in Geisha.
- oGeisha_gameDiving it dive into Geisha and checks for a specfic Value.
- oGeisha_gamePenetration its similar to oGeisha_gameDiving it also checks for certain Values.
- oGeisha_caress1 compares two numbers for the most part it is (-1, 0).
- oGeisha_caress2 is doing the same as for oGeisha_caress1.
Gobliins Functions
- o1_loadGoblin loads Goblin into the Game.
- o2_moveGoblin is for move Goblin.
- o1_moveGoblin0 its for moving Goblin0 similar to o2_moveGoblin.
- o2_setGoblinState is for setting the current State in Gobliins.
Fascination Functions
- oFascin_setRenderFlags is for setting the Flags for Rendering.
- oFascin_setWinFlags is settings Flags for Windows.
- oFascin_setWinSize for setting the right Window Size.
- oFascin_openWin is for opening a new Window.
- oFascin_closeWin is for closing the current Window.
- oFascin_copySprite loads / copy a specfic Sprite into the Game.
Bargon Attack Functions
- oBargon_intro1 executes / load something from INTRO1.TOT.
- oBargon_intro2 executes / load something from INTRO2.TOT.
- oBargon_intro3 executes / load something from INTRO3.TOT.
External links
- Dailybuild of the ScummVM Tools (and click in the Section of ScummVM Tools on your Platform)