Author Topic: Android Port (SDL2)  (Read 82842 times)

Offline Empiro

  • Sergeant
  • **
  • Posts: 47
    • View Profile
    • Email
Re: Android Port
« Reply #60 on: January 13, 2014, 11:44:21 pm »
- Buttons like the "view all levels" and "help" could be cut out.

Good idea. I think things that are used at most once per battle (for example, abort) can also be cut and either placed in an "extra options" menu or made context sensitive (for example, an interactable UI element on the map itself near the exit area)

Quote
- The soldier stats and rank could be simplified or cut to open space. In the stats case, for the sake of briefness you could leave the numbers and cut the bars or, if possible, change the bars into something smaller.

You could probably rework the inventory screen to show even more stats (as numbers). It would even eliminate a UI screen of limited value (numbers with colors work just fine) Most phones and tablets have a wider aspect ratio, so you can probably display some information at the sides compared to the original game.

Quote
- A clever idea is to eliminate all back and forth buttons (up and down too) that can be looped (level viewing, prev/next xcom operative).

It'd be good to take advantage of common touch screen UI functionality too. For example, to go up down a level, you can press on the ladder button, then slide up to go up, down to go down. To switch to next / previous soldiers, press the "person button" and slide left / right. You can even add enhancements -- for example, if you drag up, a horizontal list of "soldier summary cards" pops up across the screen, displaying a list of soldiers in the same order as the next / previous buttons. The summary might show a few bars give you a rough idea of the general health and current TU/Total TU of each soldier. That way, you can quickly see who still has TUs left.

I think that one of the weakest aspects of these old games is their UI. Instead of thinking "how do we adapt X-Com's UI to modern phones?", we should be thinking "how do we design a good mobile UI that allows us to do everything you can do in X-Com, while still retaining the original UI's style and feel?"
« Last Edit: January 14, 2014, 04:14:58 am by Empiro »

Offline starwindz

  • Sergeant
  • **
  • Posts: 14
    • View Profile
    • Email
Re: Android Port
« Reply #61 on: January 15, 2014, 12:59:49 am »
OpenXcom Android works fine on my 10.1 inch android tablet, Samsung Galaxy Note 10.1.
But color looks abnormal. (Palette problem?)
« Last Edit: January 15, 2014, 01:13:20 am by starwindz »

Offline sidav

  • Sergeant
  • **
  • Posts: 19
    • View Profile
    • Email
Re: Android Port
« Reply #62 on: January 15, 2014, 04:30:28 pm »
OpenXcom Android works fine on my 10.1 inch android tablet, Samsung Galaxy Note 10.1.
But color looks abnormal. (Palette problem?)
Where did you take the apk file?

Offline HappyCat

  • Sergeant
  • **
  • Posts: 24
    • View Profile
Re: Android Port
« Reply #63 on: January 15, 2014, 04:49:56 pm »
I thinks it's from ufopaedia wiki entry that page mentioned in his last post.
It's where I got my apk from and I witness the same issue.

Offline Ganimoth

  • Squaddie
  • *
  • Posts: 9
    • View Profile
Re: Android Port
« Reply #64 on: January 15, 2014, 07:35:21 pm »
Is it just me or I cant get out of soldier statistics screen?

Offline page

  • Sergeant
  • **
  • Posts: 20
    • View Profile
Re: Android Port
« Reply #65 on: January 16, 2014, 10:26:29 am »
Is it just me or I cant get out of soldier statistics screen?
It's not just you  ;D

starwindz, nice screenshot :) I've tried it on 3 different devices and have not seen this behavior on any.

Anyway, notes taken and patches welcome!

Offline HappyCat

  • Sergeant
  • **
  • Posts: 24
    • View Profile
Re: Android Port
« Reply #66 on: January 17, 2014, 07:14:31 pm »
I decided to make more complete notes of pallete-looking issue on Galaxy Note 10.1

"options.jpg" shows how options (or any other) screen actually looks like ingame.
"options_device_screenshot.png" is how it looks on a screenshot taken by tablet built-in screenshot taker. Here colors looks normal. And they retain normal look for a few seconds. I checked that sliders and other ui elements are still operational within these seconds.
"options_input shows.jpg" how options screen lokks like if you start editing text field.
The whole thing kind of reminds me how text and images changes when selected for copy in text editors or browser...
Hope it clarifies something.

On a side note, music continues to play when openxcom stops being active apllication and even when tablet is in waiting mode.

Offline sidav

  • Sergeant
  • **
  • Posts: 19
    • View Profile
    • Email
