Trying to make a simple gore mod

Archive of the old editing forum
Forum rules
Before asking on how to use a ZDoom feature, read the ZDoom wiki first. This forum is archived - please use this set of forums to ask new questions.
Locked
User avatar
Legend
Posts: 158
Joined: Fri Jun 11, 2010 12:32 am
Location: Antioch, CA

Trying to make a simple gore mod

Post by Legend »

I'm trying to make a simple gore mod using nashgore as a base. Just trying to make something a little more subtle.

I got the decals and models for the floor blood working.

My problem now is how to stop the flying pieces of blood from flying up so high. I like the bits flying off, but don't want them going all the way up to the ceiling. I would rather have them go up just slightly then fall to the ground.

I've been looking all over the wiki and tried playing with gravity. But no luck.

Any help would be appreciated.
User avatar
Mikk-
Posts: 2274
Joined: Tue Jun 30, 2009 1:31 pm

Re: Trying to make a simple gore mod

Post by Mikk- »

If the blood actors are spawned using. A_SpawnItemEx you should be able to modify the z velocity value.
User avatar
Nash
 
 
Posts: 17505
Joined: Mon Oct 27, 2003 12:07 am
Location: Kuala Lumpur, Malaysia
Contact:

Re: Trying to make a simple gore mod

Post by Nash »

I don't have the original version anymore but I don't think I used A_SpawnItemEx in that (the mod might have been made before that function existed?). I also don't remember which function was used to spawn the blood but if you can paste the code here, I might be able to help.
User avatar
Legend
Posts: 158
Joined: Fri Jun 11, 2010 12:32 am
Location: Antioch, CA

Re: Trying to make a simple gore mod

Post by Legend »

Here is the code. It is altered a bit. the nashgore stuff is toward the second half.

Code: Select all

//=======================================================
//Blood -------------------------------------------------

ACTOR LGNBlood : Blood replaces Blood

{
Game Doom
Radius 1
Height 1
Mass 1
Gravity 0.25
RenderStyle Add
Scale 0.35

+NOTELEPORT
+NOBLOCKMAP
-SOLID

States
 {
 Spawn:
 NULL A 1 A_Jump(100,2)
 BLOD A 6 BRIGHT A_SpawnDebris("NashGore_FlyingBlood",1)
 Goto DeathA
 NULL A 1 A_Jump(100,2)
 BLOD B 6 BRIGHT A_SpawnDebris("NashGore_FlyingBlood",1)
 Goto DeathB
 NULL A 1 A_Jump(100,2)
 BLOD C 6 BRIGHT A_SpawnDebris("NashGore_FlyingBlood",1)
 Goto DeathC
 NULL A 1 A_Jump(100,2)
 BLOD D 6 BRIGHT A_SpawnDebris("NashGore_FlyingBlood",1)
 Goto DeathD
 NULL A 1 A_Jump(100,2)
 BLID H 6 BRIGHT A_SpawnDebris("NashGore_FlyingBlood",1)
 Goto DeathE
 NULL A 1 A_Jump(100,2)
 BLID P 6 BRIGHT A_SpawnDebris("NashGore_FlyingBlood",1)
 Goto DeathF   
 NULL A 0
 Goto Spawn + 1
   
 DeathA:
 BLOD AAAAAA 1 BRIGHT A_FadeOut
 Stop

 DeathB:
 BLOD BBBBBB 1 BRIGHT A_FadeOut
 Stop
   
 DeathC:
 BLOD CCCCCC 1 BRIGHT A_FadeOut
 Stop
   
 DeathD:
 BLOD DDDDDD 1 BRIGHT A_FadeOut
 Stop

 DeathE:
 BLID HHHHHH 1 BRIGHT A_FadeOut
 Stop
   
 DeathF:
 BLID PPPPPP 1 BRIGHT A_FadeOut
 Stop      
 }
}
//-----------------------------------------
//Bleed ---------------------------------

ACTOR BLOODSPAWN
{		
Radius 1
Height 1
Scale 0.25

+NOGRAVITY
+NOBLOCKMAP
+FLOORCLIP
+INVISIBLE
 
States
 {
 Spawn:
 NULL AAAAAA 1 Bright A_SpawnDebris("Blood1")
 Stop
 }
}

ACTOR Blood1
{
Health 4
Radius 3
Height 6
Speed .1
RenderStyle Add
Scale 0.5
  
+MISSILE
+FLOORCLIP
+DONTSPLASH
+NOTELEPORT

States
 {
 Spawn:
 NULL A 0 A_Jump(100,1,7,13,19)
 BLOD A 15 BRIGHT
 BLOD AAAAA 1 BRIGHT A_FadeOut
 Stop
 BLOD B 15 BRIGHT
 BLOD BBBBB 1 BRIGHT A_FadeOut
 Stop
 BLOD C 15 BRIGHT
 BLOD CCCCC 1 BRIGHT A_FadeOut
 Stop
 BLOD D 15 BRIGHT
 BLOD DDDDD 1 BRIGHT A_FadeOut
 Stop
 
 Death: 
 NULL A 0
 Stop
 }
}

ACTOR LGNBloodSplash
{
Radius 1
Height 1
RenderStyle ADD
Alpha 0.5
Scale 0.8

+NOGRAVITY
-SOLID

States
 {
 Spawn:
 NULL A 0
 NULL A 0 A_Jump(127,"Fliped")
 BLID ABCD 1 BRIGHT
 BLID EF 2 BRIGHT
 BLID GH 3 BRIGHT A_FadeOut
 Stop
   
 Fliped:  
 BLID IJKL 1 BRIGHT
 BLID MN 2 BRIGHT
 BLID OP 3 BRIGHT A_FadeOut
 Stop
 }
}

// Blood sprite that flies outwards and leaves trails behind
actor NashGore_FlyingBlood
{
 game Doom
 scale 0.75
 health 1
 radius 8
 height 1
 mass 1
 //mass 1
 //gravity 0.25
 +CORPSE
 +NOTELEPORT
 +NOBLOCKMAP
 states
 {
 Spawn:
  TNT1 A 0
  FBLD A 1 A_SpawnItem("NashGore_FlyingBloodTrail",0,0,0,1)
  FBLD A 1 
//  FBLD A 1 A_SpawnItem("NashGore_FlyingBloodTrail",0,0,0,1)
//  FBLD A 1
  FBLD B 1 A_SpawnItem("NashGore_FlyingBloodTrail",0,0,0,1)
  FBLD B 1
//  FBLD B 1 A_SpawnItem("NashGore_FlyingBloodTrail",0,0,0,1)
//  FBLD B 1
  FBLD C 1 A_SpawnItem("NashGore_FlyingBloodTrail",0,0,0,1)
  FBLD C 1
//  FBLD C 1 A_SpawnItem("NashGore_FlyingBloodTrail",0,0,0,1)
//  FBLD C 1
  FBLD D 1 A_SpawnItem("NashGore_FlyingBloodTrail",0,0,0,1)
  FBLD D 1
//  FBLD D 1 A_SpawnItem("NashGore_FlyingBloodTrail",0,0,0,1)
//  FBLD D 1
  loop
 Crash:
  TNT1 A 1 A_SpawnItem("NashGore_BloodSpot",0,0,0,1)
  stop
 }
}

actor NashGore_BloodSpot
{
 game Doom
 radius 12
 height 2
 mass 1
 +NOTELEPORT
 -NOBLOCKMAP
 states
 {
 Spawn:
  TNT1 A 0
  TNT1 A 0 A_PlaySound("bloodsplat")
  TNT1 A 0 A_Jump(64,4)
  TNT1 A 0 A_Jump(128,4)
  TNT1 A 0 A_Jump(192,4)
  TNT1 A 0 A_Jump(255,4)
  // make the blood spots stay on the ground. 1500 is the default duration.
  //BSPT A 1500
  BLD1 A 3000
  stop
  //BSPT B 1500
  BLD1 B 3000
  stop
  //BSPT C 1500
  BLD1 C 3000
  stop
  //BSPT D 1500
  BLD1 D 3000
  stop
 }
}

// Blood trails spawned by FlyingBlood
actor NashGore_FlyingBloodTrail
{
 game Doom
 scale 0.70
 mass 1
 //+LOWGRAVITY (gravity 0.125)
 Gravity 5
 +NOTELEPORT
 +NOBLOCKMAP
 states
 {
  Spawn:
  BTRL A 4
  BTRL B 4
  BTRL C 4
  BTRL D 4
  stop
 }
}
Thanks.
Blue Shadow
Posts: 5046
Joined: Sun Nov 14, 2010 12:59 am

Re: Trying to make a simple gore mod

Post by Blue Shadow »

[wiki]A_SpawnDebris[/wiki] has velocity multipliers to control... the velocity of the spawned actor.

If you want more control and flexibility, then switch to using [wiki]A_SpawnItemEx[/wiki].
User avatar
Legend
Posts: 158
Joined: Fri Jun 11, 2010 12:32 am
Location: Antioch, CA

Re: Trying to make a simple gore mod

Post by Legend »

Blue Shadow wrote:[wiki]A_SpawnDebris[/wiki] has velocity multipliers to control... the velocity of the spawned actor.

If you want more control and flexibility, then switch to using [wiki]A_SpawnItemEx[/wiki].
I can't see in the wiki posts for how to make it not go as high. Sorry, I'm very new to editing.
Blue Shadow
Posts: 5046
Joined: Sun Nov 14, 2010 12:59 am

Re: Trying to make a simple gore mod

Post by Blue Shadow »

Code: Select all

A_SpawnDebris("NashGore_FlyingBlood", 1, 1.0, zvel)
... where zvel is the z-velocity multiplier. It's 1.0 by default. So, using values less than that should lower the z-velocity and thus the height the blood can reach before dropping down due to gravity.

Here is another example using A_SpawnItemEx:

Code: Select all

A_SpawnItemEx("NashGore_FlyingBlood", 0, 0, 8, random(-4, 4), random(-4, 4), zvel)
In this example, zvel is not a velocity multiplier. It's "pure" (for lack of terms) velocity.
User avatar
Legend
Posts: 158
Joined: Fri Jun 11, 2010 12:32 am
Location: Antioch, CA

Re: Trying to make a simple gore mod

Post by Legend »

Thanks Blue Shadow. I'll play around with it.
User avatar
Nash
 
 
Posts: 17505
Joined: Mon Oct 27, 2003 12:07 am
Location: Kuala Lumpur, Malaysia
Contact:

Re: Trying to make a simple gore mod

Post by Nash »

Oh, so they eventually added velocity parameters for A_SpawnDebris? Cool. =D But yeah I'd suggest switching to A_SpawnItemEx (I got rid all instances of A_SpawnDebris) for more control.
User avatar
Legend
Posts: 158
Joined: Fri Jun 11, 2010 12:32 am
Location: Antioch, CA

Re: Trying to make a simple gore mod

Post by Legend »

I tried changing the zlev to 0.25, but no luck.

This came from the version of nashgore I have. I guess I must have an older version?
Blue Shadow
Posts: 5046
Joined: Sun Nov 14, 2010 12:59 am

Re: Trying to make a simple gore mod

Post by Blue Shadow »

Try using A_SpawnItemEx instead, then, to spawn the flying blood.
Locked

Return to “Editing (Archive)”