Jump to content

With The New Agility Nerfs, Lets Talk About Pebbles And Mech Movement ----(Victory Achieved)----

Gameplay

68 replies to this topic

#61 Wattila

    Member

  • PipPipPipPipPipPip
  • 244 posts

Posted 08 February 2016 - 07:45 AM

View PostProduct9, on 08 February 2016 - 05:30 AM, said:

As an aside, a better way to see if you're on the ground is to look at every collider you are colliding with and check the normal angle. If any of them are within the slope limit, you MUST be on the ground.


Chances are the devs don't want to do any more 3D vector calculations on the server than is absolutely necessary. Not my area of expertise (I'm more of a technical artist), so don't know if this is even a real limitation with modern CPUs since you can probably do them in batches with some SSE operation.

#62 Product9

    Member

  • PipPipPipPipPipPip
  • Ace Of Spades
  • 229 posts
  • LocationDenial

Posted 08 February 2016 - 03:53 PM

View PostWattila, on 08 February 2016 - 07:45 AM, said:


Chances are the devs don't want to do any more 3D vector calculations on the server than is absolutely necessary. Not my area of expertise (I'm more of a technical artist), so don't know if this is even a real limitation with modern CPUs since you can probably do them in batches with some SSE operation.


I don't know about that. I have a feeling they individually track every pellet fired from an LBX cannon, or every bullet fired from a machine gun.

#63 Quaamik

    Member

  • PipPipPipPipPipPip
  • Philanthropist
  • 413 posts

Posted 09 February 2016 - 05:56 PM

View PostProduct9, on 07 February 2016 - 03:58 PM, said:



Okay I lied. I want to talk about it now.

I understand where the OP is coming from with this post, but I have to point out the problems in the description of the problem and solution.

Again, I don't know the whole story. I'm just making an educated guess based on my own experience making games.

Based on all the evidence I have seen ingame, the mech's collision isn't based on a box - it's based on a capsule-shaped collider (kind of pill shaped, like a cylinder with rounded ends). This is how a lot of FPS games deal with terrain collision, and it's the reason you can overcome some obstacles by increasing your speed. As an aside, it's also why you get stuck on things sometimes. Remember when light mechs would get stuck on the edges of objects like the cap points? That was probably because PGI uses a really simple method of detecting when the mech is on the ground, such as raycasting straight downward and measuring the distance of the impact point.

Anyway, the OP speaks of strides, but you have to understand that all the movements mechs make in the game IS A LIE. That's not what actually is going on - your mech isn't walking. It's a capsule-shaped collider that is sliding on the terrain's collision mesh. The animations are only visual, and have nothing to do with how the mechs move. Now, you may be wondering about the collision meshes for weapons to hit. That's an entirely different set of colliders that reside on a different layer and only interact with weapons fire.

This is a limited, but efficient system. FPS games have always been designed for efficiency because performance is everything. However, the game HAS TO BE DESIGNED AROUND THIS LIMITATION. MWO is not.

The level design in MWO is the worst I have ever seen. The collider placement is terrible, and whoever is doing it likely has no education in how it is supposed to be done. Even basic mapping tutorials for the original Half-Life covered this.

Collision meshes have to be placed carefully. Nobody likes getting caught up on things, but it happens constantly in MWO. Not only that, but the collision meshes don't match the visual meshes. The biggest offender is probably the cap-point on assault. It's a weirdly shaped trailer thing with lots of empty space, but you can't shoot through any of it. Either they are using a single box-collider on that thing, or they are using automatically generated non-convex mesh-based colliders. I'm leaning toward the latter.

Guys, you have to place your collision meshes manually. Automatic generation is the enemy here.

In MWO there are TONS of invisible collision meshes that occlude your shooting, but not your sight. This is such an amateur mistake that I'm in disbelief it exists in a game this mature.

As for the terrain obstacles, there are some other mistakes that PGI has made in their level design that adds to the problem. There are three basic collision problems I can see in this game. We've covered the capsule-collider and the non-convex mesh colliders. That leaves the third major problem - mixing heightmaps with meshes.

PGI has taken a shortcut in map design. They base their terrain on the highly efficient heightmaps, but then sink 3d assets into the terrain to spice it up. This seems like a good idea to an artist, but what you actually get is colliders that are intersecting, which leads to strange behaviors. Ever get stuck on nothing? Or inexplicably fall through the world?

So, to sum it up, if you ever want to see this problem go away, PGI needs to educate themselves on how collision-meshes should be placed in a video game, and acknowledge that there are limitations to the methods they have chosen.

It's really a very easy problem to address, and really highlights where PGI has blindspots in their team.

Edit: Oh yeah, I forgot. The OP has some good ideas, but very high-level. The problem is this isn't a 2d problem, and working backwards as one must do with collision detection isn't as easy as basic geometry (at least not in 3d space).

Still, I appreciate the effort the OP made and thank him for bringing the issue to everyone's attention.

Now, back to watching the Super Ball


Then why not raise the height of the invisible pill shaped collider for each mech by some amount determined by how high you want it to appear to be able to step? While I'm not a coder, that seems the simplest solution.

#64 Troutmonkey

    Member

  • PipPipPipPipPipPipPipPipPip
  • Moderate Giver
  • Moderate Giver
  • 3,776 posts
  • LocationAdelaide, Australia

Posted 09 February 2016 - 08:07 PM

I was going to like this thread, than I realised it was from 2015 and I had already done so.
PGI need to fix the pebbles of doom already

