Skip to content

Releases: cleolibrary/CLEO5

5.0.0-alpha.42

27 Feb 01:56
3fc4b36
Compare
Choose a tag to compare
5.0.0-alpha.42 Pre-release
Pre-release

Bug Fixes

  • fixed error in 004E (terminate_this_script) allowing to run multiple missions
  • fixed handling of strings longer than 128 characters causing errors in some cases
  • fixed error in handling of first string argument in 0AF5 (write_string to_ini_file)
  • fixed resolution dependent aspect ratio of CLEO text in main menu
  • fixed clearing mission locals when new CLEO mission is started
  • when reading less than 4 bytes with 0A9D (readfile) now remaining bytes of the target variable are set to zero
  • fixed invalid 7 characters length limit of 0AAA (get_script_struct_named)

SDK AND PLUGINS

  • now all opcodes in range 0-7FFF can be registered by plugins
  • plugins moved to cleo\cleo_plugins directory
  • new SDK method: CLEO_RegisterCallback
  • new SDK method: CLEO_GetVarArgCount
  • new SDK method: CLEO_PeekIntOpcodeParam
  • new SDK method: CLEO_PeekFloatOpcodeParam
  • new SDK method: CLEO_SkipUnusedVarArgs
  • new SDK method: CLEO_ReadParamsFormatted
  • new SDK method: CLEO_ReadStringParamWriteBuffer
  • new SDK method: CLEO_GetOpcodeParamsArray
  • new SDK method: CLEO_GetParamsHandledCount
  • new SDK method: CLEO_GetScriptVersion
  • new SDK method: CLEO_GetScriptInfoStr
  • new SDK method: CLEO_GetScriptFilename
  • new SDK method: CLEO_GetScriptWorkDir
  • new SDK method: CLEO_SetScriptWorkDir
  • new SDK method: CLEO_ResolvePath
  • new SDK method: CLEO_GetScriptByName
  • new SDK method: CLEO_GetScriptByFilename
  • new SDK method: CLEO_GetScriptDebugMode
  • new SDK method: CLEO_SetScriptDebugMode
  • new SDK method: CLEO_Log

CLEO internal

  • project migrated to VS 2022
  • configured game debugging settings
  • plugins moved into single solution
  • configured automatic releases on GitHub
  • added setup_env.bat script

Special Thanks

  • 123nir for the alpha-testing, troubleshooting and valuable bug reports

5.0.0-alpha.41

26 Feb 14:02
bdccfa3
Compare
Choose a tag to compare
5.0.0-alpha.41 Pre-release
Pre-release

Bug Fixes

  • fixed error in 004E (terminate_this_script) allowing to run multiple missions
  • fixed handling of strings longer than 128 characters causing errors in some cases
  • fixed error in handling of first string argument in 0AF5 (write_string to_ini_file)
  • fixed resolution dependent aspect ratio of CLEO text in main menu
  • fixed clearing mission locals when new CLEO mission is started
  • when reading less than 4 bytes with 0A9D (readfile) now remaining bytes of the target variable are set to zero
  • fixed invalid 7 characters length limit of 0AAA (get_script_struct_named)

SDK AND PLUGINS

  • now all opcodes in range 0-7FFF can be registered by plugins
  • plugins moved to cleo\cleo_plugins directory
  • new SDK method: CLEO_RegisterCallback
  • new SDK method: CLEO_GetVarArgCount
  • new SDK method: CLEO_PeekIntOpcodeParam
  • new SDK method: CLEO_PeekFloatOpcodeParam
  • new SDK method: CLEO_SkipUnusedVarArgs
  • new SDK method: CLEO_ReadParamsFormatted
  • new SDK method: CLEO_ReadStringParamWriteBuffer
  • new SDK method: CLEO_GetOpcodeParamsArray
  • new SDK method: CLEO_GetParamsHandledCount
  • new SDK method: CLEO_GetScriptVersion
  • new SDK method: CLEO_GetScriptInfoStr
  • new SDK method: CLEO_GetScriptFilename
  • new SDK method: CLEO_GetScriptWorkDir
  • new SDK method: CLEO_SetScriptWorkDir
  • new SDK method: CLEO_ResolvePath
  • new SDK method: CLEO_GetScriptByName
  • new SDK method: CLEO_GetScriptByFilename
  • new SDK method: CLEO_GetScriptDebugMode
  • new SDK method: CLEO_SetScriptDebugMode
  • new SDK method: CLEO_Log

