Plan for Jeremy Noetzelman
by Jeremy Noetzelman · 06/27/2003 (11:02 pm) · 5 comments
Well, it's been a while since my last plan, and quite a bit has happened, both game development wise as well as personally.
Hitting the road...
Probably the most major thing happening right now is moving from Seattle to the Denver area for a new job. Having left my former employee for a better job, I now get to uproot the family and head on out to Colorado. We're looking forward to it.
Steamwerks
Steamwerks is progressing along nicely. We've done some hefty ui code, and right now we're fleshing out more of the game stuff. As always, we're seeking artistic types, but we're not looking very hard yet :)
Steamwerks Data Editor
Let's face it ... editing datablocks and other similar data structures is a pain. And it's not something that game design types can do well, in general. Enter the Steamwerks Data Editor. The SDE is basically a nice gui app which lets you play around with various ingame stuff and then export it to whatever format you want ... TGE datablock, XML, formatted HTML pages, whatever.
It looks like this:

It's being built with wxPython, and is a life saver for us, because it allows us to automate the data export, provides a clean interface to work with, and lets us interface with our central DB storage or local files, whichever we prefer. Talk about a productivity boost. We're able to create everything ingame with it. It rocks.
Anyways, enough for now, more after I finally get moved.
Hitting the road...
Probably the most major thing happening right now is moving from Seattle to the Denver area for a new job. Having left my former employee for a better job, I now get to uproot the family and head on out to Colorado. We're looking forward to it.
Steamwerks
Steamwerks is progressing along nicely. We've done some hefty ui code, and right now we're fleshing out more of the game stuff. As always, we're seeking artistic types, but we're not looking very hard yet :)
Steamwerks Data Editor
Let's face it ... editing datablocks and other similar data structures is a pain. And it's not something that game design types can do well, in general. Enter the Steamwerks Data Editor. The SDE is basically a nice gui app which lets you play around with various ingame stuff and then export it to whatever format you want ... TGE datablock, XML, formatted HTML pages, whatever.
It looks like this:

It's being built with wxPython, and is a life saver for us, because it allows us to automate the data export, provides a clean interface to work with, and lets us interface with our central DB storage or local files, whichever we prefer. Talk about a productivity boost. We're able to create everything ingame with it. It rocks.
Anyways, enough for now, more after I finally get moved.
About the author
#2
If its the latter, then that could be one hell of a powerful tool...
06/28/2003 (6:02 pm)
I'm curious -- does your data editor come with the categories built in (i.e. we have a category race with the values Centaur, Barbarian, etc. etc.) or does it start generic and then pull them out of the code you give it to deal with?If its the latter, then that could be one hell of a powerful tool...
#3
That tool looks quite powerful, even if it isn't data driven for the categories.
06/28/2003 (9:20 pm)
Hey Jeremy, Congrats on the new job. Are you all driving down? That would be fun. That tool looks quite powerful, even if it isn't data driven for the categories.
#4
My wife and kids are flying down on Monday night, and I'll be driving out with one of our vehicles on Wednesday after the movers leave. Looks to be an interesting trip, to say the least.
Steamwerks Data Editor
Let's see. It's pretty dynamic, let me try to explain how it works in a bit more detail.
All the behavior is built into classes which derive from wxPython classes. So, for example, I have a swListCtrl class which derives from wxListCtrl and then implements custom behavior specific to the editor, but which should be standard across all list instances. The active notebook page in the screenshot is a swRaceList which inherits from swListCtrl. All it does is setup the column titles and defines a data type for that list. One could easily do that by setting that dynamically on a swListCtrl instance, but I prefer this way for clarity, and for custom behavior on a per list type basis (ie I may want different display behavior for a list of NPCs as opposed to a list of Racial prototypes)
A data type is pretty much just a data storage class, so I have a swRace data type which holds the values for each 'line' in the list. That's what gets persisted to disk, for the most part.
The Edit dialog is custom made for each data type, and can actually be made even more specific, so you could have a special dialog for each race, or whatever.
Exporting is where it's really neat ... I can take the data types and dump them out into any format I want. Right now I dump to html/xml, TGE datablocks, and a few of them create C++ class definition/implementation files as well. This editor is there to make it easier to tweak the things that need to be tweaked a bit. No gameplay code (behavior stuff, ai, whatever) is generated by it.
All in all, it's really powerful, because I don't have to hardcode anything any more other than the basic data types.
Hope that answers those questions ;)
06/28/2003 (10:32 pm)
The TripMy wife and kids are flying down on Monday night, and I'll be driving out with one of our vehicles on Wednesday after the movers leave. Looks to be an interesting trip, to say the least.
Steamwerks Data Editor
Let's see. It's pretty dynamic, let me try to explain how it works in a bit more detail.
All the behavior is built into classes which derive from wxPython classes. So, for example, I have a swListCtrl class which derives from wxListCtrl and then implements custom behavior specific to the editor, but which should be standard across all list instances. The active notebook page in the screenshot is a swRaceList which inherits from swListCtrl. All it does is setup the column titles and defines a data type for that list. One could easily do that by setting that dynamically on a swListCtrl instance, but I prefer this way for clarity, and for custom behavior on a per list type basis (ie I may want different display behavior for a list of NPCs as opposed to a list of Racial prototypes)
A data type is pretty much just a data storage class, so I have a swRace data type which holds the values for each 'line' in the list. That's what gets persisted to disk, for the most part.
The Edit dialog is custom made for each data type, and can actually be made even more specific, so you could have a special dialog for each race, or whatever.
Exporting is where it's really neat ... I can take the data types and dump them out into any format I want. Right now I dump to html/xml, TGE datablocks, and a few of them create C++ class definition/implementation files as well. This editor is there to make it easier to tweak the things that need to be tweaked a bit. No gameplay code (behavior stuff, ai, whatever) is generated by it.
All in all, it's really powerful, because I don't have to hardcode anything any more other than the basic data types.
Hope that answers those questions ;)
#5
06/29/2003 (6:53 pm)
Good to see you making good progress. Keep up the good work.
Torque Owner Phil Carlisle
Looks cool though!
Phil.