Android 1.8/1.10 support thread

General feedback and discussion of the game.

Moderator: Forum Moderators

Locked
Gobbo
Posts: 1
Joined: April 25th, 2014, 7:28 am

Re: Android support thread

Post by Gobbo »

1. What model is your device?
Galaxy Tab 3 10.1

2. What version of Android is it running?
4.2.2

3. Complete description of problem you’re having.
Some time ago I bought the Adnroid version of "Battle of Wesnoth" because I am a big fan of
the PC version, I couldn't really use it since the display on my smartphone was to small.
A few Days ago I got a Tablet and installed my Wesnoth version for Android right away. But
everytime I try to start a campaign it tells me:
License verification failed. Contact support@androthsoft.com for more information.
I already contacted the support e-mail but I get no reaction or answer.
I already reinstalled the game twice, double checked that I downloaded the correct version
from Androth Softworks that I payed for and not some free version or one from another provider.
I would really like to play Wesnoth an hope you are able to help me.

kind regards, Gobbo
alep
Android Port Maintainer
Posts: 160
Joined: June 24th, 2013, 6:22 am

Re: Android support thread

Post by alep »

FoPref wrote:Thanks, I can't wait for the feature to arrive! :mrgreen:
I've released a new version which adds the on-screen keyboard buttons you requested.
Sources can be found here:

http://www.alessandropira.org/wesnoth_a ... -28.tar.gz

...this time there's a little C++ code change.
FoPref wrote:But the correct answer would have been 42.
...of course. :)
AI
Developer
Posts: 2396
Joined: January 31st, 2008, 8:38 pm

Re: Android support thread

Post by AI »

Committed in 4e98216cc8df.
budalokko
Posts: 2
Joined: January 7th, 2008, 4:14 am

Re: Android support thread

Post by budalokko »

Hi,

I have installed on my phone both alep's free and payed versions downloaded from the store (not at the same time!) and I have the same problem with both: After downloading all data files I get a blank screen for some seconds and suddenly my phone's home screen appears again.

Later, I click on the game's icon, the "Change configuration" screen appears, but after a blank screen with the text "Initializing" on the top left my phone's home screen appears again without accessing the game.

I can't see any message on the screen. Is there any way to know why the game crashes this way? Is there any log file I could have a look to?

Phone: Samsung Galaxy Trend Plus (GT-S7580)
Android version: 4.2.2

The phone has 480 × 800px screen and dual core 1.2 GHz so it seems to meet the game requirements.

Thanks a lot for the efforts you put on this Android version !!
Marc ///

Edit: The problem I had with this device was solved by alep.
Last edited by budalokko on June 9th, 2014, 10:57 pm, edited 1 time in total.
alep
Android Port Maintainer
Posts: 160
Joined: June 24th, 2013, 6:22 am

Re: Android support thread

Post by alep »

budalokko wrote:Hi,

I have installed on my phone both alep's free and payed versions downloaded from the store (not at the same time!) and I have the same problem with both: After downloading all data files I get a blank screen for some seconds and suddenly my phone's home screen appears again.

Later, I click on the game's icon, the "Change configuration" screen appears, but after a blank screen with the text "Initializing" on the top left my phone's home screen appears again without accessing the game.

I can't see any message on the screen. Is there any way to know why the game crashes this way? Is there any log file I could have a look to?

Phone: Samsung Galaxy Trend Plus (GT-S7580)
Android version: 4.2.2

The phone has 480 × 800px screen and dual core 1.2 GHz so it seems to meet the game requirements.

Thanks a lot for the efforts you put on this Android version !!
Marc ///
Hello,

"Change configuration" is a button you can tap on to open a startup menu.
If you want to send me more info about your problem, please tap on it. Then, you can select "Startup options" and check "Send debug info to developer". Tap on "Ok" and then "Start game". This way I'll receive the startup logs from your device.
Then contact me privately to notify you have sent the report and to tell when exactly you did this, as I may need to find your report amongst others.

However, I can try to guess what's happening on your device. Your screen resolution is 800x480, but some android versions add ui elements (I've seen a bar with home and back buttons on some samsung devices sitting right inside the screen) that cannot be removed or hidden and "steal" screen space to the application, thus reducing the effective screen resolution available.
If this is your case there is a little workaround: open port configuration menu by tapping on the "Change configuration" button, pick "Startup options" and select "Set custom display resolution". Fill in width and height with 800 and 480 (they should be the default values) and pick "Ok". Go back and start the game.
The game will run at 800x480 scaled down to your effective resolution. It may look a bit ugly but it should be playable.

Please let me know if this solves your problem, or if you send me the startup log.
ngoonee
Posts: 1
Joined: May 8th, 2014, 2:05 am

