[jdev] Questions about server capabilities

Norman Rasmussen norman at rasmussen.co.za
Tue Aug 8 14:34:35 CDT 2006

The quick answer: yes, you could certainly do something like this with jabber.

The long answer: (see below)

On 8/8/06, Ed Allen <jimikzero at yahoo.com> wrote:
> What im doing is developing a MMORPG since im not completely sure how to run
> one i am first making a private one amongst friends and coworkers.  The
> private MMO is almost completely developed i'd say 90% done on paper and a
> lot of other things are ready for the game to be off paper and into a
> computer.  The most important thing to an MMO is community, of course, so
> for a community there needs to be communication.  When i found jabber i
> wasnt sure if it could handle it.  I understand that i probably will need to
> create my own client for jabber but what im not so sure about is ...

Sounds good.  FYI: I have seen posts on this list before about using
jabber for RPG's and it sounds like they were happy with the choice

You probably want to read http://www.jabber.org/jeps/jep-0045.html

Some sort of extention could be added to say: Here's a list of places
you can go from this room: East, West, North, South, Up, Down -
configurable for each room (which would have a unique identifier.

> 1.  I need to make it so when a player enters a room noone on the outside of
> that room can "hear" them.
one muc channel/room per room should be fine for that

> 2.  In large scale rooms say like a city that after certain distances from
> other players, players cant "hear" eachother and the only way to talk to
> someone out of range is directly IM the player.
Could you make the whole city one room? or would a city be made of
several rooms? generally in RPG's you have to 'shout' to be heard
elsewhere in the nearby rooms.  You could add this as an extra feature
on the muc server you adopt/write.

> 3.   Certain IM channesl can be heard globabaly ex. Guild, fighting parties,
> and admin anouncements.

each channel is a muc room/channel.

> 4.  All of the previouse being seen with only one chat window for each
> player(i dont really know how to word that i hope you understand what i
> mean)

You'd have to write you own client, but for testing the absolute
basics you can probably load up any jabber client.

> 5.  Players will have a mailbox that they can access anytime to recieve
> messages they were given offline.

sounds like their main in-game jid. (jabber supports online and
offline messaging)

> 6.  NPC are able to send messages.  Characters that are nothing but mere
> dummys can input messages like ...such and such item given to player or just
> merely telling story or hints to the player.

These could be implemented as client bots.

> I know a majority of this will be mostly be dependant on on the client that
> i have to create.. my questions..... Can this be done with the jabber as my
> server for that chat portion of the game?  And if so what would i have to do
> to make sure everything would be legal if i make a public MMO using jabbers
> server as a portion of the game im not entirely sure about the term open
> source on something like this?

Different servers have different requirements.  I think a good way to
go about designing this would be to use a standard jabber server (pick
any one), and write/customise you own 'MUC' like component that
handles all the game play.  This way you can keep your code seperate
for the major server.

That being said under most 'source' licences (BSD/GPL), (very
basically) you're allowed to make whatever modifications you want (but
you must offer the source to your product if you sell it).  So if this
game is seen as a service (and you're not selling it to anyone to
install and run as their own server), then you can get away with
making lots of code changes, and not having to release your source
code. (I'm not a lawyer, but this is how I understand these licences,
I think others will confirm the _basics_ of what I've said)

> Any suggestion pertaining to this would be highly appreciated as well.
> As far as the private MMO this is what i plan to have so far
> The number of users will be capped at 150(this number is including admin
> users)
is this in total, or online at one time?  You can always turn off
registrations (on the jabber server's config once you hit >150 users)
This wouldn't stop users on other server's from trying to play though

I'm guessing that as part of the MUC component you'll need to write
stuff such as 'are you allowed to join room x' (like are you standing
next to it), so as part of that you could keep a list of registered

> Domain name
technically not required, but nice for testing, establishing presence etc.

> Email server
can't wait for the day when smtp/pop3/imap are dropped for xmpp.

> A dinosuar server dual pentium 2 with either a gig or 512mb of ram
> I would like the server to run off linux
yep, sounds fine.  I run my jabber server on a p1 with 128mb

> And internet service with in up of 3meg
> im not looking for a whole lot of security options due to the fact that i
> will know everyone who will be on the private MMO
> Right now i just want to get the IM server up and will have minimal graphics
> if any(other then the UI)  once i feel ive mastered admining and modifying
> the IM client enough move up to far superior server computer and start
> building it into a game.  And i know ive said this a lot but i realize a lot
> of this im asking is mostly dependent on the programming skills of my crew.

Sounds like a good idea.  There are quite a few 'component' libraries
around (look at yesterday's post 'Writing a transport') that should
help you get started.

- Norman Rasmussen
 - Email: norman at rasmussen.co.za
 - Home page: http://norman.rasmussen.co.za/

More information about the JDev mailing list