Anti-Silent Plant - v1.5 - 2006-05-23
3 Attachment(s)
Anti-Silent Plant
Normally in Counter-Strike, when you plant the c4 (bomb) you hear a beeping noise coming from it. However, a person can plant the c4 in a way that causes the c4 to not emit this sound. This is called a Silent Plant. In all CAL matches for Counter-Strike silent planting is against the rules. It makes it difficult (and near impossible sometimes) to find the bomb when you cannot hear it and did not see where exactly the terrorist planted the bomb. IMHO, this is a cheap tactic. This plugin prevents a silent plant from occuring by creating an additional entity with the classname func_illusionary and emitting the same sound at the same time and origin with the same volume, attenuation, flags, and pitch as the c4 normally would. Installation File Locations:
Plugin History [2006-05-23] v1.5
|
Valve fixed the silent plant bug didn't they?....I swear they did.
|
I just went in CS 3 minutes before I released this and silent planted. From what I understand silent planting occurs when the c4 is partially merged with part of the map and therefore the normally emitted sound is not heard. If you would like I will give you the IP to show you a silent plant or you can give me yours if you have a server and I will silent plant on dust2 to show you.
|
No, I knew how to do it. I just remember not being able to do it anymore. Havn't tryed in a while though.
|
Oh ok well I didn't know what a silent plant was until about October 05 last year and since I've always been able to silent plant and always have the problem in my server.
|
change
Code:
Code:
You don't need to have any returns in plugin_init() and returning PLUGIN_HANDLED does nothing in plugin init. it would do the same as PLUGIN_CONTINUE Change that and I will approve. |
OK TY for the tip didn't know that. Changes are done.
|
Good concept. I will be adding this to my server.
|
Quote:
|
I will be installing this !!
Thx |
I'll be adding it also and will reply with feedback. :D :D :D
|
Quote:
|
You should use only fakemeta.
|
Good suggestion didn't think about using the engfunc until you just said to do that. Working on it now.
BTW.. just wondering VEN.. does FakeMeta read quicker or is it just more efficient to use one module?? |
The main point IS why use 2 modules if it's possible dont use 2nd.
And for more explanations (fakemeta vs engine) you can read forums and amxxwiki. |
You said that it was good to use in cal matches, but it is illegal to have amxx on durring a match :stupid:
|
Oh no of course not. I don't recall saying to actually use it during an OFFICIAL match or anything... I recommend using it all the time .. but in official CAL matches no mods are permitted (including AMX Mod X)
Edit: VEN I'm havin a bit of a problem getting fakemeta to work the exact same as engine... I posted in scripting help if you don't mind looking. http://forums.alliedmods.net/showthread.php?t=28157 Edit: Well Brad and Suzuka said its not a big deal but if I do learn how to fix the problem I had there using fakemeta and learn what I was doing wrong then I will fully use only fakemeta. Works fine with engine and fakemeta right now though so its all gravy. :) |
They told you about engine vs FM, while your plugin already used FM so it's not the case because engine can't hook emitsound anyway. So FM main module here and engine may be easily "dropped".
You can improve efficiency of your plugin. When bomb is planted you always do an operation for all emitted sounds: containi inside loop. To filter out non-bomb sounds check if entity which emits sound is the planted C4, if check result is false quit function before entering to the loop. By the way i don't undestand why there are containi if you have an exact sound filenames. Also i don't really think you should remove and recreate your entity every time. Origin's change should be enough for such purpose. While the main problem of you plugin is the "double sounding". When bomb isn't "silent" you emit your sound too. However i have a solution. When bomb is planted (if it's on ground) check content of every upper corner of the C4 entity and if at least one corner is in the solid area emit your additional sound. |
I tried to figure out how to detect if the corner was in the solid area but I was not successful because it detect the ground that it was resting on as touching it and I couldn't figure out how to distinguish between the two.
I remove it because I don't like the idea of having an entity exist that isn't doing anything and if another plugin is using the c4 sounds then the entity would emit the sound from the origin if it wasn't removed. I use containi because some servers do not have all sound files case sensitive (don't know why but I've seen this before). For example instead of sound.wav they have SounD.wav. I don't know why they modified it or if its because of the company they were with but when configuring other people's servers I have seen this before. That is why I didn't want it to be case sensitive. I did however get it to work with only fakemeta and engine is now unnecessary to run this plugin!! TY for your help there! I definetly learned a few things about FM by doing this. Thanx a bunch VEN! |
Quote:
Quote:
Quote:
|
Quote:
Quote:
Quote:
Edit: Now I remember why I used containi... when I was learning how to use register_forward I looked at v3x's silent_assault plugin and thats how he did it. If it's good enough for v3x it's good enough for me. I did try it with equali also and that worked but maybe he used containi for a reason.. I dunno??? either way it works using containi and I switched it to only use FM so I'd say it's doing pretty well. The only thing left is to take out the original C4 sound so you only hear 1 beep all the time. Edit: The C4 sound has been removed so now only the sound created by the temporary entity is emitted. Duel-beep problem fixed. :)) Happy fraggin. |
Let me guess: superciding the original sound? I should tought about that too first, but since i already wrote answers to your previous questions, i will post them anyway. :)
[at least that may be used for something else by you or someone else] Quote:
Hence: UpperCornerA{MinX, MinY, MinZ + SizeZ} UpperCornerB{MinX + SizeX, MinY, MinZ + SizeZ} UpperCornerC{MinX, MinY + SizeY, MinZ + SizeZ} UpperCornerD{MinX + SizeX, MinY + SizeY, MinZ + SizeZ} Quote:
Anyway you can calculate lower corners as well using previous method but without SizeZ increment. Just keep in mind that AbsMin{MinX + i, MinY + i, MinZ + i} where "i" is something like 0.X to awoid ground detection. Quote:
Code:
|
this plugin makes my server to crash :?
Code:
; AMX Mod X Modules Code:
; AMX Mod X plugins |
Code:
kick_spec.amxx //my AntiSpec plugin |
Quote:
|
Quote:
Quote:
Quote:
Don't post that a plugin is crashing your server if you don't have evidence that the crash is directly related to that specific plugin. It does not crash servers so let nobody be confused or think it doesn't work. This plugin works flawlessly. |
Quote:
|
Quote:
|
Code:
AMXX 1.71 will try to find any error :-/ those "//" in prevïous post I've add only to this forum to explain, that it's my plugin and what is its function :oops: have no "//" in my plugins.ini :D |
Also you need to make sure that your core and fakemeta modules are 1.70 or above versions also
Edit: Thank you to jimmy_cr, Mordekay, and Krillin for bringing up these issues. Update to version 1.5 to get the fix for this problem. Versions 1.4 and below did cause servers to crash upon round restarts when the bomb was not planted the round before. Once again, thank you to jimmy_cr, Mordekay, and Krillin for bringing this issue to my attention. |
Code:
Code:
|
Thanx for all your help VEN. I didn't understand 1 part of that so I PMed you my question.
Edit: I made revisions you suggested and came across a problem with this method. Apparently, if is_in_solid ( corner ) == true, that doesn't necessarily mean that the bomb was silent planted. I don't know how this is possible but it appears to be that way. The plugin detects a corner in solid even when not silent planted in some cases in de_dust2. I have sent demos to prove that this happens and the beta 1.4 .sma to you to see the work I did. If you can figure out why this happens, please let me know. My theory is that because of how close the corner is to the wall it may detect that it is touching even when it is not a silent plant. Clear cut silent plants where the bomb clipped into the wall were properly detected, likewise, clear cut normal plants were detecting as well. Plants really close to the wall sometimes were detected as a silent plant when they were in fact not actually silent plants. Again, if you find an error in the coding (which I do not believe there are any) or a way to get rid of the false possitives, please let me know. Thank you for all of your help. Edit: I did forget to include the attenuation, pitch, flag, and volume changes in the beta version but after sending you the beta version and the demos I realized this and released 1.4 with those changes as they were needed. Now the sound matches the original C4 attenuation, pitch, volume, flags and all parameters exactly so that the distance you hear the C4 at is consistent with the normal distance you would hear the C4 from. Prior to 1.4, the c4 was heard at a constant distance and volume which is not consistent with the normal C4 sound which growingly gets louder and louder, being heard farther and farther away for each beep. Version 1.4 fixes this problem and is 100% identicle to the sound normally emitted by the C4 in every way. |
bug
-------- Mapchange to de_dust2 --------
[FAKEMETA] dev: called: GiveFnptrsToDll [META] dll: Loaded plugin 'FakeMeta': FakeMeta v1.60 Sep 22 2005, AMX Mod X Dev Team [AMXX] Plugin "antisilentplant.amxx" failed to load: Plugin uses an unknown function (name "pev_valid") - check your modules.ini. help.... |
Upgrade your AMXX to 1.71.
|
Quote:
|
It seems that this plugin causes my server to crash and restart when i run it. The server seems crashing when a few player connects. I didnīt changed anything exept starting fakemeta and this plugin. When i stop iot again the server runs fine.
Modules without the plugin: Code:
Currently loaded modules: Code:
Currently loaded plugins: Code:
Currently loaded plugins: |
Edit: Thank you to jimmy_cr, Mordekay, and Krillin for bringing up these issues. Update to version 1.5 to get the fix for this problem. Versions 1.4 and below did cause servers to crash upon round restarts when the bomb was not planted the round before.
Once again, thank you to jimmy_cr, Mordekay, and Krillin for bringing this issue to my attention. |
we both can show you server, which is running 24/7 without crashes, errors, warnings, etc... but after adding your plugin it start to crash...
it's the same argumentation - no flame plz You're running only your plugin or more approved ones on your server SubStream? |
Edit: Thank you to jimmy_cr, Mordekay, and Krillin for bringing up these issues. Update to version 1.5 to get the fix for this problem. Versions 1.4 and below did cause servers to crash upon round restarts when the bomb was not planted the round before.
Once again, thank you to jimmy_cr, Mordekay, and Krillin for bringing this issue to my attention. |
We have a rule in the server about slient planting. As you stated it is a cheap tactic. I would love it if this plugin works as it says.
I just down loaded this plugin. I have 99 plugins running on my server with SuperHero MOD. So I will compile this now and see this in action. I will be updating with my feedback. Krillin [EDIT] Bad news. This plug-in V1.4 did work, for a short period of time of silent planting. Then we would battle normally after the round would start, terrorist would die before the bomb was planted. Shortly after the next rounded started the server would just crash. Bare in mind my server was up and running almost a week until I put this plug-in on the server. After adding this plug-in it did crash the server not once but 3 times until I disabled this plug-in. The crash pointed the ./hlds_run. So we can not get anything specific on what is causing this to crash the server. Here are our specs. META MOD VERSION 1.19 AMXMOD-X V1.71 Mandrake Linux 10.1 P4 2.4aGHz W/ 1MB On Board Cache 1.5MB PC3200 Crosaire 5 years expriance with running HL Server 8 year over running dedicated servers. [/EDIT] [EDIT 2] Well, after vigeriously testing the 1.4 version of this plug-in, we did discover the plug-in was causing the issue. And SubStream contacted me about testing the new 1.5 version on YM! and give it a really good vigerious testing. So after two hours of keeping the server down for reconfiguring the server back to AMXX 1.71, MM 1.19 and recompiling antisilentplant.sma 1.5. Then staging the newly compiled 1.5 antisilentplant.amxx. Set the map to de_dust2 after launching the dedicated server and set the map to run for two hours (but players kept it going for about 150-180 minutes as players left and others came in then more and more) and we asked the players to test the function of NOT PLANTING and slient planting several times. They were more than happy to break a rule set in the server. But I am happy to report the server never missed a beat! I was even told SubStream even visited the server after I got everything under way and players working the crap out of this plug-in. (Hope you enjoied your stay with us SubStream!) SubStream, ABSOLUTELY MARVELOUS on the plug-in! No more crashes with 1.5 and the server has been running with this plug-in now for 522 minutes (over 8 & 2/3 hours now at the time of this posting!). Code:
CPU In Out Uptime Users FPS Players Now if there was only a plug-in that would stop the "timmer bug". Which is when the map resets all the time when a player leaves the team or game and a player was autoed switched or the player came in and joined the empty team then reset the map timmer and game after one round was played, then we would not have such lenghtly map plays. (Wishfull thinking I guess.) [/EDIT 2] |
All times are GMT -4. The time now is 22:28. |
Powered by vBulletin®
Copyright ©2000 - 2024, vBulletin Solutions, Inc.