Supports GTAIV 1.0.6.0 and EFLC 1.1.1.0.
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 1.0.6.0 and EFLC 1.1.1.0.
- 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)
Credits
- 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! |