GTA IV Tools



GTA IV C++ Script Hook v0.5.0

Author: aru
Date: 16.04.2010
Downloads: 21181 (see statistics)
Filesize: 0.143 MB

5.17 based on 3130 votes

Supports GTAIV and EFLC

Development Info

This one is for all you coders out there (hopefully, there's still a lot of you)...

This module will let you create a custom script thread in C++ and have GTAIV process it along with its real scripts threads. Additionally, a type-safe manner to access native functions in GTAIV is provided.

Currently headers and a compiled dynamic library (DLL) is provided. Some very naive samples are provided as well. This is meant to be a base to build on top of. Feel free to contribute your own samples!


Whats New in 0.5.0

- Added support for GTAIV and EFLC
- Enabled MP on all unranked modes, however your multiplayer session will be isolated from people not using mods.
- Fixed bug with text flickering when using ScriptThread/NativeFiberThread
- Fixed bug with crashing when going in/out of video editor

Whats New in 0.4.0

- Added support for GTAIV 1.0.4 (Patch #5)
- New programming model replaces NativeThread and NativeFiberThread with ScriptThread
- A lot of performance enhancements, including:
---- Natives are now directly invoked using the native hash and not the name
---- "SpeedyInvoke" which dynamically rewrites parts of your compiled code to prevent repeated lookups of natives (only enabled for Release builds)
- Rewrote thread/service loading and now has better detection for when new game sessions start.
- Some minor bugs fixed

Whats New in 0.3.0

- New extensible services framework providing the following services currently:
---- D3DHook: Direct3D Device Hooking
---- Config: Configuration (ini and xml)
---- KeyboardHook: Keyboard hook to recieve events of key presses
---- Menu: A simple yet effective menu creation framework
- New "Speedo" sample demonstrating the use of services
- Added DevLoader which is an ASI loader with some development features such as module unload/reload.
- Improved thread hooking into the game -- less chances of crashing while hooking now (not that it crashed before).
- Added ability to unregister threads that were registered
- Added support for starting threads on demand
- Changed a lot of non-important log messages from Info to Debug
- Few internal bug fixes.

Whats New in 0.2.6

- Added support for GTAIV 1.0.4
- Support for Multiplayer when in LAN (any mode), or Online (Freeroam or Party mode only)
- Added a fix for world Z calculation for the Teleport sample in SampleCustomFiber

Whats New in 0.2.5

- Added support for GTAIV 1.0.3
- ScriptHook is now a DLL that can be updated independently of the mods that use it.
- Improved detection/hooking of scripts into the game engine
- Fixed invocation of natives that have Vector3* parameter types
- Fixed GetGlobalAddress/GetGlobalValue/SetGlobalValue for accessing Global variables
- Merged some of the Scripting native contributions back into the source (937 natives now available)
- A number of internal bug fixes
- ScriptHook is disabled for online play (currently its disabled regardless of which mode you play in or even Live/LAN, but this might change in the future)


- listener for some of the REing and natives mapping
- Seeman for some of the Natives documentation
- Reconsider for being my guinea pig on IRC during early development
- HazardX for some cleaned up natives
- sjaak327 for a lot of help with testing
- All of you guys PMing and emailing me and making me find the time to work on this :)
- Last but not least, you (yes, you!) for creating (assuming that you will be creating) wonderful mods for this game.

Thanks guys!

Here you can add this modification to your personal favorites.
Mod ReportAre you the owner of this mod? If someone has stolen your work, you can make a request for removing this mod.
Add new

Comments | 2 posts so far
Your Name/Nick:

Your Message:


You need to be registered and signed in to post comments!