Re: Android Port
« Reply #67 on: January 19, 2014, 10:21:50 am »
page, big thanks for the port. It works well on my LG Optimus Sol (android 2.3.4), it runs much better than an original x-com in DOSBox on the phone. Awesome!
Some notes:
1) I think it's neccessary to increase size of menu buttons (like difficulty levels, in intercept menu, and so on), and to make a possibility to turn it off in options.
2) Yep, game just doesn't want to exit.
3) i didn't understand how to rotate a soldier. Swipe from soldier to the direction works not always.
4) Maybe it will be better to bind double-tap to the right mouse button?
5) Screen on my phone is 3.8'' with resolution 800x480. It's not so useful to command a soldier with tapping on the tile where to move and then tapping again in the same place: sometimes it is hard to tap on the same tile. Maybe, it's better to make a tap on a tile just a selector for a path, and make special button on UI to give an order to move.
5.1) and the same system for the shooting: select a target then give an order with special button
6) In general, it will be good to "zoom" battlescape , if it possible, to make less tiny things that player should tap when playing :)
7) Maybe, it's time to replace the app icon to the proper? ;)
upd: i doesn't experience the issue with abnormal color, everything in the render is normal.
« Last Edit: January 19, 2014, 10:35:49 am by sidav »

Offline Greg956

  • Sergeant
  • **
  • Posts: 19
    • View Profile
Re: Android Port
« Reply #68 on: January 22, 2014, 08:33:34 am »
Samsung Galaxy S3, Android 4.2.1 stock. All working, apk installed, copied all of my data to sdcard/openxcom/data
Russian Language working, other languages works too. Resolution 1280x720, fullscreen, Shader-HQX.
Installed Amiga fonts.
The problem is that all is pink, and I don't understand how to make normal colors.

Offline Tarvis

  • Colonel
  • ****
  • Posts: 111
    • View Profile
Re: Android Port
« Reply #69 on: January 22, 2014, 05:12:30 pm »
On smaller screens I think some UI elements will have to be out or subset in a menu, 'cos there's a lot on the screen now. A good start, in my opinion, is to match Apple design guidelines when they say to design for the 80% majority, which in this case means that commands used by 20% of the people could be put out. Viewing the main screen is always more important than having a non-standard option.
Quote
Buttons like the "view all levels" and "help" could be cut out.
This is kinda what I was thinking as you saw before. I'd do one thing different though: I'd replace the "abort mission" button with the options button. That's what the ? button does (not "help"), it opens up the game pause menu. Abort Mission could be put in there. However, every device (even iOS) has a 'Back' button that could call that instead of a soft button, so that could just become free space for something else (confirm shoot/move maybe?)

I suppose for the sake of mitigating fat-fingering, the End Turn button could have a confirmation dialog too.

Quote
For that above, I don't know if this was covered already, but the ideal case is to have a simpler version for smaller screens aside with a complete version for bigger screens. All good system/apps with multiple versions do so: the smaller the screen, the simpler the interface (simple in this case means 'with less features').
This would be ideal, but I don't think OpenXcom is currently designed to be able to dynamically change this kind of thing, since I believe most UI is hardcoded right now. But I suppose there could just be two versions of the game for that (a Tablet and Phone version)

Quote
The soldier stats and rank could be simplified or cut to open space. In the stats case, for the sake of briefness you could leave the numbers and cut the bars or, if possible, change the bars into something smaller.
This is one thing I somewhat disagree with. Shortened, maybe, but I don't think the bars should be totally gone. It's pretty hard to estimate just how much of your soldier's health is left when it's just a number with no visual indication. Though for TUs it would be fine.

Maybe it could display the total number next to it, so HP could show as "18 / 25" or so instead of just 18, if bars were to be totally cut.

Quote
A clever idea is to eliminate all back and forth buttons (up and down too) that can be looped (level viewing, prev/next xcom operative).
Nice one, I hadn't actually considered this for level viewing. But what about move up/down? In your design, that's only one button. That can't wrap, especially because each move takes TUs. Does your button bring up a dialog that asks which way to move?

Also, Next/Prev unit wraps too, I only added "Prev Unit" because I wasn't sure what else to do with that space. It wasn't in the original game.

