Allegro.cc - Online Community

Allegro.cc Forums » Off-Topic Ordeals » Mah Sekrit Projact

This thread is locked; no one can reply to it. rss feed Print
Mah Sekrit Projact
Tobias Dammers
Member #2,604
August 2002
avatar

Maybe some of you guys know CantrII; it's been down for a while (hacked AGAIN) and I've been playing with the idea of making something similar (but technically better) for a while. I have offered to help programming twice, but never received an answer. So I figured, I'll see how much I get done by the time CantrII is back up.

For those who don't know what CantrII is (was?): Imagine a very slow-paced browser-based text MMORPG, where no NPCs exist (every character you meet is played by a human player), death is permanent, no social structures (clans, camps, teams, etc.) are predefined, and there are no pre-programmed quests. The game merely provides a sandbox with constraints on what your characters can and cannot do - you can travel, but you're bound by geography and time; you can make things, but you need resources and time to do so; you can attack people, but only a limited number of times per timeframe, and a single blow is almost never fatal; etc. etc. It's one huge interconnected world, and if you have the time and the means, you can travel to any location you like.

This is not going to be a clone, but rather a different game in the same spirit, sharing a lot of features (but not all).

I'm not ready to go for a public beta yet, but here's a few screenshots (attached) and some bullet points:

  • real-time messages (with ajax)

  • location and character names are dynamic, you can label other characters and locations any way you want (the interface uses jquery & ajax to pop up a dialog, update the name and replace all occurrences in the current page)

  • character name generator: on character creation, the game can suggest a name for you in case you're out of ideas

  • color scheme changes to match the mood of your current location

  • overview of your (other) characters, highlit when there are new events

  • no SQL injection vulnerabilities and similar open doors

  • uses clean semantic XHTML (might consider switching to HTML 5 though), works with all major browsers

If enough people are interested, I'll see if I can get to the point where I can deploy a rough version and deal out a few accounts. There's not much you can do right now: just create characters (need to put a cap on the number of characters per player before going public), travel around, talk to other characters, name things, and pick up and drop items.

Oh, and the guy who "stole the original cantr code and data" is NOT me.

---
Me make music: Triofobie
---
"We need Tobias and his awesome trombone, too." - Johan Halmén

MiquelFire
Member #3,110
January 2003
avatar

If I had the time, I would be interested in a game like this.

---
Febreze (and other air fresheners actually) is just below perfumes/colognes, and that's just below dead skunks in terms of smells that offend my nose.
MiquelFire.red
If anyone is of the opinion that there is no systemic racism in America, they're either blind, stupid, or racist too. ~Edgar Reynaldo

Tobias Dammers
Member #2,604
August 2002
avatar

Well, CantrII used to be the only game I kept playing - it's really slow paced, and you're typically playing for no more than 5 to 15 minutes a day, and if you don't log in for a few days, you're not missing much usually. Simple conversations could take days. Travels too.

---
Me make music: Triofobie
---
"We need Tobias and his awesome trombone, too." - Johan Halmén

Jonatan Hedborg
Member #4,886
July 2004
avatar

