Day of Defeat Plugins Community
This site is an archive — everything is readable and downloadable, nothing can be posted. Admin

DoD Nade Exploit Fix

by dodsynthetic · 2009-01-29 · 11 replies · 10395 views · 48 downloads

Read the thread (12 posts)

From the first post

Syn's Nade Exploit Fix v1.002
rn
rnThis plugin is a spawn off of my dod_avalanche and dod_purple nade exploit fix plugins. This is
rndesigned to be used with any map. All you need is a defintion file for a particular map. You can
rnalso create your own or modify existing ones with the built in editor. The reason I made a universal
rnplugin for all maps is simple. Less to deal with. It would be a redunant to have to get different
rnplugins to cover multiple maps. It also creates less mess on the dodplugins.net forums. XD
rn
rnCurrently comes with the following definitions:
rn
rndod_avalanche
rndod_purple
rn
rn===========================
rnv1.002 Changes
rn===========================
rn- Fixed non working player blocks.
rn
rn===========================
rnv1.001 Changes
rn===========================
rn- Added missing admin flag check for console commands. Allowed anyone to use the editor! o.O
rn- Per request, added menu to access all console commands via menu.
rn
rn===========================
rnFeatures & Notes
rn===========================
rn- Deflects nades from marked exploit locations on maps. Can block Allied, Axis, or all grenades.
rn
rn- Blocks can be set to deflect players instead of nades on either or both teams as well. This is
rngood for spawn protection or anywhere you don't want players getting to.
rn
rn- Built in editor for creating and editing your own custom blocks.
rn
rn- Supports as many maps as you want.
rn
rn- Each map definition file supports up to a maximum of 64 blocks.
rn
rn- Want to have a map fixed? Let me know and I'll create a definition file for it or you can use the
rnbuilt in editor to make your own!
rn
rn- Credit goes out to the following people for helping me test, improve the original plugin to this
rnfinal refined, unified plugin and provide exploit locations for dod_avalance:
rn| Tank | Diamond-Optic | OnEHiTwOnDeR | Dr.G |
rn
rn- Block locations whose vector is 0.0 / 0.0 / 0.0 (X/Y/Z) are ignored. The chances of placing a
rnblock at these coordinates are very slim but just incase I'm mentioning it.
rn
rn- Unlike my previous dod_avalanche nade exploit fix map, I have not added an Axis player block into
rnAllied appartments from the penguin room. You can add it if you want.
rn
rn===========================
rnEditor Mode
rn===========================
rnBecause this is a more in depth function of the plugin, it gets it's own section. I've tried to
rnmake it so creating your own block points are as less of a pita as possible.
rn
rn[> Setting up <]
rn- First you are going to join sectators and turn on the editor by typing: nade_exploit_edit
rninto your console. This toggles the editor on and off and anytime the map changes or the server
rnrestarts, it will always default off. Once you have enabled editor mode (console will show a message
rnto this effect) you can begin placing your blocks.
rn
rn[> Keys <]
rnAttack - Place a new or select a highlighted block location for editing.
rn
rnAttack2 - Cycle's through a selected entity's block modes, nade/allied/axis/all/remove.
rn
rnJump - Increment block location size.
rn
rnDuck - Decrement block location size.
rn
rnTurn Left - Rotate deflection direction to the left. This is not strafe left.
rn
rnTurn Right - Rotate deflection direction to the right. This is not strafe right.
rn
rnRun - Delete block location when editing it.
rn
rnUse - This will instantly warp you back to the last spot you were editing from so you can check your
rnblocks quicker after spawing instead of walking all the way back. This location is saved only
rntemporarily and does not save between map changes.
rn
rnIf you don't know the binds for these keys, here they are in the same order:
rn
rn+attack
rn+attack2
rn+jump
rn+duck
rn+turnleft
rn+turnright
rn+run
rn+use
rn
rnIf you don't know what to do and don't know how to bind keys this example will help. Let's say you
rnwant to bind cancel to your I key. You would go into the console and type:
rn
rnbind i +cancel
rn
rnSo by looking at that you can see first we are using the bind command, then the first argument is
rnthe key you want, I in this case, and the last part is the action command we are binding to the I
rnkey. It's really simple. You can do this with any of your keys and any command.
rn
rn[> Working with blocks <]
rnThis editor takes a simple approach to editing locations. All you have to do is aim where you want
rnthe block to go and press your primary attack button. To make things even easier, there is a
rntemporary placement rabbit model for reference. Where this temp model is, is where your block will
rnbe. The new block is also represented with a rabbit model. After placing a block, make sure you are
rnaiming at it. You will know your on it because you will see a white highlight box around it and an
rnimplosion effect. The implosion effect is a general representation of the block radius, that is,
rnthe range at which you want to cover for blocking something. So now that you have your new block
rnhighlighted press your primary attack again. This time the rabbit will turn red and the
rnhighlight box will dissapear indicating that this block locations is currently being edited. You can
rnmove around the map and place it in another location or you can change it's block type. There are
rn6 block types you can choose from. These are Allied nades, Axis nades, all nades, Allied players,
rnAxis players or all players. To cycle through each block type, have your block location bunny
rnglowing red and press your secondary fire button. It will take you through all the modes. Also, if
rnyou want to delete a block location, have it in the red and hit your run key. This will remove it
rncompletely. Now on to the deflection. Setting this up is just as easy. Look at the way the rabbit
rnmodel is facing. He is pointing in the direction which objects will be deflected in. You can rotate
rnthe deflection angle with your turn left, and turn right keys. Generally you want to always deflect
rnaway in the opposite direction of where something shouldn't go. All that is left now is the radius
rnof the deflection. The radius is how big of an area you want to cover. Keep in mind that this radius
rnis the shape of a sphere. After playing around and setting up your block locations, test them out.
rnTo make things easier after you spawn, press your use key and it will take you to the location of
rnthe last block you edited. Once you are satisfied, go into the console and type: nade_exploit_save
rnand it will save all of your current work to a file for the corresponding map your on. You can then
rnexit editor mode by typing: nade_exploit_editor into the console again. This will resume normal
rnoperation. There is also a menu to access all console commands and can be gotten to by typing:
rnnade_exploit_menu in console.
rn
rn[> Additional info <]
rn- Remember that depending on the location you may need a few smaller radius block locations to cover
rnan area while others will suffice with a larger single block. Too big of a radius and it could block
rnparts of the map you don't want blocked and too small could lead to gaps that aren't fully covered.
rn
rn- If you need to start over to the last time you saved, just type: nade_exploit_load into the
rnconsole.
rn
rn- Using the console command: nade_exploit_wipe will completely wipe all block data from memory if
rnyou want to start all over. This does not wipe a saved map file though.
rn.
rn===========================
rnConsole Commands:
rn===========================
rnnade_exploit_editor
rn- Toggles editor mode on or off for creating/editing exploit definition files.
rn
rnnade_exploit_status
rn- Displays info in the console as to the status of the plugin such as the total exploit blocks
rnrunning or any errors the plugin encountered.
rn
rnnade_exploit_save
rn- Will attempt to save the current exploit definition data to the map's corresponding file. This
rnprocess can take a few seconds to complete.
rn
rnnade_exploit_load
rn- Will attempt a load or reload of the current map's exploit definition file if available.
rn
rnnade_exploit_wipe
rn- Use this to completely start over with no block locations. Use this with nade_exploit_save to
rnclean the map definition file as well.
rn
rnnade_exploit_menu
rn- Allows access to all the console commands via manu.
rn
rn===========================
rnCVARs
rn===========================
rnnade_exploit_fix | 0 = off | 1 = on
rn- Enables or disables the Map Exploit Fix plugin. Default on.
rn
rnnade_exploit_scan_time | x.x
rn- Allows changing the delay between every scan. This will let you adjust the plugin's CPU usage.
rnWhile it doesn't take alot of work to check these locations, you might have a slower server or wish
rnto optimize your server if you have lots of plugins running. The higher the number, the more time
rnthere will between each global check but if it's too high, you run the risk of a blockee getting
rnpast a block location. For the most part you want to keep this under 1 second. You can enter an
rninteger or real number here. For example, a value of one would just be 1 second and a value of 1.5
rnwould be 1 and a 1/2 seconds. Also, this only is for nade block locations. Players have to be
rnchecked much faster in prethink. Default 0.5.
rn
rn===========================
rnInstallation
rn===========================
rn- Compile the .sma file | An online compiler can be found here:
rn http:www.amxmodx.org/webcompiler.cgi
rn- Copy the compiled .amxx file into your addonsamxmodxplugins folder
rn- Add the name of the compiled .amxx to the bottom of your addonsamxmodxconfigsplugins.ini
rn- Copy the desired map definition files to a new folder named nade_exploits inside of your amxmodx
rnconfig folder. For example most people's setups would look like this:
rnaddonsamxmodxconfigsnade_exploits
rn- Change the map or restart your server to start using the plugin!

