Author Topic: Supporting Multiple Platforms  (Read 48008 times)

ido

  • Rogueliker
  • ***
  • Posts: 618
  • Karma: +0/-0
    • View Profile
    • Tame Tick
Re: Supporting Multiple Platforms
« Reply #30 on: June 22, 2010, 03:16:49 PM »
The nethack poll seems less windows-heavy, but even harder to compare with than the crawl survey-

e.g. putty is a windows program & I am guessing most people who answered DOS are playing it in a DOS prompt on windows and not actually on a PC running just DOS:

5. OS and Devices
------------------
 By OS family:
    283   44.08%   Windows
    169   26.32%   Linux
     63    9.81%   Mac OS X
     23    3.58%   PuTTY
     22    3.43%   iPhone OS
     18    2.80%   NAO
     12    1.87%   Unix
     10    1.56%   DOS
     10    1.56%   Nintendo DS
      9    1.40%   BSD
      4    0.62%   Android
      3    0.47%   Psion Series 5mx
      3    0.47%   AmigaOS
      2    0.31%   Telnet
      2    0.31%   Sony PSP
      2    0.31%   Maemo
      2    0.31%   OS/2
      5    0.78%   others: Acorn Archimedes, BeOS, GP2x, Gamecube, Nintendo Wii
« Last Edit: June 22, 2010, 03:19:02 PM by ido »

ido

  • Rogueliker
  • ***
  • Posts: 618
  • Karma: +0/-0
    • View Profile
    • Tame Tick
Re: Supporting Multiple Platforms
« Reply #31 on: June 22, 2010, 03:21:11 PM »
If someone can find recent stats for Angband and ADOM (both of these work on win/linux/mac) that could be quite helpful, as we will then have all the major RLs covered.

Fenrir

  • Rogueliker
  • ***
  • Posts: 473
  • Karma: +1/-2
  • The Monstrous Wolf
    • View Profile
Re: Supporting Multiple Platforms
« Reply #32 on: June 22, 2010, 05:32:01 PM »
I would say that support of multiple platforms should really be left to the developers to decide if it suits their aims, since the majority of roguelikes are hobbyist projects and most of them are offered for free. If it's something you do for your own satisfaction, and no one is paying for it, it's not like you owe anything to anyone.

Darren Grey

  • Rogueliker
  • ***
  • Posts: 2027
  • Karma: +0/-0
  • It is pitch black. You are likely to eat someone.
    • View Profile
    • Games of Grey
Re: Supporting Multiple Platforms
« Reply #33 on: June 22, 2010, 10:12:12 PM »
As a developer I do like as many people as possible to be able to play my games, but ultimately it does come down to a matter of how much demand there is for it.

I must say though, the portables market is rising rapidly, and very few of them use anything Windows-esque.  I think there could be a lot of scope for portable coffeebreak roguelikes in future.  However with many devices the whole control system is best specialised for that unit anyway...

AquaTsar17

  • 7DRL Reviewer
  • Rogueliker
  • *
  • Posts: 57
  • Karma: +0/-0
    • View Profile
Re: Supporting Multiple Platforms
« Reply #34 on: June 23, 2010, 05:32:41 PM »
Actually, has anyone with a Linux or Mac box tried out mono? I'm curious how effectively C# roguelikes actually work on it, just as I'm curious how well regular Windows roguelikes would work with wine. Given that almost all of my time (both recreational and developmental) is spent on a Windows machine I'm curious how well someone who wanted to play a Windows roguelike could do so on a non-Windows machine.

Any thoughts? (Aside from just saying "use java")

ido

  • Rogueliker
  • ***
  • Posts: 618
  • Karma: +0/-0
    • View Profile
    • Tame Tick
Re: Supporting Multiple Platforms
« Reply #35 on: June 23, 2010, 06:08:00 PM »
Actually, has anyone with a Linux or Mac box tried out mono? I'm curious how effectively C# roguelikes actually work on it

It kinda work sometimes. Mostly doesn't.

Quote
, just as I'm curious how well regular Windows roguelikes would work with wine.

Hit or miss, really. Some stuff works really well (mostly high visibility commercial games that wine's developers were targeting) but a lot of stuff doesn't work at all or works poorly.

Krice

  • (Banned)
  • Rogueliker
  • ***
  • Posts: 2316
  • Karma: +0/-2
    • View Profile
    • Email
Re: Supporting Multiple Platforms
« Reply #36 on: June 24, 2010, 12:33:42 PM »
That's basically a spit in the face to every mac and linux developer that invests an effort into supporting windows (which is often a lot harder to support than linux, mac or any unix).

Why Windows would be harder to support? The comments I got from Teemu's source code revealed that there were differences even in different distributions of Linux. That doesn't actually make it easier to write portable source code. I think it was interesting to see that Linux wouldn't accept source code compiled in gcc for Windows even the source code was pretty much 100% standard C++. So, you can't always blame Windows.

ido

  • Rogueliker
  • ***
  • Posts: 618
  • Karma: +0/-0
    • View Profile
    • Tame Tick
Re: Supporting Multiple Platforms
« Reply #37 on: June 24, 2010, 12:54:10 PM »
That was just my personal experience.

I wrote the code for linux and porting to mac os x basically only required recompiling (and vice versa when I started using os x as my main os and porting to linux), where as windows required a bunch of #ifdef's to work properly.

That might very well be SDL's (or gcc's) fault tho.
« Last Edit: June 24, 2010, 12:56:36 PM by ido »

