A downloadable game for Windows and Android

QUEST Users:  PHL is now available on SideQuestVR.  Easier installation!! 
PC Users can continue to download PHL here.


Work in progress.  Be Warned!  Here Thar Be Bugges!!

Multiplayer VR Hockey.

Simple controls:

  • Stickhand trigger swaps the blade curve
  • Off-hand trigger accelerates you in the direction you're pointing

How about some advanced controls!

  • NEW!  Activate Turbo Boost by holding down the Grip button on the off-hand controller.  Default is +20% speed boost for 30 total seconds per game (game host can change these value in the game config screen)
  • Swap hands by pressing the off-hand thumbpad button
    • On Oculus Touch controls, press the off-hand thumbstick button
  • Snap-turn rotate by:
    • Vive/WMR
      • pressing the stickhand thumbpad left or right
    • Oculus Touch/Index/WMR
      • Moving either joystick left/right will rotate you lef/right

There is a popup wrist menu on your left hand during a game.  It gives you options to leave the current game or to toggle the voice chat.  Note: the menu won't appear if you are accelerating.  It's currently very picky about when it pops up -- I'll make it a little friendlier in the near future.

Discord link :   https://chat.ParsecHockeyLeague.com

Supports up to 5v5.  Buuuut we've only played 3v3 games.  Automated testing shows 5v5 works.  And sorry.... no human goalies at this time.

It's been used by Vive, Index, WMR, Oculus Rift, and Oculus Quest headsets.

The UI is ugly.  Sorry.  I'm not a UX guy by nature.  I'm working on it.

Currently only supports a hockey game.  I'd like to add a practice zone in the future.

No bots, so humans only.  Well... the goalies are bots.  And the ref.

The goal was to have a quick & fun "pickup" hockey game.  Games are currently limited to 10 minutes or first-team-to-three-goals.  If it's over too quick, start another game!

Games are identified by a "tag" of 4 hockey phrases.  The game creator click on the tag to display all the tags.  Pick 4!  You can use the same tag repeatedly.  When PHL gets super popular (hah!) you can tell your friends the tag so they can easily find your game.

There is built-in Voice-Chat; by default it's disabled - you can enable it in the main menu.  You can also toggle it in-game by long-pressing the app menu button (varies by headset type)
Quest users: will need to give permission to use the mic
PC players: Make sure Windows has decided to use the right microphone

The game will try to numerically balance the teams when the game starts.  Players who don't choose a side will be randomly placed.  Unbalanced teams are addressed by randomly choosing players to move.

Players can vote for which team they want to represent.  The game will choose between the teams with the highest vote totals.  Home Team is chosen first.

NOTE: Team colors are a bit hideous right now.  They are a work in progress.

Version History

Version 0.1.1230.2853
Changes to how sticks are attached to controllers.  Should be less jumpy as you skate around.
Version 0.1.1222.3710
YOU get a goal-detection upgrade!  And YOU get a goal-detection upgrade!!  Tracked down some old problems that occasionally caused problems detecting goals.  I know.  Lame.  But hopefully now solved.  Go!!  Score!!

