Как пофиксить desync chams в pandore

Забаненный
Статус
Оффлайн
Регистрация
2 Май 2020
Сообщения
20
Реакции[?]
11
Поинты[?]
0
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
чел есть такой
сурс пандоры ивилайк тм фикшеный десинк чамс
дабавь в дс я помогу BURG#4539
 
aspire to inspire
Пользователь
Статус
Оффлайн
Регистрация
4 Июн 2019
Сообщения
236
Реакции[?]
42
Поинты[?]
0
2 минуты фикса, всё связанное с их рендерингом закоменчено
 
aspire to inspire
Пользователь
Статус
Оффлайн
Регистрация
4 Июн 2019
Сообщения
236
Реакции[?]
42
Поинты[?]
0
вроде всё
C++:
// это в chams.cpp
void Chams::RenderFakeChams( ) {
    if( !g_cl.m_processing )
        return;

    if( !g_cfg[ XOR( "esp_chams_desync_enable" ) ].get<bool>( ) )
        return;

    // get color.
    Color color = g_cfg[ XOR( "esp_chams_desync_color" ) ].get_color( );

    // was the matrix properly setup?
    if( g_cl.m_fake_matrix ) {
        // fix model rendering origin.
        for( auto& i : g_cl.m_fake_matrix ) {
            i[ 0 ][ 3 ] += g_cl.m_local->GetRenderOrigin( ).x;
            i[ 1 ][ 3 ] += g_cl.m_local->GetRenderOrigin( ).y;
            i[ 2 ][ 3 ] += g_cl.m_local->GetRenderOrigin( ).z;
        }

        // override blend.
        SetAlpha( color.a( ) / 255.f );

        // set material and color.
        SetupMaterial( g_cfg[ XOR( "esp_chams_desync_material" ) ].get<int>( ) == 0 ? g_chams.debugambientcube : g_chams.debugdrawflat, color, true );

        // backup the bone cache before we fuck with it.
        auto backup_bones = g_cl.m_local->m_BoneCache( ).m_pCachedBones;

        // replace their bone cache with our custom one.
        g_cl.m_local->m_BoneCache( ).m_pCachedBones = g_cl.m_fake_matrix;

        // manually draw the model.
        g_cl.m_local->DrawModel( );

        // reset their bone cache to the previous one.
        g_cl.m_local->m_BoneCache( ).m_pCachedBones = backup_bones;

        // restore.
        g_csgo.m_studio_render->ForcedMaterialOverride( nullptr );
        g_csgo.m_render_view->SetColorModulation( colors::white );
        g_csgo.m_render_view->SetBlend( 1.f );
    }
}

