Source DocsJak 2PackageslevelsundefinedOn this pagehal-hsourceTypeshalhal: botsourceFieldstype: typename: stringmask: process-maskclock: clockparent: pointerbrother: pointerchild: pointerppointer: pointerself: process-treepool: dead-poolstatus: symbolpid: int32main-thread: cpu-threadtop-thread: cpu-threadentity: entity-actorlevel: levelstate: statenext-state: statetrans-hook: functionpost-hook: functionevent-hook: functionallocated-length: int32pad-unknown-0: uint32heap-base: pointerheap-top: pointerheap-cur: pointerstack-frame-top: stack-frameconnection-list: connectablestack: uint8root: trsqvnode-list: cspace-arraydraw: draw-controlskel: joint-controlnav: nav-controlalign: align-controlpath: path-controlvol: vol-controlfact: fact-infolink: actor-link-infopart: sparticle-launch-controlwater: water-controlsound: ambient-soundcarry: carry-inforbody: rigid-body-controlstate-flags: state-flagsstate-time: time-frameroot-override: collide-shapefocus-status: focus-statusroot-override2: collide-shape-movingfact-info-override: fact-info-enemyenemy-flags: enemy-flagenemy-info: enemy-infohit-points: int32gnd-collide: uint32attack-id: uint32persistent-attack-id: uint32water-max-height: meterswater-surface-height: metersdesired-angle: degreesjump-why: uint64penetrated-by-all: penetratepenetrated-flinch: penetratepenetrated-knocked: penetratereaction-time: time-framenotice-time: time-framestate-timeout: time-frameauto-reset-penetrate-time: time-framehit-focus-time: time-framelast-draw-time: time-framestarting-time: time-framefated-time: time-framefocus-pos: vectorevent-param-point: vectorjump-dest: vectorfocus: enemy-focusincoming: enemy-attack-infoactor-group: pointeractor-group-count: int32neck: joint-modon-notice: symbolon-active: symbolon-hostile: symbolon-death: symbolidle-anim-player: idle-controlrand-gen: symbolenemy-info-override: nav-enemy-infofrustration-point: vectormove-dest: vectorfrustration-time: time-frameblocked-start-time: time-framerestore-nav-radius-time: time-framenav-radius-backup: floatbot-flags: bot-flagsmin-speed: floatmax-speed: floatfollow-offset: floattoo-far-warn-dist: floattoo-far-fail-dist-delta: floattoo-far-warn-dist-default: floattoo-far-fail-dist-delta-default: floattravel-prev-ry: floattravel-prev-ry1: floatplayer-blocking: floatai-ctrl: ai-task-controlcourse: bot-coursewaypoint: bot-waypointwaypoint-bits: uint32waypoint-int32a: int32bot-task-bits: uint32hit-invuln-ignore-me-delay: uint32hit-invuln-focus-disable-delay: uint32warn-to-fail-timeout: uint32warn-min-delay: uint32warn-max-delay: uint32spot-color: uint32waypoint-request: int16hit-by-enemy-count: uint16hit-by-player-count: uint16notice-enemy-dist: floatchannel: uint8focus-mode: int8nav-mesh-index: int8delay-too-far-check: int8slave-id: int8vehicle-seat-index: int8bot-health-index: int8task: game-task-controlswivel-joint-mod: joint-modhealth-handle: handlepoi-handle: handlemy-simple-focus: pointerattacker-handle: handlescene-player-handle: handlemaster-handle: handlevehicle-handle: handlehit-invuln-starting-time: time-framedanger-time: time-frameattacker-time: time-framestarted-warning-time: time-framewaypoint-time0: time-framenext-too-far-warn-time: time-framespot: bot-spotfollow-dir: vectorfocus-info: bot-focus-infohandle-failed-slave-id: int8slave-handle: handleMethodshal-method-225(obj: hal) => symbolsourcehal-method-226(obj: hal) => symbolsourcehalt-wait-spothalt-wait-spot: ai-tasksourceFieldstype: typenext: ai-taskprev: ai-taskpool: ai-task-poolunique-id: uint32bytes: int8check-done: functionwhich-spot: int8num-spots: uint8spot-indexes: uint8halsourceFunctionshal-event-handlerhal-event-handler(arg0: process, arg1: int, arg2: symbol, arg3: event-message-block) => objectsourcehal-posthal-post() => nonesourcehal-simple-check-too-farhal-simple-check-too-far(arg0: hal) => intsourceVariables*hal-nav-enemy-info**hal-nav-enemy-info*: nav-enemy-infosourceruf-hsourceTypesruffianruffian: botsourceFieldstype: typename: stringmask: process-maskclock: clockparent: pointerbrother: pointerchild: pointerppointer: pointerself: process-treepool: dead-poolstatus: symbolpid: int32main-thread: cpu-threadtop-thread: cpu-threadentity: entity-actorlevel: levelstate: statenext-state: statetrans-hook: functionpost-hook: functionevent-hook: functionallocated-length: int32pad-unknown-0: uint32heap-base: pointerheap-top: pointerheap-cur: pointerstack-frame-top: stack-frameconnection-list: connectablestack: uint8root: trsqvnode-list: cspace-arraydraw: draw-controlskel: joint-controlnav: nav-controlalign: align-controlpath: path-controlvol: vol-controlfact: fact-infolink: actor-link-infopart: sparticle-launch-controlwater: water-controlsound: ambient-soundcarry: carry-inforbody: rigid-body-controlstate-flags: state-flagsstate-time: time-frameroot-override: collide-shapefocus-status: focus-statusroot-override2: collide-shape-movingfact-info-override: fact-info-enemyenemy-flags: enemy-flagenemy-info: enemy-infohit-points: int32gnd-collide: uint32attack-id: uint32persistent-attack-id: uint32water-max-height: meterswater-surface-height: metersdesired-angle: degreesjump-why: uint64penetrated-by-all: penetratepenetrated-flinch: penetratepenetrated-knocked: penetratereaction-time: time-framenotice-time: time-framestate-timeout: time-frameauto-reset-penetrate-time: time-framehit-focus-time: time-framelast-draw-time: time-framestarting-time: time-framefated-time: time-framefocus-pos: vectorevent-param-point: vectorjump-dest: vectorfocus: enemy-focusincoming: enemy-attack-infoactor-group: pointeractor-group-count: int32neck: joint-modon-notice: symbolon-active: symbolon-hostile: symbolon-death: symbolidle-anim-player: idle-controlrand-gen: symbolenemy-info-override: nav-enemy-infofrustration-point: vectormove-dest: vectorfrustration-time: time-frameblocked-start-time: time-framerestore-nav-radius-time: time-framenav-radius-backup: floatbot-flags: bot-flagsmin-speed: floatmax-speed: floatfollow-offset: floattoo-far-warn-dist: floattoo-far-fail-dist-delta: floattoo-far-warn-dist-default: floattoo-far-fail-dist-delta-default: floattravel-prev-ry: floattravel-prev-ry1: floatplayer-blocking: floatai-ctrl: ai-task-controlcourse: bot-coursewaypoint: bot-waypointwaypoint-bits: uint32waypoint-int32a: int32bot-task-bits: uint32hit-invuln-ignore-me-delay: uint32hit-invuln-focus-disable-delay: uint32warn-to-fail-timeout: uint32warn-min-delay: uint32warn-max-delay: uint32spot-color: uint32waypoint-request: int16hit-by-enemy-count: uint16hit-by-player-count: uint16notice-enemy-dist: floatchannel: uint8focus-mode: int8nav-mesh-index: int8delay-too-far-check: int8slave-id: int8vehicle-seat-index: int8bot-health-index: int8task: game-task-controlswivel-joint-mod: joint-modhealth-handle: handlepoi-handle: handlemy-simple-focus: pointerattacker-handle: handlescene-player-handle: handlemaster-handle: handlevehicle-handle: handlehit-invuln-starting-time: time-framedanger-time: time-frameattacker-time: time-framestarted-warning-time: time-framewaypoint-time0: time-framenext-too-far-warn-time: time-framespot: bot-spotfollow-dir: vectorfocus-info: bot-focus-inforuf-course: ruffian-coursetravel-anim-interp: floatfired-gun-count: uint32next-fire-time: time-frameMethodskick: unknownblast: unknownalert-idle: unknownalert-turn: unknowntraveling: unknowntraveling-blocked: unknownwaiting-idle: unknownwaiting-turn: unknownscared-idle: unknownscared-turn: unknownplant-bomb: unknownbomb-recoil: unknownruffian-method-237(obj: ruffian) => symbolsourceruffian-method-238(obj: ruffian) => symbolsourcefire-gun(obj: jinx, arg0: vector) => nonesourceruffian-method-240(obj: ruffian) => nonesourceruffian-method-241(obj: ruffian) => nonesourceruffian-method-242(obj: ruffian) => nonesourceruffian-method-243(obj: ruffian) => symbolsourceruffian-method-244(obj: grim) => nonesourceruffian-method-245(obj: ruffian) => nonesourceruffian-courseruffian-course: bot-coursesourceFieldstype: typecourse-id: uint8speech-count: uint16spot-count: uint16retry-cookie: uint8too-far-warn-speeches: bot-speech-list-shuffletoo-far-fail-speeches: bot-speech-listattack-player-speeches: bot-speech-listdefault-check-too-far: symbolwaypoints: arrayspeeches: inline-arrayspeech-tunings: inline-arraydirs: inline-arrayspots: inline-arrayouch-speeches: bot-speech-list-shuffleruft-choose-jumpruft-choose-jump: ai-tasksourceFieldstype: typenext: ai-taskprev: ai-taskpool: ai-task-poolunique-id: uint32bytes: int8check-done: functionwhich-spot: int8num-spots: uint8src-spot-indexes: uint8dest-spot-indexes: uint8Methodsruft-choose-jump-method-12(obj: ruft-choose-jump, arg0: ruffian) => symbolsourceruft-choose-jump-method-13(obj: ruft-choose-jump, arg0: ruffian) => intsourceruft-fight-focusruft-fight-focus: ai-tasksourceFieldstype: typenext: ai-taskprev: ai-taskpool: ai-task-poolunique-id: uint32bytes: int8ruft-plant-bombruft-plant-bomb: ai-tasksourceFieldstype: typenext: ai-taskprev: ai-taskpool: ai-task-poolunique-id: uint32bytes: int8check-done: functionwhich-spot: int8num-spots: uint8stand-spot-indexes: uint8face-spot-indexes: uint8ruft-wait-spotruft-wait-spot: ai-tasksourceFieldstype: typenext: ai-taskprev: ai-taskpool: ai-task-poolunique-id: uint32bytes: int8check-done: functionwhich-spot: int8num-spots: uint8spot-indexes: uint8