
Networked Tennis Game for VRChat
ํ๊ทธ
์ํ ์ค๋ช
์ด ์ํ์๋ AI๋ก ์์ฑ๋ ์ฝํ ์ธ ๊ฐ ํฌํจ๋์ด ์์ต๋๋ค.
Add a complete networked 1v1 tennis game to your VRChat world.
The Networked Tennis Game is a multiplayer VRChat world system featuring physical racket gameplay, synchronized ball trajectories, directional shot control, proper tennis scoring, VR & desktop support, configurable depth assistance, audio, player seating, and instant rematches.
Players join opposite sides of the court, grab their assigned racket, and play through a complete tennis game.
๐ Networked Multiplayer Tennis
Built specifically for 1v1 VRChat multiplayer.
The system synchronizes:
โข Player seats
โข Current server
โข Game state
โข Ball launches
โข Ball trajectory
โข Shot targets
โข Scores
โข Rally state
โข Match progression
Both players reconstruct the same ball flight from synchronized shot data, helping keep rallies consistent across the instance.
๐พ Physical VR Racket Gameplay
VR players physically swing their racket to:
โข Serve
โข Return shots
โข Aim left or right
โข Control shot depth
The system tracks racket movement and derives shot direction from the player's actual swing velocity.
Forward swing speed influences how deep the return is aimed, while lateral movement controls left/right placement.
๐ฏ VR Shot Depth Control
VR players can influence how deep onto the opponent's court the ball lands through their swing.
Hit more aggressively forward for deeper shots or use a softer motion for shorter placement.
This gives rallies more variety than simply returning every shot to the same location.
๐ Optional VR Depth Assist
The court includes a toggleable VR Depth Assist mode.
With Depth Assist enabled, shot depth is constrained to a safer playable area of the opponent's court.
Disable it for more freedom โ and more risk.
The current setting is displayed directly on the court as:
VR DEPTH: ON / OFF
โ Out-of-Bounds Shots
Players can now hit the ball out.
Shots that land too short or travel beyond the baseline are detected automatically.
The court displays whether the shot was:
OUT / SHORT
or
OUT / LONG
If you take the risk and miss the court, the opponent receives the point.
๐ฅ๏ธ Desktop Support
Desktop players aren't left out.
Desktop aiming uses the player's view direction to determine:
โข Left / right placement
โข Shot depth
This gives desktop users meaningful shot control without requiring tracked VR motion.
๐ Physical VR Serving
VR serving now works through the racket swing itself.
The racket must physically make contact near the serve ball before the serve is accepted, giving VR players a more natural tennis-style serving interaction.
Desktop players can still serve through the racket's use input.
๐ข Synchronized Ball Flight
Ball movement uses a deterministic trajectory rather than relying entirely on free networked rigidbody physics.
The system calculates:
โข Shot origin
โข Landing position
โข Flight duration
โข Gravity
โข Net clearance
โข Bounce
โข Post-bounce travel
โข Return window
Both players reconstruct the ball from the same synchronized launch snapshot.
๐ Tennis Scoring
Built-in tennis scoring includes:
LOVE โ 15 โ 30 โ 40
Plus:
โข Deuce
โข Advantage
โข Game Won
โข Win-by-two rules
The system automatically awards points and progresses the game.
๐ Alternating Service
Service automatically switches between players after each point.
Once the point finishes, the court prepares the next serve without requiring a manual game reset.
๐ Score & Match Status Display
The court UI displays both the score and the current match state.
Statuses include:
โข Lobby
โข Serve
โข Rally
โข Winner
โข Out / Long
โข Out / Short
๐ฅ Player Seat System
Players join the match by taking either the Near or Far side of the court.
Once both positions are filled, the match automatically begins.
Only the player assigned to a side can pick up that side's racket.
๐ธ Automatic Racket Return
Drop your racket and the system automatically returns it to its home position.
Ownership changes are also handled so abandoned rackets don't remain stranded around the world.
๐ Audio Support
Built-in support includes:
โข Racket swing sounds
โข Ball impact sounds
โข Alternate impact sounds
โข Ball bounce sounds
โข Match start sounds
โข Score sounds
๐ฃ Score Announcements
Optional announcer clips can call:
โข Love All
โข Fifteen
โข Thirty
โข Forty
โข Deuce
โข Advantage
โข Game Won
๐ Replay & Rematch
After a game finishes, either participating player can immediately trigger a Replay and start another match.
The included End Game control resets the court back to its lobby state.
๐ช Disconnect Handling
If one of the active players leaves the instance, the system detects the missing player and safely resets the court instead of leaving the match stuck.
๐ฎ Great For
Sports Worlds โข Social Worlds โข Game Worlds โข Arcades โข Competitive Worlds โข Party Worlds โข Recreation Areas โข Minigame Collections
๐ฆ System Includes
๐พ Networked 1v1 tennis gameplay
๐ธ Physical VR racket swings
๐ฏ Left/right shot aiming
๐ Shot depth control
๐ Optional VR Depth Assist
โ Short & long out detection
๐ฅ๏ธ Desktop aiming support
๐ Physical VR serving
๐ข Synchronized ball trajectories
๐ Tennis scoring
โ๏ธ Deuce & advantage
๐ Score & status display
๐ฅ Player seat system
๐ Automatic service rotation
๐ Replay & rematch
๐ช Disconnect recovery
๐ Racket, ball & bounce audio
๐ฃ Optional score announcements
Add a complete interactive tennis minigame to your VRChat world without building the networking, scoring, aiming, racket interaction, ball trajectory, match flow, and multiplayer handling yourself.
Made for VRChat Worlds.
๐ฌ Support & Community
Need help, have a question, or want to request a feature for this asset? Join theย VRCAkira Discord serverย for product support, answers, update information, and future asset requests:
Discord:ย https://discord.gg/pGwkH6ueQu