Fortress Forever

Go Back   Fortress Forever > Community > General Discussion

Closed Thread
 
Thread Tools Display Modes
Old 03-16-2008, 06:50 AM   #1
Tsukasa
 
Join Date: Sep 2007
Class/Position: O
Gametype: CTF
Affiliations: mimic-
Posts Rated Helpful 0 Times
so, can we talk about the technical reason for no feign death?

I think i understand most of it, but there still should be some kind of hack to get it to work. Is there a way of grabbing the current coordinates of a ragdoll?

And if not, and as I suspect once a player becomes a ragdoll theres nothing you can really do to it, is there a way of replicating ragdoll physics in order to be able to grab the coordinates of it?


Once you have the coordinates, its just a camera / spawn / hitbox trick. Nothing really big there. What, specifically, is the problem here?

Edit: Oh I forgot, ragdolls are completely client-side, too, right? How exactly do ragdolls desync from client to client, if other things such as player location and such are server side?
Tsukasa is offline  


Old 03-16-2008, 07:14 PM   #2
Jiggles
Retired FF Staff
 
Jiggles's Avatar
 
Join Date: Jan 2005
Location: CowTown
Posts Rated Helpful 0 Times
Keep in mind the below is my best understanding of the situation; I could be wrong.

When the client gets the kill message, the client runs a physics simulation on the dead player's body based on the client's current "snapshot" of the world. Each client's current "snapshot" won't be identical to each other client's due to lag and various other reasons (including players who can't even "see" the dead player, and thus don't "know" about it). Further inaccuracies are likely added by the simulation itself; roundoff error, client-only entities interacting with the ragdoll, etc. (I don't really know enough about Source networking to give a full list here.)

Thus, the ragdoll's final position and orientation could be very different between clients. One solution is to have the server simulate the ragdolls, but that has two major problems. First, all of those physics calculations would lag the server considerably. Second, to look decent, the ragdolls would have to be networked to each client, which would take a huge amount of bandwidth.

There are, of course, other alternatives. A custom semi server-controlled ragdoll might reduce the network overhead to bearable levels. For example, the server networks only the position of, say, the head and torso, and the client interpolates the rest. I really don't know if this would work, though. It would take a lot of work. Also, the server would still have to do additional physics calculations.

This isn't an insurmountable problem. However, any of these custom solutions would likely a) require a lot of work, and b) increase networking overhead and/or server load a fair amount.

If the foundation of the mod relied on this I could see coming up with a solution. However, I think the cloak is an adequate replacement for feigning, and getting feigning to work properly in FF just isn't worth all the time, effort, and performance hits.
Jiggles is offline  


Old 03-16-2008, 08:06 PM   #3
Circuitous
Useless
Retired FF Staff
 
Join Date: Jun 2005
Class/Position: D Soldier, O Scout
Gametype: AvD
Posts Rated Helpful 9 Times
Send a message via AIM to Circuitous Send a message via MSN to Circuitous Send a message via Yahoo to Circuitous Send a message via Skype™ to Circuitous
For an example of how bad ragdoll synching is right now, record a demo of yourself. Kill somebody with a rocket. Then, follow that body around and keep rocketing it.

I did this once, the first shot that was supposed to hit the ragdoll missed completely. I wandered around the map shooting nothing.
__________________
Look at all those dead links.
Circuitous is offline  


Old 03-16-2008, 09:04 PM   #4
Tsukasa
 
Join Date: Sep 2007
Class/Position: O
Gametype: CTF
Affiliations: mimic-
Posts Rated Helpful 0 Times
Okay, that makes sense.

From what you have described, I think this is an easy problem to fix once you wrap your head around it.

The first step here is to define dying differently. The second is to let the server keep track of only the center of the model, since that's what we really care about. This would be a custom object of some sort, that way the networking is not affected and people don't load things they are not near.

The person who does the 'killing' probably has the most accurate version of events, lets assume this. Lets say a soldier (player B) blows up a scout (player A). We tell the server, player A has died at 10,10,10 with a resulting push due to the rocket blast of -120, 24, 10 degrees and a force of 9. At this point, a 1x1 invisible entity is spawned by the server, with a ragdoll attached to it, in the specified location with the specified force (it will be attached to the center of the model, the crotch). We would also have to override ragdoll lifetime, lest a feigned spy has his corporal body disappear.

Any thoughts?
Tsukasa is offline  


