Odd Island

A place to show off your latest screenshots and for people to comment on them. Only start a new thread here if you have some nice images to show off!
Post Reply
jos
Gnoblar
Posts: 5
Joined: Sat Feb 06, 2010 9:38 pm

Odd Island

Post by jos »

Disclaimer: This is a rather long text and might contain a huge amount of spelling and grammatical errors. Please bear with me, as it's not my native tongue :D

Hi folks,

I’ve been playing different mmorpgs for quite a long time. Getting frustrated of AION after only playing a couple of weeks, a sudden idea struck my mind: I’ll make my very own mmorpg, one which will be more fun to play and fits my likings.

Well, with nothing more than that idea, I set out looking for something to start with. While doing research on the internet I stumbled over the Axiom 3D Engine which is a C# wrapper around the Ogre engine. I personally like programming in C# much more than C++ (which I did the last time 10 years ago). That’s why I decided to give it a try. Several tutorials later I got a flat terrain and a moving camera. Almost done! :mrgreen: Unfortunately I experienced a lot of sporadic crashes: shadows didn’t work, as well as the OpenGL renderer. As of now I’m not quite sure if it was my fault – maybe some kind of screwed up dependencies.

Nevertheless I did some more research and finally decided to switch to the Mogre engine, another C# wrapper. Porting my ExampleApplication was straightforward. It basically consisted of updating the project’s references and some minor adjustments to the code. I was pleased to see my „game“ running flawlessly and began adding more features. There was a player character which you could move around and some stupid NPCs which beat themselves to hell. After some days it came to my mind, that I’ll need some more libraries to continue: sound, networking, etc. On the Ogre forums I discovered Hydrax, the MovableText class and much more incredible stuff. One thing was for sure: I needed all those things. Definitely!

That was the point when I had to realize the limitations of C# wrappers: either there was no wrapper for all those cool libraries or the wrapper’s maintainer had abandoned their projects years ago.

After thinking about it for some days (and even nights) I heavy-heartedly decided to go with the C++ version of Ogre, once again porting my small amount of source code to another environment. This time it basically resulted in rewriting most of the code from scratch. Once again it took me some days to get to the point where I already have been before. But to be honest, I don’t regret this step and I would take this hurdle any time again. No more unreplicable crashes, remarkably better performance and all those nifty libraries at your feet – just waiting to be integrated in my groundbreaking game!

This was also the time where I was finally able to split my very basic game into a client and a server part. Day after day additional features got implemented and nasty bugs got squashed. I had to reengineer server and client several times because I haven’t forseen the need of basic game programming concepts like game states, etc. But nowadays this kind of approach is called agile programming and considered to not be bad at all ;-)

After almost 4 months of enthusiastic programming in my spare time, I wanted to show off the preliminary result of my doings.

Now for some technical details: I'm currently using Ogre 1.7 RC1 & OIS, NaviLibrary, RakNet, FMOD and Lua (mainly for configurations purposes) on the client-side as well as RakNet, MySQL Connector/C++, Lua (configuration and NPC scripting) on the server-side. Also, I've integrated basic world editing features as you can move around and rotate objects while "playing". It's also possible to save their positions and orientations directly to the server's database.

I'll most probably release the code (at least the client) under the MIT license in forseeable future. But I'll have to do some cleanup and remove a number of media files which I have *cough* borrowed for development purposes :twisted:
20100206-OddIsland.jpg
20100206-OddIsland.jpg (139.17 KiB) Viewed 4376 times
User avatar
madmarx
OGRE Expert User
OGRE Expert User
Posts: 1671
Joined: Mon Jan 21, 2008 10:26 pm
x 50

Re: Odd Island

Post by madmarx »

Wow, that is a story :D .
Good luck with your project.
Tutorials + Ogre searchable API + more for Ogre1.7 : http://sourceforge.net/projects/so3dtools/
Corresponding thread : http://www.ogre3d.org/forums/viewtopic. ... 93&start=0
User avatar
lonewolff
Ogre Magi
Posts: 1207
Joined: Wed Dec 28, 2005 12:58 am
x 6

Re: Odd Island

Post by lonewolff »

Good one!

How many clients do you support at this stage?
User avatar
jacmoe
OGRE Retired Moderator
OGRE Retired Moderator
Posts: 20570
Joined: Thu Jan 22, 2004 10:13 am
Location: Denmark
x 179
Contact:

Re: Odd Island

Post by jacmoe »

Awesome tale! :)
Good luck with it.
/* Less noise. More signal. */
Ogitor Scenebuilder - powered by Ogre, presented by Qt, fueled by Passion.
OgreAddons - the Ogre code suppository.
jos
Gnoblar
Posts: 5
Joined: Sat Feb 06, 2010 9:38 pm

Re: Odd Island

Post by jos »

Thanks all!
lonewolff wrote:Good one!

