Worlds Adrift: Why PvP cannot be disabled.

Hello all!

Fureniku here – moderator for Worlds Adrift forums etc. I’ve been thinking about setting up this blog for a while, and here we finally are!
The purpose of this blog is going to be to address common issues I see coming up frequently but aren’t easy to explain. That way I can link to my post for people who want more information than my quick sum-up would be directly on their thread. So, chances are you’re here reading because I linked you to this blog in response to a thread – hello 😀

Alright, enough of that and let’s move onto the first topic of my blog. It’s probably the biggest topic both in terms of the most frequently debated, and also the most complex to explain – PvP.
More specifically – why can’t PvP be turned off, or various equivalents.

 

So, why can’t PvP be turned off / why can’t we get a PvE-only server?
The root problem here is actually quite simple – Worlds Adrift is a physics-based game. Because of that, there’s a whole host of ways people can kill you beyond just a pistol, cannon or swivel gun.

I’m going to run through a series of cases/examples now of what would go wrong for an innocent PvEer if they met what we’ll call a “griefer” – someone in this PvE-only world with the intention of disrupting other players fun. For the sake of these examples, we assume that the following restrictions are in place:

  • Pistols and Swivel Guns will not damage other players, only wildlife.
  • Cannons are enabled, but cannot damage players or ships. When hitting a ship a cannon shell is nullified and nothing happens.
  • Timed Explosives are disabled completely.

OK, let’s say you’re on an island and you spot a shipyard bubble. You run over and say a friendly hello in this nice, PvE-only world – they can’t shoot you so you assume they’re friendly. Then they take one look at you and drop an Atlas Core on your head. Congratulations! You are dead, and they’re probably looting your corpse already. You’re probably upset about this too – but there’s literally nothing you can do in this place where PvP is “disabled” – your pistol shots simply pass right through them. And, as it’s not your shipyard it’s not like you could just do the same thing back.

OK, so turn off things killing me when they fall on me!
Remember, this kills you because of physics. There’s no bit of code that says “if Atlas Core falls onto head, kill player” – it’s simply code that says “if player and object collide at X speed, damage player for Y”. An Atlas Core falling on your head is exactly the same as you jumping off your ship and splatting face-first onto an island (let’s just pretend that actually works and kills you, no naughty grapple exploits here please ;)) – so to disable that, would be to disable ALL collision damage for the player. That removes a lot of the challenge of the game because you can basically now only die by falling into the void. (Remember; Mantas and Thuntomites both attack with a physical tackle too!)

Alright, so what if there was a check that if an object was dropped by a player, it won’t damage another player?
This is slightly more in the realms of possibility. Yes, you could say that if player X was holding an object and let it go, it wouldn’t damage player Y when falling but simply bounce off them. You have now solved one single case out of hundreds that a player could kill you in a PvE environment. For example, they could simply cut a tree and use the grapple to pull it onto you while you’re typing a message asking them to be your friend – how would you define that to the game to prevent it?

Ok ok ok, I get it – players can kill each other lots of ways. But we all die a lot anyway, so for this PvE world lets just make the players invincible, its a small price to pay! Now we can build ships in peace!
Unfortunately, wrong again. Because just like with players, ships can take collision damage. (NB: I hear that is currently not the case in current builds – but I’m relatively confident it will return in the future, so we shall for the sake of this blog assume it is still the case.) Granted, they are a lot more resilient, but what would stop a griefer-type of player just making a cheap, nasty little ship and ramming it directly into you? They could buzz around, with an exposed frame that takes no damage chipping away at you, knocking off engines, wings etc until you are immobile where they can eventually force you down into the void. And what can you do to defend yourself against this? Your cannons are disabled, and you can’t harm the pilot even via non-conventional means because everyone is invincible. You are totally defenceless.

Alright… well all I want is to build my pretty ships and maybe roleplay a little bit. Why don’t we make ships invulnerable like the players?
This is a valid suggestion – but it really starts to drain away the game by this point. You now have no threat other than the Blight. Weather Walls could maybe be formatted to still work to give an environmental challenge and the same for mantas. But there will be no skill to piloting as crashing has no impact, who cares if you hit 6 trees while you dock?
While mining, you miss your grapple line and fall into the void. Your ship wasn’t ready yet, you didn’t have a reviver on so you spawn in a nearby respawn chamber. You climb up the wall to be greeted by a nice, solid metal panel. Someone has left a ship frame lodged in the revival chamber, and you can’t get out. Because of all the tweaks to make PvE viable, you have absolutely no way of dislodging or destroying this blockage, so your only option is a random respawn to a new island – away from your half-built ship. You climb up… and the same person has blocked this one too. They’ve blocked every chamber in the sector, because who’s going to stop them? You can’t salvage the panels to climb through the frame because you can’t salvage a ship – they’re invulnerable.

No matter what you do to make an environment “safe” for PvE-only style gameplay, there will always be ways that griefers can work around the system. On top of that, everything I’ve mentioned above would be a relatively complex new feature which would require work developing then extensive testing from QA – and the coders/QA of the Worlds Adrift team are already stretched thin with fixing bugs and developing features for the main game.

Pretty much the only way to be truly safe would be a personal server/local instance – but unfortunately, that too is impossible. But, that’s a story for another blog post…

In short, Worlds Adrift is a PvP-enabled game. Avoiding that is much more complicated than just setting a few values to false. I can totally understand why people might assume it’s an easy thing to do because until you really think about it, it seems like an obvious and simple thing. Hopefully this blog will make you think of PvE in a slightly more critical light and help you to understand why it’s really not an easy thing to do.