// тоже в chams.cpp (после SceneEnd)
void Chams::RenderPlayer( Player* player ) {
    // prevent recruisive model cancelation.
    m_running = true;

    // restore.
    g_csgo.m_studio_render->ForcedMaterialOverride( nullptr );
    g_csgo.m_render_view->SetColorModulation( colors::white );
    g_csgo.m_render_view->SetBlend( 1.f );

    // this is the local player.
    // we always draw the local player manually in drawmodel.
    if( player->m_bIsLocalPlayer( ) ) {
        // render the fake model.
        RenderFakeChams( );

        if( g_cfg[ XOR( "esp_chams_local_blend_if_scoped" ) ].get<bool>( ) && player->m_bIsScoped( ) )
            SetAlpha( 1.f - ( g_cfg[ XOR( "esp_chams_local_blend_amount" ) ].get<float>( ) / 100.f ) );

        else if( g_cfg[ XOR( "esp_chams_local_enable" ) ].get<bool>( ) ) {

            Color color = g_cfg[ XOR( "esp_chams_local_color" ) ].get_color( );

            SetAlpha( color.a( ) / 255.f );

            // set material and color.
            SetupMaterial( g_cfg[ XOR( "esp_chams_local_material" ) ].get<int>( ) == 0 ? debugambientcube : debugdrawflat, color, false );
        }

        // manually draw the model.
        player->DrawModel( );
    }
    else {
        // check if is an enemy.
        bool enemy = g_cl.m_local && player->enemy( g_cl.m_local );

        if( enemy && g_cfg[ XOR( "esp_chams_enemy_backtrack" ) ].get<bool>( ) ) {
            RenderHistoryChams( player->index( ) );

            g_csgo.m_studio_render->ForcedMaterialOverride( nullptr );
            g_csgo.m_render_view->SetColorModulation( colors::white );
            g_csgo.m_render_view->SetBlend( 1.f );
        }   
        
        if( enemy && g_cfg[ XOR( "esp_chams_enemies" ) ].get<bool>( ) ) {
            if( g_cfg[ XOR( "esp_chams_enemies_invis" ) ].get<bool>( ) ) {

                Color color = g_cfg[ XOR( "esp_chams_enemies_invis_color" ) ].get_color( );

                SetAlpha( color.a( ) / 255.f );
                SetupMaterial( g_cfg[ XOR( "esp_chams_enemies_invis_material" ) ].get<int>( ) == 0 ? debugambientcube : debugdrawflat, color, true );

                player->DrawModel( );
            }

            Color color = g_cfg[ XOR( "esp_chams_enemies_color" ) ].get_color( );

            SetAlpha( color.a( ) / 255.f );
            SetupMaterial( g_cfg[ XOR( "esp_chams_enemies_material" ) ].get<int>( ) == 0 ? debugambientcube : debugdrawflat, color, false );

            player->DrawModel( );
        }

        else if( !enemy && g_cfg[ XOR( "esp_chams_team" ) ].get<bool>( ) ) {
            if( g_cfg[ XOR( "esp_chams_team_invis" ) ].get<bool>( ) ) {

                Color color = g_cfg[ XOR( "esp_chams_team_invis_color" ) ].get_color( );

                SetAlpha( color.a( ) / 255.f );
                SetupMaterial( g_cfg[ XOR( "esp_chams_team_invis_material" ) ].get<int>( ) == 0 ? debugambientcube : debugdrawflat, color, true );

                player->DrawModel( );
            }

            Color color = g_cfg[ XOR( "esp_chams_team_color" ) ].get_color( );

            SetAlpha( color.a( ) / 255.f );
            SetupMaterial( g_cfg[ XOR( "esp_chams_team_material" ) ].get<int>( ) == 0 ? debugambientcube : debugdrawflat, color, false );

            player->DrawModel( );
        }
    }

    m_running = false;
}
 
Начинающий
Статус
Оффлайн
Регистрация
22 Май 2019
Сообщения
24
Реакции[?]
0
Поинты[?]
0
вроде всё
C++:
// это в chams.cpp
void Chams::RenderFakeChams( ) {
    if( !g_cl.m_processing )
        return;

    if( !g_cfg[ XOR( "esp_chams_desync_enable" ) ].get<bool>( ) )
        return;

    // get color.
    Color color = g_cfg[ XOR( "esp_chams_desync_color" ) ].get_color( );

    // was the matrix properly setup?
    if( g_cl.m_fake_matrix ) {
        // fix model rendering origin.
        for( auto& i : g_cl.m_fake_matrix ) {
            i[ 0 ][ 3 ] += g_cl.m_local->GetRenderOrigin( ).x;
            i[ 1 ][ 3 ] += g_cl.m_local->GetRenderOrigin( ).y;
            i[ 2 ][ 3 ] += g_cl.m_local->GetRenderOrigin( ).z;
        }

        // override blend.
        SetAlpha( color.a( ) / 255.f );

        // set material and color.
        SetupMaterial( g_cfg[ XOR( "esp_chams_desync_material" ) ].get<int>( ) == 0 ? g_chams.debugambientcube : g_chams.debugdrawflat, color, true );

        // backup the bone cache before we fuck with it.
        auto backup_bones = g_cl.m_local->m_BoneCache( ).m_pCachedBones;

        // replace their bone cache with our custom one.
        g_cl.m_local->m_BoneCache( ).m_pCachedBones = g_cl.m_fake_matrix;

        // manually draw the model.
        g_cl.m_local->DrawModel( );

        // reset their bone cache to the previous one.
        g_cl.m_local->m_BoneCache( ).m_pCachedBones = backup_bones;

        // restore.
        g_csgo.m_studio_render->ForcedMaterialOverride( nullptr );
        g_csgo.m_render_view->SetColorModulation( colors::white );
        g_csgo.m_render_view->SetBlend( 1.f );
    }
}

