SRL Archive - Client Hacking

#627


pyroryan

2010-10-29 13:04:36


{**
* Copyright 2010 by Benjamin J. Land (a.k.a. BenLand100)
*
* This file is part of the SMART Minimizing Autoing Resource Thing (SMART)
*
* SMART is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* SMART is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with SMART. If not, see <http://www.gnu.org/licenses/>.
*}

const
ClientVersion = 627;

{Static Hooks}
hook_static_LoginIndex = 'uk.ob'; //627
hook_static_MyPlayer = 'mk.s'; //627
hook_static_BaseX = 'sf.n'; //627
hook_static_BaseY = 'lo.r'; //627
hook_static_NPCIndexArray = 'rg.Gb'; //627
hook_static_NPCNodes = 'oe.f'; //627
hook_static_NPCCount = 'nq.y'; //627
hook_static_GroundSettingsArray = 'qea.h'; //627
hook_static_LoadedPlane = 'pba.F'; //627
hook_static_PlaneArray = 'ef.c'; //627
hook_static_Toolkit = 'po.u'; //627
hook_static_MapAngle = 'lr.Tb'; //627
hook_static_DestX = 'sea.m'; //627
hook_static_DestY = 'fga.i'; //627
hook_static_MenuOptionCount = 'sea.l'; //627
hook_static_MenuX = 'hv.m'; //627
hook_static_MenuY = 'lq.i'; //627
hook_static_MenuWidth = 'qba.d'; //627
hook_static_MenuHeight = 'tw.b'; //627
hook_static_MenuOpen = 'vt.C'; //627
hook_static_MenuNodeList = 'pga.p'; //627
hook_static_LoopCycle = 'uda.h'; //627
hook_static_PlayerCount = 'dba.c'; //627
hook_static_PlayerIndexArray = 'ts.t'; //627
hook_static_GetPlayers = 'ts.q'; //627
hook_static_GetSkillLevels = 'raa.v'; //627
hook_static_GetSkillExperiences = 'dt.g'; //627
hook_static_GroundTiles = 'rn.db'; //627
hook_static_GetInterfaces = 'tf.a'; //627
hook_static_ValidInterfaces = 'rq.U'; //627
hook_static_GetSettings = 'qaa.k'; //627
hook_static_GroundItemCache = 'ud.o'; //627
hook_static_CamPosX = 'kn.x'; //627
hook_static_CamPosY = 'rn.kb'; //627

{Class Animable}
class_Animable = 'caa'; //627
hook_animable_PixelX = 'h'; //627
hook_animable_PixelY = 'i'; //627
hook_animable_Plane = 'r'; //627

{Class Player}
class_Player = 'mq'; //627
hook_player_GetLevel = 'sd'; //627
hook_player_GetName = 'Pc'; //627
hook_player_PlayerDef = 'ad'; //627
hook_player_GetTeam = 'Wc'; //627

{Class Character}
class_Character = 'rg'; //627
hook_character_GetHitDamges = 'zb'; //check?-627
hook_character_Animation = 'Qb'; //627
hook_character_Motion = 'Lc'; //627
hook_character_WalkQueueX = 'Ec'; //627
hook_character_WalkQueueY = 'Fc'; //627
hook_character_GetHeight = 'Kb'; //627
hook_character_LoopCycleStatus = 'S'; //627
hook_character_HPRatio = 'J'; //627
hook_character_GetInteracting = 'yc'; //627
hook_character_Orientation = 'M'; //627

{Class NPC}
class_NPC = 'u'; //627
hook_npc_NPCDef = 'Sc'; //627

{Class NPCDef}
class_NPCDef = 'rda'; //627
hook_npcdef_GetActions = 's'; //627
hook_npcdef_GetName = 'V'; //627
hook_npcdef_GetLevel = 'k'; //627
hook_npcdef_GetID = 'j'; //627

{Class NPCNode}
class_NPCNode = 'b'; //627
hook_npcnode_GetNPC = 'm'; //627

