Silly chat/game idea

A crazy idea I’ve had after watching peoples behaviour on Wurm - lots of people log in an end up spending as much time chatting as they do actually playing the game. Its already been mentioned that some kind of chat/IRC channel might be a good idea for the site, so how about combining the two together?

The idea is still pretty hazy, but the main gist of it is some kind of simple world (think marble madness) where people logged in would actually appear as avatars, able to wander around and talk to each other (via speach bubbles, automatically logged in a history pane hidden away somewhere).

Chuck in avatar customisation, some simple emoticons type actions and unleash on the general public.

Good idea? Something I should have a crack at doing if i get enough spare time?

Hi
It’s called the sims online isn’t it? :P, I dunno what the sims online is like, but I heard that you chat in that sort of fashion with each other. Most multiplayer games end up with a certain amount of that (excluding FPS/RTS). Even going back to the old telnet mud days you could see people just hanging around in towns chatting.

Endolf

I’ve not played Sims Online, but now you mention it i see the similarities.

I suppose it depends on whether the interaction with the ‘world’ is actually interesting enough for people to hang around. I hadn’t though out much beyond people being able to wander around a bit.

Actually, I’ve had the exact same idea!
:smiley:

I also never got around making a start, but it’s nice to see someone having the same idea.

Doing it in java could make it even a nice showcase of for example java’s dynamic capabilities. For example maybe people could be able to upload their own java classes customizing their own online character at runtime if the interfaces are well defined. (just thinking out loud now :-))

Erik

Ok, assuming I’m going to give this a go, the biggest problem I can see is actually setting up some sort of server. Now that either involves me setting up one out of my house, or some sort of peer to peer thing without a centralised server. I’m thinking the traditional sever model would be a much easier way though.

What do you mean by customising themselves via uploading classes? Actually loading an external class wouldn’t be too much hastle, but what would you actually let people do with this?

I’m not sure whether you’d need any kind of database behind things, or whether with a static world and no persistant players that would be overkill. Anyone any good links to designing a system like this?

[quote]What do you mean by customising themselves via uploading classes? Actually loading an external class wouldn’t be too much hastle, but what would you actually let people do with this?
[/quote]
Well, I didn’t think it through, but something in the lines of how being able to subclass the class which defines how you are presented on the client. Something limited enough to be safe but powerful enough to be fun. Sort of like an applet so to speak if you get my drift.
I’m sorry to be so vague, but like I said, I didn’t think it through. ::slight_smile:

Erik

Sierra tried something like this several years ago… I forget what the community was called.

Yo ho ho!

I once had a similar idea as well - though it was more like an RPG without the fighting (sounds lame? - I don’t think so). It was focussed on role playing a character - like an actor would.

Although, I’d really love to have such a thing - even if it was setup simply as a meeting place for javagaming people. It’d be great to get to know more of you guys in a more dynamic way.

On the topic of customization - such a thing could perhaps be intergrated, but it seems that something like a nightly re-build (your customizations would only take effect the next day) could be a way to go about it. Of course, what happens when your rebuild fails because of faulty code? We’d have to make the source public, I suppose, so people could test on their own.

Perhaps (along the lines of erikd’s subclassing idea), we could define a (rather large) set of abilities. I.e., your avatars could dance, wave, jump, etc…and allow people to write custom scripts for their avatars, so that each avatar could define thier own special movements. Alternatively, rather than building a scripting engine (which would be overkill), users could upload their code, instead of class files, the server could scan the code to make sure only certain methods are being called (the ‘dance’, wave’, ‘jump’ or other methods, thereby ensureing safety). Then provide some mechanism to allow them to bind a particular movement, or scripted movement (a series of predefined movements), to an in-chat emote command.

EDIT:
Then again, emotes are difficult to do if you’re going to allow people to import their own custom graphics for avatars.

I say, when do we start? This is a fantastic idea!

Well, you know what? Maybe we can host it on one of our servers in the games lab at Sun. Have to check policy but this could be REALLY fun to do!

-ChrisM