CLEO internal

  • project migrated to VS 2022
  • configured game debugging settings
  • plugins moved into single solution
  • configured automatic releases on GitHub
  • added setup_env.bat script

Special Thanks

  • 123nir for the alpha-testing, troubleshooting and valuable bug reports

5.0.0-alpha.40

26 Feb 02:52
7898104
Compare
Choose a tag to compare
5.0.0-alpha.40 Pre-release
Pre-release

Bug Fixes

  • fixed error in 004E (terminate_this_script) allowing to run multiple missions
  • fixed handling of strings longer than 128 characters causing errors in some cases
  • fixed error in handling of first string argument in 0AF5 (write_string to_ini_file)
  • fixed resolution dependent aspect ratio of CLEO text in main menu
  • fixed clearing mission locals when new CLEO mission is started
  • when reading less than 4 bytes with 0A9D (readfile) now remaining bytes of the target variable are set to zero
  • fixed invalid 7 characters length limit of 0AAA (get_script_struct_named)

SDK AND PLUGINS

  • now all opcodes in range 0-7FFF can be registered by plugins
  • plugins moved to cleo\cleo_plugins directory
  • new SDK method: CLEO_RegisterCallback
  • new SDK method: CLEO_GetVarArgCount
  • new SDK method: CLEO_PeekIntOpcodeParam
  • new SDK method: CLEO_PeekFloatOpcodeParam
  • new SDK method: CLEO_SkipUnusedVarArgs
  • new SDK method: CLEO_ReadParamsFormatted
  • new SDK method: CLEO_ReadStringParamWriteBuffer
  • new SDK method: CLEO_GetOpcodeParamsArray
  • new SDK method: CLEO_GetParamsHandledCount
  • new SDK method: CLEO_GetScriptVersion
  • new SDK method: CLEO_GetScriptInfoStr
  • new SDK method: CLEO_GetScriptFilename
  • new SDK method: CLEO_GetScriptWorkDir
  • new SDK method: CLEO_SetScriptWorkDir
  • new SDK method: CLEO_ResolvePath
  • new SDK method: CLEO_GetScriptByName
  • new SDK method: CLEO_GetScriptByFilename
  • new SDK method: CLEO_GetScriptDebugMode
  • new SDK method: CLEO_SetScriptDebugMode
  • new SDK method: CLEO_Log

CLEO internal

  • project migrated to VS 2022
  • configured game debugging settings
  • plugins moved into single solution
  • configured automatic releases on GitHub
  • added setup_env.bat script

Special Thanks

  • 123nir for the alpha-testing, troubleshooting and valuable bug reports

5.0.0-alpha.35