View PostProduct9, on 08 February 2016 - 03:53 PM, said:


I don't know about that. I have a feeling they individually track every pellet fired from an LBX cannon, or every bullet fired from a machine gun.

LBX yes, Machine guns no. They are hit scan and thus don't have any "bullets" to track.
As for collisions it's much cheaper to check if something has collided at all than it is to check at what angle the collision occurred at. Especially when it come to complex geometry that might have multiple collision points

#65 Product9

    Member

  • PipPipPipPipPipPip
  • Ace Of Spades
  • 229 posts
  • LocationDenial

Posted 12 February 2016 - 05:51 AM

View PostQuaamik, on 09 February 2016 - 05:56 PM, said:

Then why not raise the height of the invisible pill shaped collider for each mech by some amount determined by how high you want it to appear to be able to step? While I'm not a coder, that seems the simplest solution.


The problem is the player rests on that pill-shaped collider, so if you were to raise it up, then the mech's feet would sink into the ground.

View PostTroutmonkey, on 09 February 2016 - 08:07 PM, said:

LBX yes, Machine guns no. They are hit scan and thus don't have any "bullets" to track.
As for collisions it's much cheaper to check if something has collided at all than it is to check at what angle the collision occurred at. Especially when it come to complex geometry that might have multiple collision points


Really? I hadn't noticed that. I'll be sure to pay attention next time I use a machine gun.

I don't have a ton of experience with collisions. Most of my knowledge comes from using them in Unity. When there is a collision, there is a structure that contains a bunch of info about the collision and the programmer can use it as he or she sees fit. However, I'm pretty sure all of that is happening behind the scenes whether or not the script asks for that information.

Checking where a collision takes place isn't that hard, though. You just to an inverse transform on the world coordinates to turn them into local space, and then work from there. Admittedly, I don't know the math behind this, so it could actually be pretty hard. I'm spoiled because it's easy to just call a method in an API and let the unicorns do their thing.

Anyway, the easiest thing to do is use simple colliders, just a bunch of them set up to approximate the shape of the model. As soon as you bring mesh-based colliders into the mix things start to get weird, which I'm pretty sure PGI has been abusing in their maps. It also helps if the level designed understands the limitations of the engine and maps accordingly.

If you are referring to the player ground-detection collision, then I'm pretty sure all that info is there for the taking, just like it is in Unity. All you need to do is check the collisions that take place and look at the angles of the normals to determine if you're touching something you can stand on (too steep, can't stand on it). I can't imagine it's that expensive, but again I don't know the math behind the curtain.

Edited by Product9, 12 February 2016 - 06:05 AM.


#66 PocketYoda

    Member

  • PipPipPipPipPipPipPipPipPip
  • Shredder
  • Shredder
  • 4,147 posts
  • LocationAustralia

Posted 12 February 2016 - 06:21 AM

OP should work for PGI..

#67 Navid A1

    Member

  • PipPipPipPipPipPipPipPipPip
  • CS 2022 Gold Champ
  • CS 2022 Gold Champ
  • 4,956 posts

Posted 27 February 2016 - 03:53 AM

Mission Accomplished:

http://mwomercs.com/...march-road-map/

Quote

Change to ‘Mech Movement Code
We’ll be introducing a pretty important change to the movement code to give ‘Mechs better and more consistent mobility over small objects and obstructions. This should allow the maps to have more visual complexity to improve their overall visual design, without affecting the ability for ‘Mechs to navigate simple obstacles. There have been some minor changes to certain areas of maps to compensate for this increased mobility, mostly to ensure that you can’t get out of bounds or otherwise outside of the intended combat zone.

Edited by Navid A1, 27 February 2016 - 03:54 AM.


#68 Puresin

    Member

  • PipPipPip
  • Death Star
  • Death Star
  • 97 posts

Posted 30 March 2016 - 03:02 PM

lets add the fact that a small object would actually be crushed under the impact of a weight bearing 100 ton leg......... some obstacles just wouldn't stop a dire wolf's foot.

It's like saying a straw fort will withstand a hurricane.

a "boulder" that is 1 ton would be crushed under the dire or atlas' foot. It would destroy a 20 ton lights leg to run into a 1 ton boulder.
that's just physics.

They need that back in the game. It would force light pilots who think they have skill to actually gain some real piloting skill.

#69 cazidin

    Member

  • PipPipPipPipPipPipPipPipPip
  • FP Veteran - Beta 2
  • FP Veteran - Beta 2
  • 4,259 posts

Posted 30 March 2016 - 03:04 PM

View PostPuresin, on 30 March 2016 - 03:02 PM, said:

lets add the fact that a small object would actually be crushed under the impact of a weight bearing 100 ton leg......... some obstacles just wouldn't stop a dire wolf's foot.

It's like saying a straw fort will withstand a hurricane.

a "boulder" that is 1 ton would be crushed under the dire or atlas' foot. It would destroy a 20 ton lights leg to run into a 1 ton boulder.
that's just physics.

They need that back in the game. It would force light pilots who think they have skill to actually gain some real piloting skill.


The forums would be flooded with the tears of Light Pilots as their complaints echo throughout until it reaches the otherwise impenetrable bastion of PGI and the decision is quickly reversed and locked away, deep within Terra Therma's crust, never to seen, heard or spoken of again.





1 user(s) are reading this topic

0 members, 1 guests, 0 anonymous users