Quote
I don't think a toggle button with all four options (like the TU saving mode presented) is a good idea. People will try to press only the part they want, making it uneffective as a big button. Two ways to make it work: show only the current mode or don't use green background, but a html-radio-like above the options.
( I don't get why the crouch option have to be apart, but I must have bypassed it here... )
Good point, having it as a single cycling button would work best. Mostly because html-radio-like callouts aren't implemented in Xcom in any sort of way. But it could use the OS to do that, I suppose.

Also, the crouch reserve button was separate because it works separately to the other ones (you could opt to reserve TUs for both shooting and then crouching after shooting, for example) It does take up space so it could be moved to long-pressing the regular crouch button (though this isn't quite as intuitive).

I honestly never used it, so I wouldn't mind not having it (it wasn't there until TFTD anyhow)

Quote
Last, but not least, the soldier stats screen and the soldier ground screen could be called by pressing the soldier name/stats and both screens could have a button to call the other screen (stats/ground).
The inventory screen can actually already be called from clicking the rank icon in the inventory screen! So yes, that works.

Otherwise, your proposed layout is great. I really didn't like having to put buttons at the top of the screen...

EDIT: So about the 'confirm shoot/move' button.

I was thinking  your Move Unit Up/Down button could be replaced with a 3-way control mode toggle, it'd have:

Move Mode: Move unit around.
Look Mode: Turn unit to face things.
Move Up/Down mode: Swipe unit up/down to move it up/down a level

That way the problems with having to tap the cursor to confirm a move/shoot could be avoided, and the button to the right of it could be replaced with a "Confirm" button.
« Last Edit: January 22, 2014, 05:24:59 pm by Tarvis »

Offline bullitmagnet

  • Sergeant
  • **
  • Posts: 17
    • View Profile
Re: Android Port
« Reply #70 on: January 22, 2014, 08:16:27 pm »
just wanna report that it seems to work quite well on my Prestigio prime, however.. how do you cancel an action, on pc I right click, but I couldn't figure it out on android . probably mising simething really obvious lol

Great work though, love the idea of being able to play anywhere

Offline Warboy1982

  • Administrator
  • Commander
  • *****
  • Posts: 2334
  • Developer
    • View Profile
    • Email
Re: Android Port
« Reply #71 on: January 23, 2014, 03:28:34 am »
just wanna report that it seems to work quite well on my Prestigio prime, however.. how do you cancel an action, on pc I right click, but I couldn't figure it out on android . probably mising simething really obvious lol

not sure how long it takes for changes to trickle down, but you can now click on the item again to cancel the action.
« Last Edit: January 23, 2014, 05:05:13 am by Warboy1982 »

Offline mtwilight

  • Squaddie
  • *
  • Posts: 2
    • View Profile
    • Email
Re: Android Port
« Reply #72 on: January 24, 2014, 07:55:11 pm »
This is kinda what I was thinking as you saw before. I'd do one thing different though: I'd replace the "abort mission" button with the options button. That's what the ? button does (not "help"), it opens up the game pause menu. Abort Mission could be put in there.
That would be nice enough.

Quote
This is one thing I somewhat disagree with. Shortened, maybe, but I don't think the bars should be totally gone. It's pretty hard to estimate just how much of your soldier's health is left when it's just a number with no visual indication. Though for TUs it would be fine. Maybe it could display the total number next to it, so HP could show as "18 / 25" or so instead of just 18, if bars were to be totally cut.
If the bars can be shortened, that would be ideal IMHO.

Quote
Nice one, I hadn't actually considered this for level viewing. But what about move up/down? In your design, that's only one button. That can't wrap, especially because each move takes TUs. Does your button bring up a dialog that asks which way to move?
Yes, that was what I thought (tough I didn't mention).

Quote
Good point, having it as a single cycling button would work best. Mostly because html-radio-like callouts aren't implemented in Xcom in any sort of way. But it could use the OS to do that, I suppose.
I didn't meant an exact radio button, but rather something that behaves and looks similar, just to the user to have this feeling of "toggling between options"

Quote
Also, the crouch reserve button was separate because it works separately to the other ones (you could opt to reserve TUs for both shooting and then crouching after shooting, for example) It does take up space so it could be moved to long-pressing the regular crouch button (though this isn't quite as intuitive). I honestly never used it, so I wouldn't mind not having it (it wasn't there until TFTD anyhow)
Seems very unnatural. I never used it too.

Quote
Otherwise, your proposed layout is great. I really didn't like having to put buttons at the top of the screen...
Thanks, good to see it helped  :)

Quote
EDIT: So about the 'confirm shoot/move' button.

I was thinking  your Move Unit Up/Down button could be replaced with a 3-way control mode toggle, it'd have:

Move Mode: Move unit around.
Look Mode: Turn unit to face things.
Move Up/Down mode: Swipe unit up/down to move it up/down a level

That way the problems with having to tap the cursor to confirm a move/shoot could be avoided, and the button to the right of it could be replaced with a "Confirm" button.
That's a very clever solution, if it can be made I think it's the best one.

Offline X

  • Squaddie
  • *
  • Posts: 1
    • View Profile
    • Email
Re: Android Port
« Reply #73 on: January 25, 2014, 10:33:56 pm »
Quote
Known issues
    Exiting the game hangs. Just kill the app from android for now.
    Don't leave the game while in text enter mode. When going back, it won't reappear and you'll be stuck editing the text.
- game lose control after smartphone's display go to sleep.

Offline bullitmagnet

  • Sergeant
  • **
  • Posts: 17
    • View Profile
Re: Android Port
« Reply #74 on: February 01, 2014, 01:00:20 am »
can I be thick (yet again) and ask how would I update. I am assuming that I would just have to overrite files with the new ones. cos I installed it with the apk , I assume that I wouldn't need to uninstall it and install it again.. I know, I know. probably a simple thng I should already know :)

I would also like to ask if anyne knos the best way to change the soldier sprites, I wanna have a go at changing the slightly daft boiler suits. I realise that this isn't the right part of the forum, but meh, I was here writing this so thought id try :-)