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
Trezker
Member #1,739
December 2001
avatar

Spawning was a frequent topic on the Cantr forums. They used the rule that if two characters were in the same place a new character could spawn there.
This was rather troublesome when you tried to cross a desert...

I'd like to see a different system for that but I'm not sure what it should be. Perhaps some way to mark a location as a proper settlement. Like, there has to be at least one house and two people present. Maybe some time in the future you could implement pregnancy, but that'd probably just be weird.

If there is no such location available then you should probably have a few default locations. Perhaps even make newbie spawn locations, with NPC's.

l j
Member #10,584
January 2009
avatar

I've never dared to play Cantr II because of it's lack of security.

About a year ago we all got a task in the school to prepare something about computers to talk about in the class. Somebody chose to talk about security and also got to the subject of SQL injections. To show an example he used Cantr and showed all the tables and contents. The passwords were just in plain text, not even encrypted. As a bonus he took a random e-mail and password and opened some stranger's inbox.

Tobias Dammers
Member #2,604
August 2002
avatar

Vanneto said:

So, one more oddity I noticed. Whenever I want to change the name of a location/character and press Enter, my character says something. But he doesn't say anything because it looks like the chat window intercepts that Enter key press... So I basically say nothing.

Basically what would be better IMO if you press Enter on the change char/location name field than that should be changed. Or at least a safeguard so I cant submit blank fields in the chat window.

Yes, that's basically a bug. Or two to be specific. Enter, pressed inside a popup, should submit the popup, not the entire page or the talk button; the talk button however is created first in the page lifecycle and thus becomes the default button. And empty talk messages should just be discarded. I'll work on that, need to dig up a bit of javascript trickery to make it work.

Trezker said:

Spawning was a frequent topic on the Cantr forums. They used the rule that if two characters were in the same place a new character could spawn there.
This was rather troublesome when you tried to cross a desert...

I'd like to see a different system for that but I'm not sure what it should be. Perhaps some way to mark a location as a proper settlement. Like, there has to be at least one house and two people present. Maybe some time in the future you could implement pregnancy, but that'd probably just be weird.

If there is no such location available then you should probably have a few default locations. Perhaps even make newbie spawn locations, with NPC's.

Current spawning rules are:

  • each location has a "spawn_location" flag; locations with this flag are always preferred over locations without it

  • the number of characters weighs into the probability of someone spawning there, although you can also spawn in an empty location

  • your character will not spawn in a location where you already have another character

I'm open for better suggestions, because now it's far from ideal. I'm not too partial about NPCs or newbie areas though - those would be hard to explain in-game, and one particular thing I liked about cantr was the absolute lack of NPCs. A script just doesn't role-play well.

I'll also try to add some documentation, soon...

-- edit --

taron  said:

I've never dared to play Cantr II because of it's lack of security.

Security is a horrible mess with CantrII, yes. It's one of the reasons that made me start this project in the first place. I mean, come on, preventing SQL injections isn't hard at all, you just need to be disciplined about using parametrized queries and PDO for everything. XSS is a bit harder, but not much - just make sure you know what is HTML and what is not, and never ever allow people to upload plain HTML anywhere. Text is text, HTML is HTML, and they're both different things that need to be treated differently. I have this part pretty much covered in my web controls library, takes care of translating between HTML, form variables, plain text, query string params, and what have you, and works around PHP's silly magic quotes automatically.

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

Trezker
Member #1,739
December 2001
avatar

Ah! Just remembered an old idea I had that I wanted in a Cantr-like game to speed up gameplay significantly.

Players should be able to set up automated responses and trade options for when they're not playing. So if you know John Pearson will show up and want a key or something from you. You could set it up so he can select that option from an interaction menu.

Let's see:
1) Frequent questions like "Who's the leader here?", "Can I hunt the animals?", "Can I take stuff from the ground?"
2) Exclusive interaction for specific characters.
3) Trade options.

So basically when you're not online people can still interact with your characters as if they were NPC's, with options that the player sets up.

