3
\$\begingroup\$

I'm trying to craft a site for web-based (original) board games, and my client (currently written in Actionscript, but that's highly fungible) works fine - I can play solitaire games in the client - but it has nothing to connect to.

What I'm looking for is a server framework for handling accounts/authentication and game tracking: something that would let players log in, show them a list of their current games, let them invite friends to new games, let them make moves in the games they have open, etc. I'm flexible on language; obviously I'm going to have to write a lot of server code to handle the actual game logic, but that should be straightforward enough. I'm more concerned with how to handle the user (and game) DBs, though suggestions for a good server framework for communicating with the DBs (and serving up, most likely, JSON for client communications) are also welcome. Right now my leaning is towards Ruby (probably with Rails) but as far as I can determine it would be a pretty good chunk of effort to set up the necessary databases, so having something automagically handle that - or even just having a good example project that I can check out for a how-to - would be really useful to me.

\$\endgroup\$

1 Answer 1

2
\$\begingroup\$

Service Stack for services and serves up XML, JSON etc. Amazing in general for setting up the services. Also cross platform.

As far as 'DB communication', if you are able to use Windows Server for hosting, Entity Framework works well, and very easy to use and code against. There might be alternatives like DbLinq (Linq To SQL for Mono), but haven't tried it so not sure on how easy it is to use. OrmLite is another option and you can get it as a part of ServiceStack framework. Update: Entity Framework now works under Mono so windows hosting would be optional for all of the above. See here

Obviously, this is only really an option if you don't mind coding all this in C# and doesn't take care of all the database design you'll have to do, but that kinda goes with game logic.

Hope that helps.

\$\endgroup\$

Not the answer you're looking for? Browse other questions tagged .