First of all with this proposal I'm supposing that there's real interest in porting Wesnoth to the Android platform, now that there's an iPhone port. Dave asked back in 2007 (if I remember well) if someone could do the port. I'm also supposing that this port would have to be mostly in pure Java/Scala/other JVM language, since there is the possibility of executing native code on Android, but Google advises to keep that part small.
2010/3/10 Paul Ebermann <paul-eberm...@gmx.de> > To make this a bit more useful, how about this idea: > > Make a kind of "alternate Multiplayer client", which can connect to the Multiplayer server > via internet (or to a local running wesnothd), and provides a plug for a pluggable > (Java/Scala/other VM language) AI. It does not have to have any GUI (maybe to select a > game, but this too could be done by command line), but would allow "bot playing". > > This way one could experiment with (multiplayer) AI design and even test them on the > server against humans, or against each other. > > So, this project would have 3 parts: > > (1) define an Java interface for the AI to game data > (2) implement the networking layer to interface the server > (This may need some more formal specifications of the send data > (simple_wml).) > (3) implement (1) based on (2) (and a store of current game state) > > All would be pure Java (or Scala or any other JVM language), no JNI. > > Then you could do your Scala AI interfacing to (1), and other people could do the same > with different AI design goals (and maybe in different JVM languages). > > And it still would be usable in case (B), when a full JVM port of Wesnoth comes (provided > this port also has a implementation of (1)). > > > PaĆlo This is an interesting alternative. But after reading Boucman's comments I guess it's not the right direction either, since there would be a drive to replace it with C++ or lua sooner or later. Maybe a better idea would be to make an Android app that allows connecting to the Wesnoth server but only for watching games (and chatting when doing so). The good thing about such an app is that it could actually become massively popular, because of its cool graphical nature and general appeal. Which means it would get more people motivated to finish the port so they can play instead of just watching. An AI bot on the other hand is mainly interesting for AI programmers. Implementing this would require porting: - netcode - part of the WML engine since apparently the network protocol passes WML around? - map and unit display - sound/music (wesnoth doesn't do anything fancy there, should be easy?) And making a basic UI with tools available on Android. Those are big chunks, but maybe without the GUI, advanced WML stuff, AI, etc., this could still be a manageable project. You tell me... 2010/3/10 jeremy rosen <jeremy.ro...@enst-bretagne.fr> >remember what we learned with the python AI: >[...] It does sound like opening a whole can of worms. I understand that an extra dependency is not wanted, and I kind of expected the answer. It could be a separately downloadable module, I guess, but then it wouldn't see much use. >writing a bot framework for lua bots might be an idea worth studying, >though, but the OP's idea seemed to revolve around using Java in >wesnoth, so changing the requirement to lua probably doesn't make >sense from his point of view As I said I'm open to other projects, but what I had in mind here was to advance somehow the Android port, since in my mind it's unlikely to be done all at once. Actually this brings up a question: even if there's a Wesnoth to Android (and other JVM applications such as Wesnoth-in-the-browser) port done at some point, do you think it will have trouble finding maintainers? I suppose a few motivated developers could keep up with the changes in WML (including gui2), graphics, network code, and so on. They'd also have to keep porting changes to the AI, unless a completely different one is written and someone maintains that. The only thing saving them work is that they wouldn't be directly affected by stuff like Wesnoth moving to OpenGL. Overall it would be more effort than for the iPhone port, so I don't know if it's realistic to expect that.
_______________________________________________ Wesnoth-dev mailing list Wesnoth-dev@gna.org https://mail.gna.org/listinfo/wesnoth-dev