Multiplayer - Bumping other ships - Slingshot + massive dam

All other topics around Descent and D2X-XL

Moderators: Frustikus, simX, Aus-RED-5

Thraka
Posts: 50
Joined: Fri Apr 18, 2008 6:07 pm

Multiplayer - Bumping other ships - Slingshot + massive dam

Postby Thraka » Sun May 10, 2009 5:18 pm

I was playing co-op the other day, and while I like FF on (i don't know if you can turn it off, but i don't want to) the bumping into a friendly ship can be devistating. I was playing with two others when I saw one turn the cornor and run into the back of the other ship, who was not moving. The grinding sound was there then all of a sudden the ship was catipaulted back into the wall and exploded.

Another time, one ship and myself were in the coridoor waiting for the third. It looked like he had room to sqeeze by, but he sort of grinded into me and backed up. My shield went down from around 100 to 15 in that second of time.

I'm curious what everyone thinks bumping should be like in multiplayer. If you have a shield, I would think they should like bounce off eachother. Sort of the way current FPS do. Someone bumps you, and you move slightly out of the way.

However, I think there should still be a tiny bit of damage to the shield. But currently, it feels like they just get locked into eachother, almost like a magnet. And other times it doesn't seem to do any damage.
User avatar
pokeman7452
Posts: 589
Joined: Wed Oct 24, 2007 2:33 pm
Location: Northern VA, USA

Postby pokeman7452 » Sun May 10, 2009 6:50 pm

It does seem collision hanlding in D2X-XL has been degrading. Not surprising with all the hit detection adjustments.
Laptop: (outdated)——————————————————————————————Desktop:
ASUS G72GXBBCDDDHLMPPPRTVWcdeefghimnoorruyz2 5 6 8000+-./()Newegged
Core 2 Duo (2.5Ghz)ABBDDGHLMPPPRSSTUVWXcdefgimnry6 78000+-/i5 3570K (4.0-4.7ghz)
6GB DDR2ABCDGHLMPPPSSTUVWXcdeefghimnoorruyz2 5 7 8000+-./()16GB DDR3
Geforce GTX 260MABBCDDDHLPPPRSSUVWdghimnoruyz2 5 7800+-./()GTX650Ti
80GB + 500GB HDDACDLMPPPRSSTUVWXcdeefghimnoorruyz2 267-./()2X500GB in RAID0 + 1TB
DL DVD+-RWABBCGGHMPPPSSTUXcdeefghimnoorruyz2 2 5 678000./()52X CD-R | HD DVD/Blu-Ray, DL DVD+-RW + LS
Win 7 Home Pre/XP ProABBCDDDGGLMRSSTUVcdfghuyz22568000+-.()Win 7 Pro/XP Pro
User avatar
Kaizerwolf
Posts: 390
Joined: Tue Dec 25, 2007 4:37 pm

Postby Kaizerwolf » Sun May 10, 2009 8:45 pm

I notice this happens with bosses as well in D2X-XL. You snag on to them, and you basically die instantly.
What if, in 30 years, you're considered for the highest office in the land and get denied because some sneak found that misspelled post of yours about how "Nickledon" sucked and ruins your political career by exposing it?- poxpower
User avatar
karx11erx
D2X-XL Master
D2X-XL Master
Posts: 8112
Joined: Mon Sep 24, 2007 8:48 pm
Location: Wilferdingen, Germany
Contact:

Postby karx11erx » Sun May 10, 2009 8:59 pm

That only happens with max. collision detection and is a problem I am trying to fix for years. Sometimes the resulting vector from collision is extremely big, and I don't know why. Integer overflow? The basic math seems correct. Maybe I should try to have that stuff computed using double instead of the fixed floating point format Descent 1 and 2 are using.

Edit:

The problem is that the collision force calculations in Descent 1 and 2 are complete rubbish. The original code produces some kickback on collisions. I have added something to compute a proper reflection angle when two objects collide, but didn't rewrite the other stuff into halfway useable collision physics.

The Descent 1 and 2 code is such a bullshit. Just as the Freespace code is.
Melacon
Posts: 6
Joined: Mon Mar 30, 2009 12:23 pm

Postby Melacon » Mon May 11, 2009 1:32 am

I'm no programmer (in the process of teaching myself), but couldn't a simple "if" conditional statement that checks the velocity component of the vector is greater than a certain value, and if it is, assigns the velocity component that maximum value?
Sirius
Posts: 1990
Joined: Tue Sep 25, 2007 10:29 pm
Location: Bellevue, WA
Contact:

Postby Sirius » Mon May 11, 2009 3:26 am

That is kind of a band-aid approach though... it doesn't fix the problem, it just limits how bad it can get if it happens. (Also, perhaps some things can legitimately be moving at that velocity...)
Melacon
Posts: 6
Joined: Mon Mar 30, 2009 12:23 pm

Postby Melacon » Mon May 11, 2009 4:03 am

I understand that it would be band aid approach - but until the physics is fixed up, would it not work if it were only applied to player objects?
User avatar
Yokelassence
Posts: 974
Joined: Sun Apr 06, 2008 1:54 am
Location: That country full of sheep.

Postby Yokelassence » Mon May 11, 2009 6:50 am

If the solution was that simple then Karx would have implemented it by now. I don't think the massive damage resulting from collision is the result of single large damage value that can be measured against a safeguard.

Instead I think it is because the damage dealt by collision is occurring hundreds times in a single second because the hitboxes of two objects are indefinitely jammed together and therefor is constantly triggering collision damage about as quickly as your CPU sends a clock cycle. Meanwhile the value that determines that damage is actually very small.

The proper fix would be to ensure that hitboxes can never enter the space of another hitbox through some way or anther.
-Core i5 4690 3.5Ghz--GTX 1070 8GB--16GB DDR3 800--Z97 Extreme4--512GB SSD/2TB HDD--Zalman Z11 case-

Old PC that no longer turns on. May it R.I.P:
-Core 2 Duo E8500 3.2Ghz--HD4850 512MB--4GB DDR2-800--Gigabyte EP45-DS3L--640GB Storage--Antec 300 Case-
User avatar
karx11erx
D2X-XL Master
D2X-XL Master
Posts: 8112
Joined: Mon Sep 24, 2007 8:48 pm
Location: Wilferdingen, Germany
Contact:

Postby karx11erx » Mon May 11, 2009 9:39 am

As I wrote this is a classical case of rigid body collision. I just have to implement it. No need to implement ugly hacks to reduce computative errors produced by the current code to acceptable dimensions.
Melacon
Posts: 6
Joined: Mon Mar 30, 2009 12:23 pm

Postby Melacon » Mon May 11, 2009 9:45 am

karx11erx wrote:As I wrote this is a classical case of rigid body collision. I just have to implement it. No need to implement ugly hacks to reduce computative errors produced by the current code to acceptable dimensions.


lol - nice response :lol:
User avatar
pokeman7452
Posts: 589
Joined: Wed Oct 24, 2007 2:33 pm
Location: Northern VA, USA

Postby pokeman7452 » Mon May 11, 2009 10:44 am

So, are the shields or the actual ship models supposed to collide? I bet there are plenty of sphere-to-sphere collision scripts and guides online. (me starts imagining "pyro pinball")
Laptop: (outdated)——————————————————————————————Desktop:
ASUS G72GXBBCDDDHLMPPPRTVWcdeefghimnoorruyz2 5 6 8000+-./()Newegged
Core 2 Duo (2.5Ghz)ABBDDGHLMPPPRSSTUVWXcdefgimnry6 78000+-/i5 3570K (4.0-4.7ghz)
6GB DDR2ABCDGHLMPPPSSTUVWXcdeefghimnoorruyz2 5 7 8000+-./()16GB DDR3
Geforce GTX 260MABBCDDDHLPPPRSSUVWdghimnoruyz2 5 7800+-./()GTX650Ti
80GB + 500GB HDDACDLMPPPRSSTUVWXcdeefghimnoorruyz2 267-./()2X500GB in RAID0 + 1TB
DL DVD+-RWABBCGGHMPPPSSTUXcdeefghimnoorruyz2 2 5 678000./()52X CD-R | HD DVD/Blu-Ray, DL DVD+-RW + LS
Win 7 Home Pre/XP ProABBCDDDGGLMRSSTUVcdfghuyz22568000+-.()Win 7 Pro/XP Pro
User avatar
karx11erx
D2X-XL Master
D2X-XL Master
Posts: 8112
Joined: Mon Sep 24, 2007 8:48 pm
Location: Wilferdingen, Germany
Contact:

Postby karx11erx » Mon May 11, 2009 12:31 pm

Spheres.

Return to “General Discussions”

Who is online

Users browsing this forum: No registered users and 0 guests