Netgame

From SRB2 Wiki
Jump to: navigation, search

Network games, often shortened netgames, are games that are played online with other people. They are set up by a host, with up to 31 other members joining the game. The host has full control of what level is being played, whether chatting to others is allowed, whether the game is paused or not, and so forth. He/she can also ban unwanted users. Most of the host's privileges can be lent to someone else in the netgame, either by using the VERIFY console command or having the member log in with the correct password.

Contents

Master Server

A master server is a website or IP publicized on the internet and primarily functions as a list of servers for players to join. Currently, the Official SRB2 Master Server hosted by Cue, Alam, and Logan at ms.srb2.org is the community's official master server.

You can set your Master Server through the MASTERSERVER command, or by using the Options menu: Make sure you include the port (Standard is 28900) after the IP Address or Hostname, like so: MASTERSERVER ms.example.com:28900

Playing an online game

Joining a netgame

To join a netgame, there are three methods.

  • Go to Multiplayer, and click on the "Join Game (Search)" option, set to "Internet". Any games hosted on the Master Server will be shown on a list. Select the one you want to join and hit Enter, and it will attempt to join.
  • Go to Multiplayer, and click on the "Join Game (IP Address)" option. Type in the IP address of the person hosting the game you want to join.
  • You can type CONNECT <ip address> into the console. This method works in the same way the "Join Game (IP Address)" option does.

Hosting a netgame

To host a netgame, there are several necessary procedures you must follow. First and foremost, you must have port 5029 UDP open. This website will explain how this works. Once this is done, hosting your game is simple. Just go to the "Multiplayer" option in SRB2, select "Host Server" option, and choose your settings. If you want to advertise your game on the Master Server, choose the "Yes" option on "Advertise on internet". This will allow people to search for your game and join it. If you want the game private, select "No" on the "Advertise on internet" option, and only people who know your IP address and that you are hosting can join. If you need to inform someone of your IP address and you don't know it, this site can help you.

Lag

Lag is any kind of delay. It occurs in SRB2 netgames among people far away from each other on the globe, but it can also happen when there's too much detail in the level.

Types of Lag

  • Spike lag is the term for when gameplay freezes up for a moment. Normally, this is caused by a bad connection on one user's end. Spike lag will also occur momentarily when a user joins the netgame. Contrary to popular belief, pausing does not directly stop spike lag.
  • Control lag (or c-lag), which delays the player's controls, is usually an occurrence when the host's connection does not respond quickly to another user's connection. That being said, hosts do not experience control lag in their own netgames.
  • Frame lag is the term for a decrease of framerate of the game. This is normally caused by a slow computer/excessively detailed map, and almost never has to do with one's Internet connection. The most common cause of this is when too many FOFs are in view or when there are too many Things nearby.
  • Backwards lag, the type of lag that happens when CONSFAILPROTECT is set to enabled, is characterized by the character teleporting back to where they were after moving so they don't get a consistency failure. This can make a game impossible to play, but happens less often in the newest EXE version.

Prevention Techniques

  • Getting a better Internet connection speed (mostly the upload speed) can allow your server to keep more players connected with less spike lag, and often control lag for the other players. This can also help prevent you from causing lag on other servers you join.
  • "Distract" your Internet connection briefly (perhaps by using the LISTSERV console command) a small amount of times quickly can sometimes clear up your own server's spike lag.
  • Use the server-only ping command, and kick people who may be lagging.
  • Reset or change the level a small amount of times. You must be the host of a server or of a dedicated server to accomplish this.

Consistency Failure

A consistency failure, also called "c-fail", is an automatic action performed by the server if the other players' connections are sending improper data. The player sending the improper data will have it refreshed by the server, this can cause lag. People still get kicked for consistency failures, however. Usually when the client sends an illegal netvar command. The host can see who is being inconsistent by typing blamecfail 1. If these jam up your game without stopping, you can turn off consistency protection with consfailprotect 0. Don't forget to turn it back up afterward!


External Links

Personal tools