Old 03-16-2008, 09:30 PM   #5
trepid_jon
Ray Ray Johnson
Fortress Forever Staff
 
trepid_jon's Avatar
 
Join Date: Feb 2005
Location: Dallas, TX
Class/Position: D Civilian
Gametype: Rocket Jousting
Affiliations: EAFD
Posts Rated Helpful 78 Times
Send a message via ICQ to trepid_jon Send a message via AIM to trepid_jon
My thoughts are that "an easy problem to fix" is an understatement. What you're talking about with making players tell the server how that player killed another player in order to match things up better or something...that seems like an overly complex way of doing it, because the kill/death/event systems would need to be reworked. And for not much benefit or reliability, to be honest. It sounds like it'd almost be like going from server-client to some kind of peer-to-peer + server-client hybrid. You really can't rely a client to inform the server about something as important as how a player died. The server figures that stuff out...and most of the time, the clients have no idea what's really going on other than what they're predicting.

But we talked about basically anchoring a feigned ragdoll to an object, whether that'd be the torso, the player, or some new object. That'd probably be the way to go if we did do it, but I don't know if we'll ever add feigning back in.

Cause what would be the point of all that now? I think FF cloaking is way better than TFC feigning. Especially FF's cloak+ragdoll. You can essentially feign like in TFC, but keep walking around cloaked.

So the idea would be to get rid of cloaking and go back to feigning? Or add feigning to the spy's already powerful feature set?
__________________
Support FF:
Trepid
steamcommunity.com/id/trepid_jon/
trepid_jon is offline  


Old 03-16-2008, 09:40 PM   #6
Tsukasa
 
Join Date: Sep 2007
Class/Position: O
Gametype: CTF
Affiliations: mimic-
Posts Rated Helpful 0 Times
Well, I imagine the server can calculate the death velocities and angles as well.

Feign death can replace cloak. Cloak was created to approximate feigning death in the first place. Cloak works well, but we have all these problems with fog and direct x shader versions and some people seeing the spy completely and others not, dependent on game resolution and antialiasing settings. Feign death is much better imo.
Tsukasa is offline  


Old 03-16-2008, 09:43 PM   #7
Jiggles
Retired FF Staff
 
Jiggles's Avatar
 
Join Date: Jan 2005
Location: CowTown
Posts Rated Helpful 0 Times
But then we'd be exchanging one set of difficulties for another set of potentially larger difficulties. Not a good trade off, imo. Better to focus on ways we can improve cloaking.
Jiggles is offline  


Old 03-16-2008, 09:47 PM   #8
greenday5494
Holy shit, thats kerrigan!
D&A Member
 
greenday5494's Avatar
 
Join Date: Sep 2007
Class/Position: D, whatever the team needs, usually engy
Gametype: AvD
Affiliations: None
Posts Rated Helpful 1 Times
look at gmod. go on a server, and spawn a ragdoll. you see how fucking laggy that is? now, thats just one ragdoll. imagine a whole team of spies feigning. servers crashes in an instant and greifers are rampant. Cloak DOES need to be improved, however. firstly, there no shaders on eithe DX8, which does support shaders, or on DX7, which doesnt support shaders. DX8/7 makes seeing spies wayyyyyyyy harder than it should be. if you say easier, see thread in other sub-forum. i took screenshots in third-person of both DX7 and DX9.
greenday5494 is offline  


Old 03-16-2008, 10:47 PM   #9
Agent_W
The Black Shield
 
Agent_W's Avatar
 
Join Date: Mar 2008
Posts Rated Helpful 0 Times
I'm actually a big fan of the cloaking system. My kudos go to the FF dev team. It was something I always believe spies should have. It is a very fine substitution to feign death, and by the mechanics of it, it's still tradition-bound to TF(at least for me).

Feigning death was fine back then, but even then, it was limited. You had to stay STILL and not look around. Your body would rotate upon doing so on the ground, which will have you dead soon by a wary enemy. I also recall there was a disguise exploit that the enemy can read out your disguises if your dead body still laid there, and that the corpise would change as you did. In TFC, I was not a big fan of feigning death, but it was useful when you wanted to reduce your profile down enough to where you can decide what to do next.

I do love the cloaking because you can still move around. I find it greatly useful because you can be ready to shoot(unlike feigning death in TFC). However, I'm not sure if anything needs to be changed to it because I don't want it OP. There has to be SOMEWAY the enemy can see a cloaked spy.

