Thursday, January 31, 2008

The reason behind the web service

Dungeon Runners is doing the same thing I'm planning to do with this project, releasing data in XML to everyone:

I'm already doing this on a smaller scale with Chasing Tortoise. Here's an example how this data can be used: click


Micha said...

I was hoping you'd do that. I had thought it'd be neat to have similar stats as the ones for Chasing Tortoise for this project as well.

Also, when I first heard you talking about this when you got started, I thought it'd be neat to have a DS client that connects up and can be run from there. (A bit of a undertaking, but would be neat to see.) I'm not really sure if it'd be possible with the direction you're going with the code, and would also allow some people to create bots to run their characters for them. (Generally a bad thing.)

Over00 said...

Exaxtly. At first I wasn't sure what kind of client I'd use. I went with javascript for numerous reasons but with a web service between, that means that any other technology could be used in the futur (like a DS client).

The bot problem for is a big one but so fat, the web service that is used to issue commands to the server can only be called from the same domain the web service is hosted on.

To open up data to the world, all I have to do is create another web service with only the commands I want to allow. And at that point, if the command exist on the server, cerating a web service using it is a matter of few minutes only.

The first example of data I'm releasing is the number of plyaers online. Currently it's only available on the same web service used to issue commands (meaning it's locked to outside sources) to the server but in time I'll separate this to make it available.

Over00 said...


"The bot problem is a big one but so far..."

Micha said...

Excellent. I wasn't sure how much you had separated the back-end from the client, but it seems like you were on top of it from the start. As long as everything is verified on the server before being run, it should be fine. (i.e. There is zero trust on the client's data.)