// тоже в chams.cpp (после SceneEnd)
void Chams::RenderPlayer( Player* player ) {
    // prevent recruisive model cancelation.
    m_running = true;

    // restore.
    g_csgo.m_studio_render->ForcedMaterialOverride( nullptr );
    g_csgo.m_render_view->SetColorModulation( colors::white );
    g_csgo.m_render_view->SetBlend( 1.f );

    // this is the local player.
    // we always draw the local player manually in drawmodel.
    if( player->m_bIsLocalPlayer( ) ) {
        // render the fake model.
        RenderFakeChams( );

        if( g_cfg[ XOR( "esp_chams_local_blend_if_scoped" ) ].get<bool>( ) && player->m_bIsScoped( ) )
            SetAlpha( 1.f - ( g_cfg[ XOR( "esp_chams_local_blend_amount" ) ].get<float>( ) / 100.f ) );

        else if( g_cfg[ XOR( "esp_chams_local_enable" ) ].get<bool>( ) ) {

            Color color = g_cfg[ XOR( "esp_chams_local_color" ) ].get_color( );

            SetAlpha( color.a( ) / 255.f );

            // set material and color.
            SetupMaterial( g_cfg[ XOR( "esp_chams_local_material" ) ].get<int>( ) == 0 ? debugambientcube : debugdrawflat, color, false );
        }

        // manually draw the model.
        player->DrawModel( );
    }
    else {
        // check if is an enemy.
        bool enemy = g_cl.m_local && player->enemy( g_cl.m_local );

        if( enemy && g_cfg[ XOR( "esp_chams_enemy_backtrack" ) ].get<bool>( ) ) {
            RenderHistoryChams( player->index( ) );

            g_csgo.m_studio_render->ForcedMaterialOverride( nullptr );
            g_csgo.m_render_view->SetColorModulation( colors::white );
            g_csgo.m_render_view->SetBlend( 1.f );
        }  
       
        if( enemy && g_cfg[ XOR( "esp_chams_enemies" ) ].get<bool>( ) ) {
            if( g_cfg[ XOR( "esp_chams_enemies_invis" ) ].get<bool>( ) ) {

                Color color = g_cfg[ XOR( "esp_chams_enemies_invis_color" ) ].get_color( );

                SetAlpha( color.a( ) / 255.f );
                SetupMaterial( g_cfg[ XOR( "esp_chams_enemies_invis_material" ) ].get<int>( ) == 0 ? debugambientcube : debugdrawflat, color, true );

                player->DrawModel( );
            }

            Color color = g_cfg[ XOR( "esp_chams_enemies_color" ) ].get_color( );

            SetAlpha( color.a( ) / 255.f );
            SetupMaterial( g_cfg[ XOR( "esp_chams_enemies_material" ) ].get<int>( ) == 0 ? debugambientcube : debugdrawflat, color, false );

            player->DrawModel( );
        }

        else if( !enemy && g_cfg[ XOR( "esp_chams_team" ) ].get<bool>( ) ) {
            if( g_cfg[ XOR( "esp_chams_team_invis" ) ].get<bool>( ) ) {

                Color color = g_cfg[ XOR( "esp_chams_team_invis_color" ) ].get_color( );

                SetAlpha( color.a( ) / 255.f );
                SetupMaterial( g_cfg[ XOR( "esp_chams_team_invis_material" ) ].get<int>( ) == 0 ? debugambientcube : debugdrawflat, color, true );

                player->DrawModel( );
            }

            Color color = g_cfg[ XOR( "esp_chams_team_color" ) ].get_color( );

            SetAlpha( color.a( ) / 255.f );
            SetupMaterial( g_cfg[ XOR( "esp_chams_team_material" ) ].get<int>( ) == 0 ? debugambientcube : debugdrawflat, color, false );

            player->DrawModel( );
        }
    }

    m_running = false;
}
щя посмотрю
 