Tobias Dammers
Member #2,604
August 2002
avatar

Nice idea. Not sure how hard it would be to implement though. I had a more subtle trade system in mind, where you could create a list of trade offers for your character which others could see without you being awake. So you could add an entry to your list that says you're willing to trade 50 wood for 10 iron, and someone with 10 iron could come along and perform the transaction while you're asleep. But then, I'm not so sure this would be a good thing for the role playing aspect, so I might end up not doing it after all.
In general though, I think the amount of manual labour required to achieve anything in CantrII is outrageous, and I'll definitely go with less: adding items from your inventory to a project should be possible from both your inventory and from the project overview. Naming people and locations is already possible without leaving the current page (major annoyance in CantrII, especially when the "You are not allowed to see the events of other players" bug kicks in); I'll probably add other person- and location-related tasks to the popup, such as displaying a description and pointing.

-- update: --

Yes, that's basically a bug. Or two to be specific. Enter, pressed inside a popup, should submit the popup, not the entire page or the talk button; the talk button however is created first in the page lifecycle and thus becomes the default button. And empty talk messages should just be discarded. I'll work on that, need to dig up a bit of javascript trickery to make it work.

Fixed. The inventory bug too (adding stuff to your inventory produced a new entry instead of merging).

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

Trezker
Member #1,739
December 2001
avatar

Now we're 4 people at one location. The message log has a scrollbar. So I'm wondering how far back will it load?

Another thing I though of earlier but forgot to mention is the issue of maps.
I tried my hand at making a map over several months, can't recall how many locations I mapped, but it was all on foot and I stopped playing soon after I got my hands on an abandoned dirtbike...

Anyway, I thought it would be nice if mapping happened automatically so you could have a map over the places you've been without having to mess with image editing and all that. Perhaps it should be required you have paper for it before you can get such a map. You select a paper and set it to automap, or something like that.

bamccaig
Member #7,536
July 2006
avatar

Somebody wondered away from a 4 person location to continue mapping out his spawn area. :-X So it may be down to 3 soon.

So far I've been completely unimaginative when it comes to naming places. I basically started with "Initial Spawn Point" and have been prefixing incremental directions on to it for every place I go. :P

How do people normally come up with names in these games? Are they just arbitrary or do you try to make them make sense?

Also are the names shared by all of your characters or do they only apply to one?

MiquelFire
Member #3,110
January 2003
avatar

bamccaig said:

Also are the names shared by all of your characters or do they only apply to one?

I wonder that as well. If they're shared, then I need to rethinking my naming scheme, as I too just did a simple spawn location thing.

Now that location went down to two people.

---
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

Vanneto
Member #8,643
May 2007

Characters don't share location names or other character names. They don't share nothing. They don't even know of each others existence... Thats how Cantr 2 was played.

In capitalist America bank robs you.

bamccaig
Member #7,536
July 2006
avatar

...as I too just did a simple spawn location thing.

Eventually I'll probably exceed the maximum length for the field so it's only a temporary solution anyway. Seeing a single place in the world for the first time made me draw a blank for what else to call it. And if I didn't know where I was then I couldn't possible know where I was going. :-X

** IDEA **

It occurred to me that calling a spawn point Nibelheim would be easy for me to recognize without being so arbitrary. :P I then decided to go ahead and be that guy and create a Cloud Strife character. :D

Oh come on, you already knew it was me! :P

MiquelFire
Member #3,110
January 2003
avatar

I have not seen that guy, then again, I only been to two locations so far.

---
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

One of my characters has moved around quite a bit now. I just realized this game should have a route planner that makes it easy to travel between locations that are far apart. Since each stretch of road only takes an in game hour it would be a bit annoying to log in at every location to get from A to E via B, C and D.

Especially if you're planning to introduce vehicles that are faster than walking. If the current speed is the walking speed you're set on.

About vehicles. I wasn't really a fan of the tech level you could reach in Cantr. While lots of people were hunting with bone spears and didn't bother wear clother, it's rather weird to be driving around in sports cars...

