Android pbem

Discussion of all aspects of multiplayer development: unit balancing, map development, server development, and so forth.

Moderators: Forum Moderators, Developers

Post Reply
Beppe
Posts: 4
Joined: May 30th, 2013, 1:15 pm

Android pbem

Post by Beppe »

Is there any plans or a good way to play MP on android without requiring a constant internet connection?

User avatar
Dugi
Posts: 4944
Joined: July 22nd, 2010, 10:29 am
Location: Carpathian Mountains
Contact:

Re: Android pbem

Post by Dugi »

Man, multiplayer is about being connected to internet, how would you know what are the other players doing otherwise? Only hotseat multiplayer can be done by more people playing on the same device.

Beppe
Posts: 4
Joined: May 30th, 2013, 1:15 pm

Re: Android pbem

Post by Beppe »

a quick replay showing what your units saw during the opponents turn is enough for a semi online experience.

But judging by your answer I suppose there is no way of doing it now

User avatar
Dugi
Posts: 4944
Joined: July 22nd, 2010, 10:29 am
Location: Carpathian Mountains
Contact:

Re: Android pbem

Post by Dugi »

I think that nobody expected that you would need to connect for a short while, then disconnect for several minutes, then connect again etc.

Beppe
Posts: 4
Joined: May 30th, 2013, 1:15 pm

Re: Android pbem

Post by Beppe »

I don´t think you understand the concept of what I´m asking, there are a few games out there on the android market witch plays out similarly to wesnoth, but in those games you just get a notice on the phone when its your turn, you then open the game click yourself to your active games and enter the ones and play the games where it is your turn. When you click end turn your turn is sent to your opponent who gets a similar notice. The main difference is that the phone only need to check regularly if there is any unplayed turns waiting for you.

Wesnoth plays out like a phone conversation, if the phone looses reception the call ends
I´m asking if there is a way to play it like a text dialog, where your phone only regularly checks to see if there are any new texts for you

A good example of what I´m asking for is Uniwar witch is a similar game to this but with this function (althou its not as good as Wesnoth)
I hope you understand what I mean

User avatar
Dugi
Posts: 4944
Joined: July 22nd, 2010, 10:29 am
Location: Carpathian Mountains
Contact:

Re: Android pbem

Post by Dugi »

When playing wesnoth on a computer, I just move to another workspace or alt+tab and I can do other stuff while it's the other guy's turn. It seems to be intentionally made so that you need no input when other players play (remember that advancements are chosen automatically when it is not your turn in multiplayer, unlike in singleplayer). It seems that the guy who ported it to android did not think about allowing this, so maybe you'll want to post it into the android support thread. And write the third post there, the previous ones were too unspecific.

User avatar
DranKof
Posts: 34
Joined: May 30th, 2013, 6:35 am
Location: Beijing, China

Re: Android pbem

Post by DranKof »

Beppe wrote:I don´t think you understand the concept of what I´m asking, there are a few games out there on the android market witch plays out similarly to wesnoth, but in those games you just get a notice on the phone when its your turn, you then open the game click yourself to your active games and enter the ones and play the games where it is your turn.
Wesnoth plays out like a phone conversation, if the phone looses reception the call ends
I´m asking if there is a way to play it like a text dialog, where your phone only regularly checks to see if there are any new texts for you
Dugi wrote:And write the third post there, the previous ones were too unspecific.
This message might seem overly negative, but the initial confusion from even a forum veteran goes to show how "deep in the woods" this request is. I totally agree that such a feature would be nice, but as of right now, it'd be a long, long distance in the future.

1) Confusion: Firstly, the term PBEM is less common than PBM, which is also shared with PBW, PBI, and play-by-many-other-terms, and they're mostly localized to a certain genre of games that Wesnoth is (as you know) not, so none of them are all that clear. You're better off saying "can we make it so when you join a game, you don't have to view the entire replay of the game, oh and saved games could be saved on a server, oh and only you and others in the game would see them, oh and it would send push notifications to your phone when others are done, oh and..." and the other things that would be required to realize server-supported PB-whatever-like gameplay. This is by no means any simple undertaking. In addition to sounding very demanding, you might not find a lot of support (but who knows!) because PBM games (as far as I can tell) are actually not that popular among present-day computer games that mostly cater to play-at-the-same-time audiences.

2) Gameplay and Time: Most people who play Wesnoth are used to play-all-at-once and have no concept of why anyone would even want to spread their game across several days when many Wesnoth matches are actually quick enough when played in one sit-go, that means you might bump into a lot of ideological walls. For good reason: because of how many turns are in a typical game, even a small one, split up between how long people tend to have to wait between turns (usually 3-9 hours if the other person isn't present) when playing PB-whatever games, even a small game would probably could take like 2-3 weeks. (App games like Hero Academy usually take like 9-13 turns, Wesnoth takes around 30 on small vanilla maps (for me; haven't REALLY checked, but yeah) and would need even smaller maps than that to be even close to playable, at which point game mechanics, like those regarding movement and first-turn-advantage, become more exaggerated.) But then, people who really do play hardcore PB-whatever games usually play over a course of half a year, so playing on a regular sized map should be no REAL obstacle...just the lack of popular support would be. Oh, and the costs of hosting a new server thing and sending push notifications (not sure I mentioned that clearly enough, before). But if it was just true PBM then there'd be no gameplay problem for the hardcore.

3) Coding Complications: As far as I can tell, the Android version is hardly ever updated, as is, and the entire (re)connect-to-a-game-in-progress-system would require an overhaul of the multiplayer-game-connect process. Since simply porting it to a mobile device is already hard enough to give reliable updates, I can only imagine that further requiring a recoding of the core process that's run when people connect to a game would be a nearly-impossible obstacle in comparison; I'm not sure they'd want to change it for regular Wesnoth and anyone developing a mobile version might not be in-the-loop enough to even know how to tackle an obstacle this big. (To make an analogy analogous to above: Connecting to a Wesnoth game in process is like connecting to a multi-way telephone conversation where your joining may cause others to drop, oh, and by the way, you have to re-listen in on the entire telephone conversation before you can talk with people.)

In summary, I wouldn't bother asking for any Android PB-whatever feature. Instead, in the multiplayer development forum, you could ask something like:
"Could it be made so that when people reconnect to a game, they don't have to re-watch the replay of the entire match up until the current turn? I think that's really annoying when I disconnect and reconnect to a game, I have to watch everything again."
If this is ever addressed, then you'd be much closer to realizing PBM.

Next could be asking:
1) that hotseat games have player passwords (that show a black screen until you input a password or let you save the game) to PBeM the actual, play-by-email sort of way;
or, 2) that the server hosts games that are incomplete and don't have anyone playing in them, but maybe hides them when they're in that dormant state so they dont make a mess of the view.

Hope that helps.

User avatar
iceiceice
Developer
Posts: 1056
Joined: August 23rd, 2013, 2:10 am

Re: Android pbem

Post by iceiceice »

Stumbled across this... interesting idea. Depending on someones lifestyle, they might like to have a game of wesnoth in which they make moves only when they are on the bus / on the train in the morning each day.

I don't see that this would really be that complicated. In fact there are some design decisions made by the developers of the game that mesh well with this kind of play.
examples
IIRC the reason why when someone ranged attacks your elvish shyde, you do not get to select whether to retaliate with faerie fire or gossamer, and also the reason why you do not get to select advancement when your units level up on defense, is that, as a design decision, you are only asked to provide input on your turn, so that if you want to multitask, your only responsibility to opponents is to come back and make your moves when you hear the bell, and then you can concentrate on something else for 5 - 10 minutes without interruption until the next bell.
DranKof wrote: In summary, I wouldn't bother asking for any Android PB-whatever feature. Instead, in the multiplayer development forum, you could ask something like:
"Could it be made so that when people reconnect to a game, they don't have to re-watch the replay of the entire match up until the current turn? I think that's really annoying when I disconnect and reconnect to a game, I have to watch everything again."
If this is ever addressed, then you'd be much closer to realizing PBM.
I'm not sure if I agree with this -- most likely if you are only making one turn a day, you need a recap anyways so you can remember what happened previously. If you just turn on "quick replays" it should be fine. I think if you wanted to play wesnoth this way, I don't see why you couldnt just do it e.g. on the 1.6 or 1.8 server, whichever the phones use. As long as everyone agrees they are only going to make one turn a day I don't see a problem.

Its not even clear that you need to use the server for this. If you trusted your opponent not to cheat, you could just make a move on your phone, then email the save game file to your friend, then she moves and emails it back, and play the game that way. For the most part wesnoth relies on the honor system already anyways.

However, for it to be most convenient, imo you would like to be able to have the game running on the server at all times, so you can log in whenever, take control, make a move, then leave again. That way you wouldn't have to fuss with emails and save games, and there wouldn't be the temptation to replay a turn if you got bad luck for example.

If you have to continually reload the game on the server that would be a problem since the point is that likely no one is on at the same time anyways.

It would likely be most convenient however if you could make e.g. a bot which will "hold" a game on the 1.8 server (I think this is the one used by phones?). When you start the bot learns everyone's names; whenever anyone leaves they give control to the bot, and then whenever any person joins back as an observer the bot automatically gives them control of the appropriate side. Conceiveably the bot could be running on e.g. the desktop machine of whoever started the game. Then everyone plays out the game from their phones at leisure.

Technical issues:
1) How to write the bot? Can this be wml / lua? Can wml / lua execute commands like giving control of a side and checking names of observers?
2) What happens when server restarts? Does the bot need to figure out to rehost? (probably not feasible but who knows)
3) Is keeping a single game up on the server for months "okay"? Would the powers that be be opposed to a scheme like this because of load / etc.?

IMO if someone figured out a good multiplay format for wesnoth on phones that app would probably see a lot more use.

Just my 2 cents,
iceiceice

Post Reply