Raised This Month: $178 Target: $400
 44% 

[TF2] No Thriller Taunt


Post New Thread Reply   
 
Thread Tools Display Modes
Misc
Junior Member
Join Date: Feb 2016
Old 08-23-2017 , 21:04   Re: [TF2] No Thriller Taunt
Reply With Quote #131

Quote:
Originally Posted by Spirit_12 View Post
Looks like you need proper offset and signatures for Linux platform.
Any idea how I do that please?
Misc is offline
Spirit_12
Veteran Member
Join Date: Dec 2012
Location: Toronto, CA
Old 08-24-2017 , 03:43   Re: [TF2] No Thriller Taunt
Reply With Quote #132

Quote:
Originally Posted by Misc View Post
Any idea how I do that please?
You will have to decompile the library and then find the appropriate function to create signature. It is a rather tedious task and offsets might be a whole new fuzz.
__________________
Spirit_12 is offline
ThatKidWhoGames
Senior Member
Join Date: Jun 2013
Location: IsValidClient()
Old 10-31-2017 , 12:33   Re: [TF2] No Thriller Taunt
Reply With Quote #133

I would suggest that a moderator move this to the plugins forum as this is technically no longer an extension it is now a plugin.
__________________


I take custom plugin requests, add me on Steam for details.
ThatKidWhoGames is offline
nosoop
Senior Member
Join Date: Aug 2014
Old 05-12-2018 , 12:08   Re: [TF2] No Thriller Taunt
Reply With Quote #134

Decided to test my skill in disassembly. Have some updated gamedata.

For anyone that wants to follow along or update it for next time, assuming Valve didn't completely overhaul the halloween taunt logic since then:
  1. Load up the server binary in IDA.
  2. Open up the Strings subview and look up the IsHalloweenTaunt string.
  3. Find cross-references to the string, then head over to one of those subroutines. Switch to graph view so you have a sense of what you're looking at.
  4. In the Linux binary, since you have signatures, you'll be in CTFPlayer::ModifyOrAppendCriteria(). There's a call to rand right before to decide if the Halloween taunt is applied. I ended up patching the near JA instruction with a near JO (from 0F 87 to 0F 80). Add one to the instruction offset and set the payload in the gamedata file to 128 (0x80). Use the symbol for the signature.
  5. Same thing in the Windows binary, except no symbols. Structure is about the same, though; find those floating point operations right before. I patched the short JBE with a short JNO. Grab the offset. Use makesig for the signature.

Here's an image for reference. The forum image proxy doesn't seem too fond of it, so it's linked.

There's probably a more resilient signature that doesn't involve offsets deep into the function (since this will absolutely break if ModifyOrAppendCriteria changes), but that's an exercise for the next person.
Attached Files
File Type: txt thriller.plugin.txt (605 Bytes, 9 views)
__________________
I do TF2, TF2 servers, and TF2 plugins.
AlliedModders Releases / Github / TF2 Server / Donate (BTC / BCH)

Last edited by nosoop; 05-12-2018 at 12:22.
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 08:33.


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