Files

syns_nade_exploit_fix.sma Plugin Source 48 KB 48 dl Download Compile

The thread

All 12 posts from 4 people on DoD Nade Exploit Fix, kept as they were written.

dodsynthetic
started this thread
Posts: 277
Threads: 15
Joined: Mar 2007
01-29-2009, 05:46 PM #1

Syn's Nade Exploit Fix v1.002rnrnThis plugin is a spawn off of my dod_avalanche and dod_purple nade exploit fix plugins. This isrndesigned to be used with any map. All you need is a defintion file for a particular map. You canrnalso create your own or modify existing ones with the built in editor. The reason I made a universalrnplugin for all maps is simple. Less to deal with. It would be a redunant to have to get different rnplugins to cover multiple maps. It also creates less mess on the dodplugins.net forums. XDrnrnCurrently comes with the following definitions:rnrndod_avalancherndod_purplernrn===========================rnv1.002 Changesrn===========================rn- Fixed non working player blocks.rnrn===========================rnv1.001 Changesrn===========================rn- Added missing admin flag check for console commands. Allowed anyone to use the editor! o.Orn- Per request, added menu to access all console commands via menu.rnrn===========================rnFeatures & Notesrn===========================rn- Deflects nades from marked exploit locations on maps. Can block Allied, Axis, or all grenades.rnrn- Blocks can be set to deflect players instead of nades on either or both teams as well. This isrngood for spawn protection or anywhere you don't want players getting to.rnrn- Built in editor for creating and editing your own custom blocks.rnrn- Supports as many maps as you want.rnrn- Each map definition file supports up to a maximum of 64 blocks.rnrn- Want to have a map fixed? Let me know and I'll create a definition file for it or you can use thernbuilt in editor to make your own!rnrn- Credit goes out to the following people for helping me test, improve the original plugin to thisrnfinal refined, unified plugin and provide exploit locations for dod_avalance:rn| Tank | Diamond-Optic | OnEHiTwOnDeR | Dr.G |rnrn- Block locations whose vector is 0.0 / 0.0 / 0.0 (X/Y/Z) are ignored. The chances of placing a rnblock at these coordinates are very slim but just incase I'm mentioning it.rnrn- Unlike my previous dod_avalanche nade exploit fix map, I have not added an Axis player block intornAllied appartments from the penguin room. You can add it if you want.rnrn===========================rnEditor Modern===========================rnBecause this is a more in depth function of the plugin, it gets it's own section. I've tried tornmake it so creating your own block points are as less of a pita as possible.rnrn[> Setting up <]rn- First you are going to join sectators and turn on the editor by typing: nade_exploit_edit rninto your console. This toggles the editor on and off and anytime the map changes or the server rnrestarts, it will always default off. Once you have enabled editor mode (console will show a messagernto this effect) you can begin placing your blocks.rnrn[> Keys <]rnAttack - Place a new or select a highlighted block location for editing.rnrnAttack2 - Cycle's through a selected entity's block modes, nade/allied/axis/all/remove.rnrnJump - Increment block location size.rnrnDuck - Decrement block location size.rnrnTurn Left - Rotate deflection direction to the left. This is not strafe left.rnrnTurn Right - Rotate deflection direction to the right. This is not strafe right.rnrnRun - Delete block location when editing it.rnrnUse - This will instantly warp you back to the last spot you were editing from so you can check yourrnblocks quicker after spawing instead of walking all the way back. This location is saved only rntemporarily and does not save between map changes.rnrnIf you don't know the binds for these keys, here they are in the same order:rnrn+attackrn+attack2rn+jumprn+duckrn+turnleftrn+turnrightrn+runrn+usernrnIf you don't know what to do and don't know how to bind keys this example will help. Let's say yournwant to bind cancel to your I key. You would go into the console and type:rnrnbind i +cancelrnrnSo by looking at that you can see first we are using the bind command, then the first argument isrnthe key you want, I in this case, and the last part is the action command we are binding to the Irnkey. It's really simple. You can do this with any of your keys and any command. rnrn[> Working with blocks <]rnThis editor takes a simple approach to editing locations. All you have to do is aim where you wantrnthe block to go and press your primary attack button. To make things even easier, there is arntemporary placement rabbit model for reference. Where this temp model is, is where your block willrnbe. The new block is also represented with a rabbit model. After placing a block, make sure you arernaiming at it. You will know your on it because you will see a white highlight box around it and an rnimplosion effect. The implosion effect is a general representation of the block radius, that is,rnthe range at which you want to cover for blocking something. So now that you have your new blockrnhighlighted press your primary attack again. This time the rabbit will turn red and thernhighlight box will dissapear indicating that this block locations is currently being edited. You canrnmove around the map and place it in another location or you can change it's block type. There are rn6 block types you can choose from. These are Allied nades, Axis nades, all nades, Allied players, rnAxis players or all players. To cycle through each block type, have your block location bunny rnglowing red and press your secondary fire button. It will take you through all the modes. Also, if rnyou want to delete a block location, have it in the red and hit your run key. This will remove it rncompletely. Now on to the deflection. Setting this up is just as easy. Look at the way the rabbitrnmodel is facing. He is pointing in the direction which objects will be deflected in. You can rotate rnthe deflection angle with your turn left, and turn right keys. Generally you want to always deflectrnaway in the opposite direction of where something shouldn't go. All that is left now is the radius rnof the deflection. The radius is how big of an area you want to cover. Keep in mind that this radiusrnis the shape of a sphere. After playing around and setting up your block locations, test them out.rnTo make things easier after you spawn, press your use key and it will take you to the location ofrnthe last block you edited. Once you are satisfied, go into the console and type: nade_exploit_save rnand it will save all of your current work to a file for the corresponding map your on. You can then rnexit editor mode by typing: nade_exploit_editor into the console again. This will resume normal rnoperation. There is also a menu to access all console commands and can be gotten to by typing: rnnade_exploit_menu in console.rnrn[> Additional info <]rn- Remember that depending on the location you may need a few smaller radius block locations to coverrnan area while others will suffice with a larger single block. Too big of a radius and it could blockrnparts of the map you don't want blocked and too small could lead to gaps that aren't fully covered. rnrn- If you need to start over to the last time you saved, just type: nade_exploit_load into the rnconsole.rnrn- Using the console command: nade_exploit_wipe will completely wipe all block data from memory if rnyou want to start all over. This does not wipe a saved map file though.rn.rn===========================rnConsole Commands:rn===========================rnnade_exploit_editorrn- Toggles editor mode on or off for creating/editing exploit definition files.rnrnnade_exploit_statusrn- Displays info in the console as to the status of the plugin such as the total exploit blocksrnrunning or any errors the plugin encountered.rnrnnade_exploit_savern- Will attempt to save the current exploit definition data to the map's corresponding file. Thisrnprocess can take a few seconds to complete.rnrnnade_exploit_loadrn- Will attempt a load or reload of the current map's exploit definition file if available.rnrnnade_exploit_wipern- Use this to completely start over with no block locations. Use this with nade_exploit_save tornclean the map definition file as well.rnrnnade_exploit_menurn- Allows access to all the console commands via manu.rnrn===========================rnCVARsrn===========================rnnade_exploit_fix | 0 = off | 1 = onrn- Enables or disables the Map Exploit Fix plugin. Default on.rnrnnade_exploit_scan_time | x.xrn- Allows changing the delay between every scan. This will let you adjust the plugin's CPU usage.rnWhile it doesn't take alot of work to check these locations, you might have a slower server or wishrnto optimize your server if you have lots of plugins running. The higher the number, the more timernthere will between each global check but if it's too high, you run the risk of a blockee gettingrnpast a block location. For the most part you want to keep this under 1 second. You can enter an rninteger or real number here. For example, a value of one would just be 1 second and a value of 1.5rnwould be 1 and a 1/2 seconds. Also, this only is for nade block locations. Players have to bernchecked much faster in prethink. Default 0.5.rnrn===========================rnInstallationrn===========================rn- Compile the .sma file | An online compiler can be found here:rn http:www.amxmodx.org/webcompiler.cgirn- Copy the compiled .amxx file into your addonsamxmodxplugins folderrn- Add the name of the compiled .amxx to the bottom of your addonsamxmodxconfigsplugins.inirn- Copy the desired map definition files to a new folder named nade_exploits inside of your amxmodxrnconfig folder. For example most people's setups would look like this:rnaddonsamxmodxconfigs
ade_exploitsrn- Change the map or restart your server to start using the plugin!

