Wednesday, December 4, 2013

[TUT-IV] Basic tools to script

To aid we implement scripts for GTA iV we need some tools/hyperlinks, the most crucial in my opinion are:

The scripthook help file: Via this help file we can have effortless access to any .net scripthook object and see their properties and methods, the parameters required and some standard info about the behavior.

The Microsoft Visual Standard: What about an system to assist us insert the code showing list of objects, approaches and parameters? Yeah, Visual Studio will assist a lot in the script create, and we can test the compilation prior to trying it in the game.

  • You can download an cost-free version here or here.

The GTA Modding internet sites: Very beneficial pages listing game native functions, animations, particle effects, models, and so forth.. Add in your Bookmarks, you will require it ^^

  • List of native functions: List of game native functions, wonderful part of them with parameters specification and description of the effect/outcome.

  • List of models: List of game models, autos, pedestrians, objects, weapons, all...

  • List of animations: List of game animations, right here we can uncover all game animations and play it with the pedestrians.

  • List of particle effects: List of all particle effects like fire effects, water effects, bullet hit, blood splash, explosions, and so on..

Open IV or Spark IV: With these applications we can search and preview game models, extract and replace them, the very same we can do about textures and sounds, also we can extract or replace animations, very useful when you need to search for some model to use in your script.

Decompiled scripts: This is pure gold, we can see how they use some techniques with those files, it's quite exciting to locate how to use an method, you need some luck and logic to identify the params (if they are not listed at the list of native functions) but it's not so challenging.

For example let's say that we wanna see how to use this approach: PLAY_SOUND_FROM_PED
This technique has no info in the wiki (list of native func.) but we can search into the decompiled files and discover something like this:

PLAY_SOUND_FROM_PED( l_U375, "E1_RB2_SCREAM", l_U697[2] )

Initial param is a variable, we search for this variable and see his variety:

l_U375 = GET_SOUND_ID() - based on what we know about get_sound_id, this variable can be one particular integer. And based on what this variable is getting we notice that it really is an sound id, and it really is the initial param of the native contact (play_sound_f...)

Now we appear at subsequent param, it's a string: "E1_RB2_SCREAM", based on technique name we can envision that this is the sound name.

Now the last param: l_U697[two], this is an array (since of the [ and ]) and based on the technique name (that ends with from_ped) we can think about that it is a Ped id, like the return of Player.Character.

So if we do this on

Native.Function.Call("PLAY_SOUND_FROM_PED", -1, "E1_RB2_SCREAM", Player.Character)

we almost certainly will hear a sound, but you should pay attention from what folder this decompiled script is, some scripts uses approaches and names of particle effects, sounds or whatever from a certain game version (GTA IV or EFLC), some methods will operate only in EFLC. To make positive test in each ahead of give up :)

Basicaly those are the major tools/websites that i use as reference/source when coding scripts for GTA iV, in subsequent tutorial i will show how to begin an new script in visual fundamental and show some simple scripting suggestions.

Download the sample project right here,
[TUT-IV] Basic tools to script
9out of 10 based on 10 ratings. 9 user reviews.

No comments:

Post a Comment

Note: Only a member of this blog may post a comment.