Web
Analytics
Log In  

8

Try it out at zachpetersendev.com/picarioGame!

You are a fruit. Eat the tiny dots to grow bigger, or eat other fruit that are smaller than you. Just make sure that none of the larger fruits eat you! Works on anything that can run a web browser (including mobile!)

Controls:
Arrow Keys : Move
Mouse : Click and hold to move in direction of cursor
Touchscreen : Touch and hold to move in that direction

The code for this project can be found at This Github Page.

This is a proof of concept game made by Dylan Tran, Zachary Petersen, John Chau, and Sterling Salvaterra. Special thanks to our amazing instructor Adam Smith at UC Santa Cruz for his advice and encouragement, and to Mathew Kuhn for the music.

Our goal was to show that the PICO-8 can support a relatively massive number of simultaneous players in a single game given its constraints. We decided to recreate the popular agar.io to achieve this goal.

In our largest test, we had 35+ simultaneous players. Theoretically, the game can handle 64+ simultaneous players.

One of the biggest challenges we faced is that there are only 128 bytes of GPIO in the PICO-8 meaning that the each client can only handle take in 128 bytes of Input/Output per frame. We decided to represent each object with six bytes, one for ID, one for size, two for X Coordinate, and two for Y Coordinate. With 128 bytes of I/O, that meant we could update 21 objects per frame. We designated three of these objects to output (The client telling the server about changes in the player's state and the state of any objects the player eats) and the other 18 to Input (The server telling the client about the change of objects in the world).

We wrote the server in python. Since the clients can only handle 18 updated objects per frame, we implemented a spatial hashing optimization so that each client only receives updates about objects that are nearby the player. The connection between the clients and the server is made using websockets.

online multiplayer agar.io browser javascript large internet networked server
P#45131 2017-10-12 02:27 ( Edited 2018-10-09 14:30)

::

Fantastic work! :D This is quite an achievement. And fun to boot! :D

P#45134 2017-10-12 04:10

::

Excellent stuff! :D

I was wondering whether something like this would be possible after seeing Javascript/local network stuff like Pico8Com.

This could be the start of some very interesting times for PICO-8! :o)

P#45135 2017-10-12 04:43

::

So many of my ideas that seemed impossible, Suddenly possible. <3

Co-op Alien breed redux, Anyone?

P#45141 2017-10-12 07:42 ( Edited 2017-10-12 07:43)

::

Impressive.

P#45145 2017-10-12 10:01

::

What's the LINK or URL to play this game now ?

P#55369 2018-08-18 11:01 ( Edited 2018-08-18 12:18)

::

I'm the only dumb to go to picar.io and empty page

P#55427 2018-08-20 16:53

::

We're working on getting the game back online! It's currently down at this time

P#55497 2018-08-22 01:56 ( Edited 2018-08-22 01:57)

::

Note, I didn't notice it was from last year

P#55779 2018-08-27 14:59

::

A month later, Vertex. Did you ever get it back up ?

P#56949 2018-09-20 18:50

::

And ... the game is back up. Music is a bit on the repeating side. Maybe have it for logo only ?

... ate lots of dots, my fruit grew fat - but lonely ... no other players ?

Also you might consider using vectors to enlarge your fruit. CIRCFILL, LINE with thickness, etc.

Then your fruit, no matter how big, will still always have lovely curves. :)

P#57378 2018-10-02 00:43

::

Cool ideas :D As for having other players, you can simulate this by opening the game in different tabs!

P#57381 2018-10-02 00:54

::

I confirm it's working and yeah, dw817, getting players is a whole lot different thing than coding a game :P

P#57747 2018-10-09 13:00

::

Maybe make a chat channel in PICO with it instead ? That might be more popular at the moment and easier for players to enter and interact.

P#57750 2018-10-09 14:30

Log in to post a comment

user:
password:

New User | Account Help
:: New User
X
About | Contact | Updates | Terms of Use
Follow Lexaloffle:        
Generated 2018-10-16 01:48 | 0.239s | 1572k | Q:25