diff --git a/README.md b/README.md index 0a4bd09..86ee67f 100644 --- a/README.md +++ b/README.md @@ -1,10 +1,9 @@ Gothic Free Aim =============== -**Script package for the video games Gothic and Gothic II: Night of the Raven enabling free aiming for ranged weapons -and spells.** +**Script package for the video games Gothic and Gothic II that enables free aiming for ranged weapons and spells.** -**Note**: This is a script (i.e. source code). If you are interested in a playable version instead, checkout this +**Note**: This is source code for developers. If you are interested in a playable version instead, checkout this modification [Gothic II - Freies Zielen](http://forum.worldofplayers.de/forum/threads/1482039) (German language). [![Trailer on Youtube](http://i.imgur.com/PhJ3gcm.jpg)](http://www.youtube.com/watch?v=9CrFlxo21Qw) diff --git a/_work/data/Scripts/Content/freeAim/_intern/offsets_G1.d b/_work/data/Scripts/Content/freeAim/_intern/offsets_G1.d index 4febe0d..1327c6b 100644 --- a/_work/data/Scripts/Content/freeAim/_intern/offsets_G1.d +++ b/_work/data/Scripts/Content/freeAim/_intern/offsets_G1.d @@ -91,21 +91,21 @@ const int oCAIVobMove__DoAI_stopMovement = 6389348; //0x617E64 // H const int oCAIHuman__BowMode_interpolateAim = 6359260; //0x6108DC // Hook len 5 const int oCAIHuman__BowMode_postInterpolate = 6359274; //0x6108EA // Hook len 6 const int oCAIHuman__BowMode_notAiming = 6359422; //0x61097E // Hook len 6 +const int oCAIHuman__MagicMode = 4641376; //0x46D260 // Hook len 7 const int oCAIArrow__SetupAIVob = 6394320; //0x6191D0 // Hook len 6 const int oCAIArrow__CanThisCollideWith = 6395216; //0x619550 // Hook len 6 const int oCAIArrow__DoAI_rtn = 6395210; //0x61954A // Hook len 6 +const int oCAIArrow__ReportCollisionToAI_collAll = 6395474; //0x619652 // Hook len 8 +const int oCAIArrow__ReportCollisionToAI_hitChc = 6395776; //0x619780 // Hook len 5 +const int oCAIArrow__ReportCollisionToAI_damage = 6395861; //0x6197D5 // Hook len 7 const int oCAIArrowBase__ReportCollisionToAI_hitNpc = 6395866; //0x6197DA // Hook len 5 const int oCAIArrowBase__ReportCollisionToAI_hitVob = 0; // Does not exist in Gothic 1 const int oCAIArrowBase__ReportCollisionToAI_hitWld = 0; // Does not exist in Gothic 1 const int oCAIArrowBase__ReportCollisionToAI_collVob = 0; // Does not exist in Gothic 1 const int oCAIArrowBase__ReportCollisionToAI_collWld = 0; // Does not exist in Gothic 1 -const int oCAIArrow__ReportCollisionToAI_collAll = 6395474; //0x619652 // Hook len 8 -const int oCAIArrow__ReportCollisionToAI_hitChc = 6395776; //0x619780 // Hook len 5 -const int oCAIArrow__ReportCollisionToAI_damage = 6395861; //0x6197D5 // Hook len 7 const int oCNpc__OnDamage_Hit_criticalHit = 7546035; //0x7324B3 // Hook len 5 const int oCNpc__OnDamage_Anim_getModel = 7609592; //0x741CF8 // Hook len 9 const int oCNpcFocus__SetFocusMode = 6508128; //0x634E60 // Hook len 7 -const int oCAIHuman__MagicMode = 4641376; //0x46D260 // Hook len 7 const int oCSpell__Setup_oCVisFXinit = 4704143; //0x47C78F // Hook len 6 const int mouseUpdate = 5013602; //0x4C8062 // Hook len 5 diff --git a/_work/data/Scripts/Content/freeAim/_intern/offsets_G2.d b/_work/data/Scripts/Content/freeAim/_intern/offsets_G2.d index ff664de..d11d58c 100644 --- a/_work/data/Scripts/Content/freeAim/_intern/offsets_G2.d +++ b/_work/data/Scripts/Content/freeAim/_intern/offsets_G2.d @@ -57,7 +57,10 @@ const int oCItem___CreateNewInstance = 7423040; //0x714440 const int oCItem__InitByScript = 7412688; //0x711BD0 const int oCItem__InsertEffect = 7416896; //0x712C40 const int oCItem__RemoveEffect = 7416832; //0x712C00 +const int oCItem__MultiSlot = 7415200; //0x7125A0 // Not used for Gothic 2 const int oCMag_Book__GetSelectedSpell = 4683648; //0x477780 +const int oCMag_Book__GetSelectedSpellNr = 4683728; //0x4777D0 // Not used for Gothic 2 +const int oCMag_Book__GetSpellItem = 4692992; //0x479C00 // Not used for Gothic 2 const int zCProgMeshProto__classDef = 9972552; //0x982B48 const int oCVisualFX__classDef = 9234008; //0x8CE658 const int oCVisualFX__Stop = 4799456; //0x493BE0 @@ -88,21 +91,21 @@ const int oCAIVobMove__DoAI_stopMovement = 6945300; //0x69FA14 // H const int oCAIHuman__BowMode_interpolateAim = 6906518; //0x696296 // Hook len 5 const int oCAIHuman__BowMode_postInterpolate = 6906532; //0x6962A4 // Hook len 6 const int oCAIHuman__BowMode_notAiming = 6906078; //0x6960DE // Hook len 6 +const int oCAIHuman__MagicMode = 4665296; //0x472FD0 // Hook len 7 const int oCAIArrow__SetupAIVob = 6951136; //0x6A10E0 // Hook len 6 const int oCAIArrow__CanThisCollideWith = 6952081; //0x6A1491 // Hook len 6 const int oCAIArrow__DoAI_rtn = 6952073; //0x6A1489 // Hook len 6 +const int oCAIArrow__ReportCollisionToAI_collAll = 6949315; //0x6A09C3 // Hook len 8 +const int oCAIArrow__ReportCollisionToAI_hitChc = 6953483; //0x6A1A0B // Hook len 5 +const int oCAIArrow__ReportCollisionToAI_damage = 6953711; //0x6A1AEF // Hook len 7 const int oCAIArrowBase__ReportCollisionToAI_hitNpc = 6949832; //0x6A0BC8 // Hook len 5 const int oCAIArrowBase__ReportCollisionToAI_hitVob = 6949929; //0x6A0C29 // Hook len 5 const int oCAIArrowBase__ReportCollisionToAI_hitWld = 6949460; //0x6A0A54 // Hook len 5 const int oCAIArrowBase__ReportCollisionToAI_collVob = 6949440; //0x6A0C18 // Hook len 5 const int oCAIArrowBase__ReportCollisionToAI_collWld = 6949912; //0x6A0A40 // Hook len 5 -const int oCAIArrow__ReportCollisionToAI_collAll = 6949315; //0x6A09C3 // Hook len 8 -const int oCAIArrow__ReportCollisionToAI_hitChc = 6953483; //0x6A1A0B // Hook len 5 -const int oCAIArrow__ReportCollisionToAI_damage = 6953711; //0x6A1AEF // Hook len 7 const int oCNpc__OnDamage_Hit_criticalHit = 6718100; //0x668294 // Hook len 5 // Not used for Gothic 2 const int oCNpc__OnDamage_Anim_getModel = 6774593; //0x675F41 // Hook len 9 const int oCNpcFocus__SetFocusMode = 7072800; //0x6BEC20 // Hook len 7 -const int oCAIHuman__MagicMode = 4665296; //0x472FD0 // Hook len 7 const int oCSpell__Setup_oCVisFXinit = 4737961; //0x484BA9 // Hook len 6 const int mouseUpdate = 5062907; //0x4D40FB // Hook len 5