Web based Text Creator

Hi,

I am interested in creating a web based text adventure creator. It is gonna be written in php with MySQL for storage. There will be 2 parts to it, a client and a editor(server). The client will simply be a single page with an user interface similar to zork and phpzork. The user types in commands and the page retrieves the data from the database(room data, item descriptions etc.). The editor will be web based and allows the creator to edit his/her text adventure from any web browser. Although this will require the user to be connected to the internet to play the game, there are also some advantages.

  1. The system is totally cross-platform includes handheld devices and modern video game consoles. This includes cheap mobile phones with crappy browsers and browsers with little or no javascript support.

  2. No install is required on the users end so it will work on restricted devices(work, library, etc.).

  3. I plan on making both the client and editor accessibily complient so even those less fortinate will be able to play.

  4. The platform will be open source so it will be easily modifiable if you would like to add a feature not included in the standard distribution.

  5. It’s free nuff said.

Please let me know what you think and tell me if i should bother to start coding it.

Sincerely,

PHPTxtAdv

I think it’s a great idea. One thing I’d suggest including from the start is great internationalization support. There’s going to be billions of mobiles in dozens of countries coming online in the future, and not all of them (as you point out) will be screaming fast with the latest and greatest browsers and JavaScript engines enabled.

Yes indeed a good idea. And George’s internationalization suggestion is also a good idea - though needs lots of thought on how to implement - for exampe, will you (or your users) be multi-languaging the same game, or just have a flag to flag a game as “in language X”.

I have also been thinking about something similar since ADVpda but not done anything about it. Have you looked into HTML5? The possibilities for online / offline play might also be good to build in.