Hey, looks cool. Never heard of CantrII before, but I had a similar idea myself (which I'm sort of semi-working on now and then).
How slow paced is it exactly?

Arthur Kalliokoski
Second in Command
February 2005
avatar

How slow paced is it exactly?

<sekrit message> Nobody answer that for at least four hours please! </sekrit message>

They all watch too much MSNBC... they get ideas.

GullRaDriel
Member #3,861
September 2003
avatar

CantR said:

Notre serveur a été récemment piraté, et cette personne a pu copier et notre télécharger le code et la base de données. Cette personne a déjà installé un faux site-web faux de Cantr. Lae pirate a toutes les adresses électroniques et il est possible qu'<s>elle<s><b>il vous contactera d'ici peu pour vous convaincre de jouer à sa version de Cantr. Notez que cette version est illégale et n'est pas soutenue par l'équipe Cantr.

Notez aussi que si il c' est vrai que la base de données ait été copiée, lae pirate tient non seulement votre adresse électronique mais aussi votre mot de passe. Si vous vous servez de ce mot de passe outre qu'en jouant à avec un autre login que celui de Cantr, il vaut mieux le changer.

Si quelqu'un vous dit que vous pouvez jouer à Cantr en se servant d'un nom de domaine autre que les suivants, rassurez-vous que c'est un jeu illégal et pas soutenu par notre équipe.

Les bons noms de domaine sont: flizzle.net, cantr.net, cantr.org, et joselkink.net.

Nous sommes désolés pour tous ces problèmes.

Their translator is very bad at French. The last sentence mean the exact opposite of what it should mean.

And in French, you should use the masculine form if you don't know who you're talking about. The masculine always win when it comes down to writing in French, and it's also the default form to use.

Good idea for a game though.

"Code is like shit - it only smells if it is not yours"
Allegro Wiki, full of examples and articles !!

Tobias Dammers
Member #2,604
August 2002
avatar

Never heard of CantrII before, but I had a similar idea myself (which I'm sort of semi-working on now and then).

Really? Anything worth showing off?

Quote:

How slow paced is it exactly?

Really really slow. So slow as to drive some people away. Imagine a conversation where you say one sentence, and then wait two days for the other one to reply. A simple production job (making a simple tool) would take a day or two, travelling between two distant locations on foot up to a week. In crowded places with, say, 20 characters or more, things could sometimes move fast out of a sudden, and in such cases, the UI is far from optimal because your message screen fills up with all sorts of garbage you have to read through, but the messages are sorted last-first, so you have to read from the bottom to the top (which is one of the things I intend to do better). One of my characters went on a resource gathering trip that took several real-world weeks, just to get some iron and rubber so they could build a machine.

Their translator is very bad at French. The last sentence mean the exact opposite of what it should mean.

Their original programmer is also very bad at programming, which is why they got hacked in the first place. The game just oozes "bad code" all over the place, even without seeing a single line of it you can tell it's a horrible mess. I talked to one of the programmers on IRC; the hacker seems to have exploited one of the many SQL injection holes, and probably a few other vulnerabilities (how else would you get at the source code?), and they've been working on fixing all those vulnerabilities for a few weeks now. Go figure. I mean, SQL injection? Seriously?

The idea and the game mechanics are really unique though, and the fact that it is moderated on a few basic rules (with people getting kicked out over breaking them on purpose) creates a fascinating role playing experience, something I haven't seen in any other online game so far.

---
Me make music: Triofobie
---
"We need Tobias and his awesome trombone, too." - Johan Halmén

Onewing
Member #6,152
August 2005
avatar

Yeah, I've had an interest in these types of games for a while. I was kind of hoping the Lego MMORPG would be like this, allowing me to deconstruct and build based on world pieces and everything else is up to the players.

Not exactly similar, but several people recommended I research Cantr, was my Lore game, which was based on trying to create a game that's completely generated (combining concepts I like from the Civilization Series, RPGs and Progress Quest). The project is on hold, but I keep it all safe somewhere so if time ever permits, I can pick it back up.

------------
Solo-Games.org | My Tech Blog: The Digital Helm

Trezker
Member #1,739
December 2001
avatar

You have a working map with locations?

As for the issue of CantrII not being efficient at recruiting developers. What's your opinion for your project.
Will it be a closed source one man project. Or are you open to letting people in?

I'd really like to have a look at your code, I think there's a lot I could learn from it.

Vanneto
Member #8,643
May 2007

Ah yes, Cantr II. I really liked that game. The only thing I didn't like about it was how horribly slow it was. I mean, 30 SQL queries just to get some news from a database table? It got worse, when playing the game the number of queries could rise up to 150+. A horrible mess indeed.

I also offered to help them, but got no response. Your game really looks good Tobias. Let us know when you will be letting testers play. :)

In capitalist America bank robs you.

Jonatan Hedborg
Member #4,886
July 2004
avatar

Vanneto said:

I mean, 30 SQL queries just to get some news from a database table? It got worse, when playing the game the number of queries could rise up to 150+.

How would you know how many queries the game uses? O.o

Vanneto
Member #8,643
May 2007

Well, I am guessing that the footer was meaningful. It was something in the lines of:

Quote:

took X queries to blah blah blah.

Of course, there is no way of knowing that it displayed the right number. I am just assuming it did.

In capitalist America bank robs you.

William Labbett
Member #4,486
March 2004
avatar

Sounds good. I'd be up for it.

Matthew Leverton
Supreme Loser
January 1999
avatar

Sounds like Minecraft, but with better graphics.

james_lohr
Member #1,947
February 2002

Sounds like it could be interesting to write, but I'm afraid it sounds immensely dull to play. :P

bamccaig
Member #7,536
July 2006
avatar

Sounds interesting. :) I would like to try it out too (and if you're sharing the code, I would also like to look at that).

Tobias Dammers
Member #2,604
August 2002
avatar

Trezker said:

You have a working map with locations?

Yes. The map was one of the first things I tackled, and it's probably going to be the most complicated part of the entire project. It involves four database tables, a bunch of PHP code, a dedicated map editor (also in PHP), a C++ application that generates heightmaps, terrain maps and satellite images using a diamond-square midpoint displacement algorithm, another C++ application used for A* pathfinding (generating paths that look natural, based on the terrain at hand), and a PHP image generator that composes a partial map from individual map segment images and information from the database.

Quote:

As for the issue of CantrII not being efficient at recruiting developers. What's your opinion for your project.
Will it be a closed source one man project. Or are you open to letting people in?

As of now, it's closed-source-one-man, but once I have gained critical mass, extra hands are very welcome.

Quote:

I'd really like to have a look at your code, I think there's a lot I could learn from it.

bamccaig said:

(and if you're sharing the code, I would also like to look at that).

I don't feel like going completely open source, mainly because I haven't figured out if and how I am going to draw profits of any kind from this. Other than that, I'm pretty open source minded, so I don't have any fundamental objections. First things first, though - upcoming milestone is the first test release, and for that, I need to do quite some work on the user management part of the application, and then figure out where to host the thing. The shared hosting I'm renting should do for a handful of players, provided I can install cronjobs (need to check on that one too), but as soon as things get any more serious than that, I'd best find a virtual private host or something. Should anyone feel like donating... ::)

Vanneto said:

Ah yes, Cantr II. I really liked that game. The only thing I didn't like about it was how horribly slow it was. I mean, 30 SQL queries just to get some news from a database table? It got worse, when playing the game the number of queries could rise up to 150+. A horrible mess indeed.

The fact alone that the number of queries is displayed is a basic WTF by itself. This is not information you want to bother your users with - mysql query logging was invented for exactly this kind of thing. Also, CantrII is not only slow (in the runtime performance sense), it is also horribly inefficient from a usability point of view. Some things require way too many server round trips, so even if there were zero SQL queries, you'd still have to wait for a lot of requests and responses travelling over the net.

Quote:

I also offered to help them, but got no response.

Looks like a pattern to me...

bamccaig said:

I would like to try it out too

Sounds good. I'd be up for it.

Vanneto said:

Your game really looks good Tobias. Let us know when you will be letting testers play.

Absolutely. A game like this can only function with a sufficient number of players, so once I publish the first version, I'll hand out invites (or whatever I'm gonna call them - but I think an invite system is a good way of controlling growth and testing scalability during the first phases) to anyone here who wants them. I'll keep you guys updated.

