Título: alguien puede echar una ayuda Teleport Script Lua Publicado por: p3rn4l0ng4 en 13 Octubre 2018, 22:24 pm hola estoy un poco perdino en algunos puntos y me gustaria alguien que echa un vistazo y me echa una luz que seguir por que estoy en la oscuridad ya busque youtube mytube y todostube XD y no veo nim uno tutorial plz una luz por mas pequeña que sea
el case es un teleport que en realidad busco un teleport de un mapa a otro pero no doy con nim una script si alguien sabe un mejor que ese sera bienvenido Citar [ENABLE] {$lua} -- Offsets local FLAG_TEAM = 0x32C local HEALTH = 0xF8 local NEXT_PLAYER = 0x4 -- The offset of the structure from one player to another local COORDINATE_X = 0x34 local COORDINATE_Y = 0x38 local COORDINATE_Z = 0x3C local ANGLE_X = 0x40 local ANGLE_Y = 0x44 local BASE_PLAYERS = getAddress('[ac_client.exe+0010F4F8]') local BASE_MY_PLAYER = getAddress('[ac_client.exe+0010F4F4]') -- Declaration of other variables local player = {}-- Structure with all my data local enemy = {}-- Structure with the enemy players, the targets. local amount_players -- Number of players local my_team -- Contains the necessary information to know who is on my team. local MAX_ATTEMPTS = 1000 -- Help the "UpdatePlayersData" function not to enter an infinite loop. -- To understand why this is necessary, you need to study how the player structures work in the Assalt Cube game. -- Function that updates my player information local function UpdateMyData() player.x = BASE_MY_PLAYER + COORDINATE_X player.y = BASE_MY_PLAYER + COORDINATE_Y player.z = BASE_MY_PLAYER + COORDINATE_Z my_team = readInteger(BASE_MY_PLAYER + FLAG_TEAM) end --Function that updates information about players --And it's different from my team. local function UpdatePlayersData() amount_players = readInteger("ac_client.exe+10A22C")-1 local OFFSET = NEXT_PLAYER -- This variable contains the offset value of the current player being processed local current_player = 0 -- Contains the player base in process local counter = 0 local countPlayer = 0 while(countPlayer < amount_players) do counter = counter + 1 if counter > MAX_ATTEMPTS then print(#enemy) return end current_player = readInteger(BASE_PLAYERS + OFFSET) if readInteger(current_player + HEALTH) then countPlayer = countPlayer + 1 if readInteger(current_player + HEALTH) >= 1 and readInteger(current_player + HEALTH) <= 1000 then -- The player exists and is alive. if readInteger(current_player + FLAG_TEAM) ~= my_team then -- If the player is my enemy enemy.x = readFloat(current_player + COORDINATE_X) enemy.y = readFloat(current_player + COORDINATE_Y) enemy.z = readFloat(current_player + COORDINATE_Z) t=true return end end end OFFSET = OFFSET + NEXT_PLAYER end t = false end local function TeleportBotPosition() if not t then return end writeFloat(player.x, enemy.x) writeFloat(player.y, enemy.y) writeFloat(player.z, enemy.z) end local function CheckKeyTeleportBot() if not readInteger('[ac_client.exe+0010F4F8]') then return end--The function returns if the address does not exist. UpdateMyData() UpdatePlayersData() TeleportBotPosition() end if t4 then t4.destroy(); t4=nil end t4 = createTimer() t4.Interval = 1 t4.onTimer = CheckKeyTeleportBot {$asm} [DISABLE] {$lua} if t4 then t4.destroy(); t4=nil end {$asm} yo tengo un teleporte que salva las posiciones y carga la posiciones con CE que el pointer es "PlayGame.DLL"+00FFAAFC = offset Y 2A0 , X 2A1 ,Z 2A2 que me hace falta para completar ese rompecabezas y conseguir el teleporte map y un teleporte player traer un amigo junto a ti ademas tengo ese script tambien que teleporta los bixos junto a ti Citar [ENABLE] {$lua} -- Offsets local FLAG_TEAM = 0x32C local HEALTH = 0xF8 local NEXT_PLAYER = 0x4 -- The offset of the structure from one player to another local COORDINATE_X = 0x34 local COORDINATE_Y = 0x38 local COORDINATE_Z = 0x3C local ANGLE_X = 0x40 local ANGLE_Y = 0x44 local BASE_PLAYERS = getAddress('[ac_client.exe+0010F4F8]') local BASE_MY_PLAYER = getAddress('[ac_client.exe+0010F4F4]') -- Declaration of other variables local player -- Structure with all my data local enemy = {}-- Structure with the enemy players, the targets. local amount_players -- Number of players local my_team -- Contains the necessary information to know who is on my team. local MAX_ATTEMPTS = 1000 -- Help the "UpdatePlayersData" function not to enter an infinite loop. -- To understand why this is necessary, you need to study how the player structures work in the Assalt Cube game. -- Function that updates my player information local function UpdateMyData() player = {x = readFloat(BASE_MY_PLAYER + COORDINATE_X), y = readFloat(BASE_MY_PLAYER + COORDINATE_Y), z = readFloat(BASE_MY_PLAYER + COORDINATE_Z), viewMatrix = {x = readFloat(BASE_MY_PLAYER + ANGLE_X)-90, y = readFloat(BASE_MY_PLAYER + ANGLE_Y) } } my_team = readInteger(BASE_MY_PLAYER + FLAG_TEAM) end --Function that updates information about players --And it's different from my team. local function UpdatePlayersData() amount_players = readInteger("ac_client.exe+10A22C")-1 enemy = {} local OFFSET = NEXT_PLAYER -- This variable contains the offset value of the current player being processed local current_player = 0 -- Contains the player base in process local counter = 0 local countPlayer = 0 while(countPlayer < amount_players) do counter = counter + 1 if counter > MAX_ATTEMPTS then print(#enemy) return end current_player = readInteger(BASE_PLAYERS + OFFSET) if readInteger(current_player + HEALTH) then countPlayer = countPlayer + 1 if readInteger(current_player + HEALTH) >= 1 and readInteger(current_player + HEALTH) <= 1000 then -- The player exists and is alive. if readInteger(current_player + FLAG_TEAM) ~= my_team then -- If the player is my enemy enemy[#enemy+1] = {} enemy[#enemy].x = current_player + COORDINATE_X enemy[#enemy].y = current_player + COORDINATE_Y enemy[#enemy].z = current_player + COORDINATE_Z end end end OFFSET = OFFSET + NEXT_PLAYER end end local function TeleportBot() local destinyX local destinyY local destinyZ local max_lenght local lenght = 10 destinyZ = math.sin(math.rad(player.viewMatrix.y)) * lenght max_lenght = math.cos(math.rad(player.viewMatrix.y)) * lenght destinyY = math.sin(math.rad(player.viewMatrix.x)) * max_lenght destinyX = math.cos(math.rad(player.viewMatrix.x)) * max_lenght for i=1, #enemy do writeFloat(enemy.x, player.x + destinyX) writeFloat(enemy.y, player.y + destinyY) writeFloat(enemy.z, player.z + destinyZ) end end local function CheckKeyTeleportBot() if isKeyPressed( VK_Q ) then if not readInteger('[ac_client.exe+0010F4F8]') then return end--The function returns if the address does not exist. UpdateMyData() UpdatePlayersData() TeleportBot() end end showMessage("Press Key 'Q'") if t2 then t2.destroy(); t2=nil end t2 = createTimer() t2.Interval = 1 t2.onTimer = CheckKeyTeleportBot {$asm} [DISABLE] {$lua} if t2 then t2.destroy(); t2=nil end {$asm} |