Crafty Crafting in Epic Frontiers
by Ted Southard · 05/12/2009 (8:58 am) · 5 comments
It's been a while since I last blogged about Epic Frontiers (and I still owe a Part 2 blog for the post mortem stuff I wrote about before), but I've been busy working on the game, and as of this morning have some good stuff to show for it.
You can watch the video below to see the crafting in action, but there's a lot that you can't see obviously in the video, which is that the entire inventory system has been overhauled to become simple to use and yet powerful and very feature-rich. Epic Frontiers is all about giving the player a broader perspective on their MMORPG experience, and crafting has not been ignored. So, from the ground up, the inventory and crafting system is built around components.
Basically, as a player, you can go out, mine some ore, chop some wood, and then refine those into iron and wood. You can then further refine the iron into steel of various types, depending on the properties you're looking to get out of the steel. Your next step would be to create a hilt from the wood, and a blade from the steel, and now you have two components which, when combined, can make a sword. And later on, if someone you sold that sword to wants a better blade, you can always just disassemble the sword, create a new blade, and put it back together with that new blade for the player.
And of course, let's not forget the material properties. One such property is Malfunction, which determines the (wait for it...) rate of malfunction of the item. Other material properties determine the hit points, weight, and mods of the final object. This is why, in the video, I made Wootz Steel (Damascus Steel) instead of using regular steel: Who wants a sword to crap out on you in a fight?
So, without further ado- A better way of crafting:
Oh, and this system, like all of my gameplay, is 95-99% TorqueScript, for anyone doubting the script's capabilities to make gameplay without touching source (which was done only for things like putting in script hooks for the drag and drop control, tick functions, and ODBC functionality).
So once I'm done tidying up this feature (there's a small bug with material properties propagating this morning), I can say that the core of Epic Frontiers' combat, conversation, inventory, and crafting features are done. Now I get to turn my full attention back to AI and Procedural Content Generation and do to those areas what I did to everything else: Level it up.
The same goes for the GUI, which I realize does not have to be limited to using the GUI system provided with Torque so much as maybe just leveraging the object picking resource I'm using with 3D interface objects (all done clientside so the server doesn't choke on GUI clicks). It's a thought, and one that will be talked about at tomorrow night's development meeting (we'll also talk about 2D GUIs and such- we not about flashy buzzwords as much about getting it done in the best way it should be done).
And as always, if any Torque programmers out there want to get in on this and help out with some things such as network optimization, GUI programming (clientside raycasts, porting flash, etc), minor physics stuff (mainly making the running and jumping more stat-driven), then you'll find a nice team with DigitalFlux Entertainment. We go by sweat equity agreements and require both NDA and Work For Hire papers to be signed, but there are no huge egos on the team, no thoughts of dethroning WoW (even though our game will be better, hehe), and the star we're aiming at is a day-job maintaining the game, not fame and fortune (though I wouldn't turn down a pot o' gold).
Email me at Ted@DigitalFlux.com if you're interested (we're also looking for 3D artists/animators, and concept artists- but only if your style can match what is on our website, because we're all about consistency).
You can watch the video below to see the crafting in action, but there's a lot that you can't see obviously in the video, which is that the entire inventory system has been overhauled to become simple to use and yet powerful and very feature-rich. Epic Frontiers is all about giving the player a broader perspective on their MMORPG experience, and crafting has not been ignored. So, from the ground up, the inventory and crafting system is built around components.
Basically, as a player, you can go out, mine some ore, chop some wood, and then refine those into iron and wood. You can then further refine the iron into steel of various types, depending on the properties you're looking to get out of the steel. Your next step would be to create a hilt from the wood, and a blade from the steel, and now you have two components which, when combined, can make a sword. And later on, if someone you sold that sword to wants a better blade, you can always just disassemble the sword, create a new blade, and put it back together with that new blade for the player.
And of course, let's not forget the material properties. One such property is Malfunction, which determines the (wait for it...) rate of malfunction of the item. Other material properties determine the hit points, weight, and mods of the final object. This is why, in the video, I made Wootz Steel (Damascus Steel) instead of using regular steel: Who wants a sword to crap out on you in a fight?
So, without further ado- A better way of crafting:
Oh, and this system, like all of my gameplay, is 95-99% TorqueScript, for anyone doubting the script's capabilities to make gameplay without touching source (which was done only for things like putting in script hooks for the drag and drop control, tick functions, and ODBC functionality).
So once I'm done tidying up this feature (there's a small bug with material properties propagating this morning), I can say that the core of Epic Frontiers' combat, conversation, inventory, and crafting features are done. Now I get to turn my full attention back to AI and Procedural Content Generation and do to those areas what I did to everything else: Level it up.
The same goes for the GUI, which I realize does not have to be limited to using the GUI system provided with Torque so much as maybe just leveraging the object picking resource I'm using with 3D interface objects (all done clientside so the server doesn't choke on GUI clicks). It's a thought, and one that will be talked about at tomorrow night's development meeting (we'll also talk about 2D GUIs and such- we not about flashy buzzwords as much about getting it done in the best way it should be done).
And as always, if any Torque programmers out there want to get in on this and help out with some things such as network optimization, GUI programming (clientside raycasts, porting flash, etc), minor physics stuff (mainly making the running and jumping more stat-driven), then you'll find a nice team with DigitalFlux Entertainment. We go by sweat equity agreements and require both NDA and Work For Hire papers to be signed, but there are no huge egos on the team, no thoughts of dethroning WoW (even though our game will be better, hehe), and the star we're aiming at is a day-job maintaining the game, not fame and fortune (though I wouldn't turn down a pot o' gold).
Email me at Ted@DigitalFlux.com if you're interested (we're also looking for 3D artists/animators, and concept artists- but only if your style can match what is on our website, because we're all about consistency).
About the author
#2
If you are interested in "crafting", have a look at those (player-made) videos of how the crafting is made in AfterWorld:
Health-kit (mid-level of uberness)
Weapon (high level)
Hope you find some ideas for your own project from those videos.
05/12/2009 (3:33 pm)
Hey Ted. Nice video! I'm always intrigued to see what people can achieve with TS.If you are interested in "crafting", have a look at those (player-made) videos of how the crafting is made in AfterWorld:
Health-kit (mid-level of uberness)
Weapon (high level)
Hope you find some ideas for your own project from those videos.
#3
Our crafting systems are similar in regards to recipes, though we're going for a less static crafting mechanic, as we're looking for the player to be able to create items with alternate materials in remote areas and with improvised tools.
Hopefully, we can hash out our GUI soon and start working on it so that the next videos will show how things will actually look in the game, as opposed to the rather horrible test GUI I have in the videos.
I'll definitely track your progress as well- you have some really good stuff going on with it!
05/12/2009 (4:09 pm)
@Fyodor: Thanks for the links. Your game is very interesting, and I've had it bookmarked for a while :)Our crafting systems are similar in regards to recipes, though we're going for a less static crafting mechanic, as we're looking for the player to be able to create items with alternate materials in remote areas and with improvised tools.
Hopefully, we can hash out our GUI soon and start working on it so that the next videos will show how things will actually look in the game, as opposed to the rather horrible test GUI I have in the videos.
I'll definitely track your progress as well- you have some really good stuff going on with it!
#4
However, I personally hope you keep it real - the one thing that gets my goat about crafting in games is that players can whip up super-duper items in a jiffy, without a tenth of the work required to make something like that in real life. For example, steel-making can't be accomplished without a (very) high-temperature furnace, etcetera. It's great to be able to create what you need on the fly, and is a feature I love to see. But in real life, I wouldn't want to be wielding a snap-together sword, and the same logic should apply to in-game swords, if you see what I mean... ;P.
Post-disclaimer: no disparagement is meant to you or your game... that was just a little personal comment tht crept in, and is really just an issue with the MMO paradigm in general, not any specific game.
Now, where's that goat...
05/13/2009 (7:39 am)
It looks like a nice system - I can barely read the text in the video, though ;P. I think in terms of providing gameplay experiences to players, you've hit the nail on the head (ho ho...). This looks like a perfect way to make crafting that much deeper and personal.However, I personally hope you keep it real - the one thing that gets my goat about crafting in games is that players can whip up super-duper items in a jiffy, without a tenth of the work required to make something like that in real life. For example, steel-making can't be accomplished without a (very) high-temperature furnace, etcetera. It's great to be able to create what you need on the fly, and is a feature I love to see. But in real life, I wouldn't want to be wielding a snap-together sword, and the same logic should apply to in-game swords, if you see what I mean... ;P.
Post-disclaimer: no disparagement is meant to you or your game... that was just a little personal comment tht crept in, and is really just an issue with the MMO paradigm in general, not any specific game.
Now, where's that goat...
#5
Not strictly "real", but the tools requirements should address issues like the one you state with steel (we've actually had that exact talk regarding temperatures, heat treating, etc), and like all skills/abilities in my game, everything you can do is just another "verb", and gets implemented very easily.
As for the snap-together nature of the objects- yes, it will seem that way with the assembly/disassembly and the "component swap" feature that will come with the new and shiny GUI. Timers on actions (which I have not implemented so that I can keep my sanity during testing, lol) will be there to make it non-trivial in some cases.
We had also looked into quality levels for objects that are crafted, but that might be dropped because of issues of complexity (you're basically introducing "random quality" into an object that you may have otherwise taken great pains to keep very high quality) that can be better handled with other mechanisms such as material cost and properties. Maybe I'll stumble onto an idea that will heal that problem, but I don't think it will be missed all that much (and it can always be implemented as an influence on the malfunction property, or even others)...
The bright side of this system (not that there's much of a dark side) is that a crafter in Epic Frontiers is just as valid a path as a fighter, or even an explorer or politician :)
Edit: Regarding the video text, I'm still trying to get the hang of getting high quality vids up on YouTube that I used to get on Vimeo until they got condescending about their site. I have vowed not to use Vimeo since they arbitrarily took down videos and sent me emails that basically said I could contest it- but I was guilty anyway.
05/13/2009 (12:25 pm)
Quote:I personally hope you keep it real
Not strictly "real", but the tools requirements should address issues like the one you state with steel (we've actually had that exact talk regarding temperatures, heat treating, etc), and like all skills/abilities in my game, everything you can do is just another "verb", and gets implemented very easily.
As for the snap-together nature of the objects- yes, it will seem that way with the assembly/disassembly and the "component swap" feature that will come with the new and shiny GUI. Timers on actions (which I have not implemented so that I can keep my sanity during testing, lol) will be there to make it non-trivial in some cases.
We had also looked into quality levels for objects that are crafted, but that might be dropped because of issues of complexity (you're basically introducing "random quality" into an object that you may have otherwise taken great pains to keep very high quality) that can be better handled with other mechanisms such as material cost and properties. Maybe I'll stumble onto an idea that will heal that problem, but I don't think it will be missed all that much (and it can always be implemented as an influence on the malfunction property, or even others)...
The bright side of this system (not that there's much of a dark side) is that a crafter in Epic Frontiers is just as valid a path as a fighter, or even an explorer or politician :)
Edit: Regarding the video text, I'm still trying to get the hang of getting high quality vids up on YouTube that I used to get on Vimeo until they got condescending about their site. I have vowed not to use Vimeo since they arbitrarily took down videos and sent me emails that basically said I could contest it- but I was guilty anyway.
Torque 3D Owner Tuomas Kaukoranta