Game Client

From Unofficial Homecoming Wiki
Revision as of 19:08, 18 December 2023 by Uninventive (talk | contribs) (→‎Facts)
Jump to navigation Jump to search

Overview

City of Heroes uses a program which runs on your computer called the Game Client (and its associated game files) to generate the graphics you see and the sounds you hear. It figures out what you have clicked on and it handles the typing you do at your keyboard. The client is constantly sending information to the Server to tell it what powers you activate, what attacks you make, how you move and turn, and the messages you type to other people.

The Server is constantly sending information to your client to tell it what everyone else in your zone or mission are doing. The client shows you their actions based on that information. If something interrupts the flow of that information then everyone else will stop moving on your screen. If the flow of information is interrupted long enough then you are disconnected from the server, typically with the message: "Lost connection to mapserver".

When a new version of the game client is available it has to be downloaded to your computer before you can use it. A program called a Launcher checks for and downloads new versions of the client and all its associated files.

The launcher is used to start City of Heroes, or any other game it is programmed to update (including Beta Services).

Facts

  • The same game client is used to play both City of Heroes, City of Villains, and City of Heroes Going Rogue on ALL operating systems. (During Live, Paragon Studios merged all of the 'City of' games into a single client in preparation for City of Heroes: Freedom, the final live client release from NCSoft/Paragon Studios.)
    • Windows OS runs the client natively.
    • MacOS (under Intel processors) and Linux use WINE to run the client on a Windows Subsystem layer.
  • All character data is stored on the servers. You can access your account and character data from any computer that has the game client.
    • One caveat: files such as Architect Entertainment save files, Character Select sorting, and Player Ratings, are stored in text files on the player's hard drive and are not accessible from other computers.
  • Patches are installed prior to logon and the latest version is required to play.
  • The client loads in two stages:
    1. The Launcher, which downloads patches and checks the client for the latest version. Examples of Launchers include Tequila & Island Rum.
    2. The Client, which contains the game itself.
  • The client cannot be run directly by players if the version of the game residing on the player's computer is different than the version of the game on the Homecoming servers. Updating prior to running the game can be done through the command line by using the launcherCLI.exe command.
  • Since the Sunset, NCSoft's keys, game cards, and promo codes no longer work. There is no CD Key required to install the game client.
  • The Launcher can downloaded to install the game without requiring any CDs or DVDs. Use of NCSoft Client files pre-Issue 24 will cause issues in patching, and should not be attempted.
    • Note: A new installation using the Launcher will download the entire client, and may take a long while depending on your internet download speeds.
  • The game is now a "portable" application. Once installed, it exists only in the folder it is installed in with no Windows registry keys, libraries, or other components required. Backup and moving is as simple as copy & paste.
  • Mac/Linux users will follow the WINE convention of installation, which will be located on their "Wine C Drive".
  • It is possible to replace almost any resource (in game map, sound file, etc.) using the data directory.
    • This does not modify any resource/file. This adds a directory which the game client then interprets as replacing the resource once the game is launched. Removal of this change simply means deleting the \data directory. More info below.

Launchers

There are three Launchers for Homecoming: City of Heroes.

Tequila, which is the Windows-specific launcher for Homecoming. It is independently-made, and was made to be a simple application to patch a collection of files. Please note that Tequila itself has not received any updates as a patching application since 2019.

Island Rum, which is a Mac Installer and Launcher for Homecoming. It is maintained by Manga, and handles the installation of Wine, the City of Heroes client, and patching the client before play.

The Homecoming Launcher was released on October 13th 2020 as an alternative to Tequila and Island Rum; it allows launching the game on Windows natively, and on Linux and MacOS via Wine. Unlike Tequila, it also receives hardware and security fixes to run on newer systems.

Launching the Game

Homecoming Launcher Settings window

PC

These can be run from the command prompt or entered into your shortcut. You can do the latter by adding them to "Extra Launch Parameters" in Homecoming Launcher--> Settings--> Homecoming. The file "logs/launcher/launcher.log" shows the parameters the HC launcher launched the game with last.





PC Game Client Command Line Parameters
CityOfHeroes.exe -compatiblecursors 1
  • Uses compatible 16-color cursors to solve compatiblity issues with Windows Vista and others. Please note that this has since been integrated into an option in-game.

CityOfHeroes.exe -usetexenvcombine

  • Enables simple rendering path, which may help fix issues with certain video cards and drivers.

CityOfHeroes.exe -renderthread 1

  • Forces the game to run using more than one proccessor/core, rather than using only one. NOTE: Though the game does this by default now, this command is still a valid option.

CityOfHeroes.exe -renderthread 0

  • Forces the game to run using only one processor/core, rather than using two. This may be needed to work around buggy drivers, or on Linux.

CityOfHeroes.exe -maxinactivefps 5

  • Limits the graphic display update to 5 Frames Per Second when COH is not the foreground application. The number can be set to whatever maximum framerate is desired. (This also works as a slash command in-game.)

CityOfHeroes.exe -stopinactivedisplay 1

  • Freezes the graphic display update when COH is not the foreground application. This can greatly reduce processor utilization when running multiple game clients on the same computer.

CityOfHeroes.exe -fullscreen 1

  • Makes the game launch in full screen, regardless of what options are set in-game. To force the game not to launch in full screen, -fullscreen 0 should be used. (This also works as a slash command in-game.)

