HelpExternal RCS not working
i changed it to that, its not working again and im not sure why
- - - Updated - - -
ok ill try that
EDIT
i tried it and i dont know what to make of the information, for some reason the x,y, and z just go to 0
- - - Updated - - -
so im assuming all i need is
i did that and its not working. anything else to help?
full code
- - - Updated - - -
ok ill try that
EDIT
i tried it and i dont know what to make of the information, for some reason the x,y, and z just go to 0
- - - Updated - - -
so im assuming all i need is
Code:
static Vector vOldPunchAngle;
full code
Code:
#pragma once
#include "Offsets.h"
#include <math.h>
#include <iostream>
#include <string>
#include <ios>
#include <iomanip>
struct Vector {
float x, y, z = 0;
};
Vector NormalizeAngles(Vector angle)
{
if (!std::isfinite(angle.x)) {
angle.x = 0;
}
if (!std::isfinite(angle.y)) {
angle.y = 0;
}
while (angle.y < -180.0f) angle.y += 360.0f;
while (angle.y > 180.0f) angle.y -= 360.0f;
if (angle.x > 89.0f) angle.x = 89.0f;
if (angle.x < -89.0f) angle.x = -89.0f;
angle.z = 0;
return angle;
}
void RCS()
{
if (RCSEnabled)
{
Vector vAimPunch;
Vector Fin;
static Vector vOldPunchAngle;
DWORD Player = Mem.Read<DWORD>(Client + LocalPlayer);
DWORD EngineBleh = Mem.Read<DWORD>(Engine + ClientState); //Engine is "Engine.dll"
if (GetAsyncKeyState(VK_LBUTTON))
{
vAimPunch = Mem.Read<Vector>(Player + Punch);
vAimPunch.x = vAimPunch.x * 2.f;
vAimPunch.y = vAimPunch.y * 2.f;
Vector ViewAngles = Mem.Read<Vector>(EngineBleh + ViewAngle);
Fin.x = ViewAngles.x - (vAimPunch.x - vOldPunchAngle.x);
Fin.y = ViewAngles.y - (vAimPunch.y - vOldPunchAngle.y);
NormalizeAngles(Fin);
Mem.Write<Vector>(EngineBleh + ViewAngle, Fin);
vOldPunchAngle = vAimPunch;
}
else
{
vOldPunchAngle.x = 0;
vOldPunchAngle.y = 0;
Fin.x = 0;
Fin.y = 0;
}
}
}
Code:
#pragma once
#include "Offsets.h"
#include <math.h>
#include <iostream>
#include <string>
struct Vector {
float x, y, z;
};
void NormalizeAngles(Vector& angle)
{
if (!std::isfinite(angle.x)) {
angle.x = 0;
}
if (!std::isfinite(angle.y)) {
angle.y = 0;
}
while (angle.y < -180.0f) angle.y += 360.0f;
while (angle.y > 180.0f) angle.y -= 360.0f;
if (angle.x > 89.0f) angle.x = 89.0f;
if (angle.x < -89.0f) angle.x = -89.0f;
angle.z = 0;
}
Vector vOldPunchAngle;
void RCS()
{
if (RCSEnabled)
{
DWORD LocalPlayer_Base = Mem.Read<DWORD>(ClientDLL + LocalPlayerOFFSET);
DWORD Engine_Base = Mem.Read<DWORD>(EngineDLL + ClientStateOFFSET);
Vector vAimPunch = Mem.Read<Vector>(LocalPlayer_Base + vecPunchOFFSET);
vAimPunch.x *= 2.f;
vAimPunch.y *= 2.f;
if (GetAsyncKeyState(VK_LBUTTON) & 0x8000)
{
Vector ViewAngles = Mem.Read<Vector>(Engine_Base + vecViewAngleOFFSET);
ViewAngles.x -= (vAimPunch.x - vOldPunchAngle.x);
ViewAngles.y -= (vAimPunch.y - vOldPunchAngle.y);
ViewAngles.z = 0.f;
NormalizeAngles(ViewAngles);
Mem.Write<Vector>(Engine_Base + vecViewAngleOFFSET, ViewAngles);
}
vOldPunchAngle = ViewAngles;
}
}
You also was returning nothing from NormalizeAngles function, so i modified it...
I tried it, this is my code
and its not working
Code:
struct Vector {
float x = 0, y = 0, z = 0;
};
Vector NormalizeAngles(Vector angle)
{
if (!std::isfinite(angle.x)) {
angle.x = 0;
}
if (!std::isfinite(angle.y)) {
angle.y = 0;
}
while (angle.y < -180.0f) angle.y += 360.0f;
while (angle.y > 180.0f) angle.y -= 360.0f;
if (angle.x > 89.0f) angle.x = 89.0f;
if (angle.x < -89.0f) angle.x = -89.0f;
angle.z = 0;
return angle;
}
void RCS()
{
if (RCSEnabled)
{
Vector vAimPunch;
Vector Fin;
static Vector vOldPunchAngle;
DWORD Player = Mem.Read<DWORD>(Client + LocalPlayer);
DWORD EngineBleh = Mem.Read<DWORD>(Engine + ClientState); //Engine is "Engine.dll"
if (GetAsyncKeyState(VK_LBUTTON))
{
vAimPunch = Mem.Read<Vector>(Player + Punch);
vAimPunch.x = vAimPunch.x * 2.f;
vAimPunch.y = vAimPunch.y * 2.f;
Vector ViewAngles = Mem.Read<Vector>(EngineBleh + ViewAngle);
Fin.x = ViewAngles.x - (vAimPunch.x - vOldPunchAngle.x);
Fin.y = ViewAngles.y - (vAimPunch.y - vOldPunchAngle.y);
NormalizeAngles(Fin);
Mem.Write<Vector>(EngineBleh + ViewAngle, Fin);
vOldPunchAngle = vAimPunch;
}
else
{
vOldPunchAngle.x = 0;
vOldPunchAngle.y = 0;
Fin.x = 0;
Fin.y = 0;
}
}
}
Try this. I'm not sure it's working now, but probably yes.
Code:
void rcs()
{
Vector3 prevPunch, testVec;
int m_ShotsFired;
prevPunch.x = 0;
prevPunch.y = 0;
while (true)
{
if (GetAsyncKeyState(1) & 0x8000){
DWORD LocalBaseB = Meme.Read<DWORD>(ClientDLL + m_dwLocalPlayer);
DWORD EnginePTR = Meme.Read<DWORD>(EngineDLL + m_dwClientState);
m_ShotsFired = Meme.Read<int>(LocalBaseB + m_iShotsFired);
Vector3 m_punch = Meme.Read<Vector3>(LocalBaseB + m_vecPunch);
m_punch.x *= 2.f;
m_punch.y *= 2.f;
if (m_ShotsFired > 1) {
Vector3 currentAngles = Meme.Read<Vector3>(EnginePTR + m_dwViewAngles);
Vector3 modifier = m_punch;
modifier.x -= prevPunch.x;
modifier.y -= prevPunch.y;
normalize(modifier);
currentAngles.x -= modifier.x;
currentAngles.y -= modifier.y;
normalize(currentAngles);
Meme.Write<Vector3>(EnginePTR + m_dwViewAngles, currentAngles);
}
prevPunch = m_punch;
Sleep(30);
}
Sleep(1);
}
}
@epik.. and I were trying to fix my code on skype for like 2 hours last night and we still didn't get it to work, I'll try this when I get home and if it doesn't work I'll just pray that Epik can help me figure it out
This thread is closed for replies.