Рыба
Пользователь
Статус
Оффлайн
Регистрация
18 Янв 2018
Сообщения
408
Реакции[?]
30
Поинты[?]
0
ну по крайней мере в моих сурсах так было)
Блин, народ просит помощи но не показывает ни видиво ни скрыншпрот, ладно так кинули хотябы сурце. Мы все свои :D:D:D:D
 
Начинающий
Статус
Оффлайн
Регистрация
22 Май 2019
Сообщения
24
Реакции[?]
0
Поинты[?]
0
н
вроде всё
C++:
// это в chams.cpp
void Chams::RenderFakeChams( ) {
    if( !g_cl.m_processing )
        return;

    if( !g_cfg[ XOR( "esp_chams_desync_enable" ) ].get<bool>( ) )
        return;

    // get color.
    Color color = g_cfg[ XOR( "esp_chams_desync_color" ) ].get_color( );

    // was the matrix properly setup?
    if( g_cl.m_fake_matrix ) {
        // fix model rendering origin.
        for( auto& i : g_cl.m_fake_matrix ) {
            i[ 0 ][ 3 ] += g_cl.m_local->GetRenderOrigin( ).x;
            i[ 1 ][ 3 ] += g_cl.m_local->GetRenderOrigin( ).y;
            i[ 2 ][ 3 ] += g_cl.m_local->GetRenderOrigin( ).z;
        }

        // override blend.
        SetAlpha( color.a( ) / 255.f );

        // set material and color.
        SetupMaterial( g_cfg[ XOR( "esp_chams_desync_material" ) ].get<int>( ) == 0 ? g_chams.debugambientcube : g_chams.debugdrawflat, color, true );

        // backup the bone cache before we fuck with it.
        auto backup_bones = g_cl.m_local->m_BoneCache( ).m_pCachedBones;

        // replace their bone cache with our custom one.
        g_cl.m_local->m_BoneCache( ).m_pCachedBones = g_cl.m_fake_matrix;

        // manually draw the model.
        g_cl.m_local->DrawModel( );

        // reset their bone cache to the previous one.
        g_cl.m_local->m_BoneCache( ).m_pCachedBones = backup_bones;

        // restore.
        g_csgo.m_studio_render->ForcedMaterialOverride( nullptr );
        g_csgo.m_render_view->SetColorModulation( colors::white );
        g_csgo.m_render_view->SetBlend( 1.f );
    }
}