My favorite tactic is what I call the "Big Boo Sneak". I stay still in the line of sight of enemies and only advance when they have their backs turned, just like what the Boo ghosts do to Mario in Super Mario World(if you recall :P).

And people need to realize that cloaking is not perfect invisability. There's probably some whiners crying about it but I got to tell them frankly: the cloak requires SKILL. Knowing how to use it and how it works is important. Don't assume just moving around in it will make you undetectable. Again, more kudos to the dev team because they engineered it to where cloaking replaces feigning death to where it serves best to have you stay STILL.

I'm well convinced that the cloak is in a sweet spot, but I only say it because I feel it's really SENSITIVE to any positive or negative changes. My advice: LEAVE IT AS IS! :P
Agent_W is offline  


Old 03-16-2008, 11:59 PM   #10
mervaka
A Very Sound Guy!
Fortress Forever Staff
 
mervaka's Avatar
 
Join Date: May 2005
Location: UK
Posts Rated Helpful 15 Times
Quote:
Originally Posted by Tsukasa
Well, I imagine the server can calculate the death velocities and angles as well.

Feign death can replace cloak. Cloak was created to approximate feigning death in the first place. Cloak works well, but we have all these problems with fog and direct x shader versions and some people seeing the spy completely and others not, dependent on game resolution and antialiasing settings. Feign death is much better imo.
from what i can tell, you just want feign back in by hook or crook. if it was feasible, we wouldn't be having this conversation now.
mervaka is offline  


Old 03-17-2008, 01:15 AM   #11
greenday5494
Holy shit, thats kerrigan!
D&A Member
 
greenday5494's Avatar
 
Join Date: Sep 2007
Class/Position: D, whatever the team needs, usually engy
Gametype: AvD
Affiliations: None
Posts Rated Helpful 1 Times
and personally, i love cloak. the shaders effects make me jitter
greenday5494 is offline  


Old 03-17-2008, 01:23 AM   #12
Tsukasa
 
Join Date: Sep 2007
Class/Position: O
Gametype: CTF
Affiliations: mimic-
Posts Rated Helpful 0 Times
Quote:
Originally Posted by mervaka
from what i can tell, you just want feign back in by hook or crook. if it was feasible, we wouldn't be having this conversation now.
Just saying it isn't feasible is a convenient way of avoiding the issue; this thread was created to discussing the technical aspects of why it's supposedly not possible. There are hundreds of threads blaming technical reasons but not one specifically nailing what exactly the problem is. Yes, it requires some work to code. If thats the reason then just say so, otherwise tell me what im missing.

Cloak is a good idea on paper. On my 22" widescreen 60fps gaming rig I can see cloaked crouched spies in shadows without even trying. Feign death levels the playing field. We can make feign death better then TFC; the corpse moving around as you look does seem rather silly.

The thing that people have forgotten is that theres a difference between realism and theme. FF/TFC has no realism, but a definite theme. The spy having a futuristic light bending cloaking device doesn't fit in well with that theme. Only moving when people aren't looking works equally well with feign death as it does with cloak. I agree that cloak is easier and in some regards nicer then feign death, however, every game has boundries in place, and the skill is excelling within those boundries. I imagine if we took the jump pad back out, some people would be complaining because they have gotten used to playing with it.


Please, save the feign death vs. cloak discussion for another topic. Let's also stop saying things like its not technically feasible.

The question is, what -exactly- is the problem?

Last edited by Tsukasa; 03-17-2008 at 01:30 AM.
Tsukasa is offline  


Old 03-17-2008, 02:01 AM   #13
Jiggles
Retired FF Staff
 
Jiggles's Avatar
 
Join Date: Jan 2005
Location: CowTown
Posts Rated Helpful 0 Times
Um...I thought we just explained that?
Jiggles is offline  


Old 03-17-2008, 02:01 AM   #14
greenday5494
Holy shit, thats kerrigan!
D&A Member
 
greenday5494's Avatar
 
Join Date: Sep 2007
Class/Position: D, whatever the team needs, usually engy
Gametype: AvD
Affiliations: None
Posts Rated Helpful 1 Times
FF/TFC doesnt really have a theme, either. why does the scout have a highly futurisic pad that can launch you 60FT?
greenday5494 is offline  


