Raised This Month: $319 Target: $400
 79%   Almost there!

Source Scramble (memory patching and allocation natives)


Post New Thread Reply   
 
Thread Tools Display Modes
Author Message
nosoop
Veteran Member
Join Date: Aug 2014
Old 07-01-2019 , 01:17   Source Scramble (memory patching and allocation natives)
Reply With Quote #1

Description:

Provides the following features to SourceMod plugins:
  • Allows plugins to enable / disable memory patches whose platform-specific payloads are defined in their game configs in their own unique section (based on Peace-Maker's implementation for dynhooks).
  • Allows plugins to allocate memory (which can then be accessed with StoreToAddress and LoadFromAddress).
  • Both of the above is cleaned up and freed when the plugin that owns them is unloaded (so you don't have to unpatch during OnPluginEnd()).
I wrote this as a generalized way to do patches like No Thriller Taunt, without needing to keep a boilerplate plugin on hand to deal with all the setup / teardown, or even another plugin at all (the bundled patch management plugin can load and enable simple patches for you).

More developer information is available in the project's README.

Source / Download
__________________
I do TF2, TF2 servers, and TF2 plugins.
I don't do DMs over Discord -- PM me on the forums regarding inquiries.
AlliedModders Releases / Github / TF2 Server / Donate (BTC / BCH / coffee)

Last edited by nosoop; 07-12-2021 at 08:16. Reason: Update stale URL fragment
nosoop is offline
SHUFEN
Senior Member
Join Date: Jun 2014
Location: Japan, Tokyo
Old 07-05-2019 , 00:12   Re: Source Scramble (memory patching and allocation natives)
Reply With Quote #2

Wow, awesome extension!!
__________________
SHUFEN is offline
Send a message via Skype™ to SHUFEN
Shadowysn
Senior Member
Join Date: Sep 2015
Location: Location:
Old 11-11-2019 , 22:12   Re: Source Scramble (memory patching and allocation natives)
Reply With Quote #3

Chrome reports that package.zip is not commonly downloaded and may be dangerous.
__________________
ragdoll spam, that is all

Steam profile, where I game, obviously.
Youtube channel, where I do Stick Death Maze animations and some other stuff.

Plugins:
1 | 2 | 3 | 4 | 5 | 6
Modified Plugins:
1 | 2 | 3

no plugin requests, sorry
Shadowysn is offline
nosoop
Veteran Member
Join Date: Aug 2014
Old 07-12-2021 , 08:14   Re: Source Scramble (memory patching and allocation natives)
Reply With Quote #4

This is a thread that I've neglected to update.

A feature that was requested a few times was the ability to preserve bytes from memory before it was patched. A preserve key has been introduced in today's release, where a bitmask in hex format indicates which bits should be copied.

There's a couple of other natives added since the original posting including GetAddressOf*() to get the raw address of a value in plugin memory space and MemoryBlock.Disown() to prevent the extension from freeing memory you've allocated when the handle is deleted.
__________________
I do TF2, TF2 servers, and TF2 plugins.
I don't do DMs over Discord -- PM me on the forums regarding inquiries.
AlliedModders Releases / Github / TF2 Server / Donate (BTC / BCH / coffee)

Last edited by nosoop; 07-12-2021 at 11:29.
nosoop is offline
Reply


Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT -4. The time now is 02:49.


Powered by vBulletin®
Copyright ©2000 - 2021, vBulletin Solutions, Inc.
Theme made by Freecode