I'd rather see animal domestication in this game. So you can ride, or put a cart behind a horse to transport between locations. A bit more structured farming would be nice too. Getting milk by killing cows and eggs by killing birds... that's just wrong.

If there are birds around you might be able to find some eggs, collected like any other resource. But to be more efficient you should build a coop.

Tobias Dammers
Member #2,604
August 2002
avatar

Lots of nice ideas there. Let's see.

First of all, names you give to characters and locations aren't shared, this works exactly like in cantr II.

Then, travelling. The travel speed is currently hard-coded at 36 pixels per in-game hour, and since the average distance between locations is about the same, one hour is how long a usual travel takes. This is just a temporary solution though; ultimately, travel speed is going to be determined by a number of factors - terrain type, road type, the load you're carrying, etc. It's almost certainly going to be much lower in most situations. In any case, lots of tweaking and experimenting to do. Some pathfinding would probably be a good thing too, but I think in order for it to be realistic, you'd have to have a suitable map in order to program your character for a multi-location travel. And then, considering how in cantrII most communities expect you to state your name upon arrival, automatic travel would mean that you couldn't do this easily.

About the maps: I had almost the same thought about this. My idea is that you could at any time draw a map of your current location, extend an existing map, or string several existing maps together. Each of these operations would require paper or a similar resource, and it would take some time. This way, maps become a valuable yet affordable thing, unlike cantrII, where players had to make maps tediously, after which their value was very low, because you could copy them instantly without using any resources at all. Auto-mapping might be a good idea, but I'm a bit hesitant about automating too much.

About the tech level: I'm not exactly sure about this one, but I guess I'll be aiming at very early industrialisation. That is, sailing ships, horse carriages, carts, maybe bicycles, but not motor cars. Clothes should be slightly more functional than in cantrII - they'd provide protection from damage, and maybe also from cold and rain (but I'm not sure if there will be weather or climate). As far as weapons go; I don't see why I shouldn't have firearms, as long as you can't kill a perfectly healthy person in one shot (or maybe even that could be acceptable, if there is a harsh enough threshold for firing a lot - very expensive ammunition, a shots-per-day limit, time consuming gun maintenance, that kind of thing).

Domesticized animals are another thing I want to have. Killing cows for their milk is stupid and ruins part of the role playing; there is no reason why you shouldn't be able to build a stable or a fenced field and put some cattle or sheep on it. You'd still be able to kill them, but then the milk production would stop. Also, domestcized horses are crucial for transportation if I don't add motor vehicles.

Trezker said:

Now we're 4 people at one location. The message log has a scrollbar. So I'm wondering how far back will it load?

The message log goes back 25 messages, but as long as you don't navigate (by switching characters, selecting a tab, or picking up / dropping items, new messages are simply added at the bottom. I'll probably change this to be in-game time limited rather than message count limited though, because that seems more realistic to me.

bamccaig said:

Oh come on, you already knew it was me!

I'm in the nice position that I could go SELECT c.name, l.name, u.name FROM `character` c INNER JOIN location l on l.id = c.location_id INNER JOIN user u on u.id = c.user_id if I felt like it ;D

Oh, and I definitely need a proper name for this thing. It's pretty hard to come up with a name that doesn't generate a million google hits these days. Maybe I'll just resort to writing a little script that tries every possible 4-letter word and collects the top 20 with the fewest google hits automatically, then I select one that doesn't sound too retarded. :P

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

Trezker
Member #1,739
December 2001
avatar

And then, considering how in cantrII most communities expect you to state your name upon arrival, automatic travel would mean that you couldn't do this easily.

You could make the log say "[character] passes through [location]" instead of the two events for arriving and leaving when someone travels like this. If the game supports such travel I don't think people would be offended by players who use it.