{Class GroundTile}
class_GroundTile = 'ms'; //627

{Class Plane}
class_Plane = 'i'; //627

{Class RSInteractable}
class_RSInteractable = 'mm'; //627

{Class Toolkit}
class_Toolkit = 'r'; //627

{Class Viewport}
class_Viewport = 'q'; //627

{Class SDViewport}
class_SDViewport = 'nd'; //627
hook_sdviewport_xOff = 'w'; //627
hook_sdviewport_xX = 'l'; //627
hook_sdviewport_xY = 'u'; //627
hook_sdviewport_xZ = 'n'; //627
hook_sdviewport_yOff = 'd'; //627
hook_sdviewport_yX = 'g'; //627
hook_sdviewport_yY = 'x'; //627
hook_sdviewport_yZ = 't'; //627
hook_sdviewport_zOff = 's'; //627
hook_sdviewport_zX = 'h'; //627
hook_sdviewport_zY = 'm'; //627
hook_sdviewport_zZ = 'z'; //627

{Class SDToolkit}
class_SDToolkit = 'st'; //627
hook_sdtoolkit_xMin = 'J'; //627
hook_sdtoolkit_xMax = 'E'; //627
hook_sdtoolkit_yMin = 'y'; //627
hook_sdtoolkit_yMax = 'G'; //627
hook_sdtoolkit_zMin = 'I'; //627
hook_sdtoolkit_zMax = 'L'; //627
hook_sdtoolkit_xScale = 'U'; //627
hook_sdtoolkit_yScale = 'V'; //627
hook_sdtoolkit_Viewport = 'Q'; //627

{Class SDModel}
class_SDModel = 'bga'; //627
hook_sdmodel_getIndices1 = 'w'; //627
hook_sdmodel_getIndices2 = 'Sb'; //627
hook_sdmodel_getIndices3 = 'N'; //627
hook_sdmodel_getPointsX = 'B'; //627
hook_sdmodel_getPointsY = 'M'; //627
hook_sdmodel_getPointsZ = 'ub'; //627

{Class SDPlane}
class_SDPlane = 'i'; //627
hook_sdplane_TileHeights = 'c'; //627

{Class NodeList}
class_NodeList = 'dc'; //627
hook_nodelist_Current = 's'; //627
hook_nodelist_Head = 'b'; //627

{Class Node}
class_Node = 'du'; //627
hook_node_Next = 'd'; //627
hook_node_Previous = 'b'; //627
hook_node_GetID = 'g'; //627

{Class Menu}
class_Menu = 'jw'; //627
hook_menu_Action = 'j'; //627
hook_menu_Option = 'm'; //627

{Class PlayerDef}
class_PlayerDef = 'rm'; //627
hook_playerdef_GetEquipment = 'q'; //627

{Class AnimableNode}
class_AnimableNode = 'jp'; //627
hook_AnimableNode_GetAnimable = 'i'; //627
hook_AnimableNode_GetNext = 'g'; //627

{Class ObjectInterface}
class_ObjectInterface = 'ps'; //627
hook_interface_GetActions = 'pb'; //627
hook_interface_GetX = 'T'; //627
hook_interface_GetY = 'lc'; //627
hook_interface_GetWidth = 'ld'; //627
hook_interface_GetHeight = 'P'; //627
hook_interface_GetText = 'xc'; //627
hook_interface_GetTextureID = 'Tb'; //627
hook_interface_GetTextColor = 'ic'; //627
hook_interface_GetModelID = 'sb'; //627
hook_interface_GetModelZoom = 'Zb'; //627
hook_interface_GetName = 'Gb'; //627
hook_interface_GetChildren = 'wb'; //627
hook_interface_GetID = 'y'; //627 //actually GetComponentID/GetItemID we need to change this
hook_interface_GetStack = 'vb'; //627
hook_interfaces_GetParentID = 'ab'; //627
hook_interfaces_IsHidden = 'Ic'; //627


