-
Автор темы
- #1
Informations about the source:
Credits:
shialex for leaking the source, weave staff and devs for deving the source
All rights are going to:
weave staff
Download:
For questions: idax86
WARNING: if you dont have enough capabillities to build the source just dont post a comment about the building errors
// update
- i messed up the knife changer somehow, check for it i wont even spend time to take a look at it
- removed the schema dumper i had and made them manually
- the patterns are initialized in the shittest way possible, you can remake that if u feel to
Credits:
shialex for leaking the source, weave staff and devs for deving the source
All rights are going to:
weave staff
Download:
Пожалуйста, авторизуйтесь для просмотра ссылки.
For questions: idax86
WARNING: if you dont have enough capabillities to build the source just dont post a comment about the building errors
// update
config::load:
void user::load()
{
// path for the config file
std::string file_path = "C:/weave/config.bin";
// we have to check if the folder exists
if ( !std::filesystem::exists( file_path ) ) {
return;
}
// open the file in binary mode
std::ifstream infile( file_path, std::ios::binary | std::ios::ate );
if ( !infile.is_open( ) ) {
return;
}
// get the file size
std::streamsize size = infile.tellg( );
infile.seekg( 0, std::ios::beg );
// read the contents from the file and push them to a vector
std::vector<char> buffer( size );
if ( !infile.read( buffer.data( ), size ) ) {
return;
}
// close the file
infile.close( );
// we have to verify if the buffer is valid
flatbuffers::Verifier verifier( reinterpret_cast< const uint8_t* >( buffer.data( ) ), buffer.size( ) );
if ( !verifier.VerifyBuffer<ConfigSettings>( nullptr ) ) {
return;
}
// get the root path to the buffer data
auto config = flatbuffers::GetMutableRoot<ConfigSettings>( buffer.data( ) );
// unpack config data and load it
ConfigSettingsT new_config{};
config->UnPackTo( &new_config );
//new_config.m_antiaim = std::make_unique<antiaimT>();
//new_config.m_rage_global_settings = std::make_unique<rage_global_settingsT>();
//new_config.m_visuals = std::make_unique<visualsT>();
//new_config.m_visuals->flags = std::make_unique<flags_T>();
//new_config.m_visuals->m_weapons = std::make_unique<weapons_T>();
//new_config.m_misc = std::make_unique<miscT>();
//new_config.m_misc->misc_fov = 90.f;
if (new_config.m_rage_global_settings)
{
config_map_[xorstr_("ragebot_enable")] = new_config.m_rage_global_settings->m_enabled;
config_map_[xorstr_("ragebot_auto_fire")] = new_config.m_rage_global_settings->m_auto_fire;
config_map_[xorstr_("ragebot_auto_silent")] = new_config.m_rage_global_settings->m_silent;
config_map_[xorstr_("ragebot_penetration")] = new_config.m_rage_global_settings->m_penetration;
config_map_[xorstr_("ragebot_nospread")] = new_config.m_rage_global_settings->m_nospread;
config_map_[xorstr_("ragebot_auto_scope")] = new_config.m_rage_global_settings->m_auto_scope;
}
for (int i{}; i < new_config.m_rage_weapons.size(); i++)
{
if (!new_config.m_rage_weapons.empty())
{
if (new_config.m_rage_weapons[i]->hitboxes)
{
config_map_[std::format("ragebot_hitbox_head_{}", i)] = new_config.m_rage_weapons[i]->hitboxes->m_head;
config_map_[std::format("ragebot_hitbox_chest_{}", i)] = new_config.m_rage_weapons[i]->hitboxes->m_chest;
config_map_[std::format("ragebot_hitbox_stomach_{}", i)] = new_config.m_rage_weapons[i]->hitboxes->m_stomach;
config_map_[std::format("ragebot_hitbox_arms_{}", i)] = new_config.m_rage_weapons[i]->hitboxes->m_arms;
config_map_[std::format("ragebot_hitbox_legs_{}", i)] = new_config.m_rage_weapons[i]->hitboxes->m_legs;
config_map_[std::format("ragebot_hitbox_foot_{}", i)] = new_config.m_rage_weapons[i]->hitboxes->m_foot;
}
if (new_config.m_rage_weapons[i]->multipoints)
{
config_map_[std::format("ragebot_multipoint_head_{}", i)] = new_config.m_rage_weapons[i]->multipoints->m_head;
config_map_[std::format("ragebot_multipoint_chest_{}", i)] = new_config.m_rage_weapons[i]->multipoints->m_chest;
config_map_[std::format("ragebot_multipoint_stomach_{}", i)] = new_config.m_rage_weapons[i]->multipoints->m_stomach;
config_map_[std::format("ragebot_multipoint_arms_{}", i)] = new_config.m_rage_weapons[i]->multipoints->m_arms;
config_map_[std::format("ragebot_multipoint_legs_{}", i)] = new_config.m_rage_weapons[i]->multipoints->m_legs;
config_map_[std::format("ragebot_multipoint_foot_{}", i)] = new_config.m_rage_weapons[i]->multipoints->m_foot;
}
if (new_config.m_rage_weapons[i]->autostop_option)
{
config_map_[std::format("ragebot_autostop_beetwen_shots_{}", i)] = new_config.m_rage_weapons[i]->autostop_option->m_beetwen_shot;
config_map_[std::format("ragebot_autostop_accuracy_{}", i)] = new_config.m_rage_weapons[i]->autostop_option->m_accuracy;
config_map_[std::format("ragebot_autostop_molotov_ignore_{}", i)] = new_config.m_rage_weapons[i]->autostop_option->m_molotov_ignore;
}
config_map_[std::format("ragebot_multipoint_scale_{}", i)] = new_config.m_rage_weapons[i]->point_scale;
config_map_[std::format("ragebot_autostop_{}", i)] = new_config.m_rage_weapons[i]->autostop;
config_map_[std::format("ragebot_hitchance_amount_{}", i)] = new_config.m_rage_weapons[i]->hitchance_amount;
config_map_[std::format("ragebot_damage_{}", i)] = new_config.m_rage_weapons[i]->damage;
}
if (!new_config.m_legit_weapons.empty())
{
}
}
if (new_config.m_antiaim)
{
config_map_[xorstr_("antiaim_enable")] = new_config.m_antiaim->enabled;
config_map_[xorstr_("antiaim_at_target")] = new_config.m_antiaim->at_target;
config_map_[xorstr_("antiaim_pitch")] = new_config.m_antiaim->pitch;
config_map_[xorstr_("antiaim_yaw")] = new_config.m_antiaim->yaw;
config_map_[xorstr_("antiaim_yaw_offset")] = new_config.m_antiaim->yaw_offset;
config_map_[xorstr_("antiaim_jitter")] = new_config.m_antiaim->jitter;
}
if (new_config.m_visuals)
{
config_map_[xorstr_("esp_name")] = new_config.m_visuals->name;
config_map_[xorstr_("esp_name_color")] = new_config.m_visuals->name_color;
config_map_[xorstr_("esp_box")] = new_config.m_visuals->box;
config_map_[xorstr_("esp_box_color")] = new_config.m_visuals->box_color;
config_map_[xorstr_("esp_health")] = new_config.m_visuals->health;
if (new_config.m_visuals->flags)
{
config_map_[xorstr_("esp_flags_armor")] = new_config.m_visuals->flags->armor;
config_map_[xorstr_("esp_flags_bomb")] = new_config.m_visuals->flags->bomb;
config_map_[xorstr_("esp_flags_defuser")] = new_config.m_visuals->flags->defuser;
config_map_[xorstr_("esp_flags_flashed")] = new_config.m_visuals->flags->flashed;
config_map_[xorstr_("esp_flags_kits")] = new_config.m_visuals->flags->kits;
config_map_[xorstr_("esp_flags_zeus")] = new_config.m_visuals->flags->zeus;
}
config_map_[xorstr_("esp_skeleton")] = new_config.m_visuals->skeleton;
config_map_[xorstr_("esp_skeleton_color")] = new_config.m_visuals->skeleton_color;
if (new_config.m_visuals->m_weapons)
{
config_map_[xorstr_("esp_weapons_icon")] = new_config.m_visuals->m_weapons->icon;
config_map_[xorstr_("esp_weapons_name")] = new_config.m_visuals->m_weapons->name;
}
config_map_[xorstr_("chams_visible")] = new_config.m_visuals->chams_visible;
config_map_[xorstr_("chams_visible_color")] = new_config.m_visuals->chams_visible_color;
config_map_[xorstr_("chams_type")] = new_config.m_visuals->chams_type;
config_map_[xorstr_("chams_invisible")] = new_config.m_visuals->chams_invisible;
config_map_[xorstr_("chams_invisible_color")] = new_config.m_visuals->chams_invisible_color;
config_map_[xorstr_("attachment_chams")] = new_config.m_visuals->attachment_chams;
config_map_[xorstr_("attachment_chams_color")] = new_config.m_visuals->attachment_chams_color;
}
if (new_config.m_misc)
{
config_map_[xorstr_("misc_autopeek")] = new_config.m_misc->autopeek;
config_map_[xorstr_("misc_duck_assist")] = new_config.m_misc->duck_assist;
config_map_[xorstr_("ragebot_slowwalk")] = new_config.m_misc->slowwalk;
config_map_[xorstr_("misc_bunnyhop")] = new_config.m_misc->bunnyhop;
config_map_[xorstr_("misc_autostrafe")] = new_config.m_misc->auto_strafe;
config_map_[xorstr_("misc_disable_light")] = new_config.m_misc->disable_light;
config_map_[xorstr_("misc_penetration_crosshair")] = new_config.m_misc->penetration_crosshair;
config_map_[xorstr_("misc_force_crosshair")] = new_config.m_misc->force_crosshair;
config_map_[xorstr_("misc_blur")] = new_config.m_misc->blur;
config_map_[xorstr_("misc_world_changer")] = new_config.m_misc->world_changer;
config_map_[xorstr_("misc_grenade_trail_color")] = new_config.m_misc->grenade_trail_color;
config_map_[xorstr_("misc_thirdperson")] = new_config.m_misc->thirdperson;
config_map_[xorstr_("misc_thirdperson_amount")] = new_config.m_misc->thirdperson_amount;
config_map_[xorstr_("misc_smoke_remove")] = new_config.m_misc->smoke_remove;
config_map_[xorstr_("misc_server_impact")] = new_config.m_misc->server_impact;
config_map_[xorstr_("misc_client_impact")] = new_config.m_misc->client_impact;
config_map_[xorstr_("misc_bullet_trace")] = new_config.m_misc->bullet_trace;
config_map_[xorstr_("misc_bullet_trace_color")] = new_config.m_misc->bullet_trace_color;
config_map_[xorstr_("misc_bullet_trace_enemy")] = new_config.m_misc->bullet_trace_enemy;
config_map_[xorstr_("misc_bullet_trace_enemy_color")] = new_config.m_misc->bullet_trace_enemy_color;
config_map_[xorstr_("misc_grenade_trail")] = new_config.m_misc->grenade_trail;
config_map_[xorstr_("misc_keybind")] = new_config.m_misc->keybind;
config_map_[xorstr_("misc_spectators")] = new_config.m_misc->spectators;
config_map_[xorstr_("misc_watermark")] = new_config.m_misc->watermark;
config_map_[xorstr_("misc_onshot_capsule")] = new_config.m_misc->misc_onshot_capsule;
config_map_[xorstr_("misc_remove_scope")] = new_config.m_misc->misc_remove_scope;
config_map_[xorstr_("misc_remove_bob")] = new_config.m_misc->misc_remove_bob;
config_map_[xorstr_("misc_norecoil")] = new_config.m_misc->misc_norecoil;
config_map_[xorstr_("misc_remove_post_processing")] = new_config.m_misc->misc_remove_post_processing;
config_map_[xorstr_("misc_remove_legs")] = new_config.m_misc->misc_remove_legs;
config_map_[xorstr_("misc_auto_strafe")] = new_config.m_misc->auto_strafe;
config_map_[xorstr_("misc_viewmodel_changer")] = new_config.m_misc->misc_viewmodel_changer;
config_map_[xorstr_("misc_viewmodel_x")] = new_config.m_misc->misc_viewmodel_x;
config_map_[xorstr_("misc_viewmodel_y")] = new_config.m_misc->misc_viewmodel_y;
config_map_[xorstr_("misc_viewmodel_z")] = new_config.m_misc->misc_viewmodel_z;
config_map_[xorstr_("misc_fov")] = new_config.m_misc->misc_fov;
config_map_[xorstr_("misc_unlock_inventory")] = new_config.m_misc->misc_unlock_inventory;
config_map_[xorstr_("misc_buybot")] = new_config.m_misc->misc_buybot;
config_map_[xorstr_("misc_buybot_primary")] = new_config.m_misc->misc_buybot_primary;
config_map_[xorstr_("misc_buybot_secondary")] = new_config.m_misc->misc_buybot_secondary;
config_map_[xorstr_("misc_buybot_zeus")] = new_config.m_misc->misc_buybot_zeus;
config_map_[xorstr_("misc_buybot_armor")] = new_config.m_misc->misc_buybot_armor;
config_map_[xorstr_("misc_buybot_grenades")] = new_config.m_misc->misc_buybot_grenades;
config_map_[xorstr_("misc_grenade_prediction")] = new_config.m_misc->misc_grenade_prediction;
config_map_[xorstr_("misc_dark_mode")] = new_config.m_misc->misc_dark_mode;
config_map_[xorstr_("misc_remove_grenade_crosshair")] = new_config.m_misc->misc_remove_grenade_crosshair;
config_map_[xorstr_("misc_killfeed")] = new_config.m_misc->misc_preserve_killfeed;
config_map_[xorstr_("esp_oof")] = new_config.m_misc->misc_esp_oof;
config_map_[xorstr_("esp_oof_color")] = new_config.m_misc->misc_esp_oof_color;
config_map_[xorstr_("misc_hitsound")] = new_config.m_misc->misc_hitsound;
config_map_[xorstr_("misc_hitmarker")] = new_config.m_misc->misc_hitmarker;
//config_map_[xorstr_("ragebot_track")] = new_config.m_rage_global_settings->backtrack_mode;
auto keybind_window = std::find_if(g_gui->m_windows.begin(), g_gui->m_windows.end(), [&](const auto x) {
return x.m_window_name == xorstr_("Keybind");
});
if (!new_config.m_misc->keybind_position.empty())
{
keybind_window->m_window_position.x = new_config.m_misc->keybind_position[0];
keybind_window->m_window_position.y = new_config.m_misc->keybind_position[1];
}
auto spectators_window = std::find_if(g_gui->m_windows.begin(), g_gui->m_windows.end(), [&](const auto x) {
return x.m_window_name == xorstr_("Spectators");
});
if (!new_config.m_misc->spectators_position.empty())
{
spectators_window->m_window_position.x = new_config.m_misc->spectators_position[0];
spectators_window->m_window_position.y = new_config.m_misc->spectators_position[1];
}
auto rapid_window = std::find_if(g_gui->m_windows.begin(), g_gui->m_windows.end(), [&](const auto x) {
return x.m_window_name == xorstr_("Rapid");
});
if (!new_config.m_misc->rapid_position.empty())
{
rapid_window->m_window_position.x = new_config.m_misc->rapid_position[0];
rapid_window->m_window_position.y = new_config.m_misc->rapid_position[1];
}
}
g_hotkey->mutex_.lock();
for (auto& hotkey : new_config.m_binds)
{
if (!g_hotkey->hotkeys_->contains(hotkey->hash))
continue;
auto& hotkey_ = g_hotkey->hotkeys_->at(hotkey->hash).binds.emplace_back();
hotkey_.key = hotkey->key;
hotkey_.mode = hotkey->mode;
hotkey_.value = hotkey->value;
hotkey_.visible = hotkey->visible;
hotkey_.type = hotkey->type;
}
g_hotkey->mutex_.unlock();
g_misc->add_notify(xorstr_("Load Config"), xorstr_(""), 7.f);
}
config::save:
void user::save( ) {
// parse the settings
Parse( ProcessingRecord( config_map_ ) );
flatbuffers::FlatBufferBuilder builder( 20000 );
config_->m_verify = false;
builder.Finish( CreateConfigSettings( builder, config_.get( ) ) );
// define the directory and the file path along with its name
std::string directory = "C:/weave";
std::string file_path = directory + "/config.bin";
// make sure it creates the directory
std::filesystem::create_directories( directory );
// save the buffer and data in a file so we can load it later
std::ofstream outfile( file_path, std::ios::binary );
if ( outfile.is_open( ) ) {
outfile.write( reinterpret_cast< const char* >( builder.GetBufferPointer( ) ), builder.GetSize( ) );
outfile.close( );
} else {
// we run out to a exception
}
// release data from builder
builder.Release( );
}
Последнее редактирование: