eddy on 28/7/2008 at 07:51
Hi there,
I've been working on a engine recreation for UW and SShock for the past few weeks.
I know that there's already TSSHP and Underworld Adventures but their both pretty much abandoned now.
I first wanted to base my project on UWAdv but I found that they apparently stopped working on it in the middle of a really big refactoring. I couldn't even get it to compile and run cleanly after many hours of fiddling in the UWAdv code.
So I decided to start my new project, though I'm reusing code and ideas from UWAdv when I see fit.
It's still very pre alpha. The only thing that currently works is rendering of the static level geometry + texturing for UW1 and 2.
I'm currently working on System Shock resource management and want to do System Shock level rendering after that (which shouldn't be a big problem since UW level rendering already works)
I know that lot's of engine recreations fail sooner or later. That's why I'm planing to do the tougher parts first (physics, AI) and the easier parts later (ui, etc...). However a few things need to be done first before work on those parts can begin.
The good thing however is that the major work (reverse engineering the Shock and UW file formats) is already almost completely done by the TSSHP and UWAdv teams.
I'll start a new project on sourceforge soon and that's the main reason why I'm posting here: I'm still searching a good name for the project.
Does anyone have a good idea?
Shadowcat on 28/7/2008 at 10:40
Good luck with that, and good call on tackling some of the harder problems first.
A name...
Something to do with Underworld Shocks? "Quake" is kinda catchy :)
It's annoying that such an obvious avenue is already more or less covered by that game and all its many source ports. I guess you could stick with the theme, but go with a less obvious name. I'd imagine that (
http://en.wikipedia.org/wiki/Hypocenter) Hypocentre hasn't been used already, for example.
You could always call it the Abysmal Engine :)
(and while that was a joke, I'm already thinking it would actually be a great choice... it's catchy, and if everything goes according to plan, it will be a nice ironic moniker. And if it all goes pear-shaped, you're still covered!)
eddy on 28/7/2008 at 11:00
I first though about calling it "Undershock" but it sounds quite silly ;)
Well I think "Abysmal" actually sounds pretty cool and I like the ironic touch of it.
Digital Nightfall on 28/7/2008 at 15:07
For some reason Strongbox Engine came to mind out of nowhere. It comes from the fact that all terrain in this engine is basically set to a cubic grid, and that there's a TON of treasure inside.
twisty on 28/7/2008 at 15:10
UnderShock does have a certain ring to it.
There have been a number of discussions on this forum, with some varied opinions on why all UW remake projects so far -- and yes, there has been a number of them -- have all curled up their toes. Without going into too much detail about past discussions, the main points seemed to be that the sheer workload of trying to recreate working systems for things like group AI, conversation models, a trade system, object system and traversable inventory, to name but a few, proved too much for the one man band operations in the past.
I'm no expert on these things but my opinion is that if there is any real chance for a project like this to succeed, there are a number of things that should be done differently imo:
* Get a team on board rather than do everything yourself.
* Use an existing modern day engine with a proven toolset and one that allows for extensive modification.
* The advantage of an existing engine is that all the stuff like renderers and other systems have already been written and tested. With the right choice there's always the chance that they have some kind of system already set (such as group AI) or some other modder has worked out how to do it and is willing to share their code.
* Spend time learning how to import this data into an existing engine -- no small feat of course but at least much of it has already been reverse engineered during past projects.
* Spend time making the coding for conversation systems and everything else.
* Get help from different people for other things such as textures and audio.
* Leave most of the level building to someone else again.
Just my 4c.
Inflation added 1c each for food and petrol :(
eddy on 28/7/2008 at 18:43
I already decided against using some premade engine (like Ogre or Irrlicht)
They are basically frameworks to make new games. They already take a lots of basic (design) desicions from you, like the file formats, the resource handling, etc..
Reusing such a general purpose framework for an old style 2,5D game like UW is like using a shoe that doesn't really fit.
Another point is that all the media needs to be redone or converted in a format that the general purpose engine can handle, which is probably already more work than to simply redo the UW engine.
I also do _not_ want to do a game remake, I only want to do a engine remake which can handle all the original game files.
Lansing on 29/7/2008 at 20:22
Quote Posted by eddy
I already decided against using some premade engine (like Ogre or Irrlicht)
They are basically frameworks to make new games. They already take a lots of basic (design) desicions from you, like the file formats, the resource handling, etc..
I don't agree with this (on the whole). The problem with engines like the ones you've listed is that they come with examples showcasing their features which makes you think you have to fit in with what they already have. In fact, if you go a bit deeper you'll find that they're quite modular and allow you to plug in the formats that you want to work with once you understand their structure and philospohy.
I've had a play around with both of them and had more respect with Ogre than Irrlicht although that may be just down to a personal style preference.
Quote Posted by eddy
Reusing such a general purpose framework for an old style 2,5D game like UW is like using a shoe that doesn't really fit.
So, what does fit? The problem with the UW (and SS) games is that although they're 2.5D geometry engines they incorporate sloping floors and 3D objects which make them more suitable for a general purpose engine than any other engines of a similar age.
Quote Posted by eddy
Another point is that all the media needs to be redone or converted in a format that the general purpose engine can handle, which is probably already more work than to simply redo the UW engine.
I don't think it would be more work - but I agree that either approach will end up with taking a similar amount of time and investment. Implementing your own graphics and sound engine will be fun and enjoyable and if that's what you want to get out of it then go for it.
However you'll be re-inventing the wheel for the 100th time and ultimately the challenge with providing a new engine for UW is not just about graphics it's about the things that twisty has already posted. Don't understimate the job and I hope you impress all of us...
eddy on 29/7/2008 at 20:40
Well, as far as I can see Ogre can only provide the graphics parts.
It doesn't help with sound, AI, physics and of course not with any UW specific parts (inventory, conversations, etc..)
I actually think that the graphics part of UW isn't the biggest part.
It can be broken down into static geometry (rendering of the tiles + walls/ceiling + texturing which I've already done and works perfectly für UW1 and 2), UI overlay (which is also already partly done), and rendering 2d sprites and 3d objects. I dont think that the later two will be the biggest problems.
I've been thinking for a very long time if I should start such a project or not.
I know that it's a lot of work and I didn't say that I can show off something usable soon. It could well take years given that I can only work on it a few hours a day.
Lansing on 29/7/2008 at 21:04
If you've got that far already then that's great. You're right - the graphics engine is not the biggest challenge - the 'game' that goes behind it including inventory, conversations, combat, AI, puzzles, object interactions etc. are what makes the underworld games special.
Those things have to be tackled regardless of whether you're rolling your own engine or using a third party engine. Using a third party engine will give you a degree of platform independance and will allow you to focus on some of the core features rather than getting bogged down in graphical technicalities.
Good luck and looking forward to it already.