City of Heroes on Linux: Difference between revisions
Line 84: | Line 84: | ||
=== ARM Linux === | === ARM Linux === | ||
Homecoming Launcher (and more importantly the City of Heroes client) is not compiled for ARM. Wine will not run HCLauncher on an ARM system without a Software Emulator for X86 apps. Single-Board Computers (Raspberry Pi and variants) will not run City of Heroes with Wine alone. | Homecoming Launcher (and more importantly the City of Heroes client) is not compiled for ARM. Wine will not run HCLauncher on an ARM system without a Software Emulator for X86 apps. Single-Board Computers (Raspberry Pi and variants) will not run City of Heroes with Wine alone. | ||
=== Chromebooks === | === Chromebooks === | ||
As any Chromebook with an ARM chip is a non starter (see "ARM Linux" above this section), Chromebooks generally | As any Chromebook with an ARM chip is a non starter (see "ARM Linux" above this section), Chromebooks generally cannot run City of Heroes. The few exceptions out there either are discontinued models no longer supported, or cost more than a Windows Laptop which can run it far easier. | ||
== Paid Support == | == Paid Support == |
Revision as of 01:21, 17 August 2023
- See also: City of Heroes on Mac and City of Heroes on Steam Deck
Homecoming Developers do not support any client bugs on Linux. If an issue cannot be reproduced in a Windows client, Linux specific bugs will be given a form response and closed without resolution. Please use the Homecoming Forums for Linux client support from other users.
Overview
It is possible to run City of Heroes on Linux through a technology called WINE (WINE Is Not an Emulator). By porting the Windows API libraries that City of Heroes uses to Linux, WINE effectively "fools" City of Heroes into thinking that it is actually running on Windows.
Instructions (Homecoming Launcher)
For sake of brevity, we'll assume you have a working Linux installation that is fully patched. The distro does not matter. Also assuming a 64-bit system and you can replace "usernameGoesHere" below with your Linux username where needed.
Using a Steam Deck? An install script is available on City of Heroes on Steam Deck.
- Install Wine Stable using this download page -- https://wiki.winehq.org/Download
- Once installed the default Wine Prefix (/home/usernameGoesHere/.wine) will be made. It will prompt to install Gecko and Mono. Note that NEITHER library is necessary to run Homecoming: City of Heroes (although Mono will be useful if you wish to use Mids Reborn or other .NET apps later.) Another note worthy of mention -- it is not prompted during setup but you do NOT need to install Visual C++ Runtime at all. Wine handles this requirement automatically.
- Run the Homecoming Installer. Choose your location on Drive Z the same as you would on Drive C in Windows (Z:\Games\Homecoming).
It is also important to note this procedure is sufficient for a single-user Linux system alone. For a multiuser system, either you need to repeat the procedure for each user (and sufficient disk space is required: 6-12GB per user), or configure permissions to allow multiple users access to the same WinePrefix.
System Requirements
Linux has different system requirements than Windows. For binary video card driver releases City of Heroes will only run on a current video driver that compiles with a Linux Kernel. When NVidia, AMD, or Intel drop driver support for a video card and the kernel fails to compile with the legacy driver in-place, you can no longer play City of Heroes on that system.
There is no specific date when this support ends; it will not be announced publicly when a software upgrade fails. The day that the video driver fails to recompile kernel modules for your current OS is when you need to decide. Possible fixes include:
- Run COH on an older OS instead of on the bleeding edge (ex. choosing Ubuntu LTS over the twice-a-year update distro) so older drivers continue to compile normally,
- Upgrade your hardware (baselines provided below to help in replacement), or
- set up your system to dual-boot to Windows and move your game files to Windows to continue play.
Linux Driver Support
- AMD: Cards older than RX 300 no longer have active driver development. (Current baseline: AMD RX 400/500 and newer.)
- NVidia: Cards older than GTX 500 no longer have active driver development. (Current baseline: NVidia GTX 600/700 and newer.)
- Intel: IGPs with GMA3000 or older are no longer patched. (Current baseline: Intel HD Graphics and newer.)
The above does not mean your older card will not work today. It means if it stops working in the distant future, this may be why.
Must Meet Game System Requirements
System Requirements are the same for a Linux system as they would be for a Windows system: 1 GHz Dual Core processor, 2GB of RAM, a video card capable of OpenGL 2.0/3.0, and 6-12GB free hard drive space. As a generality, if a system would not be able to play City of Heroes using Windows because of the hardware in use there's a good chance Linux won't work either.
How It Works
Programs that run on Windows do not directly access the hardware in the machine. For example, if a program needs a file from the hard drive, it does not talk directly to the hard drive, but it calls a function in the kernel, which in turn talks directly to the hard drive.
The primary advantage of this type of abstraction is that programs do not have to worry about the hardware-specific details of every device that is installed. Before this level of abstraction was achieved, every program had to have special drivers for every device that might be used. Now, only one set of drivers must be installed on Windows, which can be shared through a common set of functions that Windows provides (called the Application Programming Interface, or API).
A special set of functions may be grouped into a programming library. Such libraries typically handle some specific functionality. For example, there are two primary graphics libraries in use today to program games: Microsoft's DirectX, and OpenGL, an industry-standard graphics library. Since DirectX is a proprietary software library, programs that use it will typically only run on Windows. Since OpenGL has Windows and Linux versions, however, programs that run using this library are much more easily converted between Windows and Linux.
The open source community developed an application called WINE that provides a layer of abstraction between Windows programs and the system they're running on by taking the place of the Windows kernel and API. Among other things, it implements much of the DirectX library (converting the 3D parts to OpenGL). When WINE is installed on Linux, programs that use DirectX may be able to run, because they believe they are calling DirectX functions, and those functions work similarly under Linux and Windows.
City of Heroes in particular already uses OpenGL for its 3D graphics (while using DirectX primarily for input), which gives it a performance advantage when running through WINE.
Unsupported Linux Hardware
The following Linux systems will not have the resources to play City of Heroes.
ARM Linux
Homecoming Launcher (and more importantly the City of Heroes client) is not compiled for ARM. Wine will not run HCLauncher on an ARM system without a Software Emulator for X86 apps. Single-Board Computers (Raspberry Pi and variants) will not run City of Heroes with Wine alone.
Chromebooks
As any Chromebook with an ARM chip is a non starter (see "ARM Linux" above this section), Chromebooks generally cannot run City of Heroes. The few exceptions out there either are discontinued models no longer supported, or cost more than a Windows Laptop which can run it far easier.
Paid Support
Codeweavers
The main sponsor of the Wine Project, Codeweavers, maintains a paid license of Crossover as a Prosumer Wine distribution offering tech support for use. It is important to note two things:
- Paying for Crossover is not required to play Homecoming if you can install Wine on your own, however, it will work if you require paid Tech Support assistance instead of a Community-led forum.
- Crossover's main customer base is business-class users. (They will support gaming, but a lot of what Cedega did in the past to simplify gaming use is not built into the application.)
External Links
- Linux Advice - Using Homecoming Launcher in Linux.
- City of Heroes/City of Villains entry in the WINE application database.
- WINE, the underlying technology that allows Windows programs to run on Linux
- Paragon Wiki Archive version of this same page