Netrek

From Wikipedia, the free encyclopedia

Jump to: navigation, search
Netrek
Developer(s) open source
Designer(s) Kevin Smith
Scott Silvey
Platform(s) Microsoft Windows
Mac OS X
Linux
Unix (many variants)
NetBSD
Release date(s) 1988
Genre(s) real time strategy / shooter
Mode(s) team game
2–4 teams (usually 2)
1–8 players per team

up to 16 players total
up to 16 observers
Internet or local
multiplayer or
single player vs. robots

Media Internet

Netrek is an Internet game for up to 16 players, written almost entirely in cross platform open source software. It combines features of multi-directional shooters and team-based real time strategy games. Players attempt to disable or destroy their opponents' ships in real-time combat, while taking over enemy planets by bombing them and dropping off armies they pick up on friendly planets. The goal of the game is to capture all the opposing team's planets.

Netrek was the third Internet game, the first Internet team game,[1] and is the oldest Internet game still actively played (as of 2008) and is still played in large communities(as of 2009) . Developed as a successor to 1986's Xtrek, it was first played in 1988. It pioneered many technologies used in later games, and has been cited as prior art in patent disputes.[2]

Contents

[edit] Description

The following describes Bronco Netrek. Other variations of the game exist, such as Hockey Netrek in which players use tractor beams to manipulate a hockey puck. However, Bronco is the most prevalent form.

Netrek is essentially a greatly expanded version of Empire, a multi-user space combat game that ran on the PLATO. Empire, in turn, is essentially a multi-user version of the seminal Spacewar!, the earliest computer video game. Like those games, in Netrek each player takes command of a starship, which they pilot about a 2D map of the game galaxy, as seen from above. The game combines both tactical combat and strategic goals.

[edit] Planets and Facilities

The game galaxy consists of 40 planets distributed about the map. The map is further divided into 4 sectors of 10 planets each. Netrek divided the players into one of four teams, loosely based on the Star Trek universe; the Federation, Romulans, Klingons, and Orions (or "feds", "roms", "klis", and "oris", respectively). Each team is assigned to a single sector when the map is reset.

The planets differ from each other in terms of military or agricultural development; at the start of a game each team has several planets under their control one of which is their homeworld, usually named after a actual planet in the Star Trek Universe (such as Earth for feds, Orion for orios, Praxis for klings). Some worlds, however, have special facilities that help any friendly units in orbit of them. Repair facilities, represented by a wrench, speed up repairs made by the player as well as automatically heal any damaged vessels in orbit of the planet. Fuel depots, represented by a fuel can, speed up the recharge rate of any ships in orbit of the planet. Some worlds may have both these while others only have one. As well as facilities, some planets generate armies, which is also known as agriculture, and are needed for bombing and taking over a planet or capturing an enemy planet. The home world offers fueling, repair and agricultural services. Of the nine other planets two are agricultural and others are assigned fuel depots or repair facilities. Planets slowly generate armies, which may be beamed up by players, and then beamed back down onto enemy planets to capture them. Planets can be bombed to kill off armies, but only to a point, landing armies is always required.

[edit] Combat

Unlike Spacewar! or Empire, Netrek includes many different ship types with their own strengths and weaknesses. Some, like the scout, are faster and are useful for long range hit-and-run attacks. Others, like the battleship, are extremely powerful but slow, useful primarily for point defense.

A player obtains "kills" either by killing an enemy ship or by bombing enemy armies. The number of kills decides how many armies a player's ship can carry. The player's kill count resets back to 0 each time their ship is destroyed, requiring them to obtain more kills before they can carry armies and capture planets. Consequently, people with 2 or more kills are often targeted for ogging (a kind of kamikaze attack) just to remove the threat of them carrying armies.

Enemy ships can be destroyed using two main weapons systems: phasers and photon torpedoes. Phasers are instantaneous beam weapons which cannot be dodged, while torpedoes take time to travel to the target and thus can be dodged. Other shipboard combat systems include shields, and tractor and represser beams. When a ship is destroyed, the player chooses a new ship and reappears next to their team's homeworld.

In addition, ships are also destroyed if too close to an explosion, such as created when an enemy ship is destroyed. This is usually ignored though by people who partake in ogging.

[edit] Ships Classes

In the game, several classes are used to eventually win the game. Players may switch out their original ships for newer ones at their home planet. The ship types are:

Scout Ship (SS)------ Usually a very small ship, the Scout Ship is fast and is commonly used during ogging. It sports a very weak shield and has a low battery power, however.

Cruiser (CS)------ The most common ship used in the game. All players start out with this ship. Normal amount of shields and battery power, it is a perfect all around vessel.

Destroyer (DS)------ A much heavier variant of the Cruiser, destroyers are a bit slower than a Cruiser but pack more battery power for extended skirmishes. Very strong shields make this ship a much needed weapon. Depending on the race, you may need a rank of Lt. in order to reach this ship.

Battleship (BB)------ A very powerful ship, the battleship is the heaviest ship next to the Starbase. Heavy shields and high battery power make this ship a formidable foe. However, its lack of speed greatly affects players and is mostly used in planetary defense or as a supporting role in attacking. Depending on the race, you may need to receive the rank of Lt. Cmder in order to reach this ship.

Assault Ship (AS)------ Assault ships are usually used as support. They are lighter than Battleships but maintain the about the same battery power. These are mostly used to attack planets as the Assault Ship allows players to move about quickly at high-speeds. The downfall is that battery power is quickly worn down by constant fighting.

Galaxy (GS)------ The Galaxy ship is a very powerful ship but is constantly used in planetary defense. High shields and battery power but low speed makes this ship the perfect weapons platform. Depending on race, you may need to achieve the rank of Lt. Cmder or higher to receive this ship.

Starbase (OS)------ Starbases are powerhouses. Most players do not have enough rank most of the time to receive this ship. This vessel is slow but has the highest amount of battery power. A star base, once enough kills are reached, can act as an tactical offensive unit, necessarily supporting bombing and taking over planets. Depending on the race, you may need to receive the rank of Captain or higher to achieve this vessel.

[edit] Ogging

The "ogg" is a kamikaze-style attack, frequently coordinated between multiple ships, with the goal of eliminating a target of high importance, generally with the idea that destroying the target is strategically more valuable than the survival of the attacking ships. It was typically used to destroy enemy ships carrying armies or as a coordinated multi-ship ogg against a starbase.

According to the Jargon File, "ogg" was sometimes also used by extension in the context of other games or in real life.[3]

[edit] History

In the game, players are designated by two alphanumeric characters, where the first character represents the team and the second letter represents the individual designation of that player. There are four teams, Federation, Klingon, Romulan, and Orion, identified as F, K, R, and O, and 16 player slots, numbered 0-9 and then a-f (hexadecimal numbering). Thus, for example, a player on the Federation team in the 11th of the 16 player slots would be designated "Fb" (FED or Federation team, player B), or a player in the first slot who was playing on the Romulan team would be "R0" (ROM or Romulan team, player 0). There were four "reserved" slots that could only be used by local administrators, identified with g-j (these have since been reallocated for use by observers who wish to watch the game). While the game has four teams, normally only two are used at a time, with the unused teams' planets being used as part of the playing field.[4]

During a full game on a Netrek server at CMU during the 1990-91 school year, a member of the Federation team, Stephen Russell (callsign Feakhelek), was heading into Romulan space to capture a planet. The server administrator, Terence Chang, came in on the first reserved slot on the otherwise-empty Orion team, thus being designated as "Og". Instead of engaging in a dogfight, Chang charged in suicidally, failing to kill the Federation ship but leaving it badly damaged. When Og re-spawned, and again charged the now-crippled ship, the Fed player shouted to other people in the workstation cluster, "Help, it's oh-gee!", followed by cries of "It's ogg! It's ogg! Help!". The second suicide attack worked, prompting the Fed player to broadcast "Arrrgh, I was Og'ed" on the in-game message system.[5]

[edit] Fake Ogging

Often a player would cloak and make ogging-like movements if injured or in order to buy time until reinforcements arrived; this was known as fake ogging. Fake ogging could also convince a team that their starbase was under attack in order to provide a diversion for a carrier to capture a planet or achieve some other team objective.

[edit] Games

The ultimate goal of the game is to capture all of the enemy's planets. Game play is normally between only two teams, the other two quarters of the galaxy being known as "Thirdspace". When two teams each have at least four players, the server enters "Tournament Mode", or "T-Mode", in which planets can be bombed and captured. Once one team has only two planets remaining, a twenty minute count down timer for their automatic surrender begins. Capturing a third planet will freeze the counter, while a fourth will remove the threat of automatic surrender.

If one or both teams have less than four players, the game enters "Pre-T Mode," in which a team wins by simply having 4 more planets than their opponents. In this mode, stats are not saved, and the Pre-T galaxy is erased when "T-Mode" exists. On some servers, "Pre-T Robots" fill in empty player spots to create a 4 vs. 4 game, but get replaced by players as the players log on.

Players join and leave the game as they wish. Pickup games can be as short as ten or fifteen minutes, but are normally much longer. "Clue Games" are games between experienced players, which are usually timed for an hour with a half hour of overtime, and a scoring system is used to determine victory.

[edit] History

Netrek is largely derived from Empire, written for the PLATO mainframe system beginning in 1973.[6] It shares many characteristics of that game; key differences include a different planet layout and a much different pace of play, as well as evolutionary factors such as the use of mice instead of keyboard commands, TCP/IP networking, and the inclusion of color and sound.

In 1982, UC Berkeley student David Davis began writing a UNIX game called trek82, based on what he remembered of Empire when he used the PLATO system while at the University of Hawaii. This version emerged as trek82, using character graphics for display and a shared file to exchange data.[6] Chris Guthrie joined Davis, and introduced him to Jef Poskanzer and Craig Leres, who were working on a more strategic offshoot of Empire called Conquest.[6] They produced an updated version known as trek83.

In 1986, Guthrie began porting trek83 to the newly released X Window System, producing Xtrek. Further development took place at the XCF, with the help of Ed James. In the spring of 1988, Xtrek II was written by Scott Silvey and K. Smith, moving from a model which used X as a transport to the game having its own client-server protocol.[6] This was key in allowing the game to be ported to other platforms, which may or may not support X. This version was later developed into Netrek by Scott Silvey, Kevin Smith and Terence Chang.[7]

In 1989, the source code was posted to Usenet. In the fall of 1990, UCB alumnus Terence Chang set up a public Netrek server at Carnegie Mellon University where he was attending graduate school.[7] In spring 1991, the first inter-scholastic game was played between UCB and CMU, and in January of 1992, the "International Netrek League" (INL) was formed, so that teams could form and compete with one another (as opposed to pick-up play, in which games are played by whoever connects to a server, and players enter and leave as they wish during the course of the game). Netrek was very popular in the Carnegie Mellon computer clusters between 1992 and 1993.

Over time, several major types of Netrek were created as people experimented with different extensions to the game. The most popular form is known as Bronco, named for the server at CMU. Particularly noteworthy are Paradise, which is designed to be more like Star Trek: The Next Generation with a more complex game universe, and Netrek Hockey, which is designed to resemble a hybrid of Netrek and ice hockey. Paradise's lack of success has been partly attributed to the lack of a Windows client; while all other variants of Netrek can be played using the same client program, Paradise has added features which require a more complicated client program.

Netrek play peaked in the middle to late 1990s, with several leagues existing for different forms of the game as well as for different regions, and several pickup games always active, 24 hours per day, seven days per week.[8] Between 2002 and 2006 there was a steady decline in play. As of early 2007, Netrek has seen a moderate increase in playerbase coupled with a mild renaissance in development. In late 2006 Mactrek, a new client for the Macintosh, was released, and substantial changes are being made to the Windows clients as well as various server enhancements. Currently there is a move from 10 fps to 50 fps, and the addition of voice chat is being considered.

[edit] Similar games

Netrek also has similarities to Alto Trek , a game written in the late 1970s and later, a similar game ported to the Apple Macintosh by Randy Carr around 1985 to become another NetTrek. Both games ran on local area networks, typically LocalTalk or Ethernet. Unlike Netrek, or Empire, these games did not include the strategic portions of the game.

Netrek also has some similarities to DECWAR, which was developed independently of Empire but is surprisingly similar in many ways. DECWAR formed the basis of the long-running Compuserve online game, MegaWars.

[edit] Technological innovations

Netrek pioneered the use of many technologies and design features that later found their way into commercial network games, including:

  • The efficient use of fast but unreliable UDP packets as well as reliable but slower TCP streams. It was probably the first game to use both types of Internet Protocol packets.[9]
  • A robust client-server model that reduces the data exchange to 'need to know' information, limiting both the required bandwidth and the opportunities for players to cheat by obtaining more knowledge of the game world than their opponents.
  • Persistent account information where players can create a "character", and log in and gain ranks over multiple games.
  • Game mechanics designed to reduce the ability of assisted or robot player aimbots (referred to as borgs) to gain a significant advantage over a human player.
  • An anti-cheating mechanism using an RSA-based public key cryptography authentication system that also attempts (with limited success) to detect and prevent Man-in-the-middle attacks.[10]
  • Multiple game variants played by the same client, with the server telling the client what game features are supported.
  • The use of Metaservers, servers designed to help clients locate available game servers

[edit] References

[edit] Footnotes

[edit] Bibliography

[edit] Further reading

[edit] External links

Languages