Jump to content

  • Log In with Google      Sign In   
  • Create Account


Member Since 11 Nov 2006
Offline Last Active Mar 16 2014 01:05 AM

#4804673 MMO Worldbuilding

Posted by nfries88 on 30 April 2011 - 12:24 AM

"1. You probably want a reason for there to be monster everywhere which the player can and should kill."

What if the MMO was designed to let the players advance and progress through activities other than killing mobs in this world?

I'm not a very big fan of the current MMO design since it has a forced "monsters everywhere" philosophy, It would be much more fun to have monsters be rarer and more scary (OMG itz a monster, run! *dies*)

Something really effective in MMO world building is giving the players an experience that can link them to this "supposedly living" world (Random events, constantly updated content, varying triggered events and very well hidden valuables).

Hmm, I guess this doesn't have much to do with writing, just throwing the idea out in the open ;p.

You sneaky squirrel, you! You stole some words out of my brain.

I personally feel that another important thing is visual identification with your character. I haven't played too many modern MMOs, but the ones that I have played (KalOnline, Silkroad Online, WoW) have failed largely in this respect, while older and generally less respected ones like Tibia and RuneScape do a fairly good job. Obviously I can't give my character my face or physique in these two games, but I can change his hairstyle and hair color (and in RS, skin tone) until it looks similar to mine -- or even just like mine. Quest/Mission-oriented Non-MMOs like Oblivion and Fallout 3/New Vegas excel here too, and while it might be taken a bit for granted I think that people respond to that whether they realize it or not.

The next important thing is immersion. You need to feel you're really a part of this fantasy world, not some intruder. NPC interaction is key here. Some other things, in addition to what you said about logical placement of monsters, is that monster loot and strength are realistic. Most MMOs fail horribly in those respects, but I don't think that players really respond to those things nearly as much as to lame NPCs. I would also add that music (if applicable) and visuals assist here, and depending on the theme used may actually have a big impact.

When I play an MMO, I want to explore. There needs to be multiple paths to a single point, maze-like dungeons I must traverse, and of course a reasonable number of monsters to pwn with my sword. Tibia was actually the greatest MMO I've played in this respect. If I get lost every now and then, you're probably doing it right.

Another important thing is the gameplay itself. The less interactive and more autonomous the gameplay, the less I feel involved. I've heard good things about WoW on boss enemies requiring groups to take down, but the general solo gameplay held my interest for so short a time that I never got to the point in the game where I could take part in these. Tibia and RuneScape fail horribly here, and so did KalOnline and Silkroad. If I've got to constantly make decisions about what hotkey I should use next even for simpler monsters, you're probably doing it right here. That's why everyone loves the boss monsters, and why people are willing to dish out hundreds or even thousands of dollars for higher-level characters: this is content you only get at those higher levels.

Puzzles. This is something very common in single-player games, but very rare in MMOs. Interesting puzzles can help with immersion, make gameplay less dry, and are not hard to implement in a client->server setting (they'd probably be less network intensive than combat).

The community is the most important thing. Sometimes I like to treat whatever MMO I'm playing like an open chatroom with people from all walks of life all around the world. Tibia once excelled here (it's chat console is a pretty big part of the game), but nowadays it's populated by bots and people with little or no English skills, so I don't really get it from there. I didn't get this from WoW, Silkroad, or KalOnline either. I did get this from RuneScape quite a bit and probably still would, but the sensitivity of the censor made communication a bit difficult sometimes. Which brings me to my next point...

The internet is for porn, netflix, harassing the mentally weak/ill, erection pills, committing or becoming a victim of identity theft, watching horrible ideas go horribly right on youtube, and sometimes some hardcore gaming. Aside for maybe netflix, none of those are very good things for children. Even if pedobear is playing your MMO to pick up "women", they've probably seen much worse things than the last three letters of class, which you will probably assume is my attempt at slipping a cussword past your daft censoring system. There's no need for it. Don't do it. It's annoying and disrupts clean, pleasant conversation just as often as it actually does its job, which as previously noted, is pointless.

#4804223 Some music to spice up your games

Posted by nfries88 on 28 April 2011 - 06:51 PM