[quote]Sierra tried something like this several years ago… I forget what the community was called.
[/quote]
The Realm. It predated Ultima Online by a bit, it could have been a big hit if Sierra carried it through. Anyone who wanted to could beta test it, which I did for a bit. There was nothing implemented other than characters and chat, no quests or any game engine to speak of. It was kinda funny because you could take off all your clothes and just wander around naked. Until a mod caught you.

But basically all MMORPG and games like Phantasy Star Online do this.

Ok, so what kinds of things would it be expected for the users to do? So far I’ve got:

  • Chat, obviously.
  • Wander around, and being able to physically move from one chat room/area into another.
  • Emotion animations, wave, jump, laugh, etc.
  • Avatar customisation, name, clothes (animation?).

Anything else? Or is that more than enough?

The last two suggest to me some kind of bone based animation with skins over the top, but i’m not sure whether thats overkill…

Hi
Sounds about right. Not sure about customisable animations, without those you could use md2/3 with customisable skins. But if you want customizable animations then yeah, bones sounds good. Could be an interesting side project for you :slight_smile:

Endolf

Eh, yeah, that’s kinda the whole idea with Wurm, yes. :wink:

It’s meant to be a social experience more than a gaming experience.
Kinda like IRC in a gaming world with rules.

Didn’t realize we would make the jump to 3D. A 2D version with top-down view seems to be more functional (in terms of being able to see people around you in all directions), especially if we make use of dialog bubbles (vs. a chat window). Then again, there is The Sims - which gives the same functional view.

But if we go with custom animations (i.e. bones), I’d have to agree that 3D would make the world a much better place.

==============
Another feature request

Thinking about servers/multiple chat rooms…

If a chat room had a physical location within the program, then moving around the world would allow people to move from one chat room to another, while only having to log in once! We could serve the chat rooms across multiple servers if need be (for redundancy reasons).

For argument’s sake, let’s say there’s 3 servers, and three chat rooms per server, and each chat room is represented in the program by a pub. If a particular server is currently down, then the pubs that are run by that server appear to be closed in the game (i.e. the neon “Java” signs are off, and the lights are out). The actual layout of the world is stored locally on the user’s machine, and updated when they log in, and all of the server interaction can happen in the background. When a user walks from one pub to another, the program (in the background) logs them off the chat room they just left, and logs them in to any pub that appears “open”, and which the user enters. If the pub is closed, then the doors could be locked (a simple visual representation of the status of the servers).

Each pub could have a different theme (similar to the different threads we have here in the forum) so that people could gather easily in a place where other users would be chatting about the same things.

It seems that the motivation here would be “the community, helping to build the community” - fantastic!

Hi
I like the pubs idea, a possible extension would be to have a 4th server controlling the street, so that people can see each other moving around. The problem with that idea though is that you just know you are going to end up with everyone hanging around in that dark alley behind the closed pub :). Hmmm, maybe the streets should be local and uninhabited :slight_smile:

/me stops thinking out loud.

Endolf

If this is happening, I’d like to help out with some of the things I’ve learned. =)

[edit: typo deluxe]

[quote]Didn’t realize we would make the jump to 3D. A 2D version with top-down view seems to be more functional (in terms of being able to see people around you in all directions), especially if we make use of dialog bubbles (vs. a chat window). Then again, there is The Sims - which gives the same functional view.
[/quote]
Actually I was more thinking 2d isometric (like Jeff’s Scroller), in particular trying to get the charm you get with SNES era RPGs. Also with sticking with Java2D to try and make it reasonably lightweight on a system.

/me goes off to think about multiple chat rooms and severs.
I had only originally imaginied one server, but it makes sense to make it scalable.