CityOfHeroes.exe -screen x y

  • Makes the game launch in a window with a width equal to x and a height equal to y. (This also works as a slash command in-game.)

CityOfHeroes.exe -UseCelShader 1

  • Makes the game launch with a "comic book" look. To force the game not to use a comic book look, -UseCelShader 0 should be used. (This also works as a slash command in-game.)

CityOfHeroes.exe -gfxreset

  • Causes the game to reset all graphics settings and launch the game in windowed mode.

CityOfHeroes.exe -vis_scale 5

  • Sets the World Detail distance to render at 500%. The number can be set to anything between 0.0 to 20.0. (This also works as a slash command in-game.)

CityOfHeroes.exe -lodbias 5

  • Sets the Character Detail distance to render at 500%. The number can be set to anything between 0.0 to 20.0. (This also works as a slash command in-game.)

CityOfHeroes.exe -project "coh"

  • NOT SUPPORTED Launches the game client without looking for the launcher, using the North American servers. If any patches have been applied since the last time you used the launcher, you may be able to login, but you will get a version conflict.

CityOfHeroes.exe -project "eucoh"

  • NOT SUPPORTED European Servers version of skipping the launcher.

CityOfHeroes.exe -project "cohtest"

  • NOT SUPPORTED Training Room version of skipping the launcher.

CityOfHeroes.exe -console 1

  • NOT SUPPORTED Launches the game client displaying a console with each element being loaded. Useful if your client is freezing on load, if you want time statistics for how long it takes to load, or to see other debugging info.

CityOfHeroes.exe -exitlaunch [command line]

  • NOT SUPPORTED The game will execute the given command line on close. Used internally for issue preloads, but can be set to execute any program when you finish playing.

CityOfHeroes.exe -project coh -launcher

  • NOT REQUIRED SINCE HOMECOMINGStarts the game as if it had been run from the NCsoft Launcher, unlocking the Wisp Aura.


Mac/Linux

Please see: City of Heroes on Mac
Please see: City of Heroes on Linux
Please see: City of Heroes on Steam Deck

Mac and Linux client options for Homecoming all use the same client strings as Windows. In Homecoming Launcher, you can set these under "Settings" and "Extra Launch Parameters" for the client you want to launch, regardless of the operating system. While Steam Deck is a Linux device, the instructions provided are GUI-First and specific to Flatpak use due to the device's nature as a user-friendly gaming console.

Running the game from Removable Storage

If for some reason you would like to run the game from a USB thumb drive, portable SSD, SD Card, or other removable and rewritable media, this is possible as Homecoming Launcher does not require installation or registry keys. Simply move or copy the game client folder to the device. The game should be located at C:\Games\Homecoming if you accepted the default location when you ran it for the first time.

For Linux users: you can create a Wineprefix on a removable device for this purpose and install Homecoming Launcher directly on the drive. On the destination system, make sure the same version of Wine is in use before starting HC Launcher. The system will configure itself into the Wineprefix and start normally.

In any case, please note the default launcher file location: X:\Games\Homecoming\bin\win64\launcher.exe (Replace "win64" with "win32" if you're trying to play on an older system.)

Network information

Servers

Your computer needs access to the internet, of course; and to be able communicate with various servers (not just the game servers). Certain ports (see below) may have to be opened.

Homecoming Servers are located in Canada in the Eastern Time Zone (North/South American players) and in Germany (European players).

In the event you have a working internet connection, but cannot play City of Heroes, it's possible there may be an issue with the connection between your computer and one of these servers. If this is the case, you can troubleshoot this problem using diagnostic tools, seek assistance from other players on the Official Forums.

List of related network addresses

Some players may wish to run manual tests on these IP addresses and ports using tools such as ping and traceroute. A partial list of ports tested, as of June 2012, is shown below.

Note: these could change at any time at Homecoming's sole discretion, of course; and that failure to test a connection to the port may not be the cause of any issues with running the game.

Game Ports

The game client is somewhat Firewall and NAT friendly. However any issues can be resolved by ensuring the following ports are open:

  • TCP 2104
  • TCP 2106
  • TCP 443
  • UDP 7000-7200


Registry information

This section contains information obsolete for Homecoming Launcher as the installation is portable; registry keys are no longer used for playing Homecoming: City of Heroes/Villains. It is provided for historical purposes.

The game stores its configuration information in HKEY_CURRENT_USER\Software\Cryptic\Coh; even if you installed City of Villains, the key name is still Coh.

  • If you use the Test server, its configuration is stored in HKEY_CURRENT_USER\Software\Cryptic\CohTest.
  • If you use the Beta server, its configuration is stored in HKEY_CURRENT_USER\Software\Cryptic\CoHBeta.

The Installation Directory parameter is useful in case you want to move the game client to another directory or partition. Enter the full path to the game's executable.

The VerifyOnNextUpdate parameter is created every time the game crashes. When the game starts, it checks for this flag in order to decide whether to verify all files for corruption before loading the file. Thus, clearing this flag is a good way to avoid the slow verification process.

If you crash often and would like to skip the verification process every time, simply create a text file named NoVerify.reg with the following contents, and double-click it before loading the launcher:

REGEDIT4

[HKEY_CURRENT_USER\Software\Cryptic\Coh]
"VerifyOnNextUpdate"=dword:00000000

[HKEY_CURRENT_USER\Software\Cryptic\CohTest]
"VerifyOnNextUpdate"=dword:00000000