I recommend using a site that doesn't place "iStockAudio" over your music from now on. That was very aggravating when listening to otherwise good music (although it almost fit on Acid Journey...)

That said, cold fusion was very punchy, but there were specific moments of it that I didn't like (most majorly, the first couple of seconds were a bit annoying honestly). Acid Journey and Dark Fire were excellent pieces. Mass Bass could use a little less mass, if you get what I mean.

Cold fusion and Dark Fire could probably be used for many games, but I don't think that Acid Journey is too fitting to games. Mass Bass could be used for battle music or something, I guess.

#4803814 What Libraries should i use for a commercial game

Posted by nfries88 on 27 April 2011 - 08:41 PM

Depends on your level of programming experience. You'd get the best performance by working with DirectX directly (I'm assuming Windows is your goal), but DirectX is not the simplest thing to pick up.

If you've got only minor programming experience, I've heard Unity3D doesn't require much programming knowledge.

If you've got plenty of programming experience, but directly using DirectX is a bit too much for you, Irrlicht and Ogre are popular free libraries.

#4803812 Where do I start?

Posted by nfries88 on 27 April 2011 - 08:34 PM

Hi, I want to be a game developer. I want to be one of those people who holes themselves up in their parent's basement with the computer as their only light source/friend and dishes out fully 3D masterpeices to the gaming community. And I want to do all this without being japanese.

But I don't even know the first thing about the field. Where do I begin and where do I go after that? For more complicated sub-areas of game developing what are the things I need to know in order to complete those fields?

Currently my only qualification is that I can read and write in proper english. Butt Um nat evan sur aboot thot...

My first and most important recommendation is to drop that narrow perspective. Game developers come in all shapes and sizes, often with very close levels of ability (at least in the practical sense).

You will never be able to churn out a 3D masterpiece by yourself, you will need a team, probably of around 10 people, if you want to churn out a 3D game period.
I also wouldn't place too much value on being a visual masterpiece. Games like Minecraft and Angry Birds are excellent modern examples of this. The chances of an individual coming up with a million dollar idea like those is slim, but a possibility that should not be overlooked.

You didn't specify what fields you want to specialize in, so I'm going to assume programming since that's the only place I can really help. So, let's begin:
1) Read online tutorials about C++. If you don't get it at first, promptly give up all dreams of ever making a game. Kidding! C++ is not an easy language to grasp, but it's extremely flexible and countless lines of reference code exist at your fingertips just by having an internet connection.
In the early phases of learning, I most certainly recommend being that guy that hides away in his parents' basement all day programming. When I first started learning programming at 15, I was living in my father's basement; and aside for going to school, I spent all of my time programming. I even brought my laptop to school to show off my first pacman clone, that's how into it I was. It was just something I almost instantly fell in love with. But it's not the same for everybody! Like I said, game developers come in all shapes and sizes!
2) Once you feel you've got a good grasp on C++, smack yourself in the face and tell yourself that you don't know a goddamned thing. Almost every tutorial you find online is written by an amateur who barely knows what they're talking about. Even if the teacher becomes the master in a situation like that, the master is absolutely clueless.
3) Read through posts in the other forums in this category. You'll find a bunch of good information. You might also find some utter idiocy. This happens sometimes, and is pretty hard to weed out or even recognize until you know better. But that's just fine, idiocy works.
4) Pick up a book on game development. I've heard good things about Frank Luna's "Introduction to 3D Game Programming with DirectX 9.0". Read it one chapter at a time. Practice each chapter for a few hours before moving on. Give yourself time to let things soak on.
5) You've been programming for a few months now and think you're the best programmer on the block. It's time to read one of Michael Abrash's books to fix that.
6) You've been programming for about 3 years now and think you're one of the better programmers in the country. Well, I challenge you to make an asynchronous game server from scratch using only native APIs.
7) Unless you pick things up really quickly, you feel like you've wasted all your time and should give up on game programming. Download, build, and install the newest version of boost and try again.
8) It's a few months later and you're feeling much better now, but your pride is permanently damaged. You're ready to call yourself a programmer.
Yes, that's ripe with sarcasm. But it's good advice if you intend to go the indie route