// тоже в chams.cpp (после SceneEnd)
void Chams::RenderPlayer( Player* player ) {
    // prevent recruisive model cancelation.
    m_running = true;

    // restore.
    g_csgo.m_studio_render->ForcedMaterialOverride( nullptr );
    g_csgo.m_render_view->SetColorModulation( colors::white );
    g_csgo.m_render_view->SetBlend( 1.f );

    // this is the local player.
    // we always draw the local player manually in drawmodel.
    if( player->m_bIsLocalPlayer( ) ) {
        // render the fake model.
        RenderFakeChams( );

        if( g_cfg[ XOR( "esp_chams_local_blend_if_scoped" ) ].get<bool>( ) && player->m_bIsScoped( ) )
            SetAlpha( 1.f - ( g_cfg[ XOR( "esp_chams_local_blend_amount" ) ].get<float>( ) / 100.f ) );

        else if( g_cfg[ XOR( "esp_chams_local_enable" ) ].get<bool>( ) ) {

            Color color = g_cfg[ XOR( "esp_chams_local_color" ) ].get_color( );

            SetAlpha( color.a( ) / 255.f );

            // set material and color.
            SetupMaterial( g_cfg[ XOR( "esp_chams_local_material" ) ].get<int>( ) == 0 ? debugambientcube : debugdrawflat, color, false );
        }

        // manually draw the model.
        player->DrawModel( );
    }
    else {
        // check if is an enemy.
        bool enemy = g_cl.m_local && player->enemy( g_cl.m_local );

        if( enemy && g_cfg[ XOR( "esp_chams_enemy_backtrack" ) ].get<bool>( ) ) {
            RenderHistoryChams( player->index( ) );

            g_csgo.m_studio_render->ForcedMaterialOverride( nullptr );
            g_csgo.m_render_view->SetColorModulation( colors::white );
            g_csgo.m_render_view->SetBlend( 1.f );
        } 
      
        if( enemy && g_cfg[ XOR( "esp_chams_enemies" ) ].get<bool>( ) ) {
            if( g_cfg[ XOR( "esp_chams_enemies_invis" ) ].get<bool>( ) ) {

                Color color = g_cfg[ XOR( "esp_chams_enemies_invis_color" ) ].get_color( );

                SetAlpha( color.a( ) / 255.f );
                SetupMaterial( g_cfg[ XOR( "esp_chams_enemies_invis_material" ) ].get<int>( ) == 0 ? debugambientcube : debugdrawflat, color, true );

                player->DrawModel( );
            }

            Color color = g_cfg[ XOR( "esp_chams_enemies_color" ) ].get_color( );

            SetAlpha( color.a( ) / 255.f );
            SetupMaterial( g_cfg[ XOR( "esp_chams_enemies_material" ) ].get<int>( ) == 0 ? debugambientcube : debugdrawflat, color, false );

            player->DrawModel( );
        }

        else if( !enemy && g_cfg[ XOR( "esp_chams_team" ) ].get<bool>( ) ) {
            if( g_cfg[ XOR( "esp_chams_team_invis" ) ].get<bool>( ) ) {

                Color color = g_cfg[ XOR( "esp_chams_team_invis_color" ) ].get_color( );

                SetAlpha( color.a( ) / 255.f );
                SetupMaterial( g_cfg[ XOR( "esp_chams_team_invis_material" ) ].get<int>( ) == 0 ? debugambientcube : debugdrawflat, color, true );

                player->DrawModel( );
            }

            Color color = g_cfg[ XOR( "esp_chams_team_color" ) ].get_color( );

            SetAlpha( color.a( ) / 255.f );
            SetupMaterial( g_cfg[ XOR( "esp_chams_team_material" ) ].get<int>( ) == 0 ? debugambientcube : debugdrawflat, color, false );

            player->DrawModel( );
        }
    }

    m_running = false;
}
не робит или типо того,я вкл g_anims.UpdateFakeAnimations(); и у меня ксго крашиться начинаеться
 
Начинающий
Статус
Оффлайн
Регистрация
22 Май 2019
Сообщения
24
Реакции[?]
0
Поинты[?]
0
Начинающий
Статус
Оффлайн
Регистрация
22 Май 2019
Сообщения
24
Реакции[?]
0
Поинты[?]
0
Рыба
Пользователь
Статус
Оффлайн
Регистрация
18 Янв 2018
Сообщения
408
Реакции[?]
30
Поинты[?]
0
Рыба
Пользователь
Статус
Оффлайн
Регистрация
18 Янв 2018
Сообщения
408
Реакции[?]
30
Поинты[?]
0
Сверху Снизу