Sounds like it could be interesting to write, but I'm afraid it sounds immensely dull to play.

CantrII is slow, and most of the time, most of your characters aren't doing much of interest - bit of hunting, make a few tools, travel or farm - however, you can have up to 15 characters, and when two or three of them become heavily involved in politics, or take up a manager job, things can move relatively fast. Also, the goal isn't fast-paced hack & slash action, it's more about actual role-playing, a bit like interactive storywriting (but bound to the laws of a fictional universe).

---
Me make music: Triofobie
---
"We need Tobias and his awesome trombone, too." - Johan Halmén

MiquelFire
Member #3,110
January 2003
avatar

Maybe I'll take an invite.

---
Febreze (and other air fresheners actually) is just below perfumes/colognes, and that's just below dead skunks in terms of smells that offend my nose.
MiquelFire.red
If anyone is of the opinion that there is no systemic racism in America, they're either blind, stupid, or racist too. ~Edgar Reynaldo

Trezker
Member #1,739
December 2001
avatar

Map editor! Can I make my own paradise island?

Are you gonna expand the world as you get more players? CantrII started with such a humongous world that even after all these years there are unexplored areas AFAIK. At least a few people have sailed around the world.

As for funding. I guess you could start with paypal like minecraft did. :)
I'd also like to see you use flattr. http://flattr.com/

m c
Member #5,337
December 2004
avatar