How many clients do you support at this stage?
I haven't done any serious performance testing up to now. And to be honest: while developing both server and client I have dropped the tag "massively" :P I'm targetting at about 20 - 50 clients in the first step. The limit isn't just depending on the server's ability to handle a certain number of clients. You also need to proportionally increase the number of NPCs, world size and keep an eye on network bandwidth consumption at the same time.

At the moment I'm focusing to improve the game in other areas, mainly the missing game concept and content :roll:
User avatar
koirat
Orc
Posts: 446
Joined: Mon Feb 25, 2008 7:56 pm
x 13

Re: Odd Island

Post by koirat »

Mogre is not that bad as you write in here. :?
I was able to make stencil and texture shadows to work so it was mostly your fault.
And i do not get sporadic crashes, btw what Mogre version it was ?
This is a block of text that can be added to posts you make. There is a 255 character limit.
User avatar
razi
Greenskin
Posts: 130
Joined: Tue Oct 14, 2008 5:54 pm
Location: Slovakia
x 17

Re: Odd Island

Post by razi »

koirat wrote:Mogre is not that bad as you write in here. :?
I was able to make stencil and texture shadows to work so it was mostly your fault.
And i do not get sporadic crashes, btw what Mogre version it was ?
He said he had this problems with Axiom 3D not Mogre.
jos
Gnoblar
Posts: 5
Joined: Sat Feb 06, 2010 9:38 pm

Re: Odd Island

Post by jos »

No offence meant :) I felt quite comfortable going with Mogre and in contrast to Axiom it didn't crash unexpectedly for me. But either way, going with C++ gave me access to a vast range of high quality libraries (networking, sound). And e.g.I have been able to switch to Ogre 1.7 immediately in order to use the new terrain manager, just requiring some recompilations. Whereas when using C# wrappers you'll have to wait until all dependant wrappers used get updated by their maintainers (if at all). Back then I used the most current version available which was 1.6.4.
User avatar
zarfius
Gnome
Posts: 367
Joined: Wed Jan 03, 2007 12:44 pm
Location: Brisbane, Australia
x 13
Contact:

Re: Odd Island

Post by zarfius »

koirat wrote:Mogre is not that bad as you write in here. :?
I was able to make stencil and texture shadows to work so it was mostly your fault.
And i do not get sporadic crashes, btw what Mogre version it was ?
Koirat, he was talking about Axiom when he had the sporadic crashes. Mogre worked just fine.
jos wrote: After thinking about it for some days (and even nights) I heavy-heartedly decided to go with the C++ version of Ogre, once again porting my small amount of source code to another environment. This time it basically resulted in rewriting most of the code from scratch. Once again it took me some days to get to the point where I already have been before. But to be honest, I don’t regret this step and I would take this hurdle any time again. No more unreplicable crashes, remarkably better performance and all those nifty libraries at your feet – just waiting to be integrated in my groundbreaking game!
jos, that truely is an incredible story. I'm sure there's a number of programmers out there with similar stories trying to develop a game in there spare time discovering the many pro's and con's of using wrappers, libraries and other such things (myself included :))
jos wrote:I'll most probably release the code (at least the client) under the MIT license in forseeable future. But I'll have to do some cleanup and remove a number of media files which I have *cough* borrowed for development purposes :twisted:
Creating the media assets for a game like this is a lot of work for one man. Rather than just releasing the code, I would love to see a website that has a "great plan" or "to-do list" of what needs to be done in terms of features and assets. Kinda like an open source game company if you could imagine that.

For example, lets say the game has the need for "goblins". If you specified exactly what is needed, 3 goblin types (green, red, blue) 5 animations (walk, run, attack, die, jump) weapons and so on.. Once the specs are layed out the artists can create the models and textures, programmers can implement code, sounds can be recorded and so on..

I'm rambling a bit, but I'm sure you can see what I'm getting at. In order to turn this into an actual game you'd need a lot of extra man power.

The next problem is motivation, it's going to be hard to get people to do hundreds of hours of work for nothing, so I'd leave it open for people to use the models, code, textures and sounds in there own projects and portfolio's. It'd be like a big one stop shop for game development assets and code. The bonus is, they will all be made to the same specs and tested in an actual game (unlike all the other free models floating around the internet)

This is a pretty big idea I've been sitting on for a while. I just thought I'd throw it out there because I think it would work best with an open source MMORPG like yours.
Craftwork Games - hand crafted entertainment.
http://www.craftworkgames.com/
jos
Gnoblar
Posts: 5
Joined: Sat Feb 06, 2010 9:38 pm

Re: Odd Island

Post by jos »

zarfius wrote: I'm sure there's a number of programmers out there with similar stories trying to develop a game in there spare time discovering the many pro's and con's of using wrappers, libraries and other such things (myself included :))
I think so, too. Exploring new areas is in the beginning often just some kind of stumbling around but makes it somehow attracting :mrgreen:
zarfius wrote: Creating the media assets for a game like this is a lot of work for one man. Rather than just releasing the code, I would love to see a website that has a "great plan" or "to-do list" of what needs to be done in terms of features and assets. Kinda like an open source game company if you could imagine that.

For example, lets say the game has the need for "goblins". If you specified exactly what is needed, 3 goblin types (green, red, blue) 5 animations (walk, run, attack, die, jump) weapons and so on.. Once the specs are layed out the artists can create the models and textures, programmers can implement code, sounds can be recorded and so on..

I'm rambling a bit, but I'm sure you can see what I'm getting at. In order to turn this into an actual game you'd need a lot of extra man power.
Indeed, good points! There's some rough plans on that subject. But before I haven't figured it out exactly, I'll make no promises besides releasing the code :)
zarfius wrote: The next problem is motivation, it's going to be hard to get people to do hundreds of hours of work for nothing, so I'd leave it open for people to use the models, code, textures and sounds in there own projects and portfolio's. It'd be like a big one stop shop for game development assets and code. The bonus is, they will all be made to the same specs and tested in an actual game (unlike all the other free models floating around the internet)
Yes, but in my opinion the motivation has to be mostly intrinsic. If it isn't fun or otherwise rewarding for someone to contribute to an open source/open assets project then why bother doing it at all? Despite having already invested many hours upfront, I don't expect anyone to commit themselves if they don't want to. But if they decide to do it anyway, I expect them to know that they'll get no financial compensation and that all contributed source code will be under MIT license, too.

Concerning the license of media contributions I'm not quite sure. I'm under the impression that artists are more concerned about their digital rights than for example developers. It's really hard to find usable, free 3D models (ok, there's Worldforge). But maybe someone could point out to me if there's a specific reason for this discrepancy? I've got no clue.
User avatar
rogerdv
Gnome
Posts: 351
Joined: Fri May 09, 2003 10:43 pm
Location: Cuba
x 1
Contact:

Re: Odd Island

Post by rogerdv »

Congratulations! Looks great.
it is good to see people trying to make their ideas come true, even when they seem impossible.
User avatar
koirat
Orc
Posts: 446
Joined: Mon Feb 25, 2008 7:56 pm
x 13

Re: Odd Island

Post by koirat »

razi wrote:
koirat wrote:Mogre is not that bad as you write in here. :?
I was able to make stencil and texture shadows to work so it was mostly your fault.
And i do not get sporadic crashes, btw what Mogre version it was ?
He said he had this problems with Axiom 3D not Mogre.

You are right I'm sorry.

I shouldn't had read to the end of his post then answer. :P
This is a block of text that can be added to posts you make. There is a 255 character limit.
User avatar
Pyritie
Gnome
Posts: 363
Joined: Wed Feb 25, 2009 6:15 pm
Location: UK
x 8
Contact:

Re: Odd Island

Post by Pyritie »

Is porting other libraries to Mogre difficult?
I use Mogre, BulletSharp, LuaNetInterface, irrKlang, and Miyagi! | Ponykart (Showcase)
Image
Vectrex
Ogre Magi
Posts: 1266
Joined: Tue Aug 12, 2003 1:53 am
Location: Melbourne, Australia
x 1
Contact:

Re: Odd Island

Post by Vectrex »

Pyritie wrote:Is porting other libraries to Mogre difficult?
Not really. Depends on the lib. There are a few ways to do it, automatic and manual ways too.
User avatar
Pyritie
Gnome
Posts: 363
Joined: Wed Feb 25, 2009 6:15 pm
Location: UK
x 8
Contact:

Re: Odd Island

Post by Pyritie »

Vectrex wrote:
Pyritie wrote:Is porting other libraries to Mogre difficult?
Not really. Depends on the lib. There are a few ways to do it, automatic and manual ways too.
I might do that for some of the libs I want to use then since I reaaalllly don't want to use c++ >___>
I use Mogre, BulletSharp, LuaNetInterface, irrKlang, and Miyagi! | Ponykart (Showcase)
Image
User avatar
Ashlad
Gnoblar
Posts: 23
Joined: Sat Nov 07, 2009 2:19 am

Re: Odd Island

Post by Ashlad »

Your screenshot reminded me of the really old school EverQuest :)

Good luck :wink:
jos
Gnoblar
Posts: 5
Joined: Sat Feb 06, 2010 9:38 pm

Re: Odd Island

Post by jos »

Well, a month has passed since my initial post. Four weeks in which I've been very busy preparing the client for a tech demo release and putting the source code on SourceForge alongside. Altogether it consumed more time than I expected... but finally it's done. Additionally I had to port the server to Linux as I didn't want to pay an additional license fee for a lumpy Windows OS :P

You might just have a look at the source (-> SourceForge project) or visit our newly set up webpage http://www.odd-island.net in order to download binaries.
Special thanks goes to my friend who helped me get the webpage going :!:
Post Reply