Just woke up to a surge of visits & contributions and realized CraftStudio made it to the HN front page. Thanks for the love and criticism, I value it a lot coming from the Hacker News crowd.
A bit of technical background for those who might be interested: CraftStudio is built in C# using the XNA framework.
I will port it to MacOS X and Linux using Mono + MonoGame (https://github.com/mono/MonoGame), when MonoGame reaches enough 3D support. I already managed to get the UI to run under Linux so I'm pretty confident this will pan out well.
The network code uses the most amazing Lidgren.Network library (http://lidgren-network-gen3.googlecode.com/). Honestly I don't know that CraftStudio could have happened without it. It's entirely UDP-based and does such a great job of handling all the low-level bits while providing a great API.
The user interface uses a custom built library (which I open sourced under the MIT license over there, documentation is severely lacking for now though: http://nuclearwinter.codeplex.com/).
You can also find the Operational Transform library I built for real-time collaborative document editing (MIT too, https://bitbucket.org/elisee/nuclearot). It's only used for the text-editing support.
If you have any questions, please go ahead and ask :).
Well produced video and website, simple and honest presentation. Seems to build a lot on the appeal of Minecraft, but considering how popular Minecraft is that's probably a very smart move. Hope it works out! I'd try it out if there were a Mac version.
Looking at the time-lapse of using it [1] it's certainly not a "game"; you need to have patience and dedication to make anything serious. If there were any friendlier looking interface for learning the principles of 3D editing and animation, though, I sure haven't seen it. Could perhaps inspire a lot of kids from middle-school age and up.
To make it more game-like, perhaps CraftStudio could emulate the Jobs function from WarioWare D.I.Y. for the DS. In that game, you were tasked with drawing a small number of assets for a game template, such as drawing your spaceship and enemies in a top-down shooter. It also had a programming challenges function where it asked you to implement a certain functionality, and just one line of code was blank - but you sometimes had to look at the code of the whole rest of the game to figure out what was left.
I would certainly call WarioWario D.I.Y. a "game to make games", so the developer should definitely check it out if he hasn't. It's very polished. Though CraftStudio's scripting system will have to be pretty different. WWDIY's scripting system is very primitive, and has low, hard limits on numbers of objects. It isn't too bad in-game because each game you create is played for only a few seconds, so doesn't have too much stuff, but CraftStudio is obviously different.
Yeah I've watched a few videos about WarioWare. They really nailed the "it's a game" thing, but the restrictions are really heavy. Having worked on a couple Nintendo DS titles myself (nothing worth mentioning), I'm pretty sure the hardware limitations had a great part in this. Those consoles were / are amazingly limited.
This is the closest I've seen to "3D editing which looks fun": http://vimeo.com/18423305 ("World of Love 2010: Eskil Steenberg", runtime 26 mins).
It also discusses why you normally need this "patience and dedication" -- you're often wrapping images around polygons and you have to tell the computer how to do that.
You're right in saying CraftStudio isn't your regular game, but I do think it has a very gamey feeling to it, if only for the fact that editing is tailored to be simple and it's fully multiplayer.
There are quite a few people hopping on the public test project again and again with nothing special in mind but to join others in making something fun and cooperating.
I think using the word "game" lowers the barrier, some people are wary at the idea of _working_ on a game, using _tools_.
Hi, I've got a couple things I wanted to comment on.
First, and the most obvious, I want to say that this looks like a very interesting and fun project. I wish you the best.
Secondly, and I know I'm pointing out the elephant-in-the-post here, but I think if one is launching a product or revealing a project to a wide group of potential users, it would be best to utilize a speaker that is easy-to-understand. This has been a point of criticism in past HN posts. Obviously, I don't mean to be offensive in anyway and I really don't know the most politically correct way of pointing this out. I just simply could not understand a large chunk of what the speaker in the video was saying because of his strong accent.
I think there are some ways around this. For example, you could use a different speaker and if you felt the need to make an appearance or comment in a video as the creator/founder of a project, you could make a couple brief rehearsed/precise comments.
Again, very interesting project and I wish you the best.
Thanks for the criticism! I do realize my accent might be off-putting and did my best. My friends and I did many takes and kept the best of them, fully realizing the limitations we were working with.
I wanted the video to feel personal and also use this as an opportunity to improve my communication skills.
I subtitled the video in both English and French right away to mitigate the problem.
There were a few bits I couldn't understand as well, but I always like the sincerity that comes with seeing the creator speak in this kind of video. Maybe you could just put subtitles on it?
"CraftStudio will provide an easy-to-use scripting system catering to both beginners and power users"
I hope that by supporting power users you mean CraftStudio will support, in addition to your visual scripting language, an existing (textual) programming language. A language has to be text-based for users to input the code with reasonable speed, unless your GUI is fantastic. And if you try to implement your own text-based language, I bet you will miss a lot of useful features of existing languages - and users wouldn't be able to use existing libraries with your language. I've heard that Lua is a popular game scripting language, but there are many other possible languages. So, what are your plans for the scripting language?
I'm working on a design using a special-purpose, custom-built text editor which will provide visual cues and mouse-based interaction in addition to your regular keyboard support. So beginners could write conditions and call API functions without much or any typing.
It's very important for me to not hinder the productivity of people who already have scripting / game dev experience and as such I want the scripts to be fully editable with a keyboard. There will probably be a way to edit your scripts externally at some point too.
The details are still a bit blurry as I'm quite busy implementing all the other core features but it's coming together. I'm looking at a lot of what has been done, too.
CraftStudio has scenes, which are pretty similar to Unity 3D scenes. You have game objects in a hierarchy and you can add components to them to render stuff or add physics or script behaviors.
I plan on using Lua as the underlying scripting language, but I might change my mind by the time I get around to implementing it. I expect (just a wild guess) to have scripting support ready sometimes over the next 2-3 months.
There will be a library of "black box" scripts with a bunch of variables and nobs you can turn. People will be able to make more and share them with the community. You'll also be able to reveal the underlying code if you want to tweak it to your specific needs.
On that front, I think CraftStudio has the potential to get people into programming by starting with simple tools and then learning with the help of others thanks to the real-time collaborative editing capabilities. Being able to chat and interact about code will be pretty awesome I think.
For those who don't watch the video, they're currently raising crowd funding via indiegogo (which is a bit like Kickstarter[1]) and have raised almost $10,000. Link here: http://www.indiegogo.com/craftstudio
[1] IndieGoGo is like Kickstarter except instead of money being taken when they total is reached (with "pledging") it's taken straight away and provided whether or not the project succeeds in raising the total.
IndieGoGo actually lets you choose whether you want an "all-or-nothing" or "keep it all" campaign.
The main reason I wandered away from Kickstarter is that in order to start a campaign, you need to be a US citizen living in the US with a US id. Since I'm living in France, that's not happening.
Wow, I just got nerd chills while listening to that video, great idea and awesome execution. Where it will shine is when you'll be able to follow a 5min tutorial and create a "Quake" and invite your friends to play your game.. while letting them hack their own characters, edit levels and add more original features to the game.
It looks really great! I'm going to try and get my kid brothers to play this because I hope it will get them interested in the technologies behind games a little rather than just playing them. Only saw a windows version so far though? Any plans voor an OXS/linux version?
Just woke up to a surge of visits & contributions and realized CraftStudio made it to the HN front page. Thanks for the love and criticism, I value it a lot coming from the Hacker News crowd.
A bit of technical background for those who might be interested: CraftStudio is built in C# using the XNA framework.
I will port it to MacOS X and Linux using Mono + MonoGame (https://github.com/mono/MonoGame), when MonoGame reaches enough 3D support. I already managed to get the UI to run under Linux so I'm pretty confident this will pan out well.
The network code uses the most amazing Lidgren.Network library (http://lidgren-network-gen3.googlecode.com/). Honestly I don't know that CraftStudio could have happened without it. It's entirely UDP-based and does such a great job of handling all the low-level bits while providing a great API.
The user interface uses a custom built library (which I open sourced under the MIT license over there, documentation is severely lacking for now though: http://nuclearwinter.codeplex.com/).
You can also find the Operational Transform library I built for real-time collaborative document editing (MIT too, https://bitbucket.org/elisee/nuclearot). It's only used for the text-editing support.
If you have any questions, please go ahead and ask :).
You can follow me on Twitter there: https://twitter.com/craftstudiodev if you want to be kept in the loop. I also do livecoding on CraftStudio every once in a while: http://www.twitch.tv/eliseegw