SkillAgentSearch skills...

Pvp

An opensource web browser 1-4 Players arena shooter you can play offline in split-screen and networked (experimental).

Install / Use

/learn @kesiev/Pvp
About this skill

Quality Score

0/100

Supported Platforms

Universal

README

Player Versus Player

<div align="center" style="margin:60px 0"> <p><img src="markdown/logo.png"></p> </div>
<div align="center"> <a href="https://www.kesiev.com/pvp/">Play!</a><br> <i>Try playing with Firefox Browser and disabling your ad-blocker</i> </div>
<div align="center" style="margin:60px 0"> <p><img src="markdown/animation.gif" width="640" style="image-rendering: auto;image-rendering: crisp-edges;image-rendering: pixelated;"></p> </div>

Player Versus Player is an opensource web browser 1-4 Players arena shooter you can play offline in split-screen and networked (experimental).

<div align="center" style="margin:60px 0"> <p><img src="markdown/multiplayer-1.png"></p> </div>

It tries to catch the aesthetics and accessibility of the early 90s DOS first-person shooters like Wolfenstein 3D and Blake Stone, with a custom Raycasting-based graphics engine and no vertical aiming...

<div align="center" style="margin:60px 0"> <p><img src="markdown/deck2d2-1.png"></p> </div>

...and pay homage to the great arena shooters of the late 90s, like Unreal Tournament and Quake III Arena, with fast gameplay and high customizability.

<div align="center" style="margin:60px 0"> <p><img src="markdown/settings-1.png"></p> </div>

But it also took inspiration from classic arcade games like Bomberman for its gameplay and design: it features simple controls, easy to learn gameplay and every map has a unique mechanic or needs to be played differently.

In PvP, you can play a selection of classic versus and cooperative game modes and an all-new Arcade mode in which you'll go for the highest score surviving 20 random missions alone or together with 3 friends.

And there's even a dark lore for you to discover... Who truly is the Player Versus Player?

Gameplay & Controls

PvP has been thought to be an arena shooter easy enough to be played by anyone but still keeping the game competitive and fun. In PvP, you can just move, aim horizontally, fire, and open doors. There is no way to gain health or keep multiple weapons: don't get hit and keep moving around the map to stay alive and keep firing.

You can use several game controllers to play and all of them can be customized:

| Controller | Move | Aim | Fire | Open doors | | --- | --- | --- | --- | --- | | Keyboard | WASD | Strafe holding F | G | H | | Mouse | WASD | Moving the mouse | Left mouse button | Right mouse button | | Joypad | Left stick / digital cross | Right stick / Strafe holding Circle | R1 | L1 | | Touch screen | Swipe on the left half of the screen | Swipe horizontally on the right half of the screen | Swipe up on the right half of the screen | L2 |

Controls are explained once the game is started.

<div align="center" style="margin:60px 0"> <p><img src="markdown/controls-1.png"></p> </div>

Controls tips

  • Holding down the open doors button you can slow down your movement and aim. Try using this technique with sniper rifles and guns!
  • If you still want to use a mouse on a touch screen device hit the Setup button when the game page is loaded and set Mouse to the Screen controls options.

Menu

You can move around menus with the same controllers you use to play.

| Controller | Move | Select | Confirm | Back | | --- | --- | --- | --- | --- | | Keyboard | Up / Down | Left / Right | Enter | 1 | | Mouse | Moving the mouse | Clicking an option | Clicking an option | Clicking the back button on the top left of the screen | | Joypad | Up / Down on the digital cross | Left / Right on the digital cross | Right menu button | Left menu button | | Touch screen | Swipe up/down the right half of the screen | Swipe left/right the right half of the screen | R1 | L1 |

Fullscreen

You can set the game full screen clicking the icon on the top right of the screen with the mouse or hitting L1+R1 on touch screens.

The radar

In PvP your best ally will be the radar. It's a circular crown in the middle of the screen marking the relative position of key points of the game mode you're playing.

<div align="center" style="margin:60px 0"> <p><img src="markdown/radar-1.png"></p> </div>

Symbols on the top of the radar (1) are objects in front of you, on the left and right (2) of the radar are on the sides, and on the bottom (3) of the radar are behind you. White symbols (3) indicate far objects, yellow symbols (2) the near ones, and the red symbols (1) objects that are in your proximity. Symbols shape may vary to mark the flag, your base, the hotspot, drones targeting you, etc.

Netplay

What's Netplay?

Netplay allows you to play with your friends on multiple devices connected to a network. PvP can work in two different ways, both featuring Netplay:

  • Standard mode: you don't need any installation. Just go to the game page and start playing.
  • Local mode: you've to install PvP on your local machine or server. This way you can play with friends in the same local network without any internet connection.

In Standard mode, you can play with your friends in the same network but playing over the internet is... possible but probably won't work right quite well now. We need a valid TURN server to enable internet play but we can't afford that right now. We're looking for TURN server donations or any reliable server address to configure but in the meanwhile... I wouldn't rely on that too much. Sorry.

Setting up your nickname

Anything about playing on a network can be set up from the Netplay menu. From the main menu select the Settings option and then select the Netplay... option.

<div align="center" style="margin:60px 0"> <p><img src="markdown/netplay-net-1.png"></p> </div>

It's the time to choose the nickname you're going to use. Select the Nickname option and type in your battle name.

<div align="center" style="margin:60px 0"> <p><img src="markdown/netplay-net-5.png"></p> </div>

Remember that you can always go back to the previous menu hitting the back button.

Standard mode

<div align="center" style="margin:20px 0;background-color:#fcc"> In order to play in LAN with Chrome you've to go to <i>chrome://flags/</i>, search for <i>Anonymize local IPs exposed by WebRTC</i>. and disable it. Have a look <a target="_blank" href="https://github.com/peers/peerjs/issues/608">here</a> for more. </div>

To play the Standard mode of PvP Netplay just go to the game page, hit Play, plug some controllers and you're ready to go!

Like in the old good times of LAN parties one of the Players must be the server and the others the clients. The server Player has to go to the Netplay menu and select the NET Server mode to see his ID, to be shared with his trusty friends.

<div align="center" style="margin:60px 0"> <p><img src="markdown/netplay-net-2.png"></p> </div>

client Players have to go to the same Netplay menu but select the NET Client mode instead. Then select the NET Server ID option and input the Server ID.

<div align="center" style="margin:60px 0"> <p><img src="markdown/netplay-net-3.png"></p> </div>

Then all the Players can hit the Back button until the main menu. Select the Netplay multiplayer, wait to be connected to the server, and follow the onscreen instructions!

<div align="center" style="margin:60px 0"> <p><img src="markdown/netplay-net-4.png"></p> </div>

Tips

The server Player can share his ID to clients giving them the URL at the bottom of his Netplay screen. You can automatically copy the link to the clipboard selecting the Copy configuration URL to clipboard... option. Players opening this link will be automatically set to NET Client mode and point to the right Server ID. Just select Netplay multiplayer from the main menu and start playing together!

Local mode

PvP can be installed on your local computer/server to play it in a local network without any access to the internet. Have a look at the Installing section to learn how to install it.

When playing in Local mode you'll get an extra mode in the Netplay menu. Select the Socket.io client mode and select the Room option to input a room name. Players selecting the same room will play together.

<div align="center" style="margin:60px 0"> <p><img src="markdown/netplay-socket-1.png"></p> </div>

Then just go back to the main menu and select Netplay multiplayer to start playing together.

<div align="center" style="margin:60px 0"> <p><img src="markdown/netplay-net-4.png"></p> </div>

Tips

Any Player can share his room ID to other Players giving them the URL at the bottom of his Netplay screen. You can automatically copy the link to the clipboard selecting the Copy configuration URL to clipboard... option. Players opening this link will be automatically set to Socket.io Client mode and point to the right Room ID. Just select Netplay multiplayer from the main menu and start playing together!

Installing

Standard mode

You don't have to install anything to play PvP both locally and on a network. Just go to the game page, hit Play, plug some controllers and you're ready to go!

Self-hosted mode

If for some reason you want to host the game on your web server you need to serve just the client directory. You'll get a Standard mode copy of PvP.

Local mode

PvP includes a node.js local server you can use to host the whole game locally and play together in LAN without using the internet at all. wink wink

<div align="center" styl

Related Skills

View on GitHub
GitHub Stars51
CategoryDevelopment
Updated12d ago
Forks13

Languages

JavaScript

Security Score

100/100

Audited on Mar 18, 2026

No findings