Stories
Slash Boxes
Comments

SoylentNews is people

posted by martyb on Thursday August 27 2015, @06:43PM   Printer-friendly
from the Game-On! dept.

If you're like me and dig a good RTS game but run Linux as your primary desktop, today is your lucky day:

Exactly one year to the day after writing Company of Heroes 2 might be coming to Linux, today marks the planned release of the Linux port of CoH 2.

Company of Heroes 2 for Linux isn't up on Steam at the moment, but it's expected to appear there within the next few hours. As mentioned last week with regards to the system requirements, this Linux/OSX game port by Feral Interactive Games lists Intel or NVIDIA graphics as the requirement. "Requires an Intel Iris Pro graphics card or an NVIDIA 600 series graphics card or better with driver version 352.21 or later." But a GeForce GTX 760 or better is what Feral recommends for the game on Linux. There's no mention at all of AMD Catalyst or RadeonSI support, so we'll just have to see what goes wrong with it later today...

No, this isn't a soyvertisement. I just dig when good games and Linux meet.


[Ed. additions] Also noted on twitter:

Feral Interactive on Twitter: "Mac Linux ready their armies: Company of Heroes 2 will arrive Aug 27 on Steam and soon after on MAS. Minisite: http://t.co/VUysnoVnR6"

Also, it appears that it will have per-platform multiplayer.

Nice GamingonLinux article/review of the release.

Original Submission

 
This discussion has been archived. No new comments can be posted.
Display Options Threshold/Breakthrough Mark All as Read Mark All as Unread
The Fine Print: The following comments are owned by whoever posted them. We are not responsible for them in any way.
  • (Score: 2) by kaganar on Thursday August 27 2015, @07:19PM

    by kaganar (605) on Thursday August 27 2015, @07:19PM (#228696)

    Company of Heroes 2 uses a deterministic engine, and relies on clients to generate the same outcome for all gameplay-relevant calculations, like pathfinding, unit positions, spawns and combat. .... During development, cross-platform multiplayer was absolutely one of our goals and we invested countless man-hours in isolating and resolving these subtle differences. And although we made progress on some of these issues during development, it's impossible to know how many issues remain and how much more work would be required on ALL platforms to get the title communicating successfully across Mac, Linux and Windows.

    Given that PC, Linux, and Mac all use basically the same CPU architecture, I'm trying to imagine what's left that would have made the simulation engine vary across operating systems... Bugs like race conditions, memory layout sensitive operations, etc..? Admittedly, I'm not experienced with writing networking code for games, but it seems like if your simulation depends on the OS, you're doing it wrong. (Numerical issues coming from architecture differences and the like -- that's another very ugly story.)

    Starting Score:    1  point
    Karma-Bonus Modifier   +1  

    Total Score:   2  
  • (Score: 4, Informative) by Gravis on Thursday August 27 2015, @07:39PM

    by Gravis (4596) on Thursday August 27 2015, @07:39PM (#228700)

    I'm trying to imagine what's left that would have made the simulation engine vary across operating systems...

    you know... you could have just clicked the link.

    Company of Heroes 2 uses a deterministic engine, and relies on clients to generate the same outcome for all gameplay-relevant calculations, like pathfinding, unit positions, spawns and combat.

    Any differences in the maths, even at the nth decimal place of precision, will accumulate to a tangible divergence in behaviour and ultimately a disconnect. When dealing with multiple architectures, operating systems and optimising compilers, tracking down all possible differences is a long and complex task.

    the basic issue seems to be that they didn't use standardized types or even the same compiler and as such, float, double and long double means whatever the compiler thinks they are. they should have used the types defined in stdint.h/cstdint with gcc or llvm.

    • (Score: 3, Interesting) by kaganar on Thursday August 27 2015, @08:01PM

      by kaganar (605) on Thursday August 27 2015, @08:01PM (#228707)

      you know... you could have just clicked the link.

      Actually, I did -- and it was a little short on details. Although I did miss this gem:

      optimising compilers

      And yeah, that'll do it to you every time. ;-)

      means whatever the compiler thinks they are

      Yes and no -- unless you're using FPU emulation libraries, the hardware FPU determines a good bit how floats behave. Mind you, the compiler still decides things like the distribute law are considered true and how to handle floating point exceptions.

      the basic issue seems to be that they didn't use standardized types or even the same compiler

      I don't see either of those in the "per-platform multiplayer" link. Is it on one of the phoronix links? Those won't load for me.

      • (Score: 2, Insightful) by Anonymous Coward on Thursday August 27 2015, @09:14PM

        by Anonymous Coward on Thursday August 27 2015, @09:14PM (#228728)

        Requiring all participants in a multiplayer game to perform identical calculations in sync is simply a terrible design, and it's not surprising that they failed to make it portable.

        I suspect that even when everyone runs the same build in similar environments, they will occasionally desync, although I have no experience with this game.

        • (Score: 0) by Anonymous Coward on Friday August 28 2015, @04:23AM

          by Anonymous Coward on Friday August 28 2015, @04:23AM (#228845)

          Terrible designs are everywhere. I remember hearing about how people could cheat like crazy in GTA5 servers. Their proposed 'solution' to this was to ban the uses of mods online instead of actually fixing their broken security which apparently trusted clients absolutely, as far as I remember. I saw some people applaud this as sensible, but I can start up a server for some Doom source port and load any mods I wish and it won't have nearly this many problems, yet these AAA developers are so incompetent that they can't design proper servers?

      • (Score: 2) by Gravis on Friday August 28 2015, @01:05PM

        by Gravis (4596) on Friday August 28 2015, @01:05PM (#228960)

        I don't see either of those in the "per-platform multiplayer" link. Is it on one of the phoronix links? Those won't load for me.

        of course not because it's my analysis as a programmer who understands compilers.