Re: Android support thread

Post by ngoonee »

alep wrote:
http://www.alessandropira.org/wesnoth_a ... -28.tar.gz

...this time there's a little C++ code change.
Trying to build this on my Linux machine, but I get this error:-

Code: Select all

./build.sh                                                    
Updated project.properties
Updated local.properties
Updated file ./proguard-project.txt
Android NDK: WARNING: APP_PLATFORM android-14 is larger than android:minSdkVersion 9 in jni/../AndroidManifest.xml    
Android NDK: WARNING:jni/../jni/Android.mk:application: non-system libraries in linker flags: jni/../jni/prebuilt/libboost.a jni/../jni/prebuilt/libharfbuzz.a jni/../jni/prebuilt/libpango.so jni/../jni/prebuilt/libcairo.so jni/../jni/prebuilt/libfontconfig.so jni/../jni/prebuilt/libbfw_png.so jni/../jni/prebuilt/libpixman.so jni/../jni/prebuilt/libglib.so jni/../jni/prebuilt/libfreetype.so jni/../jni/prebuilt/libexpat.so jni/../jni/prebuilt/libffi.so jni/../jni/prebuilt/libintl.so jni/../jni/prebuilt/libsdl_sound.so jni/../jni/prebuilt/libsdl_net.so jni/../jni/prebuilt/libsdl_mixer.so jni/../jni/prebuilt/libsdl_ttf.so jni/../jni/prebuilt/libsdl_image.so jni/../jni/prebuilt/libsdl-1.2.so    
Android NDK:     This is likely to result in incorrect builds. Try using LOCAL_STATIC_LIBRARIES    
Android NDK:     or LOCAL_SHARED_LIBRARIES instead to list the library dependencies of the    
Android NDK:     current module    
[armeabi] SharedLibrary  : libapplication.so
arm-linux-androideabi-g++: error: jni/../jni/prebuilt/libpixman.so: No such file or directory
make: *** [obj/local/armeabi/libapplication.so] Error 1
Indeed, libpixman.so does not exist in jni/prebuilt. Any advise?
alep
Android Port Maintainer
Posts: 160
Joined: June 24th, 2013, 6:22 am

Re: Android support thread

Post by alep »

ngoonee wrote:
alep wrote:
http://www.alessandropira.org/wesnoth_a ... -28.tar.gz

...this time there's a little C++ code change.
Trying to build this on my Linux machine, but I get this error:
[...]
Indeed, libpixman.so does not exist in jni/prebuilt. Any advise?
Ugh... sorry, my fault. You can fix it by referencing libbfw_pixman.so instead of libpixman.so in jni/Android.mk:26.
Also, I've uploaded a fixed package which includes also some other bugfixes here (no C++ changes):

http://www.alessandropira.org/wesnoth_a ... -29.tar.gz
alep
Android Port Maintainer
Posts: 160
Joined: June 24th, 2013, 6:22 am

Re: Android support thread

Post by alep »

Again, I've released a new version which includes some more logging (I'm investigating budalokko's problem). This time I needed to add a new permission request for the app, so Google Play will ask for your explicit confirm before the update.
That's because now I include logcat output in reports sent by the app when the "Send debug info to developer" check is on, and reading device logcat requires a permission declared in the manifest.

Sources are here (no C++ changes):

http://www.alessandropira.org/wesnoth_a ... -30.tar.gz
FoPref
Posts: 4
Joined: February 20th, 2006, 1:10 am
Location: Erlangen/Germany
Contact:

Re: Android support thread

Post by FoPref »

Hi,

first of all, thx for including the feature, since that version multiplayer games are actually playable without annoying other players with long wait times!

Some things that are most annyoing right now:
- When I want to communicate, I have to press alt+m or ctrl+m which is already hard to do (I need to use Hacker's Keyboard) and sometimes doesn't really work. Then the prompt for the message is hidden by the keyboard. So I have to type blind, which is a real problem on a touch keyboard, and then hide the keyboard to see my message before I can send it. Ideally there would be soft buttons for messaging (or one button that you can long-press to distinguish between allies/all) and also the message: field would appear above the keyboard.
- The ingame-gui is sometimes severely broken in dialogs. So the dialog content does not use the whole space of the dialog window. Instead there is a lot of free space while the contents don't fit into the used space at all. For example when I level a unit, the second level option is barely visible while there is in fact plenty of space showing only the dialog window background.
- I cannot access the configuration anymore, the screen where the button should be only flashes for like 200ms, then there is just black screen and then the game is loading.

Things that should be solved in the longer term:
- A soft button for escape would help. So escape means I can get out of dialogs, out of sending a message etc.; however the button should not trigger the "Do you want to quit?" dialog :); And do you have a soft button for recruit? I can't check right now because I cannot get into the config (see above).
- The game does not show the hit % (i.e. the field defense) of a unit when I select it. Maybe this is hidden to have more space for the text about its attacks. But it is crucial information I don't always have in memory for every unit and every field type.
- I also have no possibility of scrolling with the mouse through the possible movement fields so I only see the future defense of my unit as soon as I plan the move. Ideally, there would be a mode that shows hit % on each field when I am about to move a unit. Another solution that would also help with avoiding misclicks (its not the biggest deal anymore thanks to the "delete planned move" soft button) is that before an action is carried out/planned, one has to tap on the same field twice. So only one tap to select a unit, but two taps to select a new position of a unit. Maybe only one tap for an attack, as it will show a dialog you can cancel anyway.

