Giter Site home page Giter Site logo

cs2-sdk's People

Contributors

bruhmoment21 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

cs2-sdk's Issues

Question

I've used visual studio to compile DLLs but is there anything specific I have to do for this sdk? do I have to inject via visual studio or can I use any injector? do I need to download all dependencies, and if so where do i put them all?
thank you! new to visual studio sorry about these mediocre questions

Game crash upon menu display

Hey, trying to use the sdk with the latest game version from oof.lv and latest repo version
I am able to inject with extreme injector but when hiting insert game crashes (also tried with process hacker)

Crashes on line 33 for access violation in menu.cpp
image

I tried adding a check for non null pointer before getting sdl window, but crashes on the first frame on line 38 in render.cpp
image

any clue?

knife skinchanger

can I make a knife skin changer like weapon_knife to Weapon_Knife_Skeleton by using the default {xx, {xxx, true}} template?

Operational issues

Can you tell me the specific IMGUI use, I can only use a single skin, I can't replace other skins

Get more Entities than cs_player_controller entities (eg. Chickens)

Hello @bruhmoment21,

first of all: thank you for you nicely written CS2 SDK.
I am using it, to learn more about the Source2 world.

Back to my "issues":
To get all available entities, I first extended the CEntityIdentity class using this dump:
https://github.com/Rebirator/CS2/blob/main/Schemes%20Dump.txt#L436

Now it looks like this:

class CEntityIdentity {
   public:
    SCHEMA_FIELD(m_designerName, "CEntityIdentity", "m_designerName",
                 const char*);
    SCHEMA_FIELD(m_name, "CEntityIdentity", "m_name",
                 const char*);
    SCHEMA_FIELD(m_pPrev, "CEntityIdentity", "m_pPrev",
                 CEntityIdentity*);
    SCHEMA_FIELD(m_pNext, "CEntityIdentity", "m_pNext",
                 CEntityIdentity*);
    SCHEMA_FIELD(m_pPrevByClass, "CEntityIdentity", "m_pPrevByClass",
                 CEntityIdentity*);
    SCHEMA_FIELD(m_pNextByClass, "CEntityIdentity", "m_pNextByClass",
                 CEntityIdentity*);
};

In esp::Render() we get a CCSPlayerController* (basically CBasePlayerController -> C_BaseEntity -> CEntityInstance -> CEntityIdentity*)
Adapting your bool C_BaseEntity::IsPlayerController(), we should be able to just cast the BaseEntity to CEntityIdentity* and be able to check all the pIdentity->m_designerName().

Due to the fact that there are more Entities than just the Player entities, we need to "break out" and get the full list of entities.

void C_BaseEntity::checkAllEntities() {
    CEntityIdentity* pIdentity = m_pEntity();
    int o = 0;
    if (pIdentity) {

        while (pIdentity->m_pPrev() != nullptr) {
           pIdentity = pIdentity->m_pPrev();
        }
        while (pIdentity != nullptr) {
          
            if (pIdentity->m_designerName())  //like C_BaseEntitiy::IsPlayerControlled()
            {
                LOG("%i %s\n", ++o, pIdentity->m_designerName());
            }
            pIdentity = pIdentity->m_pNext();
        }
    }
}

result is this list:


1 weapon_ak47
2 weapon_ak47
3 weapon_sg556
4 weapon_famas
5 weapon_galilar
6 weapon_scar20
7 weapon_p250
8 weapon_scar20
9 weapon_m4a1
10 weapon_p250
11 weapon_galilar
12 info_particle_system
13 weapon_m249
14 weapon_fiveseven
15 viewmodel_attachment_model
16 viewmodel_attachment_model
17 cs_player_controller
18 cs_player_controller
19 cs_player_controller
20 cs_player_controller
21 cs_player_controller
22 cs_player_controller
23 cs_player_controller
24 cs_player_controller
25 cs_player_controller
26 csgo_viewmodel
27 point_worldtext
28 post_processing_volume
29 point_camera
30 point_camera
31 point_camera
32 point_camera
33 point_camera
34 basemodelentity
35 basemodelentity
36 basemodelentity
37 basemodelentity
38 basemodelentity
39 basemodelentity
40 basemodelentity
41 basemodelentity
42 basemodelentity
43 basemodelentity
44 basemodelentity
45 basemodelentity
46 basemodelentity
47 basemodelentity
48 basemodelentity
49 basemodelentity
50 basemodelentity
51 basemodelentity
52 basemodelentity
53 basemodelentity
54 basemodelentity
55 basemodelentity
56 basemodelentity
57 basemodelentity
58 basemodelentity
59 basemodelentity
60 basemodelentity
61 basemodelentity
62 basemodelentity
63 basemodelentity
64 basemodelentity
65 basemodelentity
66 basemodelentity
67 basemodelentity
68 basemodelentity
69 basemodelentity
70 basemodelentity
71 basemodelentity
72 basemodelentity
73 basemodelentity
74 basemodelentity
75 basemodelentity
76 basemodelentity
77 weapon_knife
78 c_cs_observer_for_precache
79 c_cs_player_for_precache
80 weapon_knife
81 weapon_glock
82 c_cs_observer_for_precache
83 c_cs_player_for_precache
84 weapon_knife
85 weapon_glock
86 c_cs_observer_for_precache
87 c_cs_player_for_precache
88 weapon_knife
89 c_cs_observer_for_precache
90 c_cs_player_for_precache
91 weapon_knife
92 weapon_glock
93 c_cs_observer_for_precache
94 c_cs_player_for_precache
95 weapon_knife
96 weapon_hkp2000
97 c_cs_observer_for_precache
98 c_cs_player_for_precache
99 weapon_knife
100 weapon_glock
101 c_cs_observer_for_precache
102 c_cs_player_for_precache
103 weapon_knife
104 c_cs_observer_for_precache
105 c_cs_player_for_precache
106 weapon_knife
107 weapon_hkp2000
108 c_cs_observer_for_precache
109 c_cs_player_for_precache
110 weapon_knife
111 weapon_glock
112 map_preview_camera_path
113 point_camera_vertical_fov
114 csgo_previewplayer
115 light_environment
116 env_cubemap_box
117 env_combined_light_probe_volume
118 info_particle_system
119 info_particle_system
120 info_particle_system
121 point_camera
122 light_environment
123 point_camera
124 light_environment
125 point_camera
126 light_environment
127 point_camera
128 light_environment
129 terrorist_team_intro_camera
130 map_preview_camera_path_node
131 map_preview_camera_path_node
132 map_preview_camera_path_node
133 counterterrorist_team_intro_camera
134 map_preview_camera_path_node
135 map_preview_camera_path_node
136 map_preview_camera_path_node
137 end_of_match_lineup_start
138 end_of_match_lineup_end
139 end_of_match_camera
140 map_preview_camera_path_node
141 map_preview_camera_path_node
142 map_preview_camera_path_node
143 team_select_camera
144 map_preview_camera_path_node
145 map_preview_camera_path_node
146 env_combined_light_probe_volume
147 light_environment
148 path_particle_rope
149 path_particle_rope
150 path_particle_rope
151 path_particle_rope
152 path_particle_rope
153 path_particle_rope
154 path_particle_rope
155 path_particle_rope
156 path_particle_rope
157 path_particle_rope
158 path_particle_rope
159 path_particle_rope
160 path_particle_rope
161 path_particle_rope
162 path_particle_rope
163 path_particle_rope
164 path_particle_rope
165 path_particle_rope
166 path_particle_rope
167 path_particle_rope
168 path_particle_rope
169 path_particle_rope
170 path_particle_rope
171 path_particle_rope
172 path_particle_rope
173 path_particle_rope
174 path_particle_rope
175 path_particle_rope
176 path_particle_rope
177 path_particle_rope
178 path_particle_rope
179 path_particle_rope
180 path_particle_rope
181 path_particle_rope
182 path_particle_rope
183 path_particle_rope
184 path_particle_rope
185 path_particle_rope
186 path_particle_rope
187 path_particle_rope
188 path_particle_rope
189 path_particle_rope
190 path_particle_rope
191 path_particle_rope
192 path_particle_rope
193 path_particle_rope
194 path_particle_rope
195 path_particle_rope
196 path_particle_rope
197 path_particle_rope
198 path_particle_rope
199 path_particle_rope
200 path_particle_rope
201 path_particle_rope
202 path_particle_rope
203 path_particle_rope
204 path_particle_rope
205 path_particle_rope
206 path_particle_rope
207 path_particle_rope
208 env_combined_light_probe_volume
209 env_combined_light_probe_volume
210 env_combined_light_probe_volume
211 env_combined_light_probe_volume
212 env_combined_light_probe_volume
213 env_combined_light_probe_volume
214 env_combined_light_probe_volume
215 env_combined_light_probe_volume
216 env_combined_light_probe_volume
217 env_combined_light_probe_volume
218 env_combined_light_probe_volume
219 env_combined_light_probe_volume
220 env_combined_light_probe_volume
221 env_combined_light_probe_volume
222 env_combined_light_probe_volume
223 env_combined_light_probe_volume
224 env_combined_light_probe_volume
225 env_combined_light_probe_volume
226 env_combined_light_probe_volume
227 env_combined_light_probe_volume
228 env_combined_light_probe_volume
229 env_combined_light_probe_volume
230 env_combined_light_probe_volume
231 env_combined_light_probe_volume
232 env_combined_light_probe_volume
233 env_combined_light_probe_volume
234 env_combined_light_probe_volume
235 env_combined_light_probe_volume
236 env_combined_light_probe_volume
237 env_combined_light_probe_volume
238 env_combined_light_probe_volume
239 env_combined_light_probe_volume
240 env_combined_light_probe_volume
241 env_combined_light_probe_volume
242 env_combined_light_probe_volume
243 env_combined_light_probe_volume
244 env_combined_light_probe_volume
245 env_combined_light_probe_volume
246 env_combined_light_probe_volume
247 env_combined_light_probe_volume
248 env_combined_light_probe_volume
249 env_combined_light_probe_volume
250 env_combined_light_probe_volume
251 env_combined_light_probe_volume
252 path_particle_rope
253 path_particle_rope
254 path_particle_rope
255 path_particle_rope
256 path_particle_rope
257 path_particle_rope
258 path_particle_rope
259 path_particle_rope
260 path_particle_rope
261 path_particle_rope
262 path_particle_rope
263 path_particle_rope
264 path_particle_rope
265 path_particle_rope
266 path_particle_rope
267 path_particle_rope
268 path_particle_rope
269 path_particle_rope
270 path_particle_rope
271 path_particle_rope
272 path_particle_rope
273 path_particle_rope
274 path_particle_rope
275 path_particle_rope
276 path_particle_rope
277 path_particle_rope
278 path_particle_rope
279 path_particle_rope
280 path_particle_rope
281 path_particle_rope
282 path_particle_rope
283 path_particle_rope
284 path_particle_rope
285 path_particle_rope
286 path_particle_rope
287 path_particle_rope
288 path_particle_rope
289 path_particle_rope
290 path_particle_rope
291 path_particle_rope
292 path_particle_rope
293 path_particle_rope
294 path_particle_rope
295 path_particle_rope
296 path_particle_rope
297 path_particle_rope
298 path_particle_rope
299 path_particle_rope
300 path_particle_rope
301 path_particle_rope
302 path_particle_rope
303 path_particle_rope
304 path_particle_rope
305 path_particle_rope
306 path_particle_rope
307 path_particle_rope
308 path_particle_rope
309 path_particle_rope
310 light_omni2
311 light_omni2
312 light_rect
313 light_rect
314 light_omni2
315 light_rect
316 light_rect
317 light_rect
318 light_rect
319 light_rect
320 light_rect
321 light_rect
322 light_rect
323 light_rect
324 light_rect
325 light_rect
326 light_rect
327 light_rect
328 light_omni2
329 light_rect
330 light_omni2
331 light_rect
332 light_rect
333 light_omni2
334 light_rect
335 light_rect
336 light_rect
337 light_rect
338 light_rect
339 light_rect
340 light_environment
341 light_rect
342 light_rect
343 worldent
344 cs_player_controller
345 cs_player_manager
346 cs_gamerules
347 vote_controller
348 vote_controller
349 vote_controller
350 env_cubemap_fog
351 env_sky
352 env_sky
353 sky_camera
354 env_sky
355 team_select_terrorist
356 team_select_terrorist
357 team_select_terrorist
358 team_select_terrorist
359 team_select_terrorist
360 team_select_terrorist
361 team_select_terrorist
362 team_select_terrorist
363 team_select_terrorist
364 team_select_counterterrorist
365 team_select_counterterrorist
366 team_select_counterterrorist
367 team_select_counterterrorist
368 team_select_counterterrorist
369 team_select_counterterrorist
370 team_select_counterterrorist
371 team_select_counterterrorist
372 team_select_counterterrorist
373 team_select_counterterrorist
374 team_select_terrorist
375 team_intro_counterterrorist
376 team_intro_counterterrorist
377 team_intro_counterterrorist
378 team_intro_counterterrorist
379 team_intro_counterterrorist
380 team_intro_terrorist
381 team_intro_terrorist
382 team_intro_terrorist
383 team_intro_terrorist
384 team_intro_terrorist
385 c_cs_observer_for_precache
386 c_cs_player_for_precache