[quote]The problem with that idea though is that you just know you are going to end up with everyone hanging around in that dark alley behind the closed pub . Hmmm, maybe the streets should be local and uninhabited
[/quote]
Interesting point. I’d have to disagree, however (at least at this point in the discussion). Surely, if allowed to meet on the street, people will do it (and possibly ignore the established meeting places). Is this a bad thing? I think we’re not really talking abot a game here, we’re talking about a community - a place for people to come and meet. I think that hindering this ability - the ability to self-organize - will hinder the feeling of community itself. If we were talking about a game, then I could see some need for restrictions, because games tend to be based on rules; rules are there to define the game; if people are allowed to break the rules, it’s no longer the same experience.

But, we’re talking about a glorified chat room. A great idea, in and of itself, but what if the restrictions on interactions were no more strict than the rules for posting topics on the forum? Nothing blantantly inflamatory, and give the power to the users to block-out anyone who they don’t want to listen to. If this doesn’t work, then chat rooms as a communication model are a failure (and that doesn’t seem to have been the case).

Now, I believe we need to bring something new to the table. Something innovative, and clever. Some new features that will get people interested in the whole idea. Now, keep in mind that it’s been quite a long time since I’ve been in chat rooms on a regular basis, so maybe some of these features have been implemented elsewhere, but here’s a few more ideas that popped into my head (I’ll refrain from reiterating the features that have already been suggested):

***** (for lack of a better term) next-gen language filter *****

First of all, I think if people are going to swear, then the world’s best language filter can’t do too much. There’s nothing that is going to stop them from getting around the filters…so let them say what they want without the complaints of being censored.

Furthermore, the choice to censor, or not to censor should be up to the person who has to read it - not the person who is writing it. A language filter would act on the client’s side (since it’s an individual choice), and work on incoming chat messages only - outgoing messages are delivered to the chat servers in their original form. So someone who types “f***” in a message, and has the filter turned off will see the real deal appear in their own chat bubble - while the filter people see the filtered version.

Something other than the typical word-match scheme would have to be used. Some way of mapping words (even the ones that contain “$” in place of “S”, and “|” in place of “l”, extra spaces, special characters, etc.) to a table of filtered words, or even phrases.

Now, this idea operates on the assumption that people who don’t like censorship in the least degree will refrain from trying to bypass the filter, if they feel that they’re not being censored (even if they are aware that a language filter is being used by some people). In other words, I think most people who are against censorship, are against it when it changes the experience of ALL viewers/listeners/readers. There’s bound to be complaints anyway, but if we give people to right to say what they want, and the right to not hear what they don’t want to hear, I think it will make for a better experience overall. Do you guys think this is a fairly good assumption?

Besides, a client-side language filter spreads the computational burden onto a much wider number of computers, and then only when it’s requested - while every user benefits by faster message transmission by comparison (albeit a slight difference).

***** organized, in-world events *****

Nothing fancy here. Think, scheduled chat sessions from lead personalities in the community: i.e. Sun engineers, the developers of some new, hot game we’re talking about in the forums, etc.

***** Simple, real-world-dependent changes *****

This is more an art issue than anything else, but seasonal changes in the landscape.

Or perhaps little details for fun, like clocks on the walls of the pub, showing the server’s local time. An Alien Flux “leader board” on the wall.

Sound. Background chatter that changes depending on how many people are in the pub.

***** Public areas *****

Similar to the streets. Open areas that are never closed (perhaps peer-to-peer) that people can go to and gather. Gardens, forests, paved areas, parks, etc. Public areas are where people get dumped when a server unexpectedly crashes - allowing persons who were holding conversations before the crash, to reorganize themselves at a different pub, or just out on the street.

Some of these ideas are perhaps a bit outlandish (this is essentially a chat program, not a game, right?), but since we’re brainstorming here…

BTW: I second the isometric idea.

After a bit of thought, the following sounds like a good idea:
Someones server runs a single ‘map’. This map is designed and made by the person who owns the server, their own tile graphics and layout, so it could be a street with a couple of pubs, a forest with several clearings and pathways, or a big flat void.
A map is effectivly like an IRC chat room, where everyone can see everyone else. The map designer may divide it up further (like into individual meeting places) making unique chat logs and areas.
Maps may link (via roads heading off the map, warp gates, whatever) to another server somewhere. A person can simply walk from one map to another.