Firearms eh, well the best weapon in Cantr was the crossbow. It needed a couple shots to kill someone weak without any protection. There was also the limitation that you could only attack each character once per day. Rather unrealistic but with the game being the way it is you need some way of limiting the violence. Otherwise you could live in a peaceful village one day and when you log in the next day everyone is killed by a single player.

One feature that may be appropriate is automatic defense. So people hit back when someone attacks them without the players having to be logged in. Perhaps adding settings for protecting others too. This would help against hit and run tactics where attackers barricade themselves in a locked building, make a quick attack and go back in. Commonly used in the war between Swedes and Turks.

Vanneto
Member #8,643
May 2007

Trezker said:

Otherwise you could live in a peaceful village one day and when you log in the next day everyone is killed by a single player.

Just like the real world. I see no problem with this.

To avoid this villages would have to have some sort of police force... Better said, they would need people with guns. It is true that people in the game would be more inclined to go berserk because if they die or kill 100 other people there are no consequences. So its not exactly like in the real world. :P

In capitalist America bank robs you.

Jonatan Hedborg
Member #4,886
July 2004
avatar

Vanneto said:

Just like the real world

Except you are always online in the real world ;) Since people are not expected to be in the game 24/7, a way is needed to limit the amount of damager a player can do over a certain time period (ie before people have time to react).

Matthew Leverton
Supreme Loser
January 1999
avatar

Charge $10 to send a message to a player's cell phone if he gets decapitated while sleeping.

Tobias Dammers
Member #2,604
August 2002
avatar

Trezker said:

You could make the log say "[character] passes through [location]" instead of the two events for arriving and leaving when someone travels like this. If the game supports such travel I don't think people would be offended by players who use it.

That might work. However, as I said, travelling is probably going to be much much slower once I get to the balancing part, so the automated routing might not even be something I implement. But if I do, then yes, something like that would work I guess.

Quote:

Firearms eh, well the best weapon in Cantr was the crossbow. It needed a couple shots to kill someone weak without any protection. There was also the limitation that you could only attack each character once per day. Rather unrealistic but with the game being the way it is you need some way of limiting the violence. Otherwise you could live in a peaceful village one day and when you log in the next day everyone is killed by a single player.

One feature that may be appropriate is automatic defense. So people hit back when someone attacks them without the players having to be logged in. Perhaps adding settings for protecting others too. This would help against hit and run tactics where attackers barricade themselves in a locked building, make a quick attack and go back in. Commonly used in the war between Swedes and Turks.

I've been thinking about automatic attack responses myself, but while playing around with the idea, I quickly figured that it's going to be a lot more complicated than you'd think at first sight. In cantrII, a lot of sparring was going on all the time (one of my characters was part of a group where daily sparring was pretty much expected), maybe more than actual fighting even; so the automatic response would have to somehow figure out whether someone was just sparring or really meant to attack you. Then there's the situation where people hit you by accident (mis-click, selected the wrong weapon, or whatever), and when you have a powerful weapon on you, this might lead to a cascade of unwanted violence. Further, you'd have to make sure that the counter-violence isn't countered back ( :P ) by another automated response, leading to an automatic fight to death. Next problem is that you don't always want to fight back: If a super-bully with thirty years of battle training and an uber-weapon takes a swing at you, you don't want to hit them back using your bare hands, you want to run as fast and as far as you can - I don't see how I'd automate this, let alone offer a sane user interface for that. So, long story short, I don't think I'll provide automatic violence response, and instead limit violence much like cantrII did (except that I'm leaning more towards a complete violence lock after each attack, that is, after you've hit someone, you'd have to wait some time before you could hit anyone else, or the same person, again, and the wait period would depend on the type of weapon used).

Oh, and just to be clear about this: If I implement firearms, they won't necessarily be the most powerful weapons in all situations. Firearms, and even more so the kind used around 1800, have a few interesting disadvantages over things like swords and clubs: You need ammunition, you need time to reload, they can malfunction, they can even hurt you instead of your target (especially when you're a bad shot), they don't work well when wet, etc. If these things have enough effect, a good sword could very well be superior to a gun in many situations in the game - e.g., in larger battles, the need to reload and the depletion of ammunition could mean that you don't get a chance to kill more than one or two of your enemies, while they keep slashing away at you with their ever-functioning swords.

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

