View Full Version : DoD Gore Custom (v1.7)
diamond-optic
07-17-2006, 06:18 PM
DoD Gore Custom
- Version 1.7
- 01.03.2006
- edited: diamond-optic
- port: firestorm
- original: mike_cao
- Server List: http://www.game-monitor.com/search.php?rulename=dod_gore_custom_stats
Credit:
- Original plugin by mike_cao (plugin_gore)
- Ported to DoD by FireStorm
- Modified by diamond-opticInformation:
- Adds more gore & such to day of defeat...
- Works with both win32 & linux servers....
CVARs:
dod_gore "abcdef" //Gore Flags
//needs "c" flag
dod_gore_bleed_hp "5" //Bleed when hp gets to this or lower
dod_gore_bleed_sound "1" //play sound when player bleeds
dod_gore_bleed_sound_when "2" //when to play sound after they start bleeding:
// 1 = everytime they bleed during that life
// 2 = only the 1st time during that life
//needs "f" flag
dod_gore_heartbeat_hp "1" //Start heartbeat when hp gets to this or lowerGore Flags:
a - Headshot blood
b - More blood for non-headshots
c - Bleeding on low health
d - Even More Blood
e - Brain gibs for headshots
f - Heartbeat sound that nearby players can hearVersion Info:
- 06.11.2006 Version 1.0
Released modified version of FireStorms gore plugin
- 06.25.2006 Version 1.1
Added CVAR for bleeding effect hp
- 06.30.2006 Version 1.2
Made a few adjustments to the fx & such
- 07.09.2006 Version 1.3
Removed FUN module
- 07.16.2006 Version 1.4
Removed redundant defines
Added 'e' flag for brain gibs on headshots
- 08.31.2006 Version 1.5
Renamed CVARS, so be sure to make note of that..
More adjustments to fx
Removed code that didnt work & gave an error (sorry forgot it was there)
Removed more pointless unused code
Added bleeding sound
Added "f" flag for heartbeat sound
Added BLEED_TIME define to allow easier changing of how often client bleeds
Added check in dmg func to start bleeding/heartbeat quicker
- 11.02.2006 Version 1.6
Added public cvar for stats tracking
Blood now comes from approximate area of damage (not really noticable i suppose lol)
Fixed a mistake in the heartbeat section
- 01.03.2007 Version 1.7
fixed cvar typo in comments (thanks Drek)
made tasks use a unique id (thanks santa_sh0t_tupac)
replaced ResetHud with dod_client_spawn
DOWNLOAD URL: http://www.avamods.com/download.php?view.44
=|[76AD]|= TatsuSaisei
08-20-2006, 07:43 PM
I figured out how to change the color of the blood that is left on the ground after player dies, but is there a way to change the color of the blood splatters that emit from the player when getting damaged ?
I think the blood in this plugin is way too red... not too realistic looking.
diamond-optic
08-20-2006, 11:06 PM
ya there is..
in the fx_blood function its this line:
write_byte(248) // color index then in fx_bleed function:
write_byte(70) // color
and so on for the other functions.. im pretty sure all the color write_bytes are commented as being the color part of the code..
the color index numbers come off of this:
http://img216.imageshack.us/img216/5858/palettelu8.png
(http://img216.imageshack.us/my.php?image=palettelu8.png)
=|[76AD]|= TatsuSaisei
08-21-2006, 01:22 AM
ya there is..
in the fx_blood function its this line:
then in fx_bleed function:
and so on for the other functions.. im pretty sure all the color write_bytes are commented as being the color part of the code..
the color index numbers come off of this:
http://img216.imageshack.us/img216/5858/palettelu8.png
(http://img216.imageshack.us/my.php?image=palettelu8.png)
TY !! I saw the comments, but until I got this "image" of the colors, I didn't want to spend all night guessing at the colors. Thanx again !!
diamond-optic
08-21-2006, 09:31 PM
what did you change, and what colors did you change them to?
just cuase i wanna take a looky lol
=|[76AD]|= TatsuSaisei
08-21-2006, 11:17 PM
what did you change, and what colors did you change them to?
just cause i wanna take a looky lol
It looks alot better now and a hell of alot more realistic...
public event_blood()
{
new iFlags = get_gore_flags()
if(iFlags&GORE_BLEEDING)
{
new iPlayer, iPlayers[MAX_PLAYERS], iNumPlayers, iOrigin[3]
get_players(iPlayers,iNumPlayers,"a")
for(new i = 0; i < iNumPlayers; i++)
{
iPlayer = iPlayers[i]
if(get_user_health(iPlayer) <= get_pcvar_num(p_bleeding_hp))
{
get_user_origin(iPlayer,iOrigin)
if(iFlags&GORE_EXTRA)
{
fx_blood(iOrigin)
fx_bleed(iOrigin)
fx_bleed(iOrigin)
fx_ground_decal(iOrigin,3)
fx_body_decal(iOrigin,2)
}
else
{
fx_bleed(iOrigin)
fx_ground_decal(iOrigin,1)
fx_body_decal(iOrigin,1)
}
message_begin(MSG_ONE_UNRELIABLE,get_user_msgid("Object"),{0,0,0},iPlayer)
write_byte(1) // status (0=hide, 1=show, 2=flash)
write_string("dmg_bleed") // sprite name
write_byte(100) // red
write_byte(0) // green
write_byte(0) // blue
message_end()
}
}
}
}
public fx_blood(origin[3])
{
message_begin(MSG_BROADCAST,SVC_TEMPENTITY)
write_byte(TE_BLOODSPRITE)
write_coord(origin[0]+random_num(-20,20))
write_coord(origin[1]+random_num(-20,20))
write_coord(origin[2]+random_num(-20,25))
write_short(spr_blood_spray)
write_short(spr_blood_drop)
write_byte(64) // color index (248)
write_byte(random_num(6,8)) // size
message_end()
}
public fx_bleed(origin[3])
{
// Blood spray
message_begin(MSG_BROADCAST,SVC_TEMPENTITY)
write_byte(TE_BLOODSTREAM)
write_coord(origin[0])
write_coord(origin[1])
write_coord(origin[2]+10)
write_coord(random_num(-25,25)) // x
write_coord(random_num(-25,25)) // y
write_coord(random_num(-10,15)) // z
write_byte(65) // color (70)
write_byte(random_num(25,50)) // speed
message_end()
}
public fx_headshot(origin[3])
{
//head decal 1
for(new i = 0; i < 2; i++)
{
message_begin(MSG_BROADCAST,SVC_TEMPENTITY)
write_byte(TE_WORLDDECAL)
write_coord(origin[0]+random_num(-50,50))
write_coord(origin[1]+random_num(-50,50))
write_coord(origin[2]+random_num(25,35))
write_byte(ground_decal[random_num(0,8)]) // index
message_end()
}
//head decal 2
for(new i = 0; i < 2; i++)
{
message_begin(MSG_BROADCAST,SVC_TEMPENTITY)
write_byte(TE_WORLDDECAL)
write_coord(origin[0]+random_num(-25,25))
write_coord(origin[1]+random_num(-25,25))
write_coord(origin[2]+random_num(25,35))
write_byte(ground_decal[random_num(0,8)]) // index
message_end()
}
//blood stream
message_begin(MSG_BROADCAST,SVC_TEMPENTITY)
write_byte(TE_BLOODSTREAM) //101
write_coord(origin[0])
write_coord(origin[1])
write_coord(origin[2]+30)
write_coord(random_num(-2,2)) // x
write_coord(random_num(-2,2)) // y
write_coord(random_num(1,2)) // z
write_byte(66) // color (70)
write_byte(random_num(50,100)) // speed
message_end()
//blood sprite
message_begin(MSG_BROADCAST,SVC_TEMPENTITY)
write_byte(TE_BLOODSPRITE)
write_coord(origin[0])
write_coord(origin[1])
write_coord(origin[2]+random_num(28,32))
write_short(spr_blood_spray)
write_short(spr_blood_drop)
write_byte(66) // color index 248
write_byte(9) // size
message_end()
//sparks
message_begin(MSG_BROADCAST,SVC_TEMPENTITY)
write_byte(9)
write_coord(origin[0])
write_coord(origin[1])
write_coord(origin[2]+32)
message_end()
//dynamic light
message_begin(MSG_BROADCAST,SVC_TEMPENTITY)
write_byte(TE_DLIGHT)
write_coord(origin[0])
write_coord(origin[1])
write_coord(origin[2]+30)
write_byte(5) // radius
write_byte(50) // red
write_byte(0) // green
write_byte(0) // blue
write_byte(4) // life
write_byte(25) // decay rate
message_end()
}
diamond-optic
08-21-2006, 11:45 PM
wait a minute...
does this even work:
message_begin(MSG_ONE_UNRELIABLE,get_user_msgid("Object"),{0,0,0},iPlayer) write_byte(1) // status (0=hide, 1=show, 2=flash)
write_string("dmg_bleed") // sprite name
write_byte(100) // red
write_byte(0) // green
write_byte(0) // bluemessage_end()
was that there & does it work? cuase i didnt think i left the hud icon in, nor do i think it worked...
=|[76AD]|= TatsuSaisei
08-22-2006, 12:12 AM
wait a minute...
does this even work:
message_begin(MSG_ONE_UNRELIABLE,get_user_msgid("Object"),{0,0,0},iPlayer) write_byte(1) // status (0=hide, 1=show, 2=flash)
write_string("dmg_bleed") // sprite name
write_byte(100) // red
write_byte(0) // green
write_byte(0) // blue
message_end()
was that there & does it work? cuase i didnt think i left the hud icon in, nor do i think it worked...
that is in your recent code, dont know if it "works" cause honestly, I wasn't sure what exactly it did, but since it was using RGB to color whatever it was, I changed the original numbers... if it is a hud sprite, then no I never saw it...
diamond-optic
08-22-2006, 12:50 AM
ya that was supposed to display the drop of blood sprite on the hud when you were bleeding.. but i didnt get it to work with the sprite thats in one of the gcf files..
diamond-optic
09-06-2006, 12:13 AM
update v1.5
- 08.31.2006 Version 1.5
Renamed CVARS, so be sure to make note of that..
More adjustments to fx
Removed code that didnt work & gave an error (sorry forgot it was there)
Removed more pointless unused code
Added bleeding sound
Added "f" flag for heartbeat sound
Added BLEED_TIME define to allow easier changing of how often client bleeds
Added check in dmg func to start bleeding/heartbeat quicker
be sure to change your cvar's in the amxx.cfg, i decided it looks better with a dod_ prefix instead of the amx_ one...
diamond-optic
11-02-2006, 10:32 PM
update to v1.6
- 11.02.2006 Version 1.6
Added public cvar for stats tracking
Blood now comes from approximate area of damage (not really noticable i suppose lol)
Fixed a mistake in the heartbeat section
excalibur
11-23-2006, 10:08 PM
what is the line that i put into the plugins.ini folder for this mod?
KidTwisted
12-16-2006, 04:54 AM
Hey diamond-optic,
I've been running vers. 1.6 for bit now and really like what you have done.
I did notice that the stats don't seem to be showing up at amxx plugin stats page, that was your intent - right?
on an other note-
I was running amx_gore_ultimate.amxx vers 1.5 before switching over to yours.
The one feature I miss from amx_gore_ultimate is the HE gibs.
When a player died from an HE attack the player model whould be replaced with the hgibs.mdl. It is a pretty cool effect.
Would you be up to adding a "g flag" for HE gibs :)
diamond-optic
12-16-2006, 12:24 PM
i could add that...
only reason i really didnt was because the gibs (at least the way other plugins i have tried do them) caused linux servers to crash very often... and people arent smart enough to read not to use the gib flag if you run linux... but maybe it works now.. or maybe just that 'certain way' caused crashes...
as for the stats tracker.. i havent submitted the info to bailopan yet to add to his database...
you can still view it thru game-monitor.com (http://www.game-monitor.com/search.php?rulename=dod_gore_custom_stats) tho
KidTwisted
12-16-2006, 03:59 PM
Hmmmm..
If only more people would read instructions...LOL
Well I hope you might consider adding the effect. I feel it would complete the Gore plugin, nothing else that I can think of defines "GORE" as a well placed bazooka rocket blowing your enemy into bloody body parts.
about the stats, WoW - I didn't know game monitor had all that search power.
Learn something new every day.
diamond-optic
12-16-2006, 06:33 PM
well it gets the server's public cvars.. so its gonna pick those up with them..
but ill play with the gore.. see if it ends up making my server crash.. and if it does i'll just use a #define to turn it on.. so idiots might be less likely to turn it on when they shouldnt...
then again i run into server hosts that a) dont know what os their server is running on and b) think because they play the game on windows that they need to put windows files on their server..
but we'll see lol
KidTwisted
12-17-2006, 01:49 AM
Very cool, check out this reskin of hgib.mdl
http://www.fpsbanana.com/skins/3957
There is 14 submodels (great body parts)
much better then the standard one.
Ater the explosion maybe 4 or 5 random submodels could be dropped where the victim once stood and with your eye for detail (like with the blood from the damage area) I know you could make this pretty disgusting - LOL
Not a big deal, but there is a typo in the information at the top of the thread and the top of the plugin. The cvar is spelled correctly in the plugin itself.
dod_gore_blead_hp "5" //Bleed when hp gets to this or lower
Should be:
dod_gore_bleed_hp "5" //Bleed when hp gets to this or lower
diamond-optic
01-02-2007, 02:30 PM
heh damn.. thanks!
{SR} *Raggy*
01-02-2007, 05:47 PM
LOL Diamond made a bubu
This is an amazing plugin. Thanks for all the work that went into it. I do have a request/suggestion though. I don't know if it is possible, but SturmBot in DOD beta days, used to have an option to have corpses stay on the ground. I know that stopped working in 1.0, I'm pretty sure the treatment of corpses was changed. However, it would be tres cool if this plugin would have the option to have corpses stay on the ground. With SturmBot what you did was specify a number of corpses, so if it was eight when the the ninth person died the oldest corpse would disappear. The present sinking effect is quite good, so it would be nice if that was used.
=|[76AD]|= TatsuSaisei
01-04-2007, 01:28 PM
This is an amazing plugin. Thanks for all the work that went into it. I do have a request/suggestion though. I don't know if it is possible, but SturmBot in DOD beta days, used to have an option to have corpses stay on the ground. I know that stopped working in 1.0, I'm pretty sure the treatment of corpses was changed. However, it would be tres cool if this plugin would have the option to have corpses stay on the ground. With SturmBot what you did was specify a number of corpses, so if it was eight when the the ninth person died the oldest corpse would disappear. The present sinking effect is quite good, so it would be nice if that was used.
Well, you can make the corpses stay longer on YOUR screen if this is what you want, by setting cl_corpsestay to a larger number (number = seconds to stay in view) but I must warn you, having alot of corpses on the field while playing will lag some PCs down if it can not handle the extra work of having all those extra models to display...
as for forcing all others to see the corpse stay for longer then their own personal cvars, without forcing their settings, I do not know how...
diamond-optic
01-05-2007, 11:50 PM
update to version 1.7
- 01.03.2007 Version 1.7
fixed cvar typo in comments (thanks Drek)
made tasks use a unique id (thanks santa_sh0t_tupac)
replaced ResetHud with dod_client_spawn
{DwP} 325th ABN
08-24-2007, 10:23 PM
what is the line that i put into the plugins.ini folder for this mod?
anyone know
diamond-optic
08-25-2007, 01:34 AM
what is the line that i put into the plugins.ini folder for this mod?
anyone know
its the exact name of the compiled file (with extension)
...so it would be: dod_gore_custom.amxx
Cpt. Knights
03-31-2008, 10:30 PM
i cant seem to get this plugin working i keep getting this in my log [AMXX] Invalid Plugin (plugin "dod_gore_custom.amxx") What am i doing wrong? im new to this
diamond-optic
03-31-2008, 10:45 PM
did you compile the plugin and put it in the ../addons/amxmodx/plugins/ folder?
Cpt. Knights
03-31-2008, 11:27 PM
I just downloaded it from here, uploaded it into the plugins file, added it to plugins.ini and uploaded that and put the cvars in, i thought thats all i had to do
meathead
04-01-2008, 08:40 AM
http://wiki.amxmodx.org/index.php/Configuring_AMX_Mod_X#Plugins
vBulletin® v3.8.6, Copyright ©2000-2012, Jelsoft Enterprises Ltd.