Nein, ich kann euch nicht sagen wie ihr sie euch selber machen könnt, bin selber ne Niete in C++ und co.! Schaut bei Google nach Tuts oder schaut euch ein paar Videos bei Youtube an... Übung macht den Meister!
Für diejenigen die wissen wie es funktioniert und wie man sich de .dll macht und nen tollen Injector wird dieser Thread wahrscheinlich viel Freude bereiten
Ich werd versuchen die Codes auf dem aktuellen Stand zu halten, aber ihr könnte natürlich auch eure Code Schnippsel etc. posten
Fangen wir doch mal an
Name ESP
Code:
namespace ESP
{
/* !!! You need StrLen() and DrawString() functions !!! */
void Name(UCanvas* pCanvas, AcAPBPawn* pPawn, FColor Color, FLOAT X, FLOAT Y)
{
if (!pCanvas || !pPawn) return;
static FString PlayerName;
APBR::GameEngine->m_HostingClient->m_namequery->GetCharacterNameNative(pPawn->m_nControllerCharacterUID, &PlayerName);
FLOAT X1 = X - (Toolkit::StrLen(pCanvas, PlayerName.Data) / 2);
Toolkit::DrawString(pCanvas, X1, (Y - 30), Color, PlayerName.Data);
}
}
Code:
FVector2D WorldToRadar( FVector Location , FLOAT PosX, FLOAT PosY , INT Size )
{
/*Credits to ********* community | xCyniu | r4z8r when you use this ;)*/
FVector2D Coord;
FVector2D Return;
FLOAT cY = cos(URotationToRadians( MyCameraRotation.Yaw ));
FLOAT sY = sin(URotationToRadians( MyCameraRotation.Yaw ));
FLOAT dX = Location.X - MyCameraLocation.X;
FLOAT dY = Location.Y - MyCameraLocation.Y;
Coord.X = ( dY * cY - dX * sY ) / 150.0f;
Coord.Y = ( dX * cY + dY * sY ) / 150.0f;
Return.X = Coord.X + PosX + (Size / 2.0f);
Return.Y = -Coord.Y + PosY + (Size / 2.0f);
/*Thanks to r4z8r for clamp :)*/
if(Return.X > (PosX + Size) )
Return.X = (PosX + Size);
else if(Return.X < (PosX) )
Return.X = PosX;
if(Return.Y > (PosY + Size) )
Return.Y = (PosY + Size);
else if(Return.Y < (PosY) )
Return.Y = PosY;
return Return;
}
Code:
FVector2D Position = WorldToRadar(Target->Location, cVars.Radar.PosX, cVars.Radar.PosY,150);
Aimbot
Code:
void AimAtPlayer(UCanvas* Canvas, APawn* TargetPawn)
{
if (TargetPawn != NULL && mAPBPawn != NULL){
FName NameHeadBone = TargetPawn->Mesh->GetBoneName(6);
FVector VectorHead = TargetPawn->Mesh->GetBoneLocation(NameHeadBone,0);
FVector2D vHead = CalculateScreenCoordinate(pCanvas,TargetPawn->Mesh->GetBoneLocation(NameHeadBone,0));
pCanvas->Draw2DLine(pCanvas->ClipX/2,pCanvas->ClipY/2,vHead.X,vHead.Y,Red);
VectorHead = VectorHead -MyCameraLocation ;
AimAtRot = VectorHead****tation();
NormalizeRotation(AimAtRot);
FRotator* pAimAtRot = &AimAtRot;
if(GetAsyncKeyState(VK_RBUTTON))
{
mAPBPawn->SetCameraAimRotPawn(pAimAtRot);
}
}
}
Code:
float CurrentAngle = GetViewAngle( Target->Location, ViewLocation );
if ( CheckAngle( CurrentAngle, pPC->PlayerCamera->GetFOVAngle() ) )
{
if ( ( !TargetPawn
|| RadianToDegree(CurrentAngle) > BestAngle ) && APBPawn->PlayerCanSeeMe() )
{
BestAngle = RadianToDegree(CurrentAngle);
TargetPawn = Target;
}
}
Code:
void tweakWeapon(UCanvas* Canvas, AcItem* pItem)
{
if (!pItem) return;
AcWeapon* pAcWeapon = NULL;
AcProjectileWeapon* pPjWeapon = NULL;
AcRaycastWeapon* pRayWeapon = NULL;
AWeapon* pAWeapon = NULL;
if (pItem->IsA(AcWeapon::StaticClass()))
{
pAcWeapon = (AcWeapon *)pItem;
if(pAcWeapon->IsA(AcRaycastWeapon::StaticClass()))
{
pRayWeapon = (AcRaycastWeapon *)pAcWeapon;
pRayWeapon->m_WeaponRecoilSettings.m_fEndPitchMax = 0.0f;
pRayWeapon->m_WeaponRecoilSettings.m_fEndPitchMin = 0.0f;
pRayWeapon->m_WeaponRecoilSettings.m_fEndYawMax = 0.0f;
pRayWeapon->m_WeaponRecoilSettings.m_fEndYawMin = 0.0f;
pRayWeapon->m_WeaponRecoilSettings.m_eWeaponRecoil = 0;
pRayWeapon->m_TanSpreadAngle = 0.0f;
pRayWeapon->m_TanPelletSpread = 0.0f;
pRayWeapon->m_RangedWeaponTypeSettings.m_fRunModifier = 0.0f;
pRayWeapon->m_RangedWeaponTypeSettings.m_fWalkModifier = 0.0f;
pRayWeapon->m_RangedWeaponTypeSettings.m_fCrouchModifier = 0.0f;
pRayWeapon->m_RangedWeaponTypeSettings.m_fRampDistance = 0.0f;
pRayWeapon->m_RangedWeaponTypeSettings.m_eRecoil = 0;
pRayWeapon->m_RangedWeaponTypeSettings.m_fRaySpreadAtTenMetres = 0.0f;
pRayWeapon->m_RangedWeaponTypeSettings.m_fMaxRange = 0.0f;
}
}
if(pAcWeapon->IsA(AWeapon::StaticClass()))
{
pAWeapon = (AWeapon *)pAWeapon;
for(int k = 0; k < pAWeapon->Spread.Num(); k++) pAWeapon->Spread(k) = 0.0f;
}
return;
}
Code:
void DrawGrenadeESP(UCanvas* pCanvas){
if (pPC == NULL || pPC->Pawn == NULL || pPC->WorldInfo == NULL )
return;
pPC->Pawn->FindActorsOfClass(AcAPBProjectile::StaticClass(), &AllOfActors);
for (int i = 0; i < AllOfActors.Count; i++){
if (AllOfActors.Data[i] != NULL)
{
AActor* pActor = AllOfActors.Data[i] ;
if(dynamic_cast<AcAPBProjectile*>(pActor))
{
AcAPBProjectile* GrenadeESPThing = dynamic_cast<AcAPBProjectile*>(pActor);
char* name = GrenadeESPThing->GetFullName();
if(!strcmp( name, "cAPBProjectile TheWorld.PersistentLevel.cAPBProjectile" ))
{
float OldCurX = pCanvas->CurX;
float OldCurY = pCanvas->CurY;
FVector2D locatiescherm;
if (GrenadeESPThing == NULL || GrenadeESPThing->bDeleteMe || GrenadeESPThing->m_bExploded)
return;
locatiescherm = CalculateScreenCoordinate(pCanvas,GrenadeESPThing->Location);
swprintf(tempChar, 256, L"[Grenade]");
pCanvas->CurX = locatiescherm.X;
pCanvas->CurY = locatiescherm.Y;
pCanvas->DrawColor = Purple;
pCanvas->DrawText(tempChar, NULL, 1.0f, 1.0f);
pCanvas->CurX = OldCurX;
pCanvas->CurY = OldCurY;
}
}
}
}
}
Code:
AActor* TraceHit = PlayerController->Trace(AimingPoint, PlayerController->PlayerCamera->Location ,1, *extent, 0, HitLocation, HitNormal, HitInfo); if( AcAPBPawn* target = dynamic_cast<AcAPBPawn*>(TraceHit ))
MfG