A very small thing:
- I think it would be more intuitive if the cancel planned action button would be left of the perform planned action button.

Best,
Ford Prefect
alep
Android Port Maintainer
Posts: 160
Joined: June 24th, 2013, 6:22 am

Re: Android support thread

Post by alep »

Thank you very much for taking time to post your opinions about the port.

FoPref wrote: - When I want to communicate, I have to press alt+m or ctrl+m which is already hard to do (I need to use Hacker's Keyboard) and sometimes doesn't really work. Then the prompt for the message is hidden by the keyboard. So I have to type blind, which is a real problem on a touch keyboard, and then hide the keyboard to see my message before I can send it. Ideally there would be soft buttons for messaging (or one button that you can long-press to distinguish between allies/all) and also the message: field would appear above the keyboard.
I understand your point. IMHO the best thing would be to move the "message" text input at the top of the screen, but this is definitely something I won't do, unless it can be added into official sources, and not for android only.
I will add a on-screen keyboard icon for ctrl+m (send message).

FoPref wrote: - The ingame-gui is sometimes severely broken in dialogs. So the dialog content does not use the whole space of the dialog window. Instead there is a lot of free space while the contents don't fit into the used space at all. For example when I level a unit, the second level option is barely visible while there is in fact plenty of space showing only the dialog window background.
- The game does not show the hit % (i.e. the field defense) of a unit when I select it. Maybe this is hidden to have more space for the text about its attacks. But it is crucial information I don't always have in memory for every unit and every field type.
Which resolution are you using for running the game?
These are resoultion-dependant issues not strictly related to android port, as running on a PC with 800x480 resolution leads to same results.

FoPref wrote: - I cannot access the configuration anymore, the screen where the button should be only flashes for like 200ms, then there is just black screen and then the game is loading.
...are you running from a desktop shortcut (for example going to multiplayer directly)? Because in that case the "Change configuration" button is not shown.
You can however tap on the main app launcher (the one that takes you to title screen), change configuration and then tap on "Quit" instead of "Start game" to just save port preferences, and then use your desktop shortcut.

FoPref wrote: - A soft button for escape would help. So escape means I can get out of dialogs, out of sending a message etc.; however the button should not trigger the "Do you want to quit?" dialog :); And do you have a soft button for recruit? I can't check right now because I cannot get into the config (see above).
If I map escape button (which, by the way, is already mapped to device "back" button, if your device has it) it will be escape always. So it will open the "Do you want to quit?" dialog as escape would.
And right now, no, there is no soft button for recruit, but I'll add it.
FoPref wrote: - I also have no possibility of scrolling with the mouse through the possible movement fields so I only see the future defense of my unit as soon as I plan the move. Ideally, there would be a mode that shows hit % on each field when I am about to move a unit. Another solution that would also help with avoiding misclicks (its not the biggest deal anymore thanks to the "delete planned move" soft button) is that before an action is carried out/planned, one has to tap on the same field twice. So only one tap to select a unit, but two taps to select a new position of a unit. Maybe only one tap for an attack, as it will show a dialog you can cancel anyway.
Right now you can move the mouse pointer on hexes by swiping one finger on the screen. This is true for both mouse emulation modes, the only difference is that in "pointer follows finger" mode the mouse cursor will stay under your finger.
Showing hit % on every hex would probably be helpful but I think it's not a port-related issue.

FoPref wrote: - I think it would be more intuitive if the cancel planned action button would be left of the perform planned action button.
Ok, I'll switch them.
alep
Android Port Maintainer
Posts: 160
Joined: June 24th, 2013, 6:22 am

Re: Android support thread

Post by alep »

You may have noticed a new upgrade.
As promised, I've added on screen keyboard icons for message sending and switched "cancel planned action" and "execute planned action" icon position.

