Asteroid Hitbox Large

Why is the asteroid hitbox larger than the model in the game? This is annoying and sometimes lead my ship into getting stuck in one of them when trying to warp away. Ships have their collision hulls at least seem to resemble the in game model, why can’t they just make a non spherical hitbox that matches what we see?

This is for roleplay purposes and to simulate an immersive space environment.

Sometimes, in reality, when you warp into an asteroid belt it can be difficult to navigate a clear exit path. This allows you to feel the real world complications of navigation.

Double-click in space to maneuver around asteroids.
Fly to top or under the asteroid field, slow your ship, align to an escape route then stop your ship in range. Mine.

So funny things like this can happen…

He was stealing junk (loot) from NPC wrecks that other people killed at asteroid belts so I went there and shot him. Apparently he was stuck on the asteroids and died. Somehow was able to snipe his pod as well (either stuck though I think pods can not get stuck though not sure or he was too slow to warp away with his pod). :face_with_hand_over_mouth:

Funfact: I was shooting him from like 70km+ distance so he was NOT scrammed nor even pointed, he could have just warped away easy, and visibly tried to as well, but the asteroids took their revenge this time. Maybe the guy is a miner and this was time the roids got to pay him back for all their roid friends’ deaths the guy caused. :upside_down_face:

It was a worthy test for that sniper Cormorant fit… it worked pretty well. :blush: :smiling_imp:

3 Likes

I wrote an epic wall of text in a very recent thread on the same exact topic:

TL;DR: It costs money to develop, is a burden on the core server code, requires more network bandwidth, and is a burden on your client as well.

Honestly I think this kill was unjustified. I don’t blame you for getting a nice killmail, a lot of people would take that opporunity if it presented itself. I blame the server since I think that while colliding with asteroids is fair game, the asteroids should actually match the visual.

@Io_Koval

Hmmm, I’m not entirely convinced this would be expensive. The way you discussed making it consistent would be. But isn’t there a simpler way? Just make 2 versions of each asteroid, a visual and a hitbox. Mkae sure they’re the same shape. The client renders information on the visual and the server uses the hitbox, which is pre-made when the asteroid was designed in the first place. This isn’t the first game that needs to handle collision and I can’t believe EVE is the only one that can’t handle hitboxes. The client is alraedy handling the visual right now and the server is already handling… something related to collision that clearly isn’t the same shape or size. They’re working on two seperate models that were both made when some artist came up with the asteroid. All that’s needed is to change the collision hitbox. This shouldn’t be any burden on the server since it is already doing calculations with a collision hitbox anyways, just one that is the wrong shape.

Completely agree that’s why that kill was funny, otherwise it would be just a random kill… actually wouldn’t even be a kill as he could have just escaped. :sweat_smile: Though the guy was a blinking suspect so he got what he deserved. :smiling_imp: (Oh and am saying this while I myself also perform the profession of stealing, both in Jita and elsewhere.)

Ha ha ha, I guess that’s kind of funny.

Opportunistic or working with the gankers? I don’t work with anyone who go crimminal, but when some ship blows up in Jita, I feel like I got to take a slice. The original ownder isn’t getting it back anyways.

That is either:

  • A non-sphere asteroid that is not rotating, or
  • A spherical asteroid that visually rotates

That’s the only way to make sure the server can have a hitbox, and it doesn’t matter that your client and my client are out-of-sync with rotation.

Example:

My computer’s rendering loop is faster than yours. The server says “hey Io, hey TiberianSun, here are the asteroids rotational positions, here is their rotational velocity, have fun render them. Me-the-server will use hitboxes based on the starting condiiton.” If my client’s rendering loop is faster than yours, my rotational speed will visually appear faster than yours. Which hitbox is the correct one, when you look at the visual asteroid and I look at my visual asteroid? Neither, because the update speed of the server is at a third, different rate.

OK, so the server has to periodically update us so that drift doesnt matter. One might think yours and my client’s rendering loop could contain a mini-simulation to account for time, but the simple fact is Eve supports a lot of old hardware and computers do drift so networked coordination would be needed anyway, or the problem wouldn’t be solved. Potato players might see rotations at very high FPS or get bogged down in simulating tons of asteroids. (Edit: also what happens during TiDi or when the server itself hiccups? Now almost everyone’s visual representation is out of sync)

