Difference between revisions of "Streamed Script"

From GTAMods Wiki
Jump to navigation Jump to search
(N template is handy)
Line 1: Line 1:
An '''streamed script''' is a script file that is streamed on demand, only when the script needs to be executed. They are stored in the [[script.img]] file. It contains the opcodes which are parsed by the game in the same way as the ones located in usual scripts, except that it has no header.
+
A '''streamed script''' is a script file that is streamed on demand, only when the script needs to be executed. They are stored in the [[script.img]] file. It contains the opcodes which are parsed by the game in the same way as the ones located in usual scripts, except that it has no header.
  
 
== GTA San Andreas ==
 
== GTA San Andreas ==
Line 40: Line 40:
 
*[[Script.img#San Andreas|List of streamed scripts]]
 
*[[Script.img#San Andreas|List of streamed scripts]]
  
{{IV-navi}}
+
{{N|IV|SA}}
{{SA-navi}}
+
[[Category:Mission Script]]
[[Category:GTA SA]][[Category:GTA IV]][[Category:Mission Script]]
 

Revision as of 14:23, 3 February 2015

A streamed script is a script file that is streamed on demand, only when the script needs to be executed. They are stored in the script.img file. It contains the opcodes which are parsed by the game in the same way as the ones located in usual scripts, except that it has no header.

GTA San Andreas

The file is located in the data/script/ directory and is loaded by gta.dat.

The maximum number of streamed scripts that can be defined is 82. The maximum number of streamed scripts that can be used simultaneously is 70. The game currently has 78 defined streamed scripts.

Tutorial

In order to add more external script files, you have to define the number of files you are going to use:
DEFINE EXTERNAL_SCRIPTS 78
Add the external script to the list with this:
DEFINE SCRIPT NAME AT LABEL
At the end of the file add your code in.

This section is incomplete. You can help by fixing and expanding it.

Opcodes

You can use the following opcodes to do stuff to your script file.
07D3 - I don't know how this work
0884 - Or this
08A9 - Loads the external script
08AB - Checks if the external script has been loaded
08E8 - Assigns an external script to a ped's model
090F - Ends the external script (doesn't seem to work)
0910 - Releases an external script from the memory (not tested!)
0913 - Runs the external script after it has been loaded
0914 - No operation in PC and XBox versions
091C - Gets an actor within a sphere of the object using an external script
0926 - Gets the status of the external script, 0 if not loaded
0928 - Activates the external script when near the ped's model
0929 - Activates the external script when near the object's model

Problems

There is one main problem with streamed scripts: the script doesn't work if you save while the script is running. If you reload the game, the streamed script will be disabled. You have to force the script to end before saving to prevent this from happening.

GTA IV

This section is incomplete. You can help by fixing and expanding it.

See also