diamond-optic
posted here
Posts: 2,068
Threads: 103
Joined: May 2005
01-29-2009, 07:12 PM #2

looks good :)nnone thing im confused about is in the avalanche edf file.. im assuming the entries with all zeros are just placeholders (as you stated above that using all 0's basically means that index wont be used)nn

Index: 53n0.000000n0.000000n0.000000n0.000000n0.000000n0.000000n0.000000n0
but whats with these ones:n
Index: 49n0.000000n0.000000n0.000000n0.000000n0.000000n0.000000n20.000000n0nIndex: 50n0.000000n0.000000n0.000000n0.000000n0.000000n0.000000n20.000000n0nIndex: 51n0.000000n0.000000n0.000000n0.000000n0.000000n0.000000n20.000000n1nIndex: 52n0.000000n0.000000n0.000000n0.000000n0.000000n0.000000n40.000000n0
when i check the status it says theres 50 blocks being used, so that would mean indexes 0-49nnwell whys 49 get used and not 50 or 51 when they are the same, and not 52 when its just slightly differentnnim sure im most likely mistaken about something with itnnn*EDIT*nni also noticed the last one that |OnEHiTwOnDeR|SoCal pointed out in the old ava nade fix thread can still be used (not sure if you did put in a fix for that and its just not blocking it or if maybe you forgot)nn*EDIT #2*nnok using the editor i notice you did put one in there, but i just used it to kill 3 ppl lolnn*EDIT #3*nnword to the wise lol.. dont go into editor mode with bots in the server hahha.. otherwise everytime they shoot and whatnot they trigger the editor functions

dodsynthetic
started this thread
Posts: 277
Threads: 15
Joined: Mar 2007
01-29-2009, 07:31 PM #3

Ahh, that was leftover data from testing. I didn't bother cleaning it up since it will get ignored anyway. XD The ones that have zeros are just place holders for each of the blocks. As for that roof block, I'll have to adjust that lol. It probably needs to be pushed back more or the radius increased.nnLOL @ edit #3nThat had to be a mess. Good thing it caps at the limit. XDnnOh and it determines a block entry in if the first three lines (block origin) of the block are all zeros or not. It doesn't bother checking the rest of the data in the entry if they are zeros.

diamond-optic
posted here
Posts: 2,068
Threads: 103
Joined: May 2005
01-30-2009, 03:07 AM #4

is there a way, if not would it be possible to add one, where you could set a block point to not push back when set to block players and not nade.nni understand this plugin is mainly for blocking nades, but since it also can block players it would be nice to be able to have it just block the player and not push back on them (not sure how the plugin totally works so for all i know you might have to push back on the player to block them)

dodsynthetic
started this thread
Posts: 277
Threads: 15
Joined: Mar 2007
01-30-2009, 06:47 AM #5

Basically I'm just checking objects within x distance of block origin and using velocity to deflect them. Since there isn't anything really there at a block location the only ways I can think of is to use entities or create some collision / movement code. Entities would be easy but they are too slow so I could probably come up with some simple collision math that makes it just like a wall.

dodsynthetic
started this thread
Posts: 277
Threads: 15
Joined: Mar 2007
01-30-2009, 11:56 AM #6

Updated the Avalanche def for the block up above the W crack. It was set to only block Allied nades. XD

diamond-optic
posted here
Posts: 2,068
Threads: 103
Joined: May 2005
01-30-2009, 08:24 PM #7

yeah it would probably be easier and make more sense for me to just make a tiny little plugin myself to do what i need (since theres only one spot i really want it for at the moment) and just use this one to handle the nade exploits

Dr.G
posted here
Posts: 776
Threads: 75
Joined: Nov 2007
02-02-2009, 12:01 PM #8

Dude this is really cool GJ, just loaded this so i have no error log for.. yet lol... however it wont take u long to great a menu for this so have one command, that should be imo... But if u wanna make a menu system please use the "new" menu system. Its really easy and its dynamic with other menus... like if u have amxmodmenu open and u open a new say one for this menu its will auto close the other one etc.... http://forums.alliedmods.net/showthread.php?t=46364&highlight=menurnrnCheers! again good job!

dodsynthetic
started this thread
Posts: 277
Threads: 15
Joined: Mar 2007
02-02-2009, 04:52 PM #9

Now with menu and an important fix. Yeah, I never really bothered with the old menu system too much.

Tank
posted here
Posts: 581
Threads: 59
Joined: Jan 2007
03-24-2009, 11:54 PM #10

Syn, I need your help on this. I left the cvar default, placed the amxx file and the map definition file for Avalanche. But if I throw a nade into blue room it still glitches. What cvar do I need to set?

dodsynthetic
started this thread
Posts: 277
Threads: 15
Joined: Mar 2007
04-05-2009, 03:33 AM #11

Wow I'm outdated. Sorry for the delay in getting back with you Tank. Type nade_exploit_status into the console and see if it reports any problems. If all is good, I may have accidentally set it to only a certain type of block I.G. allied only or axis only like I did with the ceiling block above the W crack house. XD I'll check it out though.

dodsynthetic
started this thread
Posts: 277
Threads: 15
Joined: Mar 2007
12-06-2009, 09:28 PM #12

New update. Was setting up some blocks for a map and realized that they weren't working in non-editor mode because player origins were only being stored in editor mode. Now they work like they should.

DoD Plugins Archive · Repository · Old Forum Threads · Maps · Admin · built 14 Sep 2026 00:34 UTC