| Wednesday, January 13, 2010 |
 Similar Ideas |
Posted - 1/13/2010 10:54:43 AM | Noticed this article GameDev.net today. While it is concerning mostly MMOs, the tool they've created embraces a lot of the concepts I designed in Selenite:
-automatic data sharing (images, meshes, etc.)
-known resource data coverage/usage
-strong structuring of environments
-removal of monolithic files for effective streaming
some good concepts to consider if you're writing an engine/editor
| |
 A brief talk about Selenite |
Posted - 1/4/2010 10:26:07 AM | I've spent the last month tweaking and revising Selenite, getting it ready for licensing and the production of bigger and better games.
Development of Selenite began in Jan 2009, so that makes it officially 1 year old; having already written and released a game with it (STATIC: Investigator Training www.staticgame.com) I consider it a success, many of you reading this, myself included have taken years developing engines that never led to a game.
Revision of original plans and expectations
When I began designing and writing Selenite, I had some notions which proved useful, but have since needed to be revised; in short, plans have changed.
What has changed?
Licensing
Originally I had no plans of licensing Selenite, however we've had some interest. The key significance of this is that it must be really really good, but this has benefits as community feedback will drive fixes and changes.
Control
I designed in some pre-fabricated systems in the interest of simplicity; e.g. fixed GUI systems, fixed menu system. Though as time rolled on it became clear that if I wanted to approach different game designs it would be very helpful to have more flexibility in how the interface worked. So steps have been taken to remove these pre-fab systems, and allow creation of them through scripts.
Multiple Platforms
When the idea of multiple platforms became intriguing it required me to re-factor the editor and some of the engine significantly to allow for multiple build targets and varying media depending on platform restrictions. The only obstacles that exist now are keeping the engine small (it is currently around 6,000 lines of code) so that porting it from platform to platform is easy.
The revision process
Through revisions of the engine/editor to meet the above goals, several changes have come about which are very positive.
Unlocking the event system
In selenite you can create a specific set of events on objects, where you can write Lua code; and the engine can call these events. While a limitation of how the original event information was stored; I recently realized that I was unnaturally restricting a feature of custom events. You could only create events of specific names for certain object types; but with this change you can now create developer specific event names. To finish off this feature an API script command 'raise' was added so that the developer can call any custom or built-in event manually; this opens up the system to creation of other systems, which will be very important given that some built-in systems have been removed.
Creating the new GUI system
Those who follow my journal will no doubt remember my entry on GUIs and why implement GUI systems yourself is suicide -- unless you must.
It became apparent, slowly over time that developers are going to want the ability to create custom GUI; inventories, minimaps, equipment windows, chat windows, yada yada
there are ways in Selenite to creatively achieve these things without a generic GUI system, but overall it isn't flexible enough to do all of them really well.
The main draw to adding a GUI system, was not only that people are going to want it, but it would allow me to get rid of the built-in systems, reducing engine complexity.
Approaching the design
In designing a flexible GUI system for developers I had a major benefit; the UI class which I posted the code for previously; would work well as the seed for a new object type; the 'GUI'
I knew that if i was going to make a custom GUI system then GUIs would been to be first class objects, like game, rooms and actors; so this meant the dreaded re-factoring of the game-state.
The original model of Selenite looked like this:
Classes
StateClass::GameClass
StateClass::DisplayClass::RoomClass
StateClass::DisplayClass::ActorClass
Instances
StateObject::Game
StateObject::DisplayObject::Room
StateObject::DisplayObject::Actor
This was a very neat and clean arrangement, but adding GUI and GUIClass threatened to mess it all up; thankfully after long last I managed to figure out the new hierarchy:
Classes
StateClass::GameClass
StateClass::DisplayElementClass::GUIClass
StateClass::DisplayElementClass::SceneElementClass::RoomClass
StateClass::DisplayElementClass::SceneElementClass::ActorClass
Instances
StateObject::Game
StateObject::DisplayElement::GUI
StateObject::DisplayElement::SceneElement::Room
StateObject::DisplayElement::SceneElement::Actor
The GUI game-state
Previously with Selenite the game state worked as follows:
Game is the root of the state, a Game contains Rooms, a Room contains Actors
In the new model:
Game is the root of the state, a Game contains GUIs and Rooms, GUIs contain GUIs, a Room contains Actors
As you can see the original model had a fixed amount of levels; but in the new model, GUI objects contain child GUI objects, so the levels of that portion of the tree is unbounded; this is so that GUI elements can be composed of others.
That's all for now, I will try to go into other enhancements and implications of decisions for changes I am making.
| |
| Wednesday, December 23, 2009 |
 It's the holiday season! |
Posted - 12/23/2009 9:34:26 AM | So aside from trimming the tree, Christmas cookies and mistletoe; I've been working away.
STATIC: Investigator Training
About two months out now, sales are so/so; more would be nice, but every little bit counts; it's awesome to have created another game, of a very different style and managed to sell it.
We've got some more marketing to do, but we might wait till spring and re-release the demo and full version with some improvements.
Morning's Wrath 2
Slow going unfortunately, Selenite is taking a lot of what little time I have lately. I've been doing a lot of design and have come up with some pretty snazzy gameplay mechanics that I think folks will love. It looks like collection and achievements is going to be a big part of MW 2
While about 50% of the art has been done, I am investigating artists to help with the rest, largely in the user interface and web graphics capacity.
Grim Arena
Not a project I talk a whole lot about; it is a joint effort between EDIGames and LoadsOfBugs; its a fun multiplayer rpg/combat type game which is leveraging Selenite; still early in development, but the folks working on it (myself included) are top notch :D
The Lost City of Malathedra: Special Edition
Not too much time to work on this at the moment; but bits here and there.
| |
| Thursday, December 3, 2009 |
 Busy, Busy... So Busy! |
Posted - 12/3/2009 11:45:05 AM | Greetings folks!
So, lots on my plate these days:
Enjoying the Holiday Season
Gotta have some fun, or whats the point right?
Jacki and I are heading up to the White Mountains of New Hampshire this weekend to get our XMass tree, as we do every year; it is a fun getaway and a great tradition :)
Finishing up Selenite 1.0
We used Selenite very effectively to develop STATIC: Investigator Training ... which by the way has some very fun statistics:
- Our first game with voice acting
- Only took a year to complete, our fastest developed game!
- Actual programming and assembly of the game, only took 2 months!
- Our first game with live actors and FMV cutscenes
- Our first game to be developed on Selenite
- Our largest game ever; approximately 500MB of compressed resources
- Our first game to use a physics engine
- The first game, I didn't write the story for
- ~3000 lines of Lua script code, ~140 Selenite classes and ~160 instances
It is also interesting to note, that the entire development of Selenite took only from Jan. 2009 to around Aug. 2009 less than a year to develop a complete game engine and editing suite.
That all being done, it is time to finish off Selenite 1.0, get it all glossed up and start getting early adopters playing with it. We're hoping to start selling development licenses early 2010 haven't figured out the price yet; but it is largely assumed that if you won't be selling games with it; you wont have to pay for it.
In addition to this I am working on the Selenite 1.5 revision list; which will be put into effect for Morning's Wrath 2 and Grim Arena; the most notable feature being a more flexible GUI... given my GUI rants in the past you can expect some more info on this.
Working on Morning's Wrath 2: Caverns of the North
I was hoping Morning's Wrath 2, would be a 2009 title; but there is no use in rushing it; its gotta be good. I'm working now to solidify gameplay concepts; as a lot of the art has already been done; and story written.
We're hoping for an early 2010 release, but with Morning's Wrath in particular, it will be done when its awesome.
Selenite for the Web and other devices; and casual games
As part of finishing up Selenite 1.0; I am developing ways that we can run Selenite games in a web browser, iPhone, XBLA, etc.
The motivation here is to allow most of our games to have instant web demos; no downloading a demo to evaluate the game, but in addition to that we'll be offering some smaller, free to play casual games based on existing IP and perhaps some new IP; if we can find the right folks they'll be Ad supported; and users can choose to purchase offline versions for very cheap (think 1.99)
Facebook integration is another big thing on our to-do list; sharing achievements and whatnot with your friends.
Reawakening The Lost City of Malathedra
Its been about a year since we finished Malathedra; and I find myself wishing we did more with it; but it took three years to create and all involved were ready to move on. So, while it isn't official yet, I've started converting the S3Engine implementation of Malathedra into Selenite, to create a much better user experience; clear up some known issues, and also add new content and voice acting to really make the game shine; hopefully it'll be another early to mid 2010 offering.
We'll likely offer upgrades for existing owners of Malathedra for 2.95; and we'll be lowering the price point to 9.95 for new players.
| |
| Saturday, November 21, 2009 |
 STATIC: Investigator Training has been Released! |
Posted - 11/21/2009 4:04:43 PM | After a slight delay from our Halloween deadline, we are happy to say that STATIC: Investigator Training is now finished!
You can now find the full game for $9.95 on www.staticgame.com
We hope you all enjoy playing STATIC as much as we enjoyed making it!
I'd also like to thank my wife Jacki for designing STATIC; being her first game things are always a bit rocky, but as many of us know, finishing a game -- even from a design aspect, takes a great deal of discipline and skill.
And now, we're off to the STATIC release party!
Raymond Jacobs
Owner,
Ethereal Darkness Interactive
| |
|
| S | M | T | W | T | F | S | | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | | | | | | |
OPTIONS
Track this Journal
ARCHIVES
January, 2010
December, 2009
November, 2009
October, 2009
September, 2009
August, 2009
July, 2009
July, 2008
March, 2008
February, 2008
January, 2008
November, 2007
October, 2007
September, 2007
August, 2007
July, 2007
June, 2007
May, 2007
November, 2006
October, 2006
September, 2006
August, 2006
July, 2006
June, 2006
May, 2006
April, 2006
March, 2006
February, 2006
January, 2006
December, 2005
November, 2005
October, 2005
September, 2005
August, 2005
July, 2005
June, 2005
May, 2005
April, 2005
March, 2005
February, 2005
January, 2005
September, 2004
August, 2004
|