Also you need to think of peoples save games - will you save to local cookies or offer to store save games on a central server (users would then require to login again to retrieve game data etc?

I’ve considered this in the past. Couple of thoughts:

  • Localization will be an absolutely nightmare, especially if you’re talking about having multiple languages in the same project.
  • Cookie-based save games would be bothersome. Many people have cookies disabled, only allow cookies from certain sites, et cetera. Cookies expire or are wiped out by “optimization” or privacy products. A database save based on a user login is really the only viable way of going about this.
  • Unless you just want to change the way the games are played or written, there’s really no point. With Parchment openly available, writing an entirely new product doesn’t really make any sense. There are mobile devices that do support Javascript, albeit poorly.

It’s never a bad idea to offer something new to the community. Please do interpret this as my trying to discourage you from doing so. Just saying that before you invest your time in the project, make sure that you actually are bringing something new to the table. I know first hand how difficult (and sometimes morale crushing) it can be to try introducing a new product or platform to an existing market.

But if you do decide to run with it, best of luck! I’d be thrilled to see a PHP/MySQLI based IF development platform.

I’ve considered this in the past. Couple of thoughts:

  • Localization will be an absolutely nightmare, especially if you’re talking about having multiple languages in the same project.

Localization in the game will be done by the creator as i have never personally seen if’s with multiple languages, especially with language switching on the fly. The web based system it’s self is another story. All of it’s screens and layouts will be template based since it uses the Smarty template engine. All you would need to do is modify the templates to your choosen and/or post them for others to drop into their template folder.

  • Cookie-based save games would be bothersome. Many people have cookies disabled, only allow cookies from certain sites, et cetera. Cookies expire or are wiped out by “optimization” or privacy products. A database save based on a user login is really the only viable way of going about this.

Database saves with login infomation was the original idea.

  • Unless you just want to change the way the games are played or written, there’s really no point. With Parchment openly available, writing an entirely new product doesn’t really make any sense. There are mobile devices that do support Javascript, albeit poorly.

Yea but a system that runs regardless of none, poor or good javascript support was my original intentions. I want my app to run on those cheap mobile phones you get for free or even prepaid mobile phone which usually have very poor browser support. Also installing Opera Mobile isn’t an option on most of those phones as there isn’t enough memory to run it. I even planned on getting it to work with AWeb the Amiga web browser! :wink:. As i said before libraries don’t allow you to install stuff on their machines as it blocked by software like Deep Freeze most of the time as i’ve seen not to mention my library still uses IE6 :open_mouth:. Last i did mention Accessibility support which i haven’t seen yet in any text adventure creator.

It’s never a bad idea to offer something new to the community. Please do interpret this as my trying to discourage you from doing so. Just saying that before you invest your time in the project, make sure that you actually are bringing something new to the table. I know first hand how difficult (and sometimes morale crushing) it can be to try introducing a new product or platform to an existing market.

I understand and i would love to see this flourish myself.

But if you do decide to run with it, best of luck! I’d be thrilled to see a PHP/MySQLI based IF development platform.

Thanks.

Hi

I’d be interested to see more work done on web-based game creation. It would be fun for people to be able to logon and create games through some sort of web GUI. I did a fair bit of work getting JACL to work over the web a few years ago (games can be played here: jacl.animats.net). All the state is saved server side with the user_id in the URL so you just need to bookmark the game once you have started. The user can also manually save games with different names. Of course, having said that, the new Ajax support I added doesn’t actually show you the user id in the URL until you fully refresh the page by clicking a link from the top such as “About”. Maybe I should move to cookies…

Anyway, I think the web is only getting better as a format for thin client applications. All the game processing is done server side with JACL but snippets of Javascript are used here and there to give some extra functionality such as sound, Ajax and window scrolling – nothing that is essential to play.

Let me know if you ever want to compare notes,
Stuart

This is something I’m working on at the moment - the Quest WebEditor. I designed the desktop version of the Quest Editor so that the GUI was nicely separated, which has meant that it’s been reasonably straightforward (well, still a few weeks of work) to create an ASP.NET MVC front-end.

It currently looks something like this:

webeditor.png

Hopefully it will be ready for testing in another week or two.

Neato. I set up something very similar using a HyperCard stack, before the web. When you were done designing, you would hit a button and it would automatically generate compilable C++ code, with separate interface libraries for either Think C++ (on the Mac) or Turbo C++ (on Windows, or actually just DOS, I didn’t bother learning the whole PC GUI toolbox as I have never been into Microsoft). Wrote a pretty good compound-phrase parser, too. When I discovered Inform, I abandoned the project as too much of a kludge (splitting design across apps and requiring purchase of Think/Turbo C). Later, Apple knifed HyperCard, anyway. If I had done it just a few years later, I probably would have done it on the web, which would have had much more of a point to it. All I did was reinvent a wheel just to prove to myself that I could — the web can do much more.

Paul.

Hi Alex

I think your interface looks great. One thing I would recommend though is looking at having it create an intermediate representation of the game that is suitable for translating into any of the existing IF languages. One thing I have learnt over the years is that no one is really interested in yet another IF language. An interface like this however would really appeal to people provided they could eventually compile to their favourite system even if that meant someone writing a plugin to generate the system code out of the intermediate representation.

Looking forward to seeing it up and running!

Stuart

It’s not “yet another language” - it’s Quest, which has been around since 1998 textadventures.co.uk/quest/ (although as far as this particular forum is concerned it’s categorised as one of those obscure “Other Development Systems”)

The WebEditor is open source, and the code is at quest.codeplex.com/. I don’t think it would be particularly easy to turn it into a generic front-end for other languages though - by the time you’d done that you may as well have just written another web editor front-end from scratch.

Of course, the reason for that is that Quest has its own forum elsewhere. For Inform and TADS, which have their own subforums here, this is the main support forum for authors. It wouldn’t make sense to have a separate Quest subforum here when all Quest questions are asked over on your forum. (It doesn’t say “one of those obscure” in the forum description. That’s your - unfair IMHO - interpretation.)

I believe it’s more because the other development systems get so few posts that it makes more sense to group them into one subforum than to have separate subforums that get maybe one thread per year each. There used to be a Hugo subforum too, but it was merged into the other systems forum for this reason. (It should also show that favoritism isn’t a factor. Merk, the forum owner, is a Hugo guy.)

Please excuse my ignorance, and don’t worry, I understand the “obscure other development system” classification all too well. :wink:

If it is going to be Quest-specific then I might have a crack at writing one too then. Of course I understand just how much effort is really required to undertake this type of development project so we’ll see how it goes. I was thinking it might be nice to let people define code templates that have details from the web form inserted into the appropriate places thus generating legal code for whatever system is being used.

I might sit down soon and look at all the versions of Cloak of Darkness soon and see how realistic this is likely to be.

Good luck and looking forward to seeing you release,
Stuart