FAQ

A list of FAQs can be found on discord or here: https://forfunlabs.github.io/ElevenVR.github.io/help.html

Where can I chat with fellow Eleven players and Eleven devs?

You can find users and devs on the discord often. The invite for the discord, if you already aren't part of it is here. If you are part of the discord already, the direct link is here. There are various topic channels where you can suggest ideas for the game, or where you can post bugs.

How do I adjust position of my paddle?

Go to setting (gear icon), and look at your controller, you will see captions/hints appear near buttons. You can position the paddle any way you want. One button locks the paddle in space, while you move your controller. When you release the button, the paddle gets locked in whatever relative position you left it in. While changing the position of the paddle, other captions will appear, such as returning to default. The paddle position info is stored in the preference.json in gameSettings.paddleTransform

How do I adjust the position of the table?

Look at your non paddle controller, you will see captions/hints for buttons to position the table around. Here you press and drag to move the table. (actually moves the whole VR world). When you let go your new relative position is set. While positioning the table/world, other captions will appear denoting buttons used to rotate/pivot the world, and buttons to return to default. Currently there is no way to lock one of the dimensions (such as the height of the table vs your VR floor), but soon a new feature will appear. Your user position info is stored in the preference.json in gameSettings.bodyTransform. There are settings in the menu which define when you are able to move the table: either when the menu is up, or when the menu is down.

Where is the ball?

When you start the game, the ball will appear and bounce away from you (at the current code build). In most cases, you can grab the ball by pressing a button on your non paddle controller. (see a caption for it). In certain cases you can't do so, such as after you have hit the ball to serve, or during your opponent's serve turn, or in the middle of a mini game. If you are in a match, and neither you nor your opponent can pick up the ball, this is a bug, hopefully shouldn't happen. Meanwhile, we have added a new feature for this. If this ever happens, there is an option in the menu "request ball reset". If both players press it, the point will be reset - and the person who served can serve again. If it does, try to remember what happened so you can describe it in #bugs (the discord channel).

How do I adjust the surface parameters of the paddle?

You can current adjust the elasticity of the surface, and the friction of it. These are portrayed as "paddle speed" and "paddle spin" in the play settings tab. Just like in real life, these values have ranges. Currently there isn't a UI method to define different parameters for each side, but there is a way to do it in the preference.json file. (ask me). The default parameters for a paddle when you start the game are optimum for an amateur player. If you are intermediate or advanced, you'd probably want to push up the spin value considerably.

Can steam and oculus home users play against each other online?

Yes.

What is ping compensation?

Currently, ping compensation is a tool which helps alleviate some issue related to latency. The way it works right now is that, when you hit the ball, in multiplayer, the render time rate of your ball slows down based on your ping compensation settings. 20 = 20% slower. This is only visible in your view, and not your opponents. The moment your opponent touches the ball, the render rate of the ball in your vision returns to 1:1. The idea can be seen in the following exaggerated example. Player A hits the ball to player B. Ping is 100ms. Player A sees the ball fly from their paddle, to the place their opponent would eventually hit from, over the course of 500ms. Due to latency, player A will only see player B hit the ball 600ms after player A's hit. The ball, in player A's view, will have gone past player B, and then teleported to the paddle of player B when player A got the signal from player B (that player B hit the ball). This disconnect between where the ball is, and where it then gets launched from bothers some people. If ping compensation in this case is set to 20, then the following would happen. Player A sees the ball's flight to the eventually B collision take 500*1.20 = 600ms. Player B sees the ball take the normal 500ms flight. When player B hits the ball, player A sees the ball reach the racket of player B, and bounce back. So everything would be lined up.

This is not a perfect solution. While it helps line up impact, it hurts the appearance of the ball.

In a multiplayer game, I can't hear or I can't be heard.

At this time, the audio is a bit sensitive. For best results, make sure only the headset audio and mics are the active and default audio and microphone inputs when viewed in windows sound settings. This must be the case before the application starts. If you try to change it mid game, it will most likely not work. If that is all fine, check the audio of each player and yourself by clicking on the ROOMS button in the mid multiplayer game menu. You will see everyone in the room and their respective volumes. The speaker/mic symbols will change color as audio comes through. Here you can mute anyone or mute yourself.

In a multiplayer game, One of the spectators is being really annoying