Etinarg

  • Rogueliker
  • ***
  • Posts: 424
  • Karma: +1/-1
  • Idea archivist and game tinkerer.
    • View Profile
    • Gedankenweber Blog (German)
Re: Supporting Multiple Platforms
« Reply #38 on: June 24, 2010, 12:58:06 PM »
Mac OS X is very much Unix inside. Thus more similar to Linux than Windows would be.

ido

  • Rogueliker
  • ***
  • Posts: 618
  • Karma: +0/-0
    • View Profile
    • Tame Tick
Re: Supporting Multiple Platforms
« Reply #39 on: June 24, 2010, 01:01:05 PM »
Mac OS X is very much Unix inside. Thus more similar to Linux than Windows would be.


Yep.

The thing is, pretty much every OS you are likely to come across these days (except for Windows) is to a varying degree a *NIX: linux, os x, *bsd, solaris, iPhone os, android, etc..
« Last Edit: June 24, 2010, 01:04:20 PM by ido »

Etinarg

  • Rogueliker
  • ***
  • Posts: 424
  • Karma: +1/-1
  • Idea archivist and game tinkerer.
    • View Profile
    • Gedankenweber Blog (German)
Re: Supporting Multiple Platforms
« Reply #40 on: June 24, 2010, 01:44:21 PM »
On one hand we see a convergence of OSes towards *nix based systems, on the other hand there are now tries to bring new CPU types to consumer systems, like ARM based netbooks and smartphones.

I think it's a good thing to see more diversity in the CPU types again.

ido

  • Rogueliker
  • ***
  • Posts: 618
  • Karma: +0/-0
    • View Profile
    • Tame Tick
Re: Supporting Multiple Platforms
« Reply #41 on: June 24, 2010, 01:48:39 PM »
True, although various ARM chips have likely powered your 'dumbphones', home appliances & cars for the past 2 decades, (not to mention industrial uses) ;)

AFAIK it's the most widely used cpu architecture (more than x86) and has been for a while.

EdR

  • Newcomer
  • Posts: 19
  • Karma: +0/-0
    • View Profile
    • Email
Re: Supporting Multiple Platforms
« Reply #42 on: June 26, 2010, 03:47:16 PM »
I think its funny you piss on OpenGL yet one of sharplikes bullet points is "OpenGL audio and video system, using OpenTK."
This is like people screaming at Linux Hater because Blogspot's powered by Linux--it misses the point entirely.

OpenGL sucks, so I say so. That it is the only option for exactly what we want does not make it suck less--it makes it suck more, in a way, because there's no other option. I actively resent using OpenGL. Not because it's "open" or because it's "cross-platform," but because the API is absolutely Neolithic and it's an absolute shitshow to work with. Fortunately, one of our developers actually likes OpenGL and handles that so I don't have to.

On the other hand, I can just get things done in DirectX, and not really have to care about how it's done. Oh no, I can't target the almighty GAMEPARK 2X, but I can target the people who I actually care about.

Quote
I guess it will be interesting to see how long it takes (1, 2, 4 more releases?) before the mono side of things is abandoned in sharplike.
"Support" for Mono is if-and-when as it is; it exists because one of our devs has a Linux laptop. I personally could not care less, except in that I'm friends with a number of Mono developers and wouldn't want to bail on them when their project hasn't given me a reason to.

Etinarg

  • Rogueliker
  • ***
  • Posts: 424
  • Karma: +1/-1
  • Idea archivist and game tinkerer.
    • View Profile
    • Gedankenweber Blog (German)
Re: Supporting Multiple Platforms
« Reply #43 on: June 28, 2010, 08:11:39 AM »
OpenGL sucks, so I say so. That it is the only option for exactly what we want does not make it suck less--it makes it suck more, in a way, because there's no other option. I actively resent using OpenGL. Not because it's "open" or because it's "cross-platform," but because the API is absolutely Neolithic and it's an absolute shitshow to work with.

Maybe I'm as neolithic as OpenGL, but when I tried to learn OpenGL I managed to have a simple 3D world up in about 2 days. The API was fairly easy to understand and lots of example code on the net helped to get started quickly.

I'm under the impression that usually OpenGL drivers are a bit behind, compared to the features of DirectX, but for my needs the included features were more than good enough.

There are engines like Ogre and Irrlicht, which should hide the underlying API and can work in a cross platform manner. maybe it is better to use such than to deal with the native graphics API directly, like we use SDL/Allegro to hide the underlying 2D API, and a have a cross platform graphics API?

ido

  • Rogueliker
  • ***
  • Posts: 618
  • Karma: +0/-0
    • View Profile
    • Tame Tick
Re: Supporting Multiple Platforms
« Reply #44 on: June 28, 2010, 08:24:48 AM »

There are engines like Ogre and Irrlicht, which should hide the underlying API and can work in a cross platform manner. maybe it is better to use such than to deal with the native graphics API directly, like we use SDL/Allegro to hide the underlying 2D API, and a have a cross platform graphics API?


More importantly, they are also higher level than opengl and directx and therefor easier to use.