Added some experimental game configs to control when ball boost kicked in.  And redid some of the config UI to make it easier to maintain going forward.
Version 0.1.1197.5561
Network traffic optimization.
Version 0.1.1175.5484
Rink wall improvements (physics and alignment).   Hopefully now more fewer weird bounces!  Also fixed the physics drag slider so it initialized with the right default.
Version 0.1.1157.3178
Added new robot player model.  Standardized player height (Happy 6'3"/1.905m Day!).
Version 0.1.1143.5710
Added Turbo Boost functionality (hit offhand Grip button to activate; default is +20% speed for total 30 seconds)
Version 0.1.1116.4705
Defaulted some setting in the config menu (max player speed: 5m/s, ball drag: 0.65).  Added config to set ball acceleration bonus off stick.  Added debugging option to show network ball position.
Version 0.1.1105.5757
More networked physics fixes.
Version 0.1.1099.5748
Networked physics fixes.
Version 0.1.1080.205
Fixed a bug that could rarely not record a goal.  Added experimental config setting to control how fast the ball slows down.
Version 0.1.1039.135
Fixed a lockup  leaving a game via the wrist menu.  And a super-minor UI cleanup on the main menu.
Version 0.1.1035.5503
It's been a while!  Removed the post-game screen; now everybody is sent back to the game lobby, ready for another game.  Players no longer come to a dead-stop when hitting the goalie or wall.  Ball is a little faster.  Changed UI layouts in lobby so the the entire UI element is interactable.
Version 0.1.941.494
To help validate some sync fixes, added an audible notification during faceoff and near goals.  It's Moo-valous!
Version 0.1.929.4808
Tweaked the scoring summary.  Fixed an uncommon rendering bug that would break the lobby menus.
Version 0.1.917.5536
Added a scoring log to the right of the main menus in the lobby screen.
Version 0.1.865.5180
Added a few international servers.  US-W, US-E, EU, Asia.  Made the default game speeds 4/4 -- the host can change this in the game config screen, but the faster game is just more fun!  Fixed a rendering problem where the rink surface would block the game menus.  Fixed some dead 'zombie' games showing up in the games list.
Version 0.1.818.5716
Reduced the ball loft, so shots should be more on-target
Version 0.1.816.32
Reduced the appearance of lag during fast game eg. 5m/s w/5x accel.  The player could end up moving so fast the actual anti-lag code would kick in the "catch up".   Appears pretty smooth now.  Remote players legs now animate.  Animations still a work in progress,
Version 0.1.812.3964
Experimentiing with using animations instead of IK (Inverse Kinematics) for leg placement.  Currently only one animation is used, so it'll look a little weird.  Weird is good.
Version 0.1.804.187
Added a game config menu that lets the game host change max player speed and increase acceleration.  The idea it to play with these to fine-tune the movement parameters.  Also improved the team randomizer (now with 100% More Random!), and changed the Away team color handling to prevent the Arcturus Avengers from masquerading as the Oort hOorde.
Version 0.1.799.4147
Stick-checking!  The ball now collides with player bodies, so playing defense is more effective.
Version 0.1.778.5298
Looks like a bad build yesterday!  Rebuilt.
Version 0.1.774.5747
Moved centers slightly back from faceoff.  Made ball physics faster & bouncier off wall.  Player acceleration tweaks.
Version 0.1.755.4315
Added a popup wrist menu to your left hand.  Turn your wrist over to access buttons to exit the match or toggle the voice chat.  The menu is currently very picky on when it appears... that'll be changed soon.
Version 0.1.750.4268
"YOU get announcements!  And YOU get announcements!  EVERYBODY gets announcements!"
Networked the end-game announcements.  Now everybody gets to hear them, not just the game host.
Version 0.1.743.4066
"More Fewer Freeze'n'Flickers" Update.  Quest microphone permissions no longer freeze the game at startup.  Quest2 has reduced graphics flickering.  
Version 0.1.727.5277
Experimental Ball Changes removed.  PC & Quest2 now have benchriders to cheer you on.  Plus you can look at the bench to tell which side is your side (by matching colors).  Hint: score on the goal NOT on your side!   Quest1 has them hidden for performance.
Version 0.1.716.4129
Remote players should now reset correctly after a goal.  Mashing the START GAME button no longer breaks the game.
Version 0.1.711.50
Players now teleport to starting positions instead of creepily swooshiing across the screen.  
Version 0.1.706.5195
Added a CLEAR button to the player name popup keyboard
Version 0.1.697.4106
Goalies no longer freeze-in-place when the ball disappears after a goal is scored
Version 0.1.679.4224
Experimental changes to how the ball is handled over the network.
Thought the ball sync looked smooth today IDK might delete later
Version 0.1.670.5365
Adjustments to the  player position preference system.
Version 0.1.635.5682
Stick physics fine-tuning continues.  Slapshots should be a bit easier now.
Version 0.1.631.4173
"Announcer says WHAT ?!?!" update.  Added an announcer to the game!
Version 0.1.622.4183
"Santa Brought Sticks!" Update.  Significant change to stick physics.  Fixed voice-chat so it works in the lobby for new players.
Version 0.1.616.125
"Shiny Hockey Stop" Update.  You can now quickly stop by accelerating in the opposite direction than you are moving.  It's tricky to do, so practice!  Added a slight acceleration curve -- you accelerate slower as you gain speed.   Games are now played in the home teams arena.
Version 0.1.605.5597
"Another Game?" Update.  When playing another game after a game ends, the game will actually start.  Team names now show for non-hosting players.  Game lobbies can be re-joined after a game is completed.  Additional physics tweaks.

NOTE: network changes means break backwards compatibility with this version.  Previous versions wont see or be able to join this version.
Version 0.1.604.3519
"Git Taller!" Update.  Now auto-normalizes player height.  Now people in chairs (read: developers sitting in comfy dev chairs) will appear as the same height as standing players.  Also players stay in the same game room at end of a game.
Version 0.1.601.4412
"Mixed Bag O'Bugs!" Update.  Reduced flashing (Z-Fighting) on Quest.  Improved rink floor texture.  Improved wall colliders to keep that pesky ball inside.  Improved ball contact handling.
Version 0.1.588.5727
"Lets Play Again!" update.  Cleaning up the menu behaviors.
Versipon 0.1.587.4481
Sneaky little update to improve debugging of automatic team balancing.
Versiom 0.1.587.53
"Room Name?" Update.  Fixed bug preventing players from joining games.
Version 0.1.509.129
"So Many Teams!" Update.  Changed the teams to 12 teams, split across 2 divisions.  Vote for your favorite teams in either or both divisions; all votes count!  Extended the team colors to include a 3rd color, but this won't be widely used until a future model update.
Version 0.1.500.3697
"Stop Stealing Our Votes!" Fixed an issue counting votes.  Fixed a disconnect with the Home/Away checkboxes.  Disabled a debug tool, whioch shoudl also help performance a bit.
Version 0.1.500.367
"Get Out The Vote" Update.  Voting to select team,  and performance improvements.
Version 0.1.429.183
"Stick Goes In Hand Update" Improved hand and stick positioning on other players.  
Version 0.1.423.312
"Bobblehead Update".  Remote players remembered how to stand and how to move their heads.  Good job!  Also players no longer constantly accelerate.  Good job stopping!
Version 0.1.412.560
Oculus (Meta!) Touch controllers now use the joystick to snap-turn left & right.  Should apply to Index & WMR controllers as well.  Vive still uses the thumbpad.  WMR can probably use the thumbpad as well.... but why?  Joystick FTW.
Tweaked light settings to prevent post-game scene from getting baked.
Minor update.  Added PSA board ads to the new rink.
"Oh! There's the menu!" Update.  Rotates the players correctly at startup so the menu is visible.  And orients players when placing before a faceoff.  And at the post-game menu. 
Minor UI cleanups.  Renamed a couple default teams.
"Fasty-Questy" Update.  Significant performance gains in multiplayer.  PC will also benefit, but Quest players will benefit A LOT
"In Hockey, No One Can Hear You Scream" Update.  Disabled a debug setting that could record microphone data to the local filesystem.
Fixed issue blocking issue with itch.io uploads.
Version 0.1.350.5615
"Ooops" Update.  Multiplayer has been fixed.  Apparently it's been toast for a few months.  Oooops.  Enabled voice chat in the game lobby.  You can switch it on/off in the game, but it's currently always on in the lobby.
Version 0.1.341.5505
"Wrist-Breaker!" Update.  Corrected a rotation problem using Oculus nee Meta Touch controllers that made the stick tilt up too much.  Also removed the Grip button as a rotation trigger -- it was causing too much random rotation.
Version Version 
"Rando Was His Name-O" Update.  Added a new button to randomly generate the room name (game tag).
"Can You Hear Me Now?" Update.  Added Voice Chat.  Performance enhancements, most notable on the Quest.
"Mobilification" Update.  Quest support.  Changed gameplay rink.  Significantly improved physics.  Significantly rewrote things behind the scenes.
Version 0.0.2279.165
"UX-N-Bugs" Update.  Minor tweaking of the User Experience, and added some PSA ads to the rink walll.
Version 0.0.2278.352
"Ads For Good" Update.  Added some... uhh.. ads.  Because hockey rinks look weird without ads on the walls.  (Not real ads!)
Version 0.0.2277.116 
"Come On Back" Update.  Fixed an issue preventing players from leaving a game and joining another.
Version 0.0.2274.5619 
"Now YOU Can Play, Too!" Update.  Fixed problems blocking people from joining someone elses game.  Now you can.  GAME ON !!!
Version 0.0.2265.4113
The "Look Over Here!" Update.  Players now face the right way at faceoff.
Version 0.0.2265.305
The Refs and Rockets! Update.  Increased ball speed, much more responsive and controllable now.  Refbot now makes an appearance at center before dropping the ball.
Version 0.0.2264.96
Something Stuck To Your Feet Update.  Added skate blades.  
Version 0.0.2222.101
Save the Titanic! Update.  Fixed a bug that caused the players body to sink through the floor.  No More Sinking!
Version 0.0.2217.3617
On The Bounce Update.  Significantly improved ball handling (read: made the ball 75mm in  diameter).  If I could dangle in real hockey, I'm sure I'd be able to in PHL now.  Except I couldn't.  And I can't.  /sadface
Version 0.0.2215.5681
STOP GOING THROUGH THE FLOOR! Update.  Redid the floor detection, so now the stick won't drop down through the floor.
Version 0.0.2213.4381
Auto-Grip Update.  Stick now auto-resizes itself relative to the rink floor.  Now you can try slapshots without the stick going crazy.  Still some improvements to go, but it's way more usable now.


parsec-hockey-league-Quest.zip 383 MB
Version 0.1.1230.2853 3 days ago
parsec-hockey-league-windows-x64.zip 461 MB
Version 0.1.1230.2853 3 days ago

Install instructions

Parsec Hockey League uses OpenXR, so it should work with HTC Vive, Valve Index, Windows Mixed Reality headsets, Oculus Rift, and Oculus Quest.

PC users can download the ZIP, extract to a folder, and the run the ParsecHockeyLeague.exe.  Or... install the Itch.io app and download it there -- Itch will take care of setting it up, keeping it updated, and executing it when it's time to score some goals.

The Quest version can be installed directly by SideQuestVR, or manually using ADB (or SideQuestVR... which will install and configure ADB).  

For a manual installation with SideQuestVR, you can download the PHL Zip , extract the APK, and drag-n-drop it onto the TASKS window to have SideQuestVR handle the installation. (Easier to have SideQuestVR handle the install!)