Code Monkey home page Code Monkey logo

bakkesmodsdk's People

Contributors

bakkes avatar mtimkovich 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

bakkesmodsdk's Issues

MMRWrapper always returns 600

I'm using the RLCSV plugin, and it seems to always return 600 in the MMR column. After looking at the code (RLCSVPlugin.cpp), it seems that it's just using the value directly from BakkesMod, so it seems like it may be BakkesMod isn't reading the correct value.

I'm using the latest version of BakkesMod. Restarting the game doesn't help, so it isn't like it's getting stuck after the first value read, so I'm not sure what could be causing it.

EDIT: A similar issue seems to occur when attempting to use GetMatchDemolishes, as evidenced in the Statistically Speaking plugin (StatisticallySpeaking.cpp). The value always seems to be 0.

Thanks!

Updater can get stuck in infinite loop

This is potentially the wrong repo - I couldn't figure which one contains the main app / updater.

The issue:

When prompted to update and I accidentally click "update"
It asks me for the rocket league exe or something. I try cancel -> cancel -> cancel because I just wan't this thing to close.

I am now stuck in a loop:
while(true){
"Did not select bakkesmod folder?"
"Unable to find manifest file, ..."
Browser opens.
}

This is somewhat intrusive, as the updater just pops up when my computer starts, and I usually just close it right away

Crashing Rocket league

Latest version keeps crashing my games. The following is displayed in the logs:

[2998.09] Critical: appError called: Rendering thread exception:
Fatal error!

Address = 0xcdf3e980 (filename not found) [in C:\WINDOWS\SYSTEM32\d3d11.dll]
Address = 0xc6e8ec2b (filename not found) [in C:\Program Files (x86)\Steam\steamapps\common\rocketleague\Binaries\Win64\RocketLeague.exe]
Address = 0xc6dbc9cc (filename not found) [in C:\Program Files (x86)\Steam\steamapps\common\rocketleague\Binaries\Win64\RocketLeague.exe]
Address = 0xc6d77151 (filename not found) [in C:\Program Files (x86)\Steam\steamapps\common\rocketleague\Binaries\Win64\RocketLeague.exe]
Address = 0xc725d54a (filename not found) [in C:\Program Files (x86)\Steam\steamapps\common\rocketleague\Binaries\Win64\RocketLeague.exe]
Address = 0xc72ce3d2 (filename not found) [in C:\Program Files (x86)\Steam\steamapps\common\rocketleague\Binaries\Win64\RocketLeague.exe]
Address = 0xc72d22bb (filename not found) [in C:\Program Files (x86)\Steam\steamapps\common\rocketleague\Binaries\Win64\RocketLeague.exe]
Address = 0xc72cbbdd (filename not found) [in C:\Program Files (x86)\Steam\steamapps\common\rocketleague\Binaries\Win64\RocketLeague.exe]
Address = 0xc725dd1d (filename not found) [in C:\Program Files (x86)\Steam\steamapps\common\rocketleague\Binaries\Win64\RocketLeague.exe]
Address = 0xc7299f37 (filename not found) [in C:\Program Files (x86)\Steam\steamapps\common\rocketleague\Binaries\Win64\RocketLeague.exe]
Address = 0xc7299ba1 (filename not found) [in C:\Program Files (x86)\Steam\steamapps\common\rocketleague\Binaries\Win64\RocketLeague.exe]
Address = 0xc72625b2 (filename not found) [in C:\Program Files (x86)\Steam\steamapps\common\rocketleague\Binaries\Win64\RocketLeague.exe]
Address = 0xc725fce4 (filename not found) [in C:\Program Files (x86)\Steam\steamapps\common\rocketleague\Binaries\Win64\RocketLeague.exe]
Address = 0xc735701f (filename not found) [in C:\Program Files (x86)\Steam\steamapps\common\rocketleague\Binaries\Win64\RocketLeague.exe]
Address = 0xc725fe45 (filename not found) [in C:\Program Files (x86)\Steam\steamapps\common\rocketleague\Binaries\Win64\RocketLeague.exe]
Address = 0xc730b832 (filename not found) [in C:\Program Files (x86)\Steam\steamapps\common\rocketleague\Binaries\Win64\RocketLeague.exe]
Address = 0xc7291304 (filename not found) [in C:\Program Files (x86)\Steam\steamapps\common\rocketleague\Binaries\Win64\RocketLeague.exe]
Address = 0xc6df5bf8 (filename not found) [in C:\Program Files (x86)\Steam\steamapps\common\rocketleague\Binaries\Win64\RocketLeague.exe]
Address = 0xc6de47ef (filename not found) [in C:\Program Files (x86)\Steam\steamapps\common\rocketleague\Binaries\Win64\RocketLeague.exe]
Address = 0xc6645c21 (filename not found) [in C:\Program Files (x86)\Steam\steamapps\common\rocketleague\Binaries\Win64\RocketLeague.exe]
Address = 0xc6645db9 (filename not found) [in C:\Program Files (x86)\Steam\steamapps\common\rocketleague\Binaries\Win64\RocketLeague.exe]
Address = 0xc64ab490 (filename not found) [in C:\Program Files (x86)\Steam\steamapps\common\rocketleague\Binaries\Win64\RocketLeague.exe]
Address = 0xd3147034 (filename not found) [in C:\WINDOWS\System32\KERNEL32.DLL]
Address = 0xd471d0d1 (filename not found) [in C:\WINDOWS\SYSTEM32\ntdll.dll]
Address = 0xd471d0d1 (filename not found) [in C:\WINDOWS\SYSTEM32\ntdll.dll]