Anyone in the room can mute or visually hide anyone else in the room. This makes for a funny table tennis game when you are playing with a ghost. If you are the host or the challenger, you have the additional power to kick out anyone in the room. All of this is seen in the ROOMS screen (see above). At the writing of this, there is no logic that would permanently ban someone from a room, so they might request to come back. If this happens, please let us know on the discord - as if it happens at all, we'll put in code to prevent it, quicker.

How do I reset or backup my preferences?

All preferences are stored in a file "preference.json" that is alongside the .exe of the game. It gets read on application start, and written to on application close. In the future, we will provide the ability to have multiple saved profiles. If you want to reset any or all preferences, delete the file or clear it, or delete individual entries in the file. NOTE: if the file is not valid JSON at the launch of the application, all values will be reset to default.

The ball bounce sounds really weird...

Currently there is a bug with the ball sound, when the music volume is started at 0. If this is the case for you, a quick fix is to slide the music slider to just barely more than 0. Often just sliding it up and then down all the way will fix the issue.

I am unable to connect to a user, or am seeing an error or behavior I don't understand.

Please reach out to us on the discord (see first entry in this list). We are very quick to respond most of the time, and will troubleshoot with you until the issue is resolved.

I don't want to ever have spectators!...or I don't want to be challenged!

Various multiplayer settings can be seen when you press the MULTIPLAYER button in the main menu. You can set it so that you auto accept challenges. You can also set to not allow spectators. You can also set to not appear online (you would still be able to play other players, but you wouldn't get lobby challenges.

I have an idea, what if....

We have a channel for this on the discord (see first entry in list). Ideas posted that we like, we pin to the channel so that eventually we'll get to them.

What is this ELO rating ranking stuff?

ELO is a specific type of player rating system. Everyone starts off with 0 points. Beating someone gains you points, and losing loses you points. The number of points is a function of the relative values. The end goal of such a system is to be a predictor of win/loss probabilities. For example, a player with a rating of 1800 should handedly beat a player with a rating of 1200. For more information, check out the wikipedia article for ELO

Why aren't my points being counted?

First question is, are you in a game? You would know if you are if you see points on the virtual TV. Once you know you are in a game, is it your serve? You'd know if you can grab the ball. If it is the AI's serve, it will serve after a short delay after the previous point. If it is your serve, then here are the steps for a proper serve.

https://cdn.discordapp.com/attachments/340717279299895297/683187102564745216/unknown.png

1. Toss the ball at least 6 inches (though the height rule isn't enforced at the moment) behind your side of the table (so not over the table).

2. The ball must then be hit by your paddle, again behind the table. If the ball hits anything other than your paddle, the game considers that you are just fooling around and doesn't count any score until you do do steps 1(toss) and then 2(paddle hit)

3. After the ball is struck with the paddle the ball needs to bounce once on your side of the table (doesn't matter left or right side)...

4. ...fly over the net without touching it...

5. ...then land on the opponent's side. Once it hits their side, it is not their responsibility to hit it back as they would throughout the game.

6. A valid hit throughout the game is letting the ball hit your side exact one time, and then hitting it back through the air onto your opponent's side. During the game, after the serve, the ball can bounce off of the net without issues - only table bounces

affect the point. However, during the serve, if the ball, between hitting your side, and your opponent's side, touches the net at all, it is considered a LET. This results in a serve redo (no points or position lost). You can have unlimited LETs in a

row with no issues.

For more information, check out the official ITTF (International Table Tennis Federation) Rulebook

When I play Multiplayer, there seems to be a lot of latency.

'''This section contains outdated info! At least on Oculus, the UDP port is 13497 instead of 7759 now.'''

Look at the TV screen and you will see a ping number. If next to that number you don't see "relay" that means the latency is just due to the distance between players. If you do see relay, that means you were unable to punch through to the user. There are two ways you can fix this:

1. You may have a router with some unique firmware running on it. An example that has come up a few times is OpenBSD PF Firewall. What you'd need to do is go into the configuration and stop the ports from changing. More info can be found here.

2. Another option is to forward your ports. If you look at the preference.json file, you will see an entry titled "forwardedPort". The default value is 0, and that tells the game not to even try. Pick a port that works for you. Then go into your router

and set up port forwarding from that external port, to your pc port # 7759 (UDP). If you need to use a different port than 7759, then you need to set that up in that same preference json file by adding a key to the "gameSettings" key, such as "outPort":"7755"

NOTE: you may need to set up your pc as a static local ip for this to work depending on your router.