Play audio on voice chat and more (#1053)

* feat(VC): audio through voice chat
* fix(BlackHole): remove unnecessary cleanup
* fix(Formatting): fix formatting for initializer lists
* feat(LSC): reimplement LSC
* feat(Protections): add (untested) protections for vehicle kick and remote teleport
This commit is contained in:
maybegreat48
2023-03-09 12:23:01 +00:00
committed by GitHub
parent 2d44f14a22
commit ad90ee3f6a
45 changed files with 845 additions and 323 deletions

View File

@ -24,6 +24,7 @@ namespace big
ImGui::PushStyleColor(ImGuiCol_Text, ImVec4(0.69f, 0.29f, 0.29f, 1.00f));
if (components::nav_button("UNLOAD"_T))
{
g_fiber_pool->reset();
g_fiber_pool->queue_job([] {
for (auto& command : g_looped_commands)
if (command->is_enabled())

View File

@ -15,15 +15,13 @@ namespace big
{
if (ImGui::BeginTabItem("DEBUG_TAB_MISC"_T.data()))
{
if (components::button("MOV QWORD"))
{
*static_cast<uint64_t*>(nullptr) = 0;
uint64_t i = *static_cast<uint64_t*>(nullptr);
}
ImGui::Text("Fiber Pool Usage %d/%d", g_fiber_pool->get_used_fibers(), g_fiber_pool->get_total_fibers());
if (components::button("MOV 0xdead"))
ImGui::SameLine();
if (components::button("Reset"))
{
*((unsigned int*)0) = 0xDEAD;
g_fiber_pool->reset();
}
if (components::button("Dump entrypoints"))

View File

@ -11,11 +11,9 @@ namespace big
{
void view::spoofing()
{
// requires translation
ImGui::Checkbox("HIDE_FROM_PLAYER_LIST"_T.data(), &g.spoofing.hide_from_player_list);
ImGui::Checkbox("Hide From Player List", &g.spoofing.hide_from_player_list);
components::script_patch_checkbox("Spoof Blip Type", &g.spoofing.spoof_blip);
components::script_patch_checkbox("SPOOF_BLIP_TYPE"_T, &g.spoofing.spoof_blip);
if (g.spoofing.spoof_blip)
{
ImGui::SameLine();
@ -32,7 +30,7 @@ namespace big
}
}
ImGui::Checkbox("Spoof Rank", &g.spoofing.spoof_rank);
ImGui::Checkbox("SPOOF_RANK"_T.data(), &g.spoofing.spoof_rank);
if (g.spoofing.spoof_rank)
{
ImGui::SameLine();
@ -42,7 +40,7 @@ namespace big
}
}
ImGui::Checkbox("Spoof K/D Ratio", &g.spoofing.spoof_kd_ratio);
ImGui::Checkbox("SPOOF_KD"_T.data(), &g.spoofing.spoof_kd_ratio);
if (g.spoofing.spoof_kd_ratio)
{
ImGui::SameLine();
@ -52,7 +50,7 @@ namespace big
}
}
ImGui::Checkbox("Spoof Badsport State", &g.spoofing.spoof_bad_sport);
ImGui::Checkbox("SPOOF_BADSPORT"_T.data(), &g.spoofing.spoof_bad_sport);
if (g.spoofing.spoof_bad_sport)
{
ImGui::SameLine();
@ -62,14 +60,14 @@ namespace big
}
}
ImGui::Checkbox("Spoof Job Points", &g.spoofing.spoof_job_points);
ImGui::Checkbox("SPOOF_JOB_POINTS"_T.data(), &g.spoofing.spoof_job_points);
if (g.spoofing.spoof_job_points)
{
ImGui::SameLine();
ImGui::InputInt("###jp", &g.spoofing.job_points);
}
ImGui::Checkbox("Spoof Player Model", &g.spoofing.spoof_player_model);
ImGui::Checkbox("SPOOF_PLAYER_MODEL"_T.data(), &g.spoofing.spoof_player_model);
if (g.spoofing.spoof_player_model)
{
static char model[32];
@ -82,6 +80,7 @@ namespace big
g.spoofing.player_model = std::string(model);
}
components::command_checkbox<"vcaudio">();
components::sub_title("SPOOFING_HIDE_FEATURES"_T);
ImGui::Checkbox("SPOOFING_HIDE_GOD_MODE"_T.data(), &g.spoofing.spoof_hide_god);

View File

@ -1,9 +1,9 @@
#include "core/data/command_access_levels.hpp"
#include "core/data/language_codes.hpp"
#include "core/scr_globals.hpp"
#include "natives.hpp"
#include "services/player_database/player_database_service.hpp"
#include "views/view.hpp"
#include "natives.hpp"
#include <script/globals/GPBD_FM.hpp>
#include <script/globals/GPBD_FM_3.hpp>
@ -16,9 +16,9 @@ namespace big
if (ImGui::TreeNode("INFO"_T.data()))
{
components::button("Open SC Overlay", [] {
int gamerHandle;
NETWORK::NETWORK_HANDLE_FROM_PLAYER(g_player_service->get_selected()->id(), &gamerHandle, 13);
NETWORK::NETWORK_SHOW_PROFILE_UI(&gamerHandle);
uint64_t gamerHandle[13];
NETWORK::NETWORK_HANDLE_FROM_PLAYER(g_player_service->get_selected()->id(), (Any*)&gamerHandle, 13);
NETWORK::NETWORK_SHOW_PROFILE_UI((Any*)&gamerHandle);
});
ImGui::Text("PLAYER_INFO_ID"_T.data(), g_player_service->get_selected()->id());

View File

@ -15,9 +15,6 @@ namespace big
components::player_command_button<"breakup">(g_player_service->get_selected());
ImGui::SameLine();
components::command_checkbox<"breakupcheating">();
components::disable_unless(std::not_fn(is_session_host), [] {
components::player_command_button<"lckick">(g_player_service->get_selected());
});
components::player_command_button<"bailkick">(g_player_service->get_selected());
ImGui::SameLine();

View File

@ -1,5 +1,6 @@
#include "script/globals/GPBD_FM_3.hpp"
#include "util/scripts.hpp"
#include "util/vehicle.hpp"
#include "views/view.hpp"
namespace big

View File

@ -3,7 +3,7 @@
#include "script.hpp"
#include "services/vehicle/persist_car_service.hpp"
#include "util/mobile.hpp"
#include "util/vehicle.hpp"
#include "util/teleport.hpp"
#include "views/view.hpp"
namespace big

View File

@ -1,7 +1,7 @@
#include "core/data/speed_units.hpp"
#include "fiber_pool.hpp"
#include "util/mobile.hpp"
#include "util/vehicle.hpp"
#include "util/teleport.hpp"
#include "views/view.hpp"
namespace big