Odd Island
-
- Gnoblar
- Posts: 5
- Joined: Sat Feb 06, 2010 9:38 pm
Odd Island
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
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! 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
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! 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
- madmarx
- OGRE Expert User
- Posts: 1671
- Joined: Mon Jan 21, 2008 10:26 pm
- x 50
Re: Odd Island
Wow, that is a story .
Good luck with your project.
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
Corresponding thread : http://www.ogre3d.org/forums/viewtopic. ... 93&start=0
- lonewolff
- Ogre Magi
- Posts: 1207
- Joined: Wed Dec 28, 2005 12:58 am
- x 6
Re: Odd Island
Good one!
How many clients do you support at this stage?
How many clients do you support at this stage?
- jacmoe
- OGRE Retired Moderator
- Posts: 20570
- Joined: Thu Jan 22, 2004 10:13 am
- Location: Denmark
- x 179
- Contact:
Re: Odd Island
Awesome tale!
Good luck with it.
Good luck with it.
/* Less noise. More signal. */
Ogitor Scenebuilder - powered by Ogre, presented by Qt, fueled by Passion.
OgreAddons - the Ogre code suppository.
Ogitor Scenebuilder - powered by Ogre, presented by Qt, fueled by Passion.
OgreAddons - the Ogre code suppository.
-
- Gnoblar
- Posts: 5
- Joined: Sat Feb 06, 2010 9:38 pm
Re: Odd Island
Thanks all!
At the moment I'm focusing to improve the game in other areas, mainly the missing game concept and content
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" 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.lonewolff wrote:Good one!
How many clients do you support at this stage?
At the moment I'm focusing to improve the game in other areas, mainly the missing game concept and content
- koirat
- Orc
- Posts: 446
- Joined: Mon Feb 25, 2008 7:56 pm
- x 13
Re: Odd Island
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 ?
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.
- razi
- Greenskin
- Posts: 130
- Joined: Tue Oct 14, 2008 5:54 pm
- Location: Slovakia
- x 17
Re: Odd Island
He said he had this problems with Axiom 3D not Mogre.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 ?
-
- Gnoblar
- Posts: 5
- Joined: Sat Feb 06, 2010 9:38 pm
Re: Odd Island
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.
- zarfius
- Gnome
- Posts: 367
- Joined: Wed Jan 03, 2007 12:44 pm
- Location: Brisbane, Australia
- x 13
- Contact:
Re: Odd Island
Koirat, he was talking about Axiom when he had the sporadic crashes. Mogre worked just fine.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 ?
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: 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!
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.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
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/
http://www.craftworkgames.com/
-
- Gnoblar
- Posts: 5
- Joined: Sat Feb 06, 2010 9:38 pm
Re: Odd Island
I think so, too. Exploring new areas is in the beginning often just some kind of stumbling around but makes it somehow attractingzarfius 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 )
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 codezarfius 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.
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.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)
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.
- rogerdv
- Gnome
- Posts: 351
- Joined: Fri May 09, 2003 10:43 pm
- Location: Cuba
- x 1
- Contact:
Re: Odd Island
Congratulations! Looks great.
it is good to see people trying to make their ideas come true, even when they seem impossible.
it is good to see people trying to make their ideas come true, even when they seem impossible.
- koirat
- Orc
- Posts: 446
- Joined: Mon Feb 25, 2008 7:56 pm
- x 13
Re: Odd Island
razi wrote:He said he had this problems with Axiom 3D not Mogre.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 ?
You are right I'm sorry.
I shouldn't had read to the end of his post then answer.
This is a block of text that can be added to posts you make. There is a 255 character limit.
- Pyritie
- Gnome
- Posts: 363
- Joined: Wed Feb 25, 2009 6:15 pm
- Location: UK
- x 8
- Contact:
Re: Odd Island
Is porting other libraries to Mogre difficult?
-
- Ogre Magi
- Posts: 1266
- Joined: Tue Aug 12, 2003 1:53 am
- Location: Melbourne, Australia
- x 1
- Contact:
Re: Odd Island
Not really. Depends on the lib. There are a few ways to do it, automatic and manual ways too.Pyritie wrote:Is porting other libraries to Mogre difficult?
- Pyritie
- Gnome
- Posts: 363
- Joined: Wed Feb 25, 2009 6:15 pm
- Location: UK
- x 8
- Contact:
Re: Odd Island
I might do that for some of the libs I want to use then since I reaaalllly don't want to use c++ >___>Vectrex wrote:Not really. Depends on the lib. There are a few ways to do it, automatic and manual ways too.Pyritie wrote:Is porting other libraries to Mogre difficult?
- Ashlad
- Gnoblar
- Posts: 23
- Joined: Sat Nov 07, 2009 2:19 am
Re: Odd Island
Your screenshot reminded me of the really old school EverQuest
Good luck
Good luck
-
- Gnoblar
- Posts: 5
- Joined: Sat Feb 06, 2010 9:38 pm
Re: Odd Island
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
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
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