MiquelFire
Member #3,110
January 2003
avatar

How about an e-mail system. As a way to remind some of us that we have pending actions, so if a character had an event, and you haven't log in for a set period of time (e-mail sending is delayed), you get an e-mail saying which characters have events you haven't read yet.

---
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

E-mail functionality is definitely in the pipeline. A few things I might want to do:

  • Daily digest mail, listing all events of the day for all your characters

  • Password reset by e-mail (the ubiquitous "forgot password" dialog)

  • Confirmation of account activation, suspension, deletion, etc.

  • An invite system (send an invite to someone else by automatic e-mail, pretty much like gmail had when they started out)

  • Maybe something like you describe, but this would only make sense if your characters don't see much action. In CantrII, my experience was that there were new events for at least some characters at least once a day.

  • At some point, I might need automated tools to find rule violations and other misbehaviour, and such tools might include functions for sending standard e-mails, e.g. "You have been seen doing XYZ, which is wrong because blah blah, don't do it again kthxbye"

But first, more gameplay features.

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

Trezker
Member #1,739
December 2001
avatar

RSS?
I'd love to get an RSS feed on my characters events. But my experience with RSS on services that require login is rather bad. Though I've only used it on one site.

Tobias Dammers
Member #2,604
August 2002
avatar

RSS with session state is sort of clumsy - most RSS clients support sending cookies, but not receiving them or displaying a login form. So what you'd have to do is log in to the regular site, then copy the login cookie to your RSS client, and it would work so long as your login cookie remains valid. To my knowledge, the RSS protocol itself does not contain an authentication mechanism.

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

Trezker
Member #1,739
December 2001
avatar

You got pointing in the game now!
First new feature since you let us in right?

One thing I thought about is that roads and overview are two separate tabs. But neither one looks overly crowded. I suspect you're planning more stuff on the overview? The thing I react to is that you see the map in both these tabs, I just feel that you should only be seeing the map in one tab.

Tobias Dammers
Member #2,604
August 2002
avatar

Trezker said:

You got pointing in the game now!
First new feature since you let us in right?

First real feature, yes. The rest was bugfixes I think. There's also a tiny wiki/cms now, but currently the only user with editor privileges is me (mainly because there's no history and no change logging :o ). Still useful though, if only to quickly make and change the news page.

I also have projects in the making, but so far, there's only the data model, no interface and only partial logic yet. It's the most complicated piece so far, because each project type has a list or requirements, but requirements may have alternatives - for example, to build a "wooded crucifix", you'd need:
- 2 wooden planks
- 4 iron nails OR 4 steel nails
- wooden hammer OR steel hammer OR stone hammer

Quote:

One thing I thought about is that roads and overview are two separate tabs. But neither one looks overly crowded. I suspect you're planning more stuff on the overview? The thing I react to is that you see the map in both these tabs, I just feel that you should only be seeing the map in one tab.

Yes, this is far from ideal. I leave it as it is for now, but ultimately, this has to be streamlined. The original idea for the overview was some sort of digest version of all the other tabs, so that you could get a quick run-down of the situation. At one point, I even had the map in the top center panel, but that screen real estate is too valuable IMO, and in a lot of situations, you don't need the map (say, you're working inside, or just not planning on travelling any time soon), and the color scheme already suggest the kind of location you're in.

I'll see where things go for now, either the overview becomes more functional, or I'll ditch it and add its functionality to the other tabs. A thought that just appeared to me is that the various counts (number of roads, people, etc.) could be added to the tab headers. I'll have to play around with that idea a bit more.

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

Neil Black
Member #7,867
October 2006
avatar

This looks pretty interesting. I've never played Cantr, but I've thought about making a game somewhat like this before, just never motivated myself to try.



Go to: