Jump to content

Teams

From Galactic Empire wiki

Teams are persistent player alliances. Members share a team identity, can restrict purchases from their planets to teammates only, and contribute to a separate team scoreboard. ge-next also gives teammates a private messaging option and protects them from inadvertent friendly phaser fire. Use the Team command to create, join, leave, or administer a team.

Membership and identity

A team has a name and a five-digit number. Players join it with its number and member password; starting a new team automatically makes its creator a member. Members can list their teammates with TEAM MEMBERS and view the standings with TEAM SCORE. A player can belong to one team at a time; in ge-next, they must leave their current team before joining or starting another. See Team command for the commands and examples.

A separate founder secret lets a member kick another player, rename the team, or change its joining password. Anyone on the team who knows the secret can do this; authority is not permanently attached to the creator's account. The sysop's TEAMMAX setting limits each team to ten members by default.

Team scoring

TEAM SCORE ranks active teams by a score built from their members. A member contributes their planet score plus kill score; the game averages those individual scores, then adds a bonus for each member:

team score = floor(sum of member scores / number of members)
           + (number of members * team bonus)
member score = planet score + kill score

TEAMBONU sets the bonus in hundreds of points. With its default value of 5, the team receives 500 bonus points per member. For example, members with scores of 1,200 and 1,800 have an average of 1,500; the two 500-point bonuses make the team's score 2,500. This is a team-standing calculation, not extra points credited to either member's personal score.

Classic stores a cached team score and member count and normally recalculates them during midnight processing. TEAM SCORE therefore may not reflect recent kills, planet changes, joins, or departures. Classic also divides each member's score by the member count before adding it, discarding an integer remainder for each member. ge-next 0.3 scans current user records when TEAM SCORE is requested, sums their planet and kill scores, divides once, and sorts the resulting standings. It retains the intended average-plus-bonus formula while avoiding the classic staleness and extra truncation.

Gameplay effects

  • Communication: ge-next adds SEND TEAM, which delivers a message to online ships belonging to the sender's team. Classic GE has no team-addressed SEND mode; its SEND command uses the A, B, and C channels. In ge-next, SET DISPLAY HAIL OFF filters public hails but does not suppress team messages.
  • Identifying allies: REPORT ACCOUNT shows a player's own team. SCAN SHIP shows the target's team as Alliance when the ship belongs to a team. The ships do not need to both be out of hyperspace: the alliance appears even if the scanner or target is at warp.
  • Planetary trade: A planet owner on a team can set the planet's trade password to team. The BUY path checks team membership, allowing teammates to purchase goods and rejecting outsiders. Classic GE and ge-next through 0.3.2 instead let anyone pass MAINT's password check by typing the literal word team. ge-next 0.3.3 requires matching team membership for maintenance too; teammates do not need to supply that word. Other maintenance requirements still apply. See Classic bug: Team maintenance password bypass and Planet administration.
  • Friendly fire: Classic GE does not exclude teammates from a phaser sweep. Since ge-next 0.3, normal and hyper-phaser fire skip another player's ship on the same team unless the shooter has locked onto that ship. This allows a player to assist a teammate by firing phasers from a distance without worrying about damaging the teammate in the process. Betrayal is still possible, as a lock permits deliberate fire. Since projectiles already require a specific ship letter target to fire, they are not restricted between teammates.

Team lifetime and deleted codes

When its last member leaves or is removed, a team is empty. Classic GE leaves some empty teams and stale counts until cleanup. Once classic GE deletes a team, its numeric code can be reused even though planets may still refer to the old code, potentially giving an unrelated new team access to those planets.

ge-next 0.3 marks an empty team deleted immediately, erases its credentials, and keeps its code reserved. The table slot can be reused, but the old code cannot be assigned to a new team. When a team-protected planet is loaded for trade or administration and its stored code no longer points to a live team, ge-next clears the obsolete team password and code. See Classic bug: Reused deleted team identifiers.

Internal state and diagnostics

Each team has a numeric code, name, member password, and founder secret. A player's saved record stores the team code. The separate team table holds definitions and cached member counts in 50 slots and is saved in the team data file; it is not the authoritative list of members. Membership follows the code in each user record, not the team's current array position. Team state also includes each online player's active in-memory record.

Classic TEAM operations did not update all of these consistently; midnight cleanup was expected to repair counts, scores, and invalid assignments. ge-next 0.3 made starting, joining, unjoining, and kicking update saved membership and the team table immediately, retaining cleanup as a defensive reconciliation step. ge-next 0.3.3 also updates an online player's active team membership when that player is kicked, so the old team code is cleared from both the saved record and the active session. See Classic bug: Team state inconsistency for the classic failure paths and their corrections.

Classic 3.2e also has an undocumented TEAM DUMPITOUT subcommand that exposes the team table, including member passwords and founder secrets, to any player who knows the phrase. Early ge-next releases retained it. ge-next 0.3 removed it from the player-facing command and provides SYS TEAMDUMP for authorized operators instead. Its output still contains credentials and should be treated as confidential.

ge-arena

Current ge-arena modes do not use persistent teams, TEAM, or the team data file. Planned team modes will assign temporary teams per match in memory; they will not be entries on the standard team scoreboard.

See also