Old 03-17-2008, 02:04 AM   #15
mervaka
A Very Sound Guy!
Fortress Forever Staff
 
mervaka's Avatar
 
Join Date: May 2005
Location: UK
Posts Rated Helpful 15 Times
its been discussed to death before, and i cant be bothered to trapse through the plagueland of buried threads to dig it up.

the jist of it was, if you wanted to do it properly and sync every bone movement up, it took up shitloads of network bandwidth. anything less and it will be a shoddy implementation, either because it looks shit, or things just dont line up.

cloak repalces feign so that the ragdoll corpse DOESNT MATTER in terms of where it lands. FF uses client side corpses. if you had one server controlled corpse among a zillion client ones, you can tell it a mile off, therefore you have to have all the corpse calculation done on the server.... etc

10 bonus points if you can describe FF's theme without using the word futuristickey.....ish
mervaka is offline  


Old 03-17-2008, 02:16 AM   #16
Circuitous
Useless
Retired FF Staff
 
Join Date: Jun 2005
Class/Position: D Soldier, O Scout
Gametype: AvD
Posts Rated Helpful 9 Times
Send a message via AIM to Circuitous Send a message via MSN to Circuitous Send a message via Yahoo to Circuitous Send a message via Skype™ to Circuitous
Quote:
Originally Posted by Tsukasa
The question is, what -exactly- is the problem?
You... you did read the thread, right?

It's not that it's impossible, really, it's just that it's a ridiculous amount of work, tweaking, optimization, and coding for an effect that is not significantly better than cloaking in any way, shape, or form.
__________________
Look at all those dead links.
Circuitous is offline  


Old 03-17-2008, 02:29 AM   #17
Tsukasa
 
Join Date: Sep 2007
Class/Position: O
Gametype: CTF
Affiliations: mimic-
Posts Rated Helpful 0 Times
Okay, that makes sense.
Tsukasa is offline  


Old 03-17-2008, 03:02 AM   #18
reaper18
sKeeD
D&A Member
Beta Tester
 
reaper18's Avatar
 
Join Date: Jul 2007
Location: Pittsburgh, PA
Class/Position: Scout, Demo, Solly
Gametype: Any
Posts Rated Helpful 21 Times
Send a message via AIM to reaper18
Quote:
Originally Posted by mervaka
its been discussed to death before, and i cant be bothered to trapse through the plagueland of buried threads to dig it up.

the jist of it was, if you wanted to do it properly and sync every bone movement up, it took up shitloads of network bandwidth. anything less and it will be a shoddy implementation, either because it looks shit, or things just dont line up.

cloak repalces feign so that the ragdoll corpse DOESNT MATTER in terms of where it lands. FF uses client side corpses. if you had one server controlled corpse among a zillion client ones, you can tell it a mile off, therefore you have to have all the corpse calculation done on the server.... etc

10 bonus points if you can describe FF's theme without using the word futuristickey.....ish
post-modern
reaper18 is offline  


Old 03-17-2008, 03:05 AM   #19
mervaka
A Very Sound Guy!
Fortress Forever Staff
 
mervaka's Avatar
 
Join Date: May 2005
Location: UK
Posts Rated Helpful 15 Times
Quote:
Originally Posted by Circuitous
You... you did read the thread, right?

It's not that it's impossible, really, it's just that it's a ridiculous amount of work, tweaking, optimization, and coding for an effect that is not significantly better than cloaking in any way, shape, or form.
but, but....

i say its not feasible. all of what circ said is on top of the lack of feasibility, ie the network stuff we cant do much about until everyone has fibre to their doorstep or something.
mervaka is offline  


Old 03-17-2008, 03:10 AM   #20
Circuitous
Useless
Retired FF Staff
 
Join Date: Jun 2005
Class/Position: D Soldier, O Scout
Gametype: AvD
Posts Rated Helpful 9 Times
Send a message via AIM to Circuitous Send a message via MSN to Circuitous Send a message via Yahoo to Circuitous Send a message via Skype™ to Circuitous
I'm making the potentially-false assumption that it can be done in such a way as to not soak up so very much bandwidth.
__________________
Look at all those dead links.
Circuitous is offline  


Closed Thread


Currently Active Users Viewing This Thread: 1 (0 members and 1 guests)
 

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT. The time now is 07:24 AM.


Powered by vBulletin® Version 3.8.7
Copyright ©2000 - 2024, vBulletin Solutions, Inc.