I suspect, that (for example), chickens reside inside a basemodelentity (because: CChicken -> CDynamicProp -> C_BreakableProp -> CBaseProp -> CBaseAnimGraph -> C_BaseModelEntity).

How can I confirm, that a BaseModelEntity is in fact a Chicken?
Is there a better/faster solution to get all Entities without the cs_player_controller detour?

I am thankful for all suggestions leading in the right direction.

todo?

checks for teammates & localplayer
glow

aimbot

how to create aimbot?

PushFont problem

Any ways to PushFont in main menu? After the

void render::Initialize()

ImFont* Tabs_font = ImGui::GetIO().Fonts->AddFontFromMemoryTTF(
        tab_font, sizeof(tab_font), 25.0f, &font_config, ranges);

for obvious reasons i cant initialize Tabs_font in void menu::Render()
Thanks for your respond!

Update?

New update is out again, would love a new update

Raytrace and RIP Resolver

Hello @bruhmoment21,
are you planning on implementing raytracing / Trace Manager? I tried converting the implementation from here, but in the end, the Trace_Shape is not returning any meaningful data.

Also, I found, that some signatures need a RIPResolver, e.g. GlobalVars.
Using this:

uint8_t* ResolveRip(std::uint8_t* address,
                                      std::uint32_t rva_offset,
                                      std::uint32_t rip_offset) {
     if (!address || !rva_offset || !rip_offset) {
         return nullptr;
     }

     std::uint32_t rva = *reinterpret_cast<std::uint32_t*>(address +
     rva_offset); std::uint64_t rip = reinterpret_cast<std::uint64_t>(address)
     + rip_offset;

     return reinterpret_cast<std::uint8_t*>(rva + rip);
 }