19 Feb 18:09
Compare
Choose a tag to compare
5.0.0-alpha.35 Pre-release
Pre-release
  • support for CLEO modules feature sannybuilder/dev#264
  • new DebugUtils plugin
    • new opcode 00C3 (debug_on)
    • new opcode 00C4 (debug_off)
    • new opcode 2100 (breakpoint)
    • new opcode 2101 (trace)
    • new opcode 2102 (log_to_file)
    • implemented support of opcodes 0662, 0663 and 0664 (original Rockstar's script debugging opcodes. See DebugUtils.ini)
  • new FileSystemOperations plugin
    • file related opcodes moved from CLEO into separated plugin
    • opcode 0A9E (write_to_file) now supports literal numbers and strings
    • fixed bug preventing file stream opcodes from working correctly for read-write modes
    • fixed buffer overflows in file stream read opcodes
    • added/fixed support of all file stream opcodes in legacy mode (Cleo3)
    • new opcode 2300 (get_file_position)
    • new opcode 2301 (read_block_from_file)
    • 2302 (resolve_filepath)
    • 2303 (get_script_filename)
  • new MemoryOperations plugin
  • new and updated opcodes
    • 0B1E (sign_extend)
    • 0DD5 (get_game_platform)
    • 2002 (cleo_return_with)
    • 2003 (cleo_return_fail)
    • 'argument count' parameter of 0AB1 (cleo_call) is now optional. cleo_call @LABEL args 0 can be written as cleo_call @LABEL
    • 'argument count' parameter of 0AB2 (cleo_return) is now optional. cleo_return 0 can be written as cleo_return
    • cleo_return_* opcodes now can pass strings as return arguments
    • SCM functions (0AB1) now keep their own GOSUB's call stack
  • changes in file operations
    • file paths can now use 'virtual absolute paths'. Use prefix in file path strings to access predefined locations:
      • root:\ for game root directory
      • userfiles:\ for game save files directory
      • .\ for this script file directory
      • cleo:\ for CLEO directory
      • modules:\ for CLEO\cleo_modules directory
    • rewritten opcode 0A99 (set_current_directory). It no longer affects internal game state and other scripts
  • improved error handling
    • more detailed error messages in multiple scenarios
    • some errors now cause the script to pause, instead of crashing the game
  • updated included Silent's ASI Loader to version 1.3

Bug Fixes

  • fixed error in 004E (terminate_this_script) allowing to run multiple missions
  • fixed handling of strings longer than 128 characters causing errors in some cases
  • fixed error in handling of first string argument in 0AF5 (write_string to_ini_file)
  • fixed resolution dependent aspect ratio of CLEO text in main menu
  • fixed clearing mission locals when new CLEO mission is started
  • when reading less than 4 bytes with 0A9D (readfile) now remaining bytes of the target variable are set to zero
  • fixed invalid 7 characters length limit of 0AAA (get_script_struct_named)

SDK AND PLUGINS

  • now all opcodes in range 0-7FFF can be registered by plugins
  • plugins moved to cleo\cleo_plugins directory
  • new SDK method: CLEO_RegisterCallback
  • new SDK method: CLEO_GetVarArgCount
  • new SDK method: CLEO_PeekIntOpcodeParam
  • new SDK method: CLEO_PeekFloatOpcodeParam
  • new SDK method: CLEO_SkipUnusedVarArgs
  • new SDK method: CLEO_ReadParamsFormatted
  • new SDK method: CLEO_ReadStringParamWriteBuffer
  • new SDK method: CLEO_GetOpcodeParamsArray
  • new SDK method: CLEO_GetParamsHandledCount
  • new SDK method: CLEO_GetScriptVersion
  • new SDK method: CLEO_GetScriptInfoStr
  • new SDK method: CLEO_GetScriptFilename
  • new SDK method: CLEO_GetScriptWorkDir
  • new SDK method: CLEO_SetScriptWorkDir
  • new SDK method: CLEO_ResolvePath
  • new SDK method: CLEO_GetScriptByName
  • new SDK method: CLEO_GetScriptByFilename
  • new SDK method: CLEO_GetScriptDebugMode
  • new SDK method: CLEO_SetScriptDebugMode
  • new SDK method: CLEO_Log

CLEO internal

  • project migrated to VS 2022
  • configured game debugging settings
  • plugins moved into single solution
  • configured automatic releases on GitHub
  • added setup_env.bat script

Special Thanks

  • 123nir for the alpha-testing, troubleshooting and valuable bug reports

5.0.0-alpha.33

06 Jan 22:00
d560e83
Compare
Choose a tag to compare
5.0.0-alpha.33 Pre-release
Pre-release
  • support for CLEO modules feature sannybuilder/dev#264
  • new DebugUtils plugin
    • new opcode 00C3 (debug_on)
    • new opcode 00C4 (debug_off)
    • new opcode 2100 (breakpoint)
    • new opcode 2101 (trace)
    • new opcode 2102 (log_to_file)
    • implemented support of opcodes 0662, 0663 and 0664 (original Rockstar's script debugging opcodes. See DebugUtils.ini)
  • new and updated opcodes
  • changes in file operations
    • file paths can now use 'virtual absolute paths'. Use prefix in file path strings to access predefined locations:
      • root:\ for game root directory
      • userfiles:\ for game save files directory
      • .\ for this script file directory
      • cleo:\ for CLEO directory
      • modules:\ for CLEO\cleo_modules directory
    • rewritten opcode 0A99 (set_current_directory). It no longer affects internal game state and other scripts
  • improved error handling
    • more detailed error messages in multiple scenarios
    • some errors now cause the script to pause, instead of crashing the game
  • updated included Silent's ASI Loader to version 1.3

Bug Fixes

  • fixed error in 004E (terminate_this_script) allowing to run multiple missions
  • fixed handling of strings longer than 128 characters causing errors in some cases
  • fixed error in handling of first string argument in 0AF5 (write_string to_ini_file)
  • fixed resolution dependent aspect ratio of CLEO text in main menu
  • fixed clearing mission locals when new CLEO mission is started
  • when reading less than 4 bytes with 0A9D (readfile) now remaining bytes of the target variable are set to zero

SDK AND PLUGINS

  • now all opcodes in range 0-7FFF can be registered by plugins
  • plugins moved to cleo\cleo_plugins directory
  • new SDK method: CLEO_RegisterCallback
  • new SDK method: CLEO_GetVarArgCount
  • new SDK method: CLEO_SkipUnusedVarArgs
  • new SDK method: CLEO_ReadParamsFormatted
  • new SDK method: CLEO_GetScriptVersion
  • new SDK method: CLEO_GetScriptInfoStr
  • new SDK method: CLEO_ResolvePath
  • new SDK method: CLEO_GetScriptDebugMode
  • new SDK method: CLEO_SetScriptDebugMode
  • new SDK method: CLEO_Log

CLEO internal

  • project migrated to VS 2022
  • configured game debugging settings
  • plugins moved into single solution
  • configured automatic releases on GitHub
  • added setup_env.bat script

Special Thanks

  • 123nir for the alpha-testing, troubleshooting and valuable bug reports

5.0.0-alpha.32

04 Jan 14:41
91e78cd
Compare
Choose a tag to compare
5.0.0-alpha.32 Pre-release
Pre-release
  • support for CLEO modules feature sannybuilder/dev#264
  • new DebugUtils plugin
    • new opcode 00C3 (debug_on)
    • new opcode 00C4 (debug_off)
    • new opcode 2100 (breakpoint)
    • new opcode 2101 (trace)
    • new opcode 2102 (log_to_file)
    • implemented support of opcodes 0662, 0663 and 0664 (original Rockstar's script debugging opcodes. See DebugUtils.ini)
  • new and updated opcodes
    • 0DD5 (get_game_platform)
    • 2000 (resolve_filepath)
    • 2001 (get_script_filename)
    • 2002 (cleo_return_with)
    • 2003 (cleo_return_fail)
    • 'argument count' parameter of 0AB1 (cleo_call) is now optional. cleo_call @LABEL args 0 can be written as cleo_call @LABEL
    • 'argument count' parameter of 0AB2 (cleo_return) is now optional. cleo_return 0 can be written as cleo_return
    • opcodes 0AAB, 0AE4, 0AE5, 0AE6, 0AE7 and 0AE8 moved to the FileSystemOperations plugin
    • cleo_return_* opcodes now can pass strings as return arguments
    • SCM functions (0AB1) now keep their own GOSUB's call stack
    • new opcode 0B1E (sign_extend)
  • changes in file operations
    • file paths can now use 'virtual absolute paths'. Use prefix in file path strings to access predefined locations:
      • root:\ for game root directory
      • userfiles:\ for game save files directory
      • .\ for this script file directory
      • cleo:\ for CLEO directory
      • modules:\ for CLEO\cleo_modules directory
    • rewritten opcode 0A99 (set_current_directory). It no longer affects internal game state and other scripts
  • improved error handling
    • more detailed error messages in multiple scenarios
    • some errors now cause the script to pause, instead of crashing the game
  • updated included Silent's ASI Loader to version 1.3

Bug Fixes

  • fixed error in 004E (terminate_this_script) allowing to run multiple missions
  • fixed handling of strings longer than 128 characters causing errors in some cases
  • fixed error in handling of first string argument in 0AF5 (write_string to_ini_file)
  • fixed resolution dependent aspect ratio of CLEO text in main menu
  • fixed clearing mission locals when new CLEO mission is started
  • when reading less than 4 bytes with 0A9D (readfile) now remaining bytes of the target variable are set to zero

SDK AND PLUGINS

  • now all opcodes in range 0-7FFF can be registered by plugins
  • plugins moved to cleo\cleo_plugins directory
  • new SDK method: CLEO_RegisterCallback
  • new SDK method: CLEO_GetVarArgCount
  • new SDK method: CLEO_SkipUnusedVarArgs
  • new SDK method: CLEO_ReadParamsFormatted
  • new SDK method: CLEO_GetScriptVersion
  • new SDK method: CLEO_GetScriptInfoStr
  • new SDK method: CLEO_ResolvePath
  • new SDK method: CLEO_GetScriptDebugMode
  • new SDK method: CLEO_SetScriptDebugMode
  • new SDK method: CLEO_Log

CLEO internal

  • project migrated to VS 2022
  • configured game debugging settings
  • plugins moved into single solution
  • configured automatic releases on GitHub
  • added setup_env.bat script

Special Thanks

  • 123nir for the alpha-testing, troubleshooting and valuable bug reports

5.0.0-alpha.31

21 Dec 03:41
44b761b
Compare
Choose a tag to compare
5.0.0-alpha.31 Pre-release
Pre-release
  • support for CLEO modules feature sannybuilder/dev#264
  • new DebugUtils plugin
    • new opcode 00C3 (debug_on)
    • new opcode 00C4 (debug_off)
    • new opcode 2100 (breakpoint)
    • new opcode 2101 (trace)
    • new opcode 2102 (log_to_file)
    • implemented support of opcodes 0662, 0663 and 0664 (original Rockstar's script debugging opcodes. See DebugUtils.ini)
  • new and updated opcodes
  • changes in file operations
    • file paths can now use 'virtual absolute paths'. Use prefix in file path strings to access predefined locations:
      • root:\ for game root directory
      • userfiles:\ for game save files directory
      • .\ for this script file directory
      • cleo:\ for CLEO directory
      • modules:\ for CLEO\cleo_modules directory
    • rewritten opcode 0A99 (set_current_directory). It no longer affects internal game state and other scripts
  • improved error handling
    • more detailed error messages in multiple scenarios
    • some errors now cause the script to pause, instead of crashing the game
  • updated included Silent's ASI Loader to version 1.3

Bug Fixes

  • fixed error in 004E (terminate_this_script) allowing to run multiple missions
  • fixed handling of strings longer than 128 characters causing errors in some cases
  • fixed error in handling of first string argument in 0AF5 (write_string to_ini_file)
  • fixed resolution dependent aspect ratio of CLEO text in main menu
  • fixed clearing mission locals when new CLEO mission is started
  • when reading less than 4 bytes with 0A9D (readfile) now remaining bytes of the target variable are set to zero

SDK AND PLUGINS

  • now all opcodes in range 0-7FFF can be registered by plugins
  • plugins moved to cleo\cleo_plugins directory
  • new SDK method: CLEO_RegisterCallback
  • new SDK method: CLEO_GetVarArgCount
  • new SDK method: CLEO_SkipUnusedVarArgs
  • new SDK method: CLEO_ReadParamsFormatted
  • new SDK method: CLEO_GetScriptVersion
  • new SDK method: CLEO_GetScriptInfoStr
  • new SDK method: CLEO_ResolvePath
  • new SDK method: CLEO_GetScriptDebugMode
  • new SDK method: CLEO_SetScriptDebugMode
  • new SDK method: CLEO_Log

CLEO internal

  • project migrated to VS 2022
  • configured game debugging settings
  • plugins moved into single solution
  • configured automatic releases on GitHub
  • added setup_env.bat script

Special Thanks

  • 123nir for the alpha-testing, troubleshooting and valuable bug reports

5.0.0-alpha.30

04 Dec 01:47
9fa9b50
Compare
Choose a tag to compare
5.0.0-alpha.30 Pre-release
Pre-release
  • support for CLEO modules feature sannybuilder/dev#264
  • new DebugUtils plugin
    • new opcode 00C3 (debug_on)
    • new opcode 00C4 (debug_off)
    • new opcode 2100 (breakpoint)
    • new opcode 2101 (trace)
    • new opcode 2102 (log_to_file)
    • implemented support of opcodes 0662, 0663 and 0664 (original Rockstar's script debugging opcodes. See DebugUtils.ini)
  • new and updated opcodes
  • changes in file operations
    • file paths can now use 'virtual absolute paths'. Use prefix in file path strings to access predefined locations:
      • root:\ for game root directory
      • userfiles:\ for game save files directory
      • .\ for this script file directory
      • cleo:\ for CLEO directory
      • modules:\ for CLEO\cleo_modules directory
    • rewritten opcode 0A99 (set_current_directory). It no longer affects internal game state and other scripts
  • improved error handling
    • more detailed error messages in multiple scenarios
    • some errors now cause the script to pause, instead of crashing the game
  • updated included Silent's ASI Loader to version 1.3

Bug Fixes

  • fixed error in 004E (terminate_this_script) allowing to run multiple missions
  • fixed handling of strings longer than 128 characters causing errors in some cases
  • fixed error in handling of first string argument in 0AF5 (write_string to_ini_file)
  • fixed resolution dependent aspect ratio of CLEO text in main menu
  • fixed clearing mission locals when new CLEO mission is started
  • when reading less than 4 bytes with 0A9D (readfile) now remaining bytes of the target variable are set to zero

SDK AND PLUGINS

  • now all opcodes in range 0-7FFF can be registered by plugins
  • plugins moved to cleo\cleo_plugins directory
  • new SDK method: CLEO_RegisterCallback
  • new SDK method: CLEO_GetVarArgCount
  • new SDK method: CLEO_SkipUnusedVarArgs
  • new SDK method: CLEO_ReadParamsFormatted
  • new SDK method: CLEO_GetScriptVersion
  • new SDK method: CLEO_GetScriptInfoStr
  • new SDK method: CLEO_ResolvePath
  • new SDK method: CLEO_GetScriptDebugMode
  • new SDK method: CLEO_SetScriptDebugMode
  • new SDK method: CLEO_Log

CLEO internal

  • project migrated to VS 2022
  • configured game debugging settings
  • plugins moved into single solution
  • configured automatic releases on GitHub
  • added setup_env.bat script

Special Thanks

  • 123nir for the alpha-testing, troubleshooting and valuable bug reports

5.0.0-alpha.29

19 Nov 23:16
5035fda
Compare
Choose a tag to compare
5.0.0-alpha.29 Pre-release
Pre-release
  • support for CLEO modules feature sannybuilder/dev#264
  • new DebugUtils plugin
    • new opcode 00C3 (debug_on)
    • new opcode 00C4 (debug_off)
    • new opcode 2100 (breakpoint)
    • new opcode 2101 (trace)
    • new opcode 2102 (log_to_file)
    • implemented support of opcodes 0662, 0663 and 0664 (original Rockstar's script debugging opcodes. See DebugUtils.ini)
  • new and updated opcodes
  • changes in file operations
    • file paths can now use 'virtual absolute paths'. Use prefix in file path strings to access predefined locations:
      • root:\ for game root directory
      • userfiles:\ for game save files directory
      • .\ for this script file directory
      • cleo:\ for CLEO directory
      • modules:\ for CLEO\cleo_modules directory
    • rewritten opcode 0A99 (set_current_directory). It no longer affects internal game state and other scripts
  • improved error handling
    • more detailed error messages in multiple scenarios
    • some errors now cause the script to pause, instead of crashing the game
  • updated included Silent's ASI Loader to version 1.3

Bug Fixes

  • fixed error in 004E (terminate_this_script) allowing to run multiple missions
  • fixed handling of strings longer than 128 characters causing errors in some cases
  • fixed error in handling of first string argument in 0AF5 (write_string to_ini_file)
  • fixed resolution dependent aspect ratio of CLEO text in main menu
  • fixed clearing mission locals when new CLEO mission is started
  • when reading less than 4 bytes with 0A9D (readfile) now remaining bytes of the target variable are set to zero

SDK AND PLUGINS

  • now all opcodes in range 0-7FFF can be registered by plugins
  • plugins moved to cleo\cleo_plugins directory
  • new SDK method: CLEO_RegisterCallback
  • new SDK method: CLEO_GetVarArgCount
  • new SDK method: CLEO_SkipUnusedVarArgs
  • new SDK method: CLEO_ReadParamsFormatted
  • new SDK method: CLEO_GetScriptVersion
  • new SDK method: CLEO_GetScriptInfoStr
  • new SDK method: CLEO_ResolvePath
  • new SDK method: CLEO_GetScriptDebugMode
  • new SDK method: CLEO_SetScriptDebugMode
  • new SDK method: CLEO_Log

CLEO internal

  • project migrated to VS 2022
  • configured game debugging settings
  • plugins moved into single solution
  • configured automatic releases on GitHub
  • added setup_env.bat script

Special Thanks

  • 123nir for the alpha-testing, troubleshooting and valuable bug reports

5.0.0-alpha.28

17 Nov 03:13
7d9960e
Compare
Choose a tag to compare
5.0.0-alpha.28 Pre-release
Pre-release
  • support for CLEO modules feature sannybuilder/dev#264
  • new DebugUtils plugin
    • new opcode 00C3 (debug_on)
    • new opcode 00C4 (debug_off)
    • new opcode 2100 (breakpoint)
    • new opcode 2101 (trace)
    • new opcode 2102 (log_to_file)
    • implemented support of opcodes 0662, 0663 and 0664 (original Rockstar's script debugging opcodes. See DebugUtils.ini)
  • new and updated opcodes
  • changes in file operations
    • file paths can now use 'virtual absolute paths'. Use prefix in file path strings to access predefined locations:
      • root:\ for game root directory
      • userfiles:\ for game save files directory
      • .\ for this script file directory
      • cleo:\ for CLEO directory
      • modules:\ for CLEO\cleo_modules directory
    • rewritten opcode 0A99 (set_current_directory). It no longer affects internal game state and other scripts
  • improved error handling
    • more detailed error messages in multiple scenarios
    • some errors now cause the script to pause, instead of crashing the game
  • updated included Silent's ASI Loader to version 1.3

Bug Fixes

  • fixed error in 004E (terminate_this_script) allowing to run multiple missions
  • fixed handling of strings longer than 128 characters causing errors in some cases
  • fixed error in handling of first string argument in 0AF5 (write_string to_ini_file)
  • fixed resolution dependent aspect ratio of CLEO text in main menu
  • fixed clearing mission locals when new CLEO mission is started
  • when reading less than 4 bytes with 0A9D (readfile) now remaining bytes of the target variable are set to zero

SDK AND PLUGINS

  • now all opcodes in range 0-7FFF can be registered by plugins
  • plugins moved to cleo\cleo_plugins directory
  • new SDK method: CLEO_RegisterCallback
  • new SDK method: CLEO_GetVarArgCount
  • new SDK method: CLEO_SkipUnusedVarArgs
  • new SDK method: CLEO_ReadParamsFormatted
  • new SDK method: CLEO_GetScriptVersion
  • new SDK method: CLEO_GetScriptInfoStr
  • new SDK method: CLEO_ResolvePath
  • new SDK method: CLEO_GetScriptDebugMode
  • new SDK method: CLEO_SetScriptDebugMode
  • new SDK method: CLEO_Log

CLEO internal

  • project migrated to VS 2022
  • configured game debugging settings
  • plugins moved into single solution
  • configured automatic releases on GitHub
  • added setup_env.bat script

Special Thanks

  • 123nir for the alpha-testing, troubleshooting and valuable bug reports