Up to date sources are here:

http://www.alessandropira.org/wesnoth_a ... -32.tar.gz

As before, adding new on screen keyboard icons requires a little C++ code change.
wrenhal
Posts: 9
Joined: August 6th, 2014, 12:42 am

Re: Android support thread

Post by wrenhal »

alep wrote:You may have noticed a new upgrade.
As promised, I've added on screen keyboard icons for message sending and switched "cancel planned action" and "execute planned action" icon position.

Up to date sources are here:

http://www.alessandropira.org/wesnoth_a ... -32.tar.gz

As before, adding new on screen keyboard icons requires a little C++ code change.
As this is a fairly long thread I had a question for you:
To compile this source on Windows I need 1)Java JDK 2)Android SDK?
Anything else? Do I need the full build environment for the PC version (C++ code I guess) of BfW as well?

Edit:
Also, does anyone know, if I buy the full version after having installed the free trial, do I have to download all the data files again?
alep
Android Port Maintainer
Posts: 160
Joined: June 24th, 2013, 6:22 am

Re: Android support thread

Post by alep »

wrenhal wrote: As this is a fairly long thread I had a question for you:
To compile this source on Windows I need 1)Java JDK 2)Android SDK?
Anything else? Do I need the full build environment for the PC version (C++ code I guess) of BfW as well?
Actually I use to do my builds on Linux, but AFAIK Java jdk and Android SDK and NDK are enough also on Windows.
Wesnoth C++ code is included in the package you download from the url I provided, and C++ cross compiler is included in Android NDK.
wrenhal wrote: Edit:
Also, does anyone know, if I buy the full version after having installed the free trial, do I have to download all the data files again?
Yes, data files will be downloaded again.
wrenhal
Posts: 9
Joined: August 6th, 2014, 12:42 am

Re: Android support thread

Post by wrenhal »

alep wrote:
wrenhal wrote: As this is a fairly long thread I had a question for you:
To compile this source on Windows I need 1)Java JDK 2)Android SDK?
Anything else? Do I need the full build environment for the PC version (C++ code I guess) of BfW as well?
Actually I use to do my builds on Linux, but AFAIK Java jdk and Android SDK and NDK are enough also on Windows.
Wesnoth C++ code is included in the package you download from the url I provided, and C++ cross compiler is included in Android NDK.
wrenhal wrote: Edit:
Also, does anyone know, if I buy the full version after having installed the free trial, do I have to download all the data files again?
Yes, data files will be downloaded again.
Hmm. Okay. I'm gonna try compiling and check out the source over the weekend maybe. I'm still gonna buy the full just because and try copying over the data from the free.
Boshko
Posts: 2
Joined: August 6th, 2014, 4:20 pm

Re: Android support thread

Post by Boshko »

Hi all,

I am new to this forums, but I am big fan of BfW game. I am a returning player, I tried playing it 4-5 years ago, but then I didn't grasp the gameplay well. This year I started playing the game again, and I love it! :D I like the game so much that I want to take it with me all the time, so I tried getting the Android version on Google Play ported by Alessandro. The bummer is that Google Play doesn't allow paid apps and purchases in my country (Serbia) yet, so I tried compiling it from source as alep suggested.

Sorry for the intro, getting to the point:

I tried compiling the latest update of the source code posted on this thread (http://www.alessandropira.org/wesnoth_a ... -32.tar.gz). I used my linux machine, installed requested dependencies, set up Java JDK, Android SDK (tools, platform-tools etc...), set up Android NDK, updated .bashrc, did a reboot and started compiling.

*NOTE: I had to edit the build.sh file and change --target android-14 to --target android-20 (Android 4.4.W) because I didn't have that version 14 available.

It actually started compiling pretty well (except the notification to better use LOCAL_STATIC_LIBRARIES instead of NDK), until it started working oh hotkeys.cpp file and sudenly crushed and I got this error:

Code: Select all

...
[armeabi] Compile++ thumb: application <= hotkeys.cpp
jni/../jni/application/src/hotkeys.cpp: In function 'hotkey::hotkey_item& hotkey::get_hotkey(const SDL_KeyboardEvent&)':
jni/../jni/application/src/hotkeys.cpp:852:7: error: 'SDLK_CUSTOM21' was not declared in this scope
make: *** [obj/local/armeabi/objs/application/application/src/hotkeys.o] Error 1
...
I tried checking that hotkeys.cpp file in jni folder, but my beginner C++ skills are very much rusty by now so it was a little bit overwhelming for me, thus I decided to ask for help here.

Sorry for the length of this post, I'll try to keep it short in the future.
Locked