If the oblong asteroids didn’t visually rotate, then the server could just say “here are the asteroids and their orientations” and the fact that the scene isn’t changing means there’s no dynamic hitboxes to update. Once every client has this starting info, they never need to be updated: the visuals aren’t changing, so neither are the hitboxes.

Alternatively, the asteroids could all be spheres. No matter how you rotate a sphere, the collision hitbox never changes. That means alternatively the game could just say “here’s the asteroids positions and radii” and each client could render rotating spheres. There’s still no dynamic hitboxes to update, so no networked coordination is needed.

That’s the crux of the issue: dynamic hitboxes. As soon as the server’s hitbox doesn’t match one person’s client’s rendering, then they will complain about either:

  • Travelling “through” the asteroid visually, or
  • Colliding with “nothing” (what we have today)

So the server will have to coordinate that.

For comparison, look at modded minecraft. People build those ridiculously huge flying machines and you can see the lag as the server has to update the collision boxes of all the squares for all players. That’s essentially the networked coordination that Eve is lacking today. Otherwise, you get Minecraft players falling through their flying machine blocks that seem to be there but really aren’t.

People asking for dynamic hitboxes of asteroids are like the folks that ask for realistic destructible terrain in FPS matches and even those games struggle to do it without the heavy simulation code of Eve and without Eve level numbers of folks in system.

1 Like

The same as you, gankers have their own looters may it be a mate or an alt, though I once helped a guy I knew who just started out as a ganker so was alpha still but only once, we didn’t play in the same time zone (he dunked some miner and I’ve stolen the ore then split it in half and contracted it to him, though I barely know him and no word since years so probably no longer plays or dunno) so yeah just a solo guy grabbing valuables from right under the nose of its former owner and the gankers or even regular opponents (not every wreck is created under equal circumstances :wink: ).

And yes it is a fun activity and not without hazard which makes it even more fun. :slight_smile:

This below has some Jita grabs listed (among others) from back in the day when I was much more active and involved, in case you are interested…

Why are you that close to the asteroid in the first place? There is no reason to be that close to them while mining, or anything else. They aren’t going to block anything. All weapons and effects go right through them…

This is fine.

Also if you wanted them to rotate, you could just have each orientation be known to a specific time. So at 1 seconds after downtime, all asteroids are X, 2X, 3X, 4X, 5X, 6X, or 7X degrees rotated clockwise. Each asteroid could have it’s own value. The server calculates on the collision model. The client doesn’t know the collision model, but does know the downtime orientation of the oblong asteroid, the “how much to rotate every second” of the asteroid (since you got all the info when you loaded grid right?) and how many seconds it was after downtime, be it 1, 3, 7777…

There is an edge case where the client thinks it’s 20:00:00 but it’s really 20:00:03 in which case you will still get stuck on an asteroid. I can live with that since these edge cases would be rare and this process doens’t involve a lot of extra bandsiwth since the collision and the visuel model are seperate eneitites with the same shape.

I know this is not how it works since anyone with ping below 500 will no have any dissonance between their client and server with asteroids under this system.

Or just use static models. I mean that works too

I wish mining drones traveled a lot faster, but they clearly don’t

So, park 2km off the rock. Waiting another 5 seconds for the drones to offload won’t kill you, but asteroid hugging will…

This is still a server-coordinated solution because not every computer has the same time set. Some are off. Coordinating time between networked computers is a very old problem in computer science.

The cheapest mining module has 10km range, there is no reason to fly that close to a rock and get trapped in the object’s hit box.

He’s using drones…

eve online its not a space simulator
its a space mmo
every system have to deal with A LOT of objects in space and all the players must have quick refreshes that correspond exactly to what other players are receiving
for the sake of gameplay in the beginning all the solid objects in the game are spheres
there are thousands of spheres that the system have to deal with

complex collision geometry would make the system slow so its kinda like that

btw there is a lore explanation to "justify " the sphere thing … i recommend you watch the physics of eve by the space pope on youtube

that said they are improving the collisions , believe me or not they were worst

1 Like

I thought this issue was fixed and they were reverted back.

I’d say nonsense. Howcome an MMO like Second Life can depict 30 mesh avatars with perfectly fitting mesh clothes ( which requires very accurate placing ) all dancing in real time…yet Eve cannot cope with placing ONE spaceship 1000m from an asteroid ? The processing required is puny. It’s no different to the code for bumping into any irregular object…stuff that was dealt with as far back as Team Fortress.