Want to read Slashdot from your mobile device? Point it at m.slashdot.org and keep reading!

 



Forgot your password?
typodupeerror
×
Games Entertainment

WorldForge Forges Ahead 82

Anonymous Coward writes "LinuxWorld has an article up about the WorldForge Projects's game Acorn. Some of the developers of this cool open source EverQuest-like game are hanging out in the article forum answering questions. The groovy thing about the game is that you can contribute to it creatively more than with Ultima, etc., making your own special items and other stuff." There are several of these MMORPG's kicking around, and while I applaud their efforts I have this sneaking suspicion that the amount of work required is so high that none of them will ever be completed.
This discussion has been archived. No new comments can be posted.

WorldForge Forges Ahead

Comments Filter:
  • One thing it is hard to do in these games is to maintain quality. This requires a certain artistic vision as far as the universe of the game goes. Not everyone is competent as a universe maker, or knows what would work well in a certain context.

    All to often you will have somthing that will break the game show up. The obvious things are easy to legislate against.

    Hand grenades and beam weapons and other one sided technologies, introduced by a player, in a low end medieval fantasy world, for example.

    An example of this is in song-writing. I can remember one guy writing a song, playing it for a friend, who comment was that it would be a heck of a lot better if it sounded like Led Zeppelin

    Of Course , most players are smarter that this, but let's face it, you do have that class of player who wants to convert everything they touch into another shooter program.

    Some of the funniest games I ever played in a pencil and paper setup were with characters that were deliberately and well under powered. (runaway! runaway!)

    So I wish them luck, knowing how difficult it is to do this sort of thing right.

  • by zzorn ( 324555 ) on Saturday March 10, 2001 @08:01AM (#372372) Homepage
    Cheating, hidden codes, and advantageous bugs will be plentiful in this game, and so nobody will play it. It will be a failure of the Open Source model. And let's not get into the idea of them trusting client-side programs to be run. You can't even trust Diablo client-side, so why would you trust something with open source?

    We do not trust the clients. That is actually one of our basic design principles. The server does all the world and character related calculations. The clients are of course free to use prediction, but the server always has the final say.

    --
    Hans Häggström, WorldForge developer.

  • You can make maps that are not GPL, so there is lots of room for moneymaking. (Hi Per btw)
  • if people are still paying, they're going to realize that they might as well pay for the closed source game, which, at least at the moment, has far outpaced the open source efforts
    that's not to say that they shouldn't be appluaded for their work though.
  • Thats not really open source though is it?

    So we aren't really tackling the tougher issue; does opensource make security in multiplayer games too difficult?

    I don't know, but quite possibly. The reason I say this is that security is difficult (nearly impossible) to obtain in multiplayer games when they are closed source and proprietary, and anything that makes it even a slight bit more difficult is not acceptable unless you're willing to concede defeat and let the cheaters have their way.

    I hate to say it, but cheating in any multiplayer game project is going to be extremely difficult to curtail, and having the source code available to the public is not likely going to help matters.

    Of course they could do a "blessed binary" distribution for each gameworld, kind of like nethack. That still works... right?
  • While I can see that the main hurdle will be that the project progressing too slowly will make it seem out-of-date compared to other commercial titles around, this need not kill it. I enjoy playing Subspace with its retro gameplay, despite the fact that the source is closed. Part of the reason it has a small cult following is that the original commercial owners have abandoned it, leaving the community to develop maps and rules as they see fit. Further, that it is behind-the-times is actually to my advantage...56K will be the majority of the net for decades to come.
  • They take about 4,000 man hours minimal investment. Then when your game is up, you're looking at a good 1-4 thousand in maintainence. Just convince a significant other that they should support you for a year or two while you create a work of art. Now thats always the tricky part.
  • b4 I learned of Gnutella... I designed a network that was unhackable p2p... Basically it revolves around the assumption that the gnutella community is large, so there was at least one person who saw you last time you logged off and saved. So your data is always stored on other people's puters... Its like client/server but its patroled by computer COPS... etc. RNG are based on a bunch of other computers rolling, and all games are watched by random computers... Kinda tough to cheat... if you do, you're ousted from the community
  • I'll agree with you that there needs to be a more newbie-friendly website, or at least a glossary of the different projects underway. STAGE alone has a mass of sub-projects, all with weird and wonderful names such as Mercury, shepherd, pegasus and thor to name a few. I was a bit daunted by the whole thing too. It took a little time to get to grips with how everthing works, but now I'm starting work on one of those obscure names - Mercury. Can't wait to get my teeth into it, either. :)

    -- Nothan
  • There is nothing wrong with having only 300 people playing on a server - they can get to know each other better than on a server with a million of people chopping trees.

    This actually shows that open source should be about creating the tools for people to make these worlds, not for ruuning the servers themselves.
    Another thing following from my argument is that a distributed server, call it peer to peer if you want, is better.

    What it takes to create such a server is doing very "engine" like things, to allow player and wizard migration between different servers.

  • You mean you got it to run and not crash all the time like 4.x does?
  • I think the entire thing is a fabulous idea. But I've been watching from the sidelines for awhile and it hasn't seemed to go very far. I wish I had the time to help give it a kickstart.
  • Well wouldn't this need some kind of identification system to identify the cheaters ? Or maybe it is automagical ..
    Good idea anyway.
  • It seems that they also started to write a gnutella style peer to peer client [worldforge.org]. Personally I don't know much about this stuff. Can you make a peer to peer client that is safe from cheating?
  • Yes, WorldForge has explored the possibility of a peer to peer system. Though there have been some discussions of methods for making P2P systems, it has been generally agreed that they cannot match the security of a trusted server. Without a trusted system it is extremely unlikely that any large scale environment could be maintained in any playable fasion.

    I personally hope to see a peer-to-peer system in the future. I do, however, realise that there are tremendous technical challenges involved in creating one that is secure (if that is even possible). So for the time being I will continue to be:

    -Scott Tillman aka SpeedBump
    Worldforge developer for the STAGE server
  • IANACSM (Computer Science Major- yet), but what parts of these projects overlap? I mean, even in a C/S architecture, servers may have to distribute data among themselves (Game Masters Admin-ing different parts of a MMRPG universe, maybe?) but I don't know how much that bears similarity to P2P. So, is anyone working on similarities between the two projects, so we have two complimentary toolsets?

    Anyways, given that different games have different needs (I wouldn't want a P2P MMRPG, too much wiggle room for cheating) I think that the two projects aren't really competitors. I mean, if I'm throwing around information about a sprite-based action game (see Nil [sourceforge.net] for a good example) I probably would prefer P2P for the latency, and just use the honor system and social pressures to weed out cheaters... and frankly, writing and using 'helpful' (as opposed to cheating) scripts and macros would be part of the fun of the game, on another end. I've occasionally wondered if there's a gaming niche for 'cyborg' gaming, i.e., scripts/hacks allowed, just share what ones you use to get that give you that edge... the maps and games created for such gaming would be pretty weird and cool, probably... imagine making a game run by bots, where your sole role and ability is to co-ordinate them... I wonder if that's one of the things Valve is considering w/Team Fortress 2? I heard the 'Commander' role is approaching a certain amount of RTS in style, I believe

    -----
    IANASRP- I am not a self-referential phrase
    -----

  • I realize it's a development project and not a finished product, but I think they need to present a more coherent website. There are dozens of projects listed and it's very difficult to understand what one should download and install if one wants to observe their progress.

    We are aware of the problems with the current website, and are working on a new website with better structure.

    However, keep in mind that www.worldforge.org [worldforge.org] is a developer website. Using Wiki allows team members to keep the website pages related to things they work on updated. This also means that they can be a bit less organized. In the future we intend to set up www.worldforge.com as a page for players, and www.worldforge.net as a portal to existing servers.


    I would love to see WorldForge succeed, and I might have been a part-time contributor, but there doesn't seem to be any clear direction or central motivation. Ultimately, they're going to need some to make a decent game because MMORPG's are huge productions.

    We do have a very clear Master Plan [worldforge.org]. The basic idea is to implement successively more complete games, until we get to our goal, a complete fantasy MMORPG taking place in the Dural [worldforge.org] world.

    We also have instructions for new developers [worldforge.org], and there are always friendly people that are ready to answer questions on our irc server, irc.worldforge.org, channel #lounge. Feel free to drop in!

    --
    Hans Häggström, WorldForge developer.

  • by hugg ( 22953 )
    The thing I liked best about MUDs and OOPs are that you could code objects in the environment, say, a HTTP server, and print "You hear a whirring noise" or something when it is accessed. Programming -- that's more interesting than slogging through giant rats!
  • I agree. The screen shots and what not look impressize. The other threads about cheating and bandwidth will be a problem (that can hopefully be overcome), but I don't think finishing is.
  • But if the "enemy" has the source available to them, all they have to do is compute what the checksum should be, hard code that in to where you send that checksum to the server, and *poof* they're in..
  • Dude, you're a staff member of Slashdot. You don't need to follow Signal 11's method of karma whoring (posts an opinion everyone wants to disagree with, just to get modded up as interesting).

    All Open Source projects will always be completed. It's your kind of pessimism we don't need in the world of OS programming. If you think it's not gonna get done, why don't you take some of your free time and go help them? No, it's a lot easier to sit there and not do a goddamn thing but berate everyone else for not writing programs that do exactly what you like.

    (okay, if you've been agreeing with me so far, may I point out three reasons you're on crack:
    1. michael has a valid point based on the complexity of such projects alone... artwork, gameplay, and plot are all factors as well
    2. michael has a life other than dropping everything to write a game to give out to the rest of the world.
    3. No project is guaranteed to get completed, for a variety of plausible or oddball reasons. After all, a meteor might land tomorrow... do you want God to hold it against you that you didn't make the deadline for your DeCSS Mozilla plugin?

    Thank you.)
  • How is this so different from the MUDS that have been around for years that are open sourced? Cheating is usually easy to spot and can be dealt with by the server admin.

  • The distributed server thing ala peer-2-peer for online playing is a great idea! Have each server be a land or portion of a land and you must pass through some kind of gate to move to the next server or perhaps cross some mountains, or take a boat ride, or enter some caves etc. Theoretically, each different scenario could be on a different server. This would alleviate bandwidth problems and it would be completely transparent game play that would let a player migrate between the servers. That sounds so cool. :-)

    Then because everything is open source, you could theoretically set up your own game server at home and create your own land with a HUGE castle, and let only those you want in(ie. you could give them a password in the game when you meet them or something). Then you could link your server to others via a bridge, boat, tunnel, etc.(see previous for more ways to migrate between servers). Then I can lure unsuspecting pursuers or enemies into my land and have my own demon horde slaughter them while I turn into an invincible god! "Muhahaha! This is my turf infidels!! I am god here!" I shall scream as I roast all would be slayers with the gouts of flames shooting out my nostrils. That's not cheating though! They invaded my land! And what business did they have chasing me and shooting arrows at me like that? Well, ya I guess I did steal their stash of diamonds, but it was just sitting there! Alright so maybe not, but hey, it's every man for himself in this world. ;-)

    Now tell me that doesn't sound cool. ;-)

    -----
    "People who bite the hand that feeds them usually lick the boot that kicks them"
  • > If you limit the amount of trust given to the client, most of these problems go away... In essence, the client becomes a 'dumb' terminal;

    Except that it doesn't scale up ! Ask Carmack about how he feels about having everything on the server.

    MMPRG's are stuck between two bad extremes
    • everthing on the server: great security, bad scalability
    • everything on the client: no security, great scalability

  • by Cycon ( 11899 )
    anyone else get the impression that this guy posted anonymously because he's the same guy that wrote the article?
  • Hey, that arguments remind me of some of the greats faults in cryptography. Your argument is basicaly the same as security through obscurity.
    deCSS has clearly shown that this principle doesn't work. Blowfish, AES, TEA, RSA, ... and are all completly documented cryptos that remain unbroken. (At least with an good key length)


    Kindly pull your head out of your ass.

    There's a world of difference between enabling secure communications with an open source program and preventing cheating in multiplayer games.

    In cryptograpy <oversimplification> the goal is to enable Alfred and Betty to communicate without letting Chris listen in. </oversimplification> This assumes that Alfred and Betty can trust each other not to phone up Chris and tell him what the other person said. In short, you can trust the client - it's third parties you can't trust.

    In gaming, this assumption does not hold. I can not trust Betty not to hack her client and frag my ass by shooting through walls. There are only 3 ways that I can deal with this.

    1) I can just accept that Betty might be cheating and try to avoid the servers that she plays on.

    2) I can try to ensure that Betty will have a very difficult time cheating by hiding the source code from her. This is security through obscurity, but I will make it impossible for *most* gamers to create cheating clients. If Debbie does build a cheating client and share it with Betty, I can release a patch that will break it and make make go back to the drawing board and release a new one. Since Betty, Beatrice, Bill and Bob aren't all that bright, they will have to play fair, at least until Debbie builds a new cheating client. This is security through obscurity, but it's workable.

    3) I can move all the crucial logic from the client to the server. Since Frank runs the server and is trustworthy, I don't have to worry about hiding the source from Betty or Debbie. This is the most effective method of dealing with cheaters, but it also will increase bandwidth requirements and cpu overhead on the server. Either Frank or myself will have to spend serious cash on servers and tell the modem users to fuck off, or we'll have to live with shitty performance.

    Those are my options. If I am a for-profit development house, option 2 is the most attractive one for me. I don't want to spend lots of money on servers or tell modem users to fuck themselves so option 3 is right out. Option 1 is also right out, as widespread cheating will piss off my user base and hurt sales.

    Sure it's security through obscurity, but as long as you can keep the userbase *relatively* free of cheaters, that's *good enough*. The users will complain about campers and low ping bastards instead, and since they do that with *every* game, it won't hurt sales.

    Security through obscurity is only a bad thing if a single exploit can fuck you over. If someone hacks your credit card database, or the government reads your emails about your pot smuggling operation, that's a disaster. If 1 or 2 people figure out how to cheat at counterstrike, that's only a *very* minor annoyance. Security through obscurity does work to restrict the number of people who can find holes. As long as your system can tolerate a small number of cheaters, you do not need bulletproof security.

    Understand?

    --Shoeboy
  • This is the land of Eric. Behold the list of those who entered and did not leave.
    Really enter(yes/no) ?
  • WHat people do is they add code to the source and then play with their funky new cheat, something the other players in the game don't have. This gives them an edge.

    The WorldForge philosophy, as I understand it, is that anything you can do with a client from an automation or display standpoint is 100% legal. So, provided there's not a bug in server enforcement of game rules, the open-source thing should be a non-issue.

    However, I do disagree with some of the philisophical decisions the WorldForge developers have made on this issue. As I understand it, it would be legal to have a bevy of automated "slaves" that bankroll your main character.

  • "somebody could commit a CVS change with nobody knowing the difference. "

    No, they couldn't. While WF does give wiki accounts out like candy, CVS is read-only until someone contributes something real.
  • I was just browsing many comments and came across two projects which may be of interest to this effort in Worldforge: Verse [sourceforge.net] and Gel3d [mutationlabs.com]

    They are both "frameworks for enabling multi-user three-dimensional worlds" based on different protocols. Verse is client-server(written in C), Gel3d is peer-to-peer(written in C++).

    -----
    "People who bite the hand that feeds them usually lick the boot that kicks them"
  • Actually, on a serious note, I think that there are plenty of people out there who are not sexually repressed, and I think that an open group may also be a group mature enough to handle the subject matter.

    That's an interesting point, and one that has been discussed on our IRC channels. We see no reason to not implement sex, and are planning on implementing sexual reproduction in the final game. If somebody does not want it in their game world, they are always free to run a server with sex turned off. Whether to display anatomically correct models would be up to the clients too.

    --
    Hans Häggström, WorldForge developer.

  • Thanks for a reply, sorry if that sounded a bit harsh, but it was just the impression of a casual first exploration.

    I guess what I meant by lack of a central plan is that you seem to be working on several different things at the same time, which seems to be a tough road to hoe.

    Best of luck, I'll be keeping track. Is there any plan to solicit donations for server maintenance?
  • "an MMORPG needs a centralised server"

    Why? Sure, the servers need to be synchronized... But not necessarily on the same system.
  • The distributed server thing ala peer-2-peer for online playing is a great idea! Have each server be a land or portion of a land and you must pass through some kind of gate to move to the next server or perhaps cross some mountains, or take a boat ride, or enter some caves etc.
    Yes, this is an idea that many have floated before, in various guises, over the years at WorldForge, and because of that I would have to bet that when we're further along, people will experiment with doing that.

    Back in 1990 we did a fair amount of work along these lines. Never came to anything though, because we kept running into a fundamentally insurmountable problem: Cheating.

    The best we could come up with was a central server that authorized the allocation of experience points, treasure, etc., and each "area" (on its own server) was only able to give out an amount of these commodities in proportion to the total number of visitors it received. That way, in the worst case, an area that gave all the treasure to its owner's friends would soon develop a reputation as unfair and other people would stop going there. But then it came back to the scaling problem again.

    I'd be fascinated to watch what sort of solutions eventually do appear.

  • Thanks for a reply, sorry if that sounded a bit harsh, but it was just the impression of a casual first exploration.

    No problem, the site can be quite intimidating at a first glance! We do find it very useful however, and have created a number of tools to improve our communications infrastructure (news, upload tools, irc bookmarks, databases, etc. Unfortunately some of them are down currently as a result of our recent website move). We think good communication channels are important for a net project. Making it more easily accessible for newbies is also important, and something we are working on.



    I guess what I meant by lack of a central plan is that you seem to be working on several different things at the same time, which seems to be a tough road to hoe.

    That is true, but as this is a Free Software project that people are contributing to in their free time, they will work on what most interests them. We have divided the different products up in manageable chunks, so that a small team can work on a client or server module more or less independently. So we utilize the parallel development that is a strength of Free Software projects - we have many developers, but each developer doesn't have that much time to spend, and the turnover rate is higher than in a traditional software project.



    Best of luck, I'll be keeping track. Is there any plan to solicit donations for server maintenance?

    Thank you. As for donations, we can always use new ftp mirrors, website mirrors and irc servers, but what we need most at the moment are more game servers.

    --
    Hans Häggström, WorldForge developer.

  • by Emil Brink ( 69213 ) on Saturday March 10, 2001 @06:05AM (#372406) Homepage

    Um, if you're interested in networked applications involving 3D graphics, such as most modern games (including MMORPGS), you might want to check out Verse [sourceforge.net].

    Briefly, Verse is a system (network protocol, client library, and a lightweight server) to make development of such applications easier. It's based on cool tech (such as subdivision surfaces), almost completely free and open (we use GPL, LGPL and BSD licenses), and best of all: not vapor!

    Verse has been under development by two full-time developers for over 20 months, so we sure have code. If this sounds interesting, swing by the above SourceForge page and take a look. Thanks.
  • You're right, and mozilla will never be a browser.
    Hey, wait a second, I'm posting from it now!
  • Combine a Quake 3 or perhaps Blade of Darkness 3D engine with the actual gameplay for these MMORPG's? The graphics are typically disgusting and drab enough that it's distracting. Developers could then concentrate on building a complex realm and plot.
  • I mean, an MMORPG needs a centralised server, or at least a directory of servers currently running. Granted, as someone mentioned in another thread about the CDDB thing, people can use other boxes, but an MMORPG uses a serious amount of bandwidth (unless it's shit), and a dedicated box really is needed.

    I've worked developing a multiplayer game (a sports game). While it was slightly different in principle, the theory is the same, and a dedicated server could only manage about 300 users playing at any one time.

    Game like UO and EverCrack have THOUSANDS online at any one time, spread over several servers. How can a free game compete with this?

  • The problem with this project, and indeed most Open Source gaming projects, is that it becomes too easy for people to cheat. As opposed to, say, the kernel of Linux, where every change must be poured over by the Kernel Keepers (tm), in this game, somebody could commit a CVS change with nobody knowing the difference.

    Cheating, hidden codes, and advantageous bugs will be plentiful in this game, and so nobody will play it. It will be a failure of the Open Source model. And let's not get into the idea of them trusting client-side programs to be run. You can't even trust Diablo client-side, so why would you trust something with open source?

    I'd rather have a small group of developers (say, 5 or so) writing the game, with no source code availability. This would reduce the number of bugs because only those 5 people would know the source, and so naming conventions and other programming practices could be held. Plus, there would be a clear picture of where the project was headed. Some average coder would be unable to put in a function "just for fun", and so bloat would be minimal.

    It'll be interesting to see where this project leads; to /dev/null or to a Brave New World of programming. Time will tell.

    ------
    That's just the way it is

  • There's a similar project called Gel (i think, can't remember the URL, there's a link on the 3D engine list, which is linked from www.garagegames.com), which is designed for multiplayer 3D environments.

    Not sure how suitable it is for a MMORPG though...
  • This is why something like the Indrema GameXchange is useful. Unlike SourceForge, it allows proprietry titles to use it, and only registered developers (the project owner chooses who) can access the source, be it CVS or plain old download.
  • by Emil Brink ( 69213 ) on Saturday March 10, 2001 @06:15AM (#372413) Homepage
    Um, this is probably "helping the enemy", but anyway: here's a link [mutationlabs.com] to Gel3D. I haven't followed Gel's development as closely as perhaps I should, but glancing at their Info page reveals one major difference: it's peer-to-peer, whereas Verse [sourceforge.net] is client/server. The "war" between P2P and C/S network architecture in the distributed graphics/VR community is pretty intense, and I guess there's still no clear cut winner. They both have advantages. P2P offers potentially lower latency and better distribution of course, but C/S has the benefit of being easily understood, administered and also easier to make secure and persistent.
  • by Erich ( 151 ) on Saturday March 10, 2001 @07:04AM (#372414) Homepage Journal
    and while I applaud their efforts I have this sneaking suspicion that the amount of work required is so high that none of them will ever be completed.

    Complex? You mean like an OS kernel, or a windowing system? How about a database?

    TONS of Free Software out there is extremely complex.

  • Well there are servers that host debian and kde and linux kernel sources and these are not paid, are they?
    If a working and fun game is ready (or even in beta stage), there'll be lots of people offering some server bandwith, and assuming there'll be good load balancing, thounds of simultaneous players will be possible. The problem is much more how to get to this point.

    ~ krabbe
  • I run an open source multiplayer game, Dusk, and while there are many people who attempt to exploit bugs, there are equally many people working hard to track both the people who exploit them and the bugs themselves, so problems are usually fixed quickly and without too much loss. Have some faith in the ethics of good hackers.
  • The real strength of worldforge is that they are writing an engine for creating games. Hopefully this will lead to a lot of different games. Once there are several games to choose from, people can play where they like to play. The people who like holy handgrenades can have their places too.

  • At least there are Free Software implementations of both p2p and C/S. Are the fundamental structures of both projects similar? Could there be any collaboration? I'm in the process of reading about both projects now...

    -----
    "People who bite the hand that feeds them usually lick the boot that kicks them"
  • 2) I can try to ensure that Betty will have a very difficult time cheating by hiding the source code from her. This is security through obscurity, but I will make it impossible for *most* gamers to create cheating clients. If Debbie does build a cheating client and share it with Betty, I can release a patch that will break it and make make go back to the drawing board and release a new one. Since Betty, Beatrice, Bill and Bob aren't all that bright, they will have to play fair, at least until Debbie builds a new cheating client. This is security through obscurity, but it's workable.

    It is *not* workable. Look at alll the Diablo I and Quake cheats out there. Blizzard, which is as closed a company as you can get, gave up on this model for Diablo 2.
  • you're absolutely right. that's why IIS kicks such ass on apache!
    badoomski!
  • I wouldn't even warn anyone with a sign... Just watch them run towards me as they enter my realm and watch what they do as the mood music changes and they realize something big has changed... hehehe... ;-)

    -----
    "People who bite the hand that feeds them usually lick the boot that kicks them"
  • by Bryce ( 1842 ) on Saturday March 10, 2001 @11:33AM (#372422) Homepage

    The distributed server thing ala peer-2-peer for online playing is a great idea! Have each server be a land or portion of a land and you must pass through some kind of gate to move to the next server or perhaps cross some mountains, or take a boat ride, or enter some caves etc.

    Yes, this is an idea that many have floated before, in various guises, over the years at WorldForge, and because of that I would have to bet that when we're further along, people will experiment with doing that. In fact, we're planning to put the hooks in to allow people to experiment with this into our next version of the server.

    Now, there's a lot of issues to deal with in such a situation, but heck, that's what experimentation is all about, and it wouldn't be fun without some challenges, right? ;-)

    It's impressive to see how quickly everyone is grokking what WF is about! And you know you're all welcome to come join in the fun with us, there's plenty of interesting work to go around.

    Bryce Harrington ~ WF Coordinator fella

  • Perhaps we can look at a real-world example. Lets try MUDs, which are pretty popular, have been around for the last decade or so, and its rather easy to find the source to 95% of the MUDs out there (although it isn't GPL).

    Now in any mature MUD code, all the major security holes have been fixxed, and the only thing that looking at the code does is allow me to figure out the game mechanics, which doesn't matter, because someone has calculated it already and posted it to their webpage.

    Now muds are also rather nifty for the bandwidth requirement. It isn't hard to imagine switching a mud from a room-based system to a coordinate based system*, and giving it a graphical front end. Then, all the mud has to do is figure out where every object is and which objects are in range of the player, and sends that data over to the client (tree@x=25,y=57,z=-2) and if anything is interacting with the player (kobold(attacking)@x=10,y=3,z=0). Then the client can send the player's actions back to the server (myplayer(attacking kobold)->moving( speed=3,x=57,y=15)),myplayer(attacking kobold)->casting(fireball). All the client does is makes a pretty picture, adding the actions to the picture (when the server sends a "kobold parrys", it shows it parrying, etc), and allows the player to input his/her actions. The client simply acts like a glorified 3-D renderer + MUD client, nothing more. Since I can't see why the bandwidth requirements for this would be any higher then a mud, I can imagine worlds with 1k-2k people logged in without a problem. And since all the data is stored server-side, its "impossible" to cheat in most of the ways that people describe. Any custom clients would probably add convienences like "paths" and "triggers", as well as an automapping feature, which some gaming purists might decry as a "cheat", but is nothing that the majority of us cannot accept. At the worst, one runs the risk of bots, however, in my mudding experience, most bots don't work beyond repeating a simple activity.

    *Thinking about it, actually, you want "zones" + coordinates so you can cut down figuring out which objects are range of a player. But just a quibble...

  • This probably happens more than we know.
  • I realize it's a development project and not a finished product, but I think they need to present a more coherent website. There are dozens of projects listed and it's very difficult to understand what one should download and install if one wants to observe their progress.

    I would love to see WorldForge succeed, and I might have been a part-time contributor, but there doesn't seem to be any clear direction or central motivation. Ultimately, they're going to need some to make a decent game because MMORPG's are huge productions.
  • > if people are still paying, they're going to
    > realize that they might as well pay for the
    > closed source game, which, at least at the
    > moment, has far outpaced the open source efforts

    Yes, to the gamers it will just be a matter of price. To the people running the servers, using a free engine and initial maps may be more cost effective than developing their own, and may thus lead to lower prices for the gamers.

    This of course requires that the volunteers can create a quality engine for free.
  • I believe there is some detailed information about bandwidth usage one the Worldforge pages.. I've haven't examined the project in detail for a long time, but check the Acorn and Atlas sections of the pages.
  • Worldforge doesn't allow people to just commit stuff to CVS.. You need an account, and one of the human project members needs to give it to you.
  • The problem here is that the best/worst cheats are the ones that are the least noticable. When you make the aimbot so it makes you 10% more accurate, or a lighting change that makes people visible (and easier to shoot) in dark areas, these are the types of changes that are very hard to protect against and are made significantly easier with the source code sitting right in front of you.. These are the problems/dilemas I face when trying to determine whether or not to release the source to my current endeavour or not.. What I think I'd really like is a system to make the client prove itself.. but how do you do that in a way that you can't just hard-code in the answers?
  • Just because our code is Free does not mean that once we have major game servers online we will not be charging subscription. It is my view that we will have to charge subscription. This is one of the most common misconceptions about the project. Another one is that we are just building one game. We are not. We are building a system that can be used to create as many games as you want. We hope that in the future commercial games companies will be able to build game worlds using out technology, much in the same way as companies like RedHat build operating systems using Linux and GNU software.

  • The problem with this project, and indeed most Open Source gaming projects, is that it becomes too easy for people to cheat. As opposed to, say, the kernel of Linux, where every change must be poured over by the Kernel Keepers (tm), in this game, somebody could commit a CVS change with nobody knowing the difference.

    Actually we have very good CVS discipline in the project. Each part has a clearly defined owner, and commits that are made with the owners consent will not be accepted, though this has not yet been a problem as far as I am aware. There is only one component of WorldForge that has as many as 5 people working on it, and that is the next generation server. As for closed source, I think most of us have idealogical objections to that.

    We have looked at the articles written by Theo and co. over at OpenBSD [openbsd.org] and will be looking at applying these review methodologies once are code is a little further along, and more functional. Maybe we are never going to be as secure as OpenBSD, but we hope we can be secure enough to run a decent game.

    Our security model is based on a totally untrusted client, which is the only sane approach possible, and we hope will keep the number of possible exploits down, maybe even lower than proprietary systems which trust the client.

  • I am currently managing to spend around 30 to 40 hours a week coding on WorldForge, while still holding down a good job. This may seem quite sad to some people, and yes, it does seriously restrict my social life, but it is simply not true to say that you need to be supported in order to work seriously on a project.

    My SO can hardly support herself, nevermind me as well.

  • So wouldn't it make perfect sense for the two projects to work closely together?

    Of course, that's the beauty of free software/ open source software . . .
  • Some server bandwidth is not enough.

    An FTP server for Debian will have a maximum of what, 50 users? 100? Probably throttled, so if there are 100 users they will be getting pretty appauling download speeds.

    An MMORPG is a REAL-TIME application, and needs the data from the server as soon as possible, and chances are there will be alot of it.

    As a minimum, I'd expect each user needs 1kbytes a second. That is a LOT of bandwidth for a machine that is hosting something else. That's a very large chunk of a megabit connection, PER SECOND. You really think an ISP or someone is going to give up that much bandwidth for free?

    A model I'm planning on using for an MMORPG I'm going to develop in the future is to use a micropayment system (say, $0.50 per hour), so people only pay for the time they use (unlike others, where you pay a fixed rate)

  • by wunderhorn1 ( 114559 ) on Saturday March 10, 2001 @06:24AM (#372435)
    You can't even trust Diablo client-side, so why would you trust something with open source?

    I'd rather have a small group of developers (say, 5 or so) writing the game, with no source code availability.


    You contradict yourself right there. Diablo was closed soure, handled only by the Blizzad team, but you don't trust them?
    Do you think that just because programmers profess a belief in open-source ideologies it magically makes them better coders?

    At least with an open game (let alone free-speech) you can look for cheats, bugs, backdoors, etc yourself.

    [I couldn't decide whether to mod this down as a troll or reply, but I figure joining the discussion is the noble thing to do. It may not be so blatantly obvious to our "younger readers" why the parent was incorrect]

  • I think the original poster is saying people could add cheats the to the clients, and then play. There's an article on ESRs website about this (I'm not too good with links).

    WHat people do is they add code to the source and then play with their funky new cheat, something the other players in the game don't have. This gives them an edge.

    Combatting this is OPenSource softwrae is not easy (it's not impossible either, but it requires a helluva lot of work), and there was apaprently a barrage of these hacks when the Quake source was released.

  • Not to go too far on a tangent, but while reading some other comments, it begs the question, "How do you keep an open source game secure?" I've been working on a real-time, multiplayer and have been trying to figure out how to work the network protocol to be secure enough to stop people from cheating. This is hard enough when the "bad people" have to snoop through binary packets to determine what is being sent, but when they have the actual code, it becomes trivial. The argument that came to mind after that was, "If you release the source, then there will be people to help you find and fix those bugs." Call be cynical, but I'm thinking there'll be more people looking to exploit the bugs than fix them.
  • Because there is only much data that can be sent to the clients. A single object in Quake 3 (the animation system breaks each model into 3 parts, head, torso and legs) would require 3 times the amount of data for the animation frame.

    While this wouldn't impact the client much, it would cause a severe bottleneck at the server.

    Another factor is the frequency of updates. Most MMORPG use a full-mediation model, where the server does all the work, and the clients just display some stuff. With a simple graphics system, this isn't much of a problem, but when you start adding stupidly complex graphics, the server would have to update the clients at a more regular interval, which usually isn't possible.
  • How dare you call me a troll? Perhaps I was unclear about my statements, but to label me as a troll?

    Have you seen the list of credits at the end of Diablo? I would bet that there are at least 50 people from Blizzard who worked on Diablo. My point about the small number of developers is that a singular vision could be shared. How could a vision of a video game be shared by 50 people at the same time? Among 5 or so, it is possible, because of the high amount of personal interest and input in such a small group. But 50?!?

    How dare you threaten to mod me down as a troll? Just because I was unclear does not mean that I am trolling.

    ------
    That's just the way it is

  • by nikal ( 141824 ) on Saturday March 10, 2001 @07:28AM (#372440)

    Worldforge isn't trying to create one specific game.

    They are creating the tools that will reduce the task of creating an online world. Hence the name Worldforge.

    Acorn happens to be a client/world that has been designed and developed as a "test" of the current development.

    It usually helps to read about something you are planning on criticizing.

  • Majik 3d [majik3d.org] is another massive online world. It is still a work in process. It looks like it takes much more from MUD then Fantasy RPG games, so it is less centerally organized.
    On the FAQ it says:

    What is the difference between WorldForge and Majik?
    WorldForge: WorldForge's approach is not to create a single game, but instead a flexible framework that can support a variety of different kinds of servers, clients, rule sets, worlds, and graphical "looks".
    Majik: The Majik Project strives to create not a system for creating roleplaying worlds, which is what WorldForge aims at, but is a concentrated effort to create one complete and evolving roleplaying world.

  • If you limit the amount of trust given to the client, most of these problems go away..

    Of course, this brings other problems to the server (which makes it more complex).. you have to maintain the client's state (as in everything the client can see) on the server - and only send that. You also need to send the client input events ("move forward 1 meter") to the server, and make sure that the 'character' is capable of moving/doing that.

    All of which will increase bandwidth requirements..

    In essence, the client becomes a 'dumb' terminal; it only displays what the server sends it, so someone can't write an 'aimbot', or make all of the walls transparent (well, they could make the walls transparent, but it wouldn't do them any good.)

    The short answer is that you'd write it just like you'd write any other secure app - you don't trust the client.
  • After downloading (wow 60MB!) and trying the Acorn Demo - I have to express my zeal!

    Considerung, that it is an Demo/Alpha Version, also the graphics are nice! It reminds my of an old Amiga Game "Fairy Tale" - but that's online! :-) o.k. - it will take possibly another year that there is a playable Version. But I am really thrilled!

    I wish the best to the developer teams! :-)
    • ...I have this sneaking suspicion that the amount of work required is so high that none of them will ever be completed.

    Competition good: motivation to do better (exploiting the human competitive instinct), forced to optimize, blabla

    Competition bad: reinventing the wheel, wasting effort on doing the same thing over and over again, and so on

    Depending on how high is the project's objective, it will require more and more resources (developers) to ever complete - otherwise it will be progressing so slowly that it will be obsolete by the time it completes, or the developers will just give up. Doing an 'echo' program is simple enough for one man, doing a MMORPG isn't. If these projects are really staggering this much, there's too much competition; merge a few and try again.

    majik3D [majik3d.org] was my favourite for-the-skies MMORPG but they went out of GPL, I'm not too familiar with details but apparently a company, shall we say, intimately collaborates with them and wanted Majik proprietary. There was some hassle with some proprietary libraries too, but that's the essence, and I also got the impression from their lead developer that they weren't too impressed with one lousy patch they received for being GPL.

    That probably doesn't have anything to do with this and likely is inaccurate anyways, but I thought you'd like another pointless comment to waste your space.

  • There are several of these MMORPG's kicking around, and while I applaud their efforts I have this sneaking suspicion that the amount of work required is so high that none of them will ever be completed.

    That's true for developing the game AND playing it. Anyone who knows/is an addicted EverCrack player knows this firsthand.

  • See: http://www.neverwinternights.com/

    Pretty much describes how they will handle different areas and "cheating".
  • > Dude, you're a staff member of Slashdot. You don't need to follow Signal 11's method of karma whoring (posts an opinion everyone wants to disagree with, just to get modded up as interesting).

    Huh. Consider the possibility that he could actually have differing opinions. Actually, I think I'm going to change my .sig now, you'll see it below.
    --
  • > Game like UO and EverCrack have THOUSANDS
    > online at any one time, spread over several
    > servers. How can a free game compete with this?

    Eh, the _source code_ is free. This does not mean the connecting to the server need to be free. People will idealy be able to pay a subscribtion fee for a big server, try it free on some small hobbyist server, or even try to create a competing commercial server if the existing servers are too expensive or poorly managed.
  • Easy...

    You compile the game logic as a shared object, and generate an MD5SUM of the object, at run time, along with a "cookie" from the server.

    The server can then check to see if the client is running a suitable version of the game logic, and if not, reject it.

    This would force everyone to use the same version (bugfixes could be slow to happen), but it would add a bit of security.
  • Hey, that arguments remind me of some of the greats faults in cryptography. Your argument is basicaly the same as security through obscurity.

    deCSS has clearly shown that this principle doesn't work. Blowfish, AES, TEA, RSA, ... and are all completly documented cryptos that remain unbroken. (At least with an good key length)

  • The checksum is based on the game logic and the server "cookie", making it a little less fixed. It's not perfect, but it's a step in the right direction.
  • You'd still the the central server to pass data to the other servers. LIke I said in my original post, a directory server.

On the eighth day, God created FORTRAN.

Working...