After several weeks of accomplishing nothing aside from besting my already prodigious records for oversleeping and playing through the entire Dragon Age series, I’m starting to accept that maybe I don’t have it in me to solve the grand challenge of AI. My strengths are really in implementation rather than research, and while it’s fun to think about AI, I already miss working with other people on more clearly defined problems. I plan to start looking for another job soonish–at latest, after going to Poland at the end of June–but in the meantime, I’ve been thinking about how to break my slump with a more tractable project. I thought about returning to my “ASCII sandbox MMO” game, and in particular its Scheme interpreter, but apart from the fact that that game is ambitious in scope and limited in potential appeal, it doesn’t use any new technologies that are likely to be interesting to potential employers. It seems reasonable to attempt to add a few keywords to my resume, and there are a few areas that I’ve been curious about but have never bothered to explore.
I attempted today to come up with a list of technologies to delve into, with the idea that I’d build a project around them. I’ve never worked with mobile apps, for instance, and the likely platform for me to start with would be C++ with Qt on Android (and maybe eventually iOS), since I’ve been using that on desktops for quite a while now. On the other hand, it seems entirely possible to use JS/HTML5 canvas for mobile development, and since another set of technologies that I want to try are modern web development systems (JS with frameworks like Angular, server-side frameworks like RoR), that seems like it might be a better starting point.
In terms of a project, my current idea (as of today) is an asynchronous party game inspired by Whirled’s LOLcaptions. I’m not wedded to the idea of continuing in game development, but it seems slightly easier to come up with an original game than an original non-game app. As a decidedly softcore gamer, the games I enjoy fall into one of two categories: first, extremely content-heavy story-driven mentally-untaxing single player games (Dragon Age, Mass Effect, Elder Scrolls, Fallout, Half-Life, Portal…), and second, extremely casual mentally-untaxing social games (poker, Bang!, Everything, Cards Against Humanity, Mario Kart…). Given that I’m not likely to come up with a massive amount of content, it seems reasonable to try something in the second category.
At present, my vision of the game is one where, in small groups, people log in every day to enter a series of moves, which consist of dragging and launching a ball as one would in a mini golf game (showing my age, I guess I’m thinking specifically of Zany Golf), racing their balls around one of various tracks. This provides ample opportunity for various pinball-like obstacles, widgets, and power-ups, but the primary goal would be to hit targets that activate, for the day’s round, a LOLcaptions-esque challenge: from various web APIs or internal databases, the app selects a random image, news story, Wikipedia article, question, etc. Each player responds to the prompt, and votes on one of the other (anonymized) responses at the next turn, with the winner receiving points or an advancement bonus (depending on how the overall game winner is determined).
Basically, I think that the entire point of multiplayer gaming is social interaction, but mobile devices (and, to a lesser extent, anything other than in-person gameplay) make that awkward–thus, the idea is to force social interaction by making it part of the gameplay. To encourage social interaction, one benefits from a continuous stream of novel prompts. I’m most familiar with this from my countless hours spent lurking on news discussion sites like Slashdot and Fark. The other crucial aspect is encouraging people to log in once a day for rationed novelty, as in Everything–or Facebook, for that matter.
I’m not concerned with monetization at this point, or perhaps ever–the goal is simply to get something running that’s entertaining to play, and to play around with some new technology in the process.