When I was 12 I played zoids role playing on a proboards forum. Is this like that only with a more appropriate interface? Or will you have some kind of php/javascript interactive environment?

(\ /)
(O.o)
(> <)

gnolam
Member #2,030
March 2002
avatar

I'm interested. This appeals to the old MUDder in me. :)

--
Move to the Democratic People's Republic of Vivendi Universal (formerly known as Sweden) - officially democracy- and privacy-free since 2008-06-18!

Jonatan Hedborg
Member #4,886
July 2004
avatar

character name generator: on character creation, the game can suggest a name for you in case you're out of ideas

One of the parts of CantrII that appeals to me (and have also struck me as an interesting idea for MMO's in general) is the fact that you don't automatically know the name of everyone. Would your game also work like this? If so, the name the user picks would only be for remembering which character he is playing ;) (you can tell other players any name - no way for them to check if it's "the right" name).

Tobias Dammers
Member #2,604
August 2002
avatar

One of the parts of CantrII that appeals to me (and have also struck me as an interesting idea for MMO's in general) is the fact that you don't automatically know the name of everyone. Would your game also work like this? If so, the name the user picks would only be for remembering which character he is playing ;) (you can tell other players any name - no way for them to check if it's "the right" name).

Yes, that's exactly what I have now. Locations and other characters are unnamed by default, and the name you give your character is unknown to others, until your character tells them. The first screenshot I posted shows the (currently rather minimalistic) rename dialog.
In fact, I do have names for all locations, but they will not be visible to players - they're only there for administrative purposes, making it easier to find locations in the map editor and when doing things manually in the database. Maybe, just maybe, a supreme being might tell a select handful of characters the intended name of a location under certain circumstances (something like, 'A voice in your head says: "Thou shalt name this place Frufundium"'), but I'm not sure about this yet.

m c said:

When I was 12 I played zoids role playing on a proboards forum. Is this like that only with a more appropriate interface? Or will you have some kind of php/javascript interactive environment?

The game will provide a rigid sandbox environment, in which you can do a lot of things, but only within the laws and rules of the universe that the game simulates. If you don't have enough food, you'll starve to death, no matter what you role-play. However, no social structures (clans, teams, factions, whatever) will be coded into the game: those are expected to arise from the way people play their characters.

Trezker said:

Map editor! Can I make my own paradise island?

In theory, yes. In practice, however, there is only going to be one large world map, and everyone will be playing the same map simultaneously. Should I decide to let other people help me on that front, they will be allowed access to the map editor of course. BTW, here's how it works: First, you run the IslandGenerator application, which spits out a bunch of map segments (each consisting of a terrain type map, a heightmap, and a "satellite" image). You choose a suitable image, copy it to the /maps folder, and add a record to the map_segments table, telling the game where it should place the map segment and which images it should use to display it. Then you open the map editor and start adding locations and paths. Locations can be put anywhere, and you can connect any two locations with a path (although if they're too far away, the pathfinding application will take too long, causing the map editor to timeout).

Quote:

As for funding. I guess you could start with paypal like minecraft did.

I don't want this to be a paid service. A free membership should give you the full deal. Also, I hate ads, so ad-funded is out too (I would accept a small unobtrusive text ad in return for free hosting, something like "web hosting kindly donated by XYZ"). The only options I find acceptable are:

  • give paying members extra features that will not give them any advantage in-game; think purely decorative special items, or allowing them to play more characters

  • voluntary contributions

  • merchandise (but for that to work, I first need a fan culture, and for that, I first need a working game :P )

Which reminds me, I still have to find a proper name for this baby.

---
Me make music: Triofobie
---
"We need Tobias and his awesome trombone, too." - Johan Halmén

bamccaig
Member #7,536
July 2006
avatar

One of the parts of CantrII that appeals to me (and have also struck me as an interesting idea for MMO's in general) is the fact that you don't automatically know the name of everyone. Would your game also work like this? If so, the name the user picks would only be for remembering which character he is playing ;) (you can tell other players any name - no way for them to check if it's "the right" name).

Is there any way to identify them though? For example, if the same character comes along claiming to be a different name, can you still tell that it's the same character that you've previously met? Perhaps you could give them a unique hash identifier to represent their unique appearance. :)

james_lohr
Member #1,947
February 2002

It looks like this type of game would be highly susceptible to bots. Have you got any plans for stopping this?



Go to: