As a personal hobby, I would like to program a web-based card game with a few tokens and write an AI for it. I do not want to spend time and effort on standard elements such as maintaining a list of games and coordinating who's playing who, or even writing a login system (ideally I'd like to use Google accounts).
My choice of programming language is flexible, but would prefer something I could run on Google app engine.
I know Google Play Games provides some of the APIs but I was hoping for something more comprehensive. Even better if it works with Google Play Games.
Can you recommend toolkits that provide all or most of this functionality?
Board Game Arena supplies the community and lobby for your online board game, and also provides hosting and the community of players, and helps deal with licensing. The big downside is that you must comply with their system, and must write in PHP, and they don't work with Google accounts.
That said, it is a solution for the problem presented in the question, at least in some cases.
Though I am sure this is a little less fully formed than you were hoping, I would propose WT Toolkit, which allows for javascript-less C++ web applications.
Does it support a login system? Yes it does! supporting both google and facebook, with an easy path to integrationg other OAuth methods (hotmail for example)
List of games? std::vector
List of current people playing others? std::unordered_map
Games are closer to native apps than they are to web pages; a framework that allows you to leverage typical game design methods and exposed WebGL through a unified interface, like WT does, might make it easier for you by allowing you to focus on the GAME, not the WEB.
Maybe not complete answer but at least it didn't belong to comments. (Doesn't have to be correct)
On Google App engine things that will help:
Users service Will help you with authentication
Oauth on Appengine
The Channel API can help you with realtime sync between players and server
The endpoint's will help you with endpoints for devices if needed
XMPP service offered for sending and receiving chat messages
The above will get you started with a simple game. Recommend to look at the channel api for the tic tak toe game.
I hope it helps
Related
I have few ideas for really simple games that I want to try and code.
I know C/C++/Java/PHP/AS3/Python and few more (and learning a new one isn't really a problem).
I'm looking for a game engine that can give me these features:
cross platform (possibly write once run anywhere solution) simple development env that runs on win 7 (or linux, but I prefer win 7)
I need access to in-app purchases/ads/splash screen and any other way to monetize
facebook/whatsapp integration (simple share options, or invite friends in fb)
ability to connect to database (mySql)
ability to connect to some sort of server (TCP/IP, or just fetch any data from certain URL)
2d graphics, simple lines and shapes drawing, text and numbers writing
most games have timers, so I need good response time when clicking a button or any other place on the screen (i guess that rules out Phonegap)
try to think I want to develop a simple card memory game with 5 seconds timer for each time you try to get a pair.
any ideas?
thanks!
try unreal engine 4 :)
it's editor is amazing
one example project is actually that memory card game :)
you can code in c++ and/or you can use blueprints, which is a visual interface to define your game by connecting boxes in an UML like fashion. Its quite easy even for people with no coding background thus collaborating with non-coders can get quite productive.
looks, usability, tons of features, cross-platform.
its not free, but you can get away with a single month subscription fee, which is 20$ or 25$...
and if you sell your game they get a 5% cut. which is ok I guess.
AS3 is easy to learn and its community is still alive :)
To me it is currently the most exciting cross platform technology out there at that time...
I would also recommend using the GPU accelerated 2D Framework Starling http://gamua.com/starling/
Then use ANE (Adobe Native Extensions) for all platform specific transactions such as Facebook integration or in app purchases.
Check out a simple 2 day project available on web/ios/android with one single code base: http://flappy-turd.com
Good Luck!
Lets say I have a program or language and I want to create a service for users to be able to share files related to my program or language.
For example, if I had a circuit modeling program, I would want users to have a place to share circuit models of common devices. If I had a real time strategy or FPS game, I would want players to have a place to share maps for the game. If I had a programming language, I would want people to have a place to share libraries written in that language like CPAN is for Perl or PyPi is for Python.
Is there a service or framework for putting together such a database simply? If there's not, I was considering putting together a Google App Engine template program for this kind of application. I haven't used Google App Engine, but it's my impression that it's well suited for this kind of application.
In the broadest sense, it sounds like you're looking for a CMS. In more specific terms, though, no, I'm not aware of anything specifically designed for user-submitted content.
My own site, NUMA, runs on App Engine and does pretty much exactly what you describe. It's custom-written for the game it's based around, though.
Theoretically speaking, is such a thing possible?
I know that Google App Engine can't make socket connections, so I figured using XMPP to send messages to the clients would work. Is XMPP on Google App engine low-latency enough to work for a realtime game?
I was looking into multiplayer game servers like Smartfox and the like, but I figured that the cost of the software combined with running it on my own server would be too much of a hassle, so I figured that running it on Google's hardware would be a good idea.
If you have any other suggestions on realtime multiplayer game servers, I'd love to hear them.
As npdoty points out, we've just announced the Channel API, which is intended for exactly this use-case. It's not released yet, but a preliminary version is available in the latest SDK for you to experiment with. There's no documentation yet, but you can explore the Trivia Quiz sample app to see how it works.
I'd like to build a PokerBot (and a few other games) for the intellectual challenge. However, I only want to do this in an ethical and legal way.
So, I need a game server where all players and the game operator know that I'm running a pokerbot. Where that's not cheating but the norm. Perhaps even where being a human is against the rules.
(I'd also like to build PlayerBots for other games, not just poker.)
If one doesn't exist already, anyone up for doing a collaborative project to build such an environment?
UPDATE:
I would say that an open API is the ultimate sign of a server open to bots.
No API = Bots not welcome.
Also, I'm happy to play for points rather than real money.
You can check the Coding the Wheel series How I Built a Working Poker Bot to see if he mentions any sites where bots aren't frowned upon, but I'm pretty sure any of the sites that let you play for money will ban you for running a bot.
If you just want to do it for the learning experience or the challenge, try one of the free game sites like Yahoo! Games to see if bots are against their terms of service.
Poker academy has a bot API, and they run an online service for bots. It's commercial software though.
I am trying to scrape some website and republish the data as a RSS feed. How hard is this to setup with Google App Engine? Disadvantages and Advantages using GAE. Any recommendations and guidelines greatly appreciated!
Google AppEngine offers much more functionality (and complexity) than you will need if truly all you will want to do is republish some structured data as RSS.
Personally, I would use something like Yahoo pipes for a task like this.
That being said... if you want/need to get your feet wet with GAE, go for it!
Working with Google App Engine is pretty straight forward. I would recommend going through the Getting Started guide. It's short and simple and touches on essential GAE topics. There are more pros and cons than I will list here.
Pros:
In general, App Engine is designed for high traffic web applications that need to scale. Furthermore, it is designed from a programmer's perspective. Much of the scalability issues (database optimization, server administration, etc) are dealt with by Google. Having said that, I find it to be a nice platform. It is still being actively developed by Google engineers, and scheduling of tasks (a feature that has been long requested) is in the current road map.
Cons:
Perhaps the biggest downside right now is again the lack of official scheduling support and the quota limits currently set for free accounts. However you can't complain much if its free. Currently it only supports Python as a programming interface (although a new language [Java I predict] is coming soon). Furthermore, Python 2.6 (and 3.0 for that matter) are not yet supported. In addition, Django 1.0 is not officially supported in App Engine (although you can package Django 1.0 with your application).
Harder than it would be in most other technologies.
GAE can sort of do scheduled batch stuff like this now, but it's really not intended for that type of thing. Pick pretty much any other language and platform for this particular task, and you'll make your life a lot easier.
I think BeautifulSoup could run on GAE, so all your scraping needs are handled :D
Also, GAE has a geturl thingy. The only problem I think you might have is not having enough time to get the data (30 secs limitation).
I am working on a same project and I've decided that it's easier to prepare the data on another server and push them to GAE.
You might also want to look into Yahoo! Query Language (YQL)