{Class Ground}
class_Ground = 'ms'; //627
hook_ground_AnimableList = 'j'; //627
hook_ground_WallObject1 = 'm'; //627
hook_ground_WallObject2 = 'k'; //627
hook_ground_WallDecoration1 = 'r'; //627
hook_ground_WallDecoration2 = 'l'; //627
hook_ground_FloorDecoration = 'o'; //627

{Class NodeCache}
class_NodeCache_GetNodes = 'efa'; //627
hook_nodecache_GetNodes = 'l'; //627

{Class Item}
class_Item = 'n'; //627
hook_item_GetID = 'j'; //627
hook_item_GetStack = 'i'; //627

{Class NodeListCache}
class_NodeListCache = 'bba'; //627
hook_nodelistcache_GetNodeList = 'i'; //627

{Class SettingArray}
class_SettingArray = 'ii'; //627
hook_settingarray_GetData = 'o'; //627

{
/////////////// HOOKS BELOW HERE ARE *OUTDATED* AS OF 14 July 2010 (Client 614) ////////////////////////
These hooks all need to be added to the updater.
}

//Some work actually. You're welcome. Updated as much as I could. (Thanks to TRiLeZ and pyroryan.)

{Class InteractiveObject}
class_InteractiveObject = 'lw'; //627
hook_interactiveobject_GetID = 'qb'; //627
hook_interactiveobject_GetModel = 'K'; //627

{Class InteractiveObject2}
class_InteractiveObject2 = 'jg'; //627
hook_interactiveobject2_GetObjectData = 'hb'; //627
//hook_interactiveobject_GetID2 = 'w.H'; //not updated

{Class SecondLevelObject}
class_SecondLevelObject = 'nq'; //627
hook_secondlevelobject_GetID = 'F'; //627

//WallObjectData, WallDecorationData, FloorDecorationData updated -pyroryan
{Class WallObjectData}
class_WallObjectData = 'uk'; //627
hook_WallObjectData_GetID = 'ab'; //627
hook_WallObjectData_GetModel = 'G'; //627
hook_WallObjectData_GetOrientation = 'N'; //627
hook_WallObjectData_GetID2 = 'D.H'; //not updated

{Class WallDecorationData}
class_WallDecorationData = 'lu'; //627
hook_WallDecorationData_GetID = 'ab'; //627
hook_WallDecorationData_GetModel = 'cb'; //627
hook_WallDecorationData_GetOrientation = 'W'; //627
hook_WallDecorationData_GetID2 = 'y.H'; //not updated

{Class FloorDecorationData}
class_FloorDecorationData = 'di'; //627
hook_FloorDecorationData_GetID = 'H'; //627
hook_FloorDecorationData_GetModel = 'bb'; //627
hook_FloorDecorationData_GetOrientation = 'M'; //627
hook_FloorDecorationData_GetID2 = 'm.H'; //not updated

Cstrike

2010-10-29 13:12:38

Thank you for the updates again :)!

mormonman

2010-10-29 13:39:42

No breaks this time? Very impressive!

jizzoe

2010-10-29 13:46:56

how do u update the hooks? do u just cut the old ones and paste the new ones?

Cstrike

2010-10-29 14:02:35

From: jizzoe
how do u update the hooks? do u just cut the old ones and paste the new ones?


You need to make a java updater to grab the hooks and maintain it.
You can grab them from other places, but there is no one size fits all unfortunately… some will usually if not always be missing.

NCDS

2010-10-29 17:07:35

From: cstrike
You need to make a java updater to grab the hooks and maintain it.
You can grab them from other places, but there is no one size fits all unfortunately… some will usually if not always be missing.

I think he means add the up[dated ones to his Hooks.scar ;)

From: jizzoe
how do u update the hooks? do u just cut the old ones and paste the new ones?


Yes.

Cstrike

2010-10-29 17:14:15

From: NCDS
I think he means add the up[dated ones to his Hooks.scar ;)


D'oh XD

One thing I would like to learn one day would be to grab hooks of my own in case something ever happens to this place.