EDIT: Do not read any books that claim to teach you a programming language in any amount of time less than a year. You cannot possibly learn C++ well enough to write anything of use in 21 days unless you've already been programming for a good amount of time. Even a year is pushing it.

#4803792 Using SDL on Cygwin + g++ Version 3

Posted by nfries88 on 27 April 2011 - 07:42 PM

try adding the location of SDL_image.lib to your project's "Additional Link Directories" (or equivalent) setting.

#4803348 Updated: SDL 1.3 will be more community-oriented

Posted by nfries88 on 26 April 2011 - 08:26 PM

Updated with news from today! If you're planning on making a game using SDL, please use SDL 1.3 rather than sticking to the outdated SDL 1.2 and help with "beta testing"!

#4802070 Updated: SDL 1.3 will be more community-oriented

Posted by nfries88 on 23 April 2011 - 03:47 PM

Can someone explain to me what the process is to get a native application on android or iphone, from my understanding you would need to compile an executable for each possible processor type that the platform runs on, hence the use of java on android.

This is the case, if you want it to be available to every single last Android device. However, 99% of Android devices are on ARM processors, so you should just need one.
SDL on Android interfaces with Android's Java APIs for basic functionality, so it's not completely separate.

What are some common pitfalls to worry about if you wanted to write a native android or iphone application using SDL ?

It is very common for things that work just fine on the simulator (both Android and iOS simulators) to not work or to not work correctly on actual hardware. SDL is probably not regularly tested against actual hardware, but against the simulators. So there may be some bugs in SDL that aren't known yet; and also you yourself will need actual hardware to test on to make sure things actually work as expected (both internally to SDL and in your own code). The actual hardware isn't too cheap, but if you already have it then that's a win.
You also need a Mac to build native applications for iOS. These are generally more expensive than a normal PC.
There's also the fees associated with actually releasing an iOS game ($99/yr), and the 30% of sales you lose from selling a game through the AppStore and Android Market.

Also, fun fact, webOS should be shipping a port of SDL 1.3 with their PDK now. This means you can also port your SDL games to Palm devices.

#4801388 Updated: SDL 1.3 will be more community-oriented

Posted by nfries88 on 21 April 2011 - 03:35 PM

There has been for like 2 years, but only in the experimental 1.3 branch (which this license change applies to, not the frequently used 1.2 branch).

I wouldn't really call it an experimental branch. Sam Lantinga has, in a mailing list announcement, asked people to use 1.3 and pretend that it is finished. Experimental makes it sound like the design isn't set in stone or that the features are prototypes. Yes, its not yet finished, but I don't think experimental is the right term at this stage.

However, there is a huge amount of work that remains to be done, in terms of Q/A, bug fixing, and community support.

If you would like to contribute, there are a number of ways you can help:
* If you're currently struggling with SDL 1.3, please report bugs to bugzilla and ask for help on the mailing list
* If you've been holding off on touching SDL 1.3, please pretend it's done, download it, and report bugs to bugzilla
* If you've reported issues on the mailing list in the past, pretend they're lost and re-report issues to the list and create entries for them in bugzilla

I'm well aware. If you follow the mailing list you probably recognize my username here. I also posted that quote from Sam here awhile ago. Perhaps experimental wasn't the best choice of wording, but it's not the official release yet.

#4798715 SDL vs. SFML

Posted by nfries88 on 15 April 2011 - 03:38 AM

To upgrade jbadams' post, the new version of SDL is reasonably stable. The performance with the hardware-accelerated backends is great, and it has a couple new offerings not provided by SFML. More features are actively discussed on the forums.

SDL still supports surfaces, but now they are primarily used as a buffer before creating a texture.

The only unfortunate thing about these great new updates to SDL is that it now has a completely different rendering API, which invalidates a vast majority of the SDL tutorials around the web. However, it's still simple to get started if you're willing to read the documentation.

Now, for my personal opinion on the two:
Pro SDL:
- SDL has a simpler rendering API (both 1.2 and the new 1.3)
- The new version of SDL includes ports to Android, iPhone, and webOS; excellent potential target systems for indie games that are not available with SFML.
- D3D9 rendering backend on Windows, this will provide better performance on a typical Windows installation because Microsoft's OpenGL implementation sucks.
SFML has a simpler audio API
SFML takes advantage of C++ features, which lowers the barrier to entry.
SFML's rendering API is slightly more flexible.
Easily load GLSL files to add neat effects.

Also, as I posted in another topic, SDL and all companion libraries maintained by the SDL developers (SDL_Image, SDL_Mixer, SDL_TTF, SDL_Net, etc) are now zlib licensed, which is the same license as SFML and Irrlicht; which used to be a minor plus in favor of SFML for me.

#4796875 Updated: SDL 1.3 will be more community-oriented

Posted by nfries88 on 10 April 2011 - 06:18 PM

SDL1.3 is no zlib licensed! What does this mean for developers using SDL?
1) No need to buy a developer license for iOS.
2) Statically link on any platform you want.

Well, that's pretty much it. It's an awesome change for everybody!

Update 26 Apr
Sam accepted a job offer to develop some company's upcoming MMO. He'll be working full time, so his prior plans to support SDL full-time are out. He's said he'll try to make it more community-managed, and also that it's basically ready for beta. Get to testing!
Forum Link: http://forums.libsdl.org/viewtopic.php?t=7189

#4790592 When to stop

Posted by nfries88 on 25 March 2011 - 11:04 PM

Hi there, I'm a 16 year old programmer and I have recently started game programming. I have a pretty fluent understanding of C++, Java, etc. I've been using SDL for the last couple of days, making a simple little 2d tile based game which is somewhat like an RPG. I was wondering when I should stop working on this game to move onto bigger and better things. Basically, I don't want to 'waste' time by continuing this little project if I won't learn more from it. I've already made a input system, added a character with moving animations, a little tile map editor and exporter. My plans are to add enemies and AI soon.


when it's worth playing and has no "blocking" bugs, and last of all when you really feel you're ready to move on.

I define a "blocking" bug as a bug that inhibits play -- frequent crashes or freezes, massive memory leaks (that use up all my virtual memory and give me that annoying pop-up that literally freezes the computer during a normal play session, it's a massive memory leak), and of course extremely low framerates (<15 or so, maybe more depending on the intensity of the game).

before you even think about joining a serious team, you must be familiar with writing mostly bug-free code (most programmers will never write a single bug-free piece of software of any reasonable size in their entire lifetime), common design concepts, and have a strong familiarity with the language itself. Also, not too many game projects use SDL and not nearly enough game programmers have ever used it -- a terrible shame, as it's a fine piece of software. You'd be better off using Irrlicht or Ogre and making a 3D game with free models.

#4790578 libcliser: C++ library for creating multithreaded TCP servers

Posted by nfries88 on 25 March 2011 - 09:48 PM

I've analyzed the source code very shortly.
As it turns out, this is merely a slim layer over another library named ting that does all the actual work. In short, he's posted the equivalent of maybe a week or two of work (assuming he was unfamiliar with Ting and asynchronous design concepts to begin with), which is based on likely months or even years of other people's much more intensive work and knowledge.

#4764006 My main issue when it comes to learning programming.

Posted by nfries88 on 24 January 2011 - 11:41 AM

I'm not familiar with managed languages like C#, but if it has some of the nifty bitwise features of C/C++ readily available then I have a feeling that the types of code using numbers that confuse you are related to programming concepts you've never learned -- bitmasks, bitarrays, and things of that nature. A good googling will teach you much about their more practical uses, if this is the case.

But; really, to help you we will need to know what specific pieces of code are throwing you off.

#4763122 scanf question

Posted by nfries88 on 22 January 2011 - 02:36 PM

i thought EOF was always equal to 0 :o!

No, the C standard requires it to be a negative value that is not valid for any character.
-1 is commonly used.

#4763114 Raw Input: Using it's data in main game loop or in WndProc

Posted by nfries88 on 22 January 2011 - 02:22 PM

RawInput became available in Windows XP, IIRC. If you want older Windows users to play, you might need to use DirectInput. :/

Not really answering your question, just a bit of advise before you find it out elsewhere.