RIPResolver might be a nice addition to the UTILPtr Class

New Hook:

static CHook<void __fastcall(CClientMode*, const char*)> g_level_init;
static void __fastcall hkLevelInit(CClientMode* thisptr, const char* newmap) {
    LOG("Level Init fired\n");
    LOG("NewMap %s\n", newmap);
    interfaces::UpdateGlobalVars();
    LOG("pGlobalVars %p\n", interfaces::pGlobalVars);
    LOG("pGlobalVars->MaxClients %i\n", interfaces::pGlobalVars->m_maxclients);

    return g_level_init(thisptr, newmap);
}

class CClientMode {
   public:
    
};
class CGlobalVars {

   public:
        
    float m_realtime;          // 0x0000
    __int32 m_framecount;      // 0x0004
    float N0000007D;           // 0x0008
    float N00000087;           // 0x000C
    __int32 m_maxclients;      // 0x0010
    float m_intervalpertick;   // 0x0014
    __int32 N0000007F;         // 0x0018
    __int32 N0000008B;         // 0x001C
    void* m_unkfunc;           // 0x0020
    float N00000081;           // 0x0028
    float m_curtime;           // 0x002C
    float m_curtime2;          // 0x0030
    char pad_0x0034[0xC];      // 0x0034
    __int32 m_tickcount;       // 0x0040
    float m_intervalpertick2;  // 0x0044
    void* m_current_netchan;   // 0x0048
    char pad_0x0050[0x130];    // 0x0050
    char* m_current_map;       // 0x0180
    char* m_current_mapname;   // 0x0188

};

#define GLOBALVARS SIGNATURE("48 8B 05 ? ? ? ? 4C 8D 0D ? ? ? ? F2 0F 11 74 24 ? 4C 8D 05 ? ? ? ? BA")

CGlobalVars* memory::update_globalvars() {
    CModule client(CLIENT_DLL);

    uint8_t* globalvarsptr = reinterpret_cast<uint8_t*>(
        client.FindPattern(GLOBALVARS).Get<uint8_t*>());

    LOG_RESULT(globalvarsptr);

    CGlobalVars* globalvars =
        *reinterpret_cast<CGlobalVars**>(ResolveRip(globalvarsptr, 3, 7));

    LOG_RESULT(globalvars);

    return globalvars;
}
namespace interfaces {
    void Initialize();
    void Shutdown();
    void UpdateGlobalVars();
   ~~snip~~
    inline CGlobalVars* pGlobalVars;
    inline CClientMode* pClientMode;
   
}  // namespace interfaces


void CS2_HookGameFunctions() {
  ~~snip~~
    g_level_init.Hook(memory::fnLevelInit, HOOK_FUNCTION(hkLevelInit));
   ~~snip~~
    esp::CacheCurrentEntities();
}

You can do stuff like this:
grafik

grafik

Knife animations timings are off for custom animation knifes

Using a knife that isn't using any of the default knife animations is still using the timings for those animations from the default one on the custom one

For example, try to equip a karambit/butterfly and almost all animations are off or breaking completely

skinchager

I do not know how to create pull requests
code :
.cpp

#include <unordered_map>

#include "skin_changer.hpp"

#include "../../sdk/interfaces/interfaces.hpp"

// More details:
// https://www.unknowncheats.me/forum/3715213-post352.html

// I know that skins are being applied wrong.
// Cause: https://www.unknowncheats.me/forum/3715116-post351.html

static const std::unordered_map<uint16_t, int32_t> g_skinsMap{
{4, 38}, // Glock 18 | Fade
{7, 302}, // AK47 | Vulcan
{32, 260}, // P2000 | Ivory
{61, 504}, // USP | Kill Confirmed
};

void skin_changer::Run() {
// https://www.unknowncheats.me/forum/3711351-post132.html
if (!interfaces::pEngine->IsInGame()) return;

CCSPlayerController* pLocalPlayerController =
interfaces::pEntitySystem->GetLocalPlayerController();
if (!pLocalPlayerController) {
return;
}

C_CSPlayerPawn* pLocalPawn =
    pLocalPlayerController->m_hPawn().Get<C_CSPlayerPawn>();
if (!pLocalPawn) {
    return;
}

CPlayer_WeaponServices* pWeaponServices = pLocalPawn->m_pWeaponServices();
if (!pWeaponServices) {
    return;
}

CNetworkUtlVectorBase<CHandle>* pWeapons = pWeaponServices->m_hMyWeapons();
if (!pWeapons) {
    return;
}

for (size_t i = 0; i < pWeapons->size; ++i) {
    C_BasePlayerWeapon* pWeapon =
        pWeapons->pData[i].Get<C_BasePlayerWeapon>();
    if (!pWeapon) {
        continue;
    }

    C_AttributeContainer* pAttributeContainer =
        pWeapon->m_AttributeManager();
    if (!pAttributeContainer) {
        continue;
    }

    C_EconItemView* pEconItemView = pAttributeContainer->m_Item();
    if (!pEconItemView) {
        continue;
    }

    const auto skinEntry =
        g_skinsMap.find(pEconItemView->m_iItemDefinitionIndex());
    if (skinEntry == g_skinsMap.cend()) {
        continue;
    }

    // Set the skin
    pWeapon->m_nFallbackPaintKit() = skinEntry->second;
    // Reset the other skin-related values to default
    pEconItemView->m_iItemIDLow() = -1;
    pWeapon->m_flFallbackWear() = 0.0001f;
    pWeapon->m_nFallbackSeed() = 0;
}

}

Skin_changer StatTrak

Skin_changer.cpp =
`for (size_t i = 0; i < pWeapons->m_size; ++i) {
C_BasePlayerWeapon* pWeapon =
pWeapons->m_data[i].Get<C_BasePlayerWeapon>();
if (!pWeapon) continue;

    C_AttributeContainer* pAttributeContainer =
        pWeapon->m_AttributeManager();
    if (!pAttributeContainer) continue;

    C_EconItemView* pEconItemView = pAttributeContainer->m_Item();
    if (!pEconItemView) continue;

    const auto& skinEntry =
        g_skinsMap.find(pEconItemView->m_iItemDefinitionIndex());
    if (skinEntry == g_skinsMap.cend()) continue;
    
    const int32_t skin = skinEntry->second;
    if (skin > 0) {
        pWeapon->m_nFallbackPaintKit() = skin;
        pWeapon->m_nFallbackStatTrak() =
            1337;  // You can set your own number here
    } else {
        pWeapon->m_nFallbackPaintKit() = 0;
        pWeapon->m_nFallbackStatTrak() = -1;
    
    }
    pEconItemView->m_iItemIDLow() = pEconItemView->m_iItemIDHigh() = -1;

    pWeapon->m_flFallbackWear() = 0.0001f;
    pWeapon->m_nFallbackSeed() = 0;
    pWeapon->m_nFallbackPaintKit() = skinEntry->second;
}`

2023-04-04_00-17-44

Crash

The updated game crashes when I add a skin

Another Question

on the screenshot you provided showing the ui, you have a button called add karambit into inventory. I was just curious if I had to make my own skinchanger, or write my own code to add things into inventory. thank you!

Game crashes while using gui on match

So I recently injected the .dll with Extreme Injector v3, while using the debug version of your source code, (I´ve compiled it myself on Visual Studio) it runs fine on the main menu but at the moment I use it on any match, it crashes, it used to only occur when using specifically the inventory changer, now it occurs in general. After it crashes it generates this file with the name: "cs2_2023_0419_223207_0_accessviolation.mdmp" on bin\win64, if this file remains on the folder, the .dll doesnt work, if i delete it, it returns to normal. im not an expert on this, so any help? or any idea why this happens?

ideas

esp,trigger,config system

Trying to implement Get_Bone_Pos using memory module

Hello!

Since hours I am trying to implement get_bone_pos in the scheme like fnScreenTransform from the memory modul.
My approach:

defines.hpp:
#define GET_BONE_POS SIGNATURE ("48 89 6C 24 ? 48 89 74 24 ? 48 89 7C 24 ? 41 56 48 83 EC ? 4D 8B F1")

memory.cpp:
get_bone_pos = client.FindPattern(GET_BONE_POS.Get<decltype(get_bone_pos)>();

memory.hpp:

class C_BaseEntity;
inline void(__fastcall* get_bone_pos)(C_BaseEntity*, std::uint32_t, Vector&, Vector&);

baseentity.hpp:

class C_BaseEntity : public CEntityInstance {
   public:
***snip***
void get_bone_position(std::uint32_t bone_index, Vector& position,
                           Vector& rotation);
}

baseentity.cpp:

void C_BaseEntity::get_bone_position(std::uint32_t bone_index, Vector& position,
                                     Vector& rotation) {
 memory::get_bone_pos(this, bone_index, position, rotation);
   
 }

esp.cpp: // for Skeleton

 static void RenderSkeleton(CCSPlayerController* entity, color_t color) {
    Vector bone_position = {};
    Vector bone_rotation = {};
//casting entity to C_BaseEntity* no difference
   entity->get_bone_position(5, bone_position, bone_rotation); //Bone 5 for testing
}

When I deliberately using a wrong get_bone_position address, I get an Access Violation (execute function).
When I am using the correct address, bone_postition and bone_rotation won't get filled. No crashes.

What am I missing? Thank you in advance and happy easter! 🐰

cant get m_fFlags

as stated i cant get this to work

NETVAR(m_fFlags, "CBaseEntity", "m_fFlags ", int32_t);
NETVAR(m_fFlagsTest, "C_BaseEntity", "m_fFlags ", int32_t);

console output

flags: netvars::GetOffset(): 'm_fFlags ' was not found in 'C_BaseEntity'!
InitNetvarsForClass(): Class 'CBaseEntity' was not found!
netvars::GetOffset(): 'm_fFlags ' was not found in 'CBaseEntity'!

Knife animation bug

Hello, while inspecting knife like Butterfly or some other knife that have more advanced animation it gets bugged.
You can try it by yourself - for example try to inspect and hit with that knife.

hi

hi maybe add aimbot?
and rounded box?
rounded box - if (bBoxEsp) {
pBackgroundDrawList->AddRect(min, max,
IM_COL32(255, 255, 255, 255));
pBackgroundDrawList->AddRect(min - ImVec2{1.f, 1.f},
max + ImVec2{1.f, 1.f},
IM_COL32(0, 0, 0, 255));
pBackgroundDrawList->AddRect(min + ImVec2{1.f, 1.f},
max - ImVec2{1.f, 1.f},
IM_COL32(0, 0, 0, 255));
}

CreateMove hooking?

I'm pretty sure that CS2 also utilizes CreateMove for its movement, but i haven't seen any hook for this in this SDK so far.
Would be a nice improvement to the base:

I've tried using sig
#define CREATE_MOVE \ CS2_SDK_SIG("48 8B C4 48 89 58 10 48 89 48")
without any luck.

Edit:
hooking createmove off g_CreateMove.HookVirtual(interfaces::pInputSystem, 5, HOOK_FUNCTION(hkCreateMove));

hasn't been successful either, im getting "too short instructions" error message

skins Question

1681101786303.jpg
1681101809654.jpg
1681101866172.jpg

The warehouse can choose the skin, in the room does not show the skin
I'm here to bother you again, sorry

CS2 new update

The game crashes after injecting on the newest released update 07/06/2023

Client Version: 47/13880 9720

offset

How do I find its offsets?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.