[2998.09] Critical: Windows GetLastError: The operation completed successfully. (0)
[2998.09] Log: === Critical error: ===
Rendering thread exception:
Fatal error!

Address = 0xcdf3e980 (filename not found) [in C:\WINDOWS\SYSTEM32\d3d11.dll]
Address = 0xc6e8ec2b (filename not found) [in C:\Program Files (x86)\Steam\steamapps\common\rocketleague\Binaries\Win64\RocketLeague.exe]
Address = 0xc6dbc9cc (filename not found) [in C:\Program Files (x86)\Steam\steamapps\common\rocketleague\Binaries\Win64\RocketLeague.exe]
Address = 0xc6d77151 (filename not found) [in C:\Program Files (x86)\Steam\steamapps\common\rocketleague\Binaries\Win64\RocketLeague.exe]
Address = 0xc725d54a (filename not found) [in C:\Program Files (x86)\Steam\steamapps\common\rocketleague\Binaries\Win64\RocketLeague.exe]
Address = 0xc72ce3d2 (filename not found) [in C:\Program Files (x86)\Steam\steamapps\common\rocketleague\Binaries\Win64\RocketLeague.exe]
Address = 0xc72d22bb (filename not found) [in C:\Program Files (x86)\Steam\steamapps\common\rocketleague\Binaries\Win64\RocketLeague.exe]
Address = 0xc72cbbdd (filename not found) [in C:\Program Files (x86)\Steam\steamapps\common\rocketleague\Binaries\Win64\RocketLeague.exe]
Address = 0xc725dd1d (filename not found) [in C:\Program Files (x86)\Steam\steamapps\common\rocketleague\Binaries\Win64\RocketLeague.exe]
Address = 0xc7299f37 (filename not found) [in C:\Program Files (x86)\Steam\steamapps\common\rocketleague\Binaries\Win64\RocketLeague.exe]
Address = 0xc7299ba1 (filename not found) [in C:\Program Files (x86)\Steam\steamapps\common\rocketleague\Binaries\Win64\RocketLeague.exe]
Address = 0xc72625b2 (filename not found) [in C:\Program Files (x86)\Steam\steamapps\common\rocketleague\Binaries\Win64\RocketLeague.exe]
Address = 0xc725fce4 (filename not found) [in C:\Program Files (x86)\Steam\steamapps\common\rocketleague\Binaries\Win64\RocketLeague.exe]
Address = 0xc735701f (filename not found) [in C:\Program Files (x86)\Steam\steamapps\common\rocketleague\Binaries\Win64\RocketLeague.exe]
Address = 0xc725fe45 (filename not found) [in C:\Program Files (x86)\Steam\steamapps\common\rocketleague\Binaries\Win64\RocketLeague.exe]
Address = 0xc730b832 (filename not found) [in C:\Program Files (x86)\Steam\steamapps\common\rocketleague\Binaries\Win64\RocketLeague.exe]
Address = 0xc7291304 (filename not found) [in C:\Program Files (x86)\Steam\steamapps\common\rocketleague\Binaries\Win64\RocketLeague.exe]
Address = 0xc6df5bf8 (filename not found) [in C:\Program Files (x86)\Steam\steamapps\common\rocketleague\Binaries\Win64\RocketLeague.exe]
Address = 0xc6de47ef (filename not found) [in C:\Program Files (x86)\Steam\steamapps\common\rocketleague\Binaries\Win64\RocketLeague.exe]
Address = 0xc6645c21 (filename not found) [in C:\Program Files (x86)\Steam\steamapps\common\rocketleague\Binaries\Win64\RocketLeague.exe]
Address = 0xc6645db9 (filename not found) [in C:\Program Files (x86)\Steam\steamapps\common\rocketleague\Binaries\Win64\RocketLeague.exe]
Address = 0xc64ab490 (filename not found) [in C:\Program Files (x86)\Steam\steamapps\common\rocketleague\Binaries\Win64\RocketLeague.exe]
Address = 0xd3147034 (filename not found) [in C:\WINDOWS\System32\KERNEL32.DLL]
Address = 0xd471d0d1 (filename not found) [in C:\WINDOWS\SYSTEM32\ntdll.dll]
Address = 0xd471d0d1 (filename not found) [in C:\WINDOWS\SYSTEM32\ntdll.dll]`

GetCamra().GetRotation() causes crash.

Creating an ActorWrapper with
ActorWrapper cam = gw->GetCamra();
and then attempting to pull the rotation of it using
cam.GetRotation();
causes a crash.

README improvements?

Hello,
below the title 'IDE' I would start with the most relevant informations like the IDE (VS 2019) and the programming language needed to develop a plugin (C++?). Furthermore it would save a lot of time downloading things, if you could name the minimum packages that we need to install with VS 2019. The default packages for 'desktop development with C++' are already 7,48 GB (including VS 2019 itself I think). That takes a couple of hours for me to download.

Just wanted to give some kind of feedback. Never had to develop with C++ so maybe I got a few things wrong. Thank you for developing the BakkesMod SDK! I apprecciate it :)

server.HasPlayerNamed() doesn't like certain names.

I'm using server.HasPlayerNamed() in my plugin. When a user named Hazmat used it, the result was always false. When I replaced it with a custom little loop over all the player controllers and their names, comparing the names and seeing if any matched, that worked. This does happen with other names too, though I'm waiting for feedback on what names do it there. I will edit this post to add any further names as I find them.

TO REPRODUCE:
Use server.HasPlayerNamed() to check if a player in the server is named Hazmat, and set your name to the same. It will return false.

KNOWN PROBLEM NAMES:

  • Hazmat
  • Legend
  • Raid (I think)

Crashes RL when failing to join a server

Using the Latest version from Bakkesmod.com as of today 15/11/2020

I play on ME servers so I'm a huge friend of error 71 (Failed to join error)

When Bakkesmod is injected the game crashes before showing that error

Let me know if you need more info

Is injection possible even when BM is not running?

I accidentally encountered a scenario recently where -I suspect- installation of a plugin caused client instability, even once disabled.

I was checking out new plugins through the web app, installed a few. Later, the game began to crash 100% under specific circumstances (joining an unranked match via Steam friends list when one of the players was using an octane with a specific item equipped lol?). I unloaded BM, deleted RL caches, reinstalled RL totally, updated drivers. Nothing helped.
The only clue was seeing BM with my config and extra plugins working after re-installation- so I knew that BM's config had persisted. mving it and then reinstalling BM resolved the issue completely. That meant something in the bakkesmod folder was causing the game to crash even when the client was uncooked.

TL;DR:
Not asking for any help- my issue is resolved but I asked before in Discord but to no avail- how is it possible for plugins (assumed) to impact client stability even even when BM is not running? Is this unusual or actually expected by design?

P.S.: If it is unusual or unexpected I still have a copy of the bakkesmod folder I can share to replicate the problem.

CanvasWrapper has no methods for 3D drawing.

I am writing a plugin to help aiming at specific points in the goal (to evade defenders and such) and would like to draw in 3D space.

The current CanvasWrapper provides no way to draw in 3D space.

Perhaps if something like gluProject from OpenGL utils were added, 3D->2D could be achieved easily.

Mechanical Plugin not working properly

When I select hold boost, it also disables my jump
Disabling boost also disables my jump
Disable jump actually just disables powerslide
Disable powerslide does nothing

Set custom name sanitized

Hey, I'm trying to make a plugin using this SDK but having a problem with it due to a missing feature that seems easy to implement if it is existing in RLSDK, the function is to set the custom team name already sanitized, and I think this function should be in TeamWrapper, I was told to supply a reason for this to be added too, I am planning to release a plugin that shows both team's average MMR, I want to make it look like this, except this was made in RLSDK, which I cannot use to publish a plugin.

image

Changing boost amounth

Is there a way to change the amounth of boost a player has?
I'm trying to write a plugin to determine the fastest way to kickoff using a evolutionary genetic algorithm. But I can't find a way to reset the boost to 34 after a kickoff.

No MusicPlayer & MusicMetrics Wrapper

I was investigating a plugin idea when I noticed there are no MusicPlayer and MusicMetrics wrappers. Please consider writing these wrappers as it would allow for some new and creative plugins to be made.

ModalWrapper fails to set Icon

Specifying an icon fails to change the modal in game:

ex:

ModalWrapper updateModal = gameWrapper->CreateModal("Plugin Change");
updateModal.SetIcon("gfx_shared.Icon_Warning");

Getting members of online game doesn't work

Description

When trying to get members of a team using the GetMembers() function of TeamWrapper in an online game, there are 0 members in both teams.

Example

// an event handler for when a goal is being scored hooked to the 'Function TAGame.Team_TA.EventScoreUpdated' event
void CoolPlugin::goalScored()
{
	ServerWrapper server = gameWrapper->GetOnlineGame();
	ArrayWrapper<TeamWrapper> teams = server.GetTeams();

	for (int idxTeam = 0; idxTeam < teams.Count(); idxTeam++) {
		TeamWrapper team = teams.Get(idxTeam);

		if (!team.IsNull()) {
			ArrayWrapper<PriWrapper> teamMembers = team.GetMembers();

			for (int idxTeamMember = 0; idxTeamMember < teamMembers.Count(); idxTeamMember++) {
				PriWrapper player = teamMembers.Get(idxTeamMember);
			}
		}
	}
}

Expected Result

Loop through the team players and be able to access their data.

Actual Result

We are able to get 2 teams from the server.GetTeams() function, but teamMembers.Count() returns 0 and there aren't any members to loop through.
Also teamMembers.Get(0) returns null.

Rank disparity

Bakkesmod causes rank disparity in 3s with my teammate who is literally only 10 mmr away from me.

Game crashing while accessing the trade in window

Im assuming that the price check plugin is causing my game to crash while accessing the trading in window. Please do check it out if possible. I usually need to disable bakkesmod while doing trades in. Hopefully this bug/glitch is fixed.

Issue with input being dropped when using BakkesMod

I play using a mouse, and when I use BakkesMod it will drop mouse clicks where I will have to click many times before it goes through. I've tested it a lot to confirm (like 20 games with 20 games without) and this seems to be the cause.

[Request] Add wrapper to set player anthem/banner/title

Currently we have a method of setting items on car loadouts, but no way of setting the anthem, banner, avatar border, or player title.

As I understand it, these are stored under a special "profile loadout" which we have no way of accessing. I think(?) we need TA_Vanity wrapped, but I'm not certain how to determine that for sure.

Discord discussion here. We attempted setting all of these things on all of the car presets, but that didn't work.

HTTP Wrapper curl command option to ignore cert

Plugins using the http wrapper cannot initiate a "curl -k" command to avoid the cert check. In my example, I would like to use curl -k as the webhook I'm sending is going to a server I'd like to keep the FQDN out of my config and just call it by the local IP address, but this causes a cert mismatch and the whole command is dropped because of it. There does not seem to be a way for a plugin to use http request with the insecure setting currently.

splitscreen items support

I play with someone using split-screen, I use Bakkesmod to create a nice car, my second player wants a black car, which is impossible without Bakkesmod, so can you make it possible to use items to the split-screen players?

[Request] Player inputs / actor info, but with a delay

Bakkesmod obfuscates player inputs and actor info in online matches, to prevent a competitive advantage. That's obviously never going to change, but I'm wondering if you'd consider exposing an API that gives the player inputs well after the fact, to prevent the competitive advantage.

I'm thinking something like the info could be on a fixed delay (240-360 ticks behind), or maybe just a list of them is gettable once the match is over.

My use case would be reconstructing a multiplayer situation in freeplay for training/learning purposes (practice a recovery that I flubbed, or a shot that I missed, etc). Currently you have to reconstruct a scenario from the replay, which suffers from some jankiness due to replays running at a lower tick rate.

Opacity issue with FillTriangle

Hello, I have been using BakkesMod for a short time, but I have a problem.

I am trying to draw a triangle with CanvasWrapper using the FillTriangle method.
But whether I set the color before or in the method, it doesn't take into account the opacity and therefore remains completely opaque.

Do you have a solution to my problem?

PS: Could you add a method for Polygons and Circles? :D

Casual Wheel Bug

When playing casual and you load into the next game really quick, you enter a sort of freeplay period. Whenever this happens, when the game finally begins after everyone has joined, the color of the wheels are bugged. So far I've noticed it when I'm playing with white zombas using black infiniums via Bakkesmod. The wheels are white infiniums until the first goal is scored, at which point they turn back into black infiniums.

SDK Crash in GetUserLoadoutSave

I am developing a plugin (forking OrganizeMyGarageOpenSource) and I noticed a SDK crash in function GetUserLoadoutSave of class GameWrapper.
You won't see much from the log, but here it is:
Launch.log

More details:
In the log you can see it crashed in pluginsdk.dll just after calling GarageModel::EquipPresetPrivate(). The line in which it crashes is this:
const auto presetWrapper = gw->GetUserLoadoutSave();

Setup:
I attached an Event to Function TAGame.GameEvent_Soccar_TA.Destroyed which calls this function.

Scenario:
This works as intended in offline matches (exhibitions) or leaving freeplay, but if you play a casual/ranked match and click "quick play" or "ready" button after a game is over (to play another game), this event which we hooked to (TAGame.GameEvent_Soccar_TA.Destroyed) will be triggered at the same moment when game reconnects between servers. My assumption is that this function uses a pointer that is not longer valid (previous server). Hence, the game crashes.

I checked, and the pointer to GameWrapper is still valid when the function is called.

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.