Hacker News new | past | comments | ask | show | jobs | submit login
Starcraft On Android - With Full Touch Controls - Is On The Way [video] (androidpolice.com)
56 points by rdr0b11 on Jan 1, 2013 | hide | past | favorite | 24 comments



I appreciate the technology demo, but anyone who has played 'serious' SC games knows that you have to use the keyboard. How are you even supposed to select a group of units in a messy battle? I suppose you can connect a keyboard to it.. but then, why bother? I think mouse-only games would make better candidates for successful ports.


I agree. The control in the demo looks cumbersome.

I've come to the conclusion that touchscreen devices have a lower information throughput than traditional desktop machines. Relative to a mouse, the touchscreen is inaccurate, unreliable, and (using it) blocks your view more. You can't rely on there being a hard keyboard, and if there is one, you can't rely on it being big and comfortable enough to use at high speeds.

So it's hard for me to imagine, even in principle, how you'd port something like Starcraft. It uses almost all of the desktop's information throughput -- two or three mouse buttons and most of the keyboard keys going like mad the whole game -- and you just don't have that kind of bandwidth on a touch screen.

I would love to see a Real Strat on a touch device -- not just a lot of tower defense games. But I think you'd have to do a lot more than port what we have. You'd have to go back to the beginning, back before Warcraft, when they were still figuring out how to make the controls work on a PC, and reinvent the genre for touch screen.

Touch screen games seem biased toward the turn-based and the scripted, rather than the real-time and manually controlled. Perhaps, with a lot of scripting and game redesign, RTSs could survive that transition, but I think they'd come out looking pretty different.


Apparently they've got Caesar III running on the emulator too!


When I first started playing Starcraft, I only used the mouse. It was still fun to play.

I can definitely see playing a quick starcraft game on my tablet as a fun little diversion while I'm on public transit or something.


Problem one: A mouse still offers more granularity than your finger

Problem two: Starcraft is not the best "quick game for a fun little diversion". Maybe I've got the wrong idea here, but IMO RTS is the Monopoly of video games, and I don't play Monopoly on the bus.


I'll grant you point one, but I can't agree with number two.

We used to play Starcraft as our after lunch activity in the reddit office. It was a great quick diversion.


Office activities are a tad different from casual sidebars in day-to-day life. You don't always know how long you will be free.


Don't say that, Monopoly is a terrible game :(.

But I get your point.


Age of Empires is the Monopoly of RTS in the sense that a single match can last for hours and hours.

In Starcraft most matches are decided in 15 minutes. That's one of the reasons for its success.


I could buy this argument if you were talking about almost any game except starcraft, with its arbitrary selection limits. And if you want groups it's pretty easy to do that with software buttons.


If porting Intel compiled binaries (dll/exe) to ARM is as easy as this article makes it look, then Microsoft has some explaining to do about Windows RT and legacy apps compatibility.


It is similar in a sense to Wine, how it is not a port of Wine. It is currently under development.

It is not an emulator in VMware/VirtualBox's sense of emulation. However it does implement small subset of Windows APIs, so it is a porting layer.

Apparently winulator just translates the windows api calls to the proper (native) android function, however why wouldn't you just port wine to android then? you'd probably just need to add a few missing posix functions, according to: http://mobilepearls.com/labs/native-android-api/STABLE-APIS....


Android lacks things like X11, so it would be non-trivial to port.


Android lacks things like X11

...or does it??

http://my20percent.wordpress.com/2012/02/27/android-x-server...


But then how does it handle running an x86 game on an ARM device?


I don't think MS would deliberately throw away old apps if they could easily save it. Most probably it's too hard or not effective.


I don't know how easy or hard would be to do that for Windows, but I think most x86 Linux programs work on ARM machines by default.


If they were written in a portable language like C, maybe, but you will have to recompile them. I think the point of their WCH tool is to rewrite the machine code from x86 to ARM without having the source code, so it's a much harder problem than recompiling.


If you mean by using qemu user space emulation, it doesn't work very well.


Well people managed to port mips binaries (from nintendo 64 games) to x86 in 1999. I remember using UltraHLE:

http://www.emulator-zone.com/doc.php/n64/ultrahle.html

That was interesting because the typical PC of the time was not exactly speedy.


An emulation is by its very nature not a "port".


It's one thing to port a specific application and work out all of the kinks. It's another thing entirely to claim that millions of different applications will be able to make the transition. Even the article points this out: Winulator isn't compatible with Starcraft: Brood War yet. It's a work in progress (each game requires specialized tweaking in order to work).

Microsoft is not willing to tweak every single application to make sure it works on Windows RT, and neither are the developers of most of those programs.


I agree that making a port to ARM architecture is a process and will never be perfect. What I meant was that making it possible to run legacy apps (even if it is only the top 100 most popular ones) will go a long way towards making Windows RT tablets more popular. If it is possible to make a DirectX audio/video application like SC:BW run (seemingly well) on Android, then it should not be so hard to do normal apps like archivers(winrar/7zip) or media players (VLC).

Perhaps the problem is performance - the original StarCraft ran on a 100Mhz CPU with 16MB RAM.


You just picked two of the more difficult apps to emulate or ahead-of-time translate as your examples of "normal" apps that should be "not so hard!"

Archivers generally have highly optimized compression/decompression routines, which generally means more esoteric instructions and in some edge cases means abusing properties of the microarchitecture to make things faster.

Media players have the same optimized-code issue that archivers do (via codecs), but on top of that demand very accurate audio/video synchronization and support a wide variety of output formats and hardware, which means that media players often add difficult-to-translate display and audio output pipeline hacks on top of difficult-to-translate optimization.

Starcraft I ran on x86 CPUs without MMX or SSE, and I wouldn't be surprised if it didn't use x87 floating point either although I'm venturing into speculation territory there. Plus, Starcaft I used DirectDraw and what amounts to a framebuffer - the easiest possible output device to emulate.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: