Page 1 of 3
RaQdoll
Posted: Fri Aug 22, 2014 8:05 pm
by Error
Been slowly modding in my spare time, which doesn't happen too incredibly often. Working on ragdolls in Quake.
No extensions needed. Just multiple models and good ole Quake physics action. Wish I had a good video of it in action. Can anyone suggest a good program to video this?
Realtime limb "draping"
Pile-Up action
Re: RaQdoll
Posted: Fri Aug 22, 2014 8:52 pm
by leileilol
Darkpalces does have built-in video capture functions IIRC AFAIK
Re: RaQdoll
Posted: Fri Aug 22, 2014 8:56 pm
by Error
uncompressed, the videos get HUGE
Re: RaQdoll
Posted: Fri Aug 22, 2014 9:52 pm
by Error
Disclaimer: These aren't high quality ragdolls. I will never claim they are. The effect is quite nice though. Best option I could come up with without switching model formats and tossing a shit ton of extensions on the mod.
Re: RaQdoll
Posted: Fri Aug 22, 2014 10:01 pm
by Spirit
DP can record straight to compressed Theora video I think. Will look awful though. reQuiem has incredibly easy video capture (haven't tested it on Windows myself). Just make sure VSync is off and it will be only limited by your harddisk speed. Here is a slightly out of date but hopefully working beta:
http://chunk.io/f/d0bf59d08b5c4d8692ad30df8b7e9bb6
Just record a demo, then "capturedemo demoname" and it will write an uncompressed AVI. Yes, those get big. Just compress them later on. If you are on Linux, just use ffmpeg+x264: "ffmpeg -i movie.avi -acodec libmp3lame -ab 192k -vcodec libx264 -preset slow -crf 20 movie.mkv"
It also has a builtin spawn command so you could easily populate the map
Re: RaQdoll
Posted: Sat Aug 23, 2014 4:43 am
by frag.machine
Nice... Do you intend to extend this to monsters, too ?
Re: RaQdoll
Posted: Sat Aug 23, 2014 12:40 pm
by gnounc
*gasp* HE LIVES!
Re: RaQdoll
Posted: Mon Aug 25, 2014 12:40 am
by Error
Yes, easily done for monsters. That's after I get it how I want it. I will release this when completed.
Quick QC question:
What would be the best way to have an entity "circle" another entity while being affected by gravity and velocity? It should be a straight line on a set distance. Tracelines aren't working too well for me. All my entities are movetype_bounce currently.
Re: RaQdoll
Posted: Mon Aug 25, 2014 9:16 am
by r00k
Maybe you can do something fancy with MOVETYPE_FOLLOW?
Re: RaQdoll
Posted: Mon Aug 25, 2014 3:11 pm
by toneddu2000
Great addition Error! I can't wait to see more! What kind of models are? IQM?
I use Kazam Screencaster on Ubuntu and it records DP very well
Keep up the good worK!
Re: RaQdoll
Posted: Mon Aug 25, 2014 6:34 pm
by Error
The model format is mdl. I don't want to use movetype_follow. It won't work any better than the way I'm already doing this. I'm trying to find a good way for an entity to orbit another entity in a fixed distance while being affecting by velocity and gravity.
Re: RaQdoll
Posted: Tue Aug 26, 2014 12:54 am
by frag.machine
@Error: here's a code snippet from Spinal's Total Destruction mod. It is from the "sucker ball" attack (a kind of black hole/vortex charm):
Code: Select all
void() Sucker_Suck =
{
if (self.ltime < time)
{
self.health = 200;
self.owner = self.goalentity; // REMENDO
GrenadeExplode ();
return;
}
if (self.frags < 525)
self.frags = self.frags + 10;
local entity e;
e = findradius(self.origin, 400);
while (e)
{
if ((e.classname == "player") ||
(e.classname == "missile") ||
(e.classname == "grenade") ||
(e.classname == "spike") ||
(e.classname == "gib") ||
(e.classname == "backpack") ||
(e.classname == "rune") ||
((e.classname == "td_temp") && (e.magic == 102)) || // pipebombs
((e.classname == "td_temp") && (e.magic == 24)) // trappacks
)
{
traceline(self.origin, e.origin, FALSE, self);
if ((trace_ent == e) || (trace_fraction == 1.0))
{
e.flags = e.flags - (e.flags & FL_ONGROUND);
local vector vd;
vd = self.origin - e.origin;
// impedir stuck de itens
vd_x = vd_x + crandom() * 32;
vd_y = vd_y + crandom() * 32;
vd_z = vd_z + crandom() * 32;
vd = normalize (vd);
vd = vd * self.frags;
if (e.classname != "player")
e.velocity = e.velocity + vd * (2 + random()); //random=impedir stuck de itens
else
e.velocity = e.velocity + vd;
}
}
e = e.chain;
}
self.effects = self.effects | EF_MUZZLEFLASH;
self.nextthink = time + 0.1;
};
DISCLAIMER: I am not the author (although I believe he's fine with someone reusing it).
Re: RaQdoll
Posted: Thu Aug 28, 2014 3:39 pm
by Spiney
You can do ragdolls with MDL?
mind = blown
Re: RaQdoll
Posted: Sun Aug 31, 2014 4:07 pm
by Error
Re: RaQdoll
Posted: Sun Aug 31, 2014 4:16 pm
by toneddu2000
RaQdolls: very very cool, but when they touch the ground I'd expect more bouncing (like stick phys)
RaQdoll stick physics: supercool, really. Maybe a LIIITTLE quicker and it's perfect
congrats dude!