Welcome, Guest. Please login or register.

Login with username, password and session length

 
Advanced search

1411432 Posts in 69363 Topics- by 58417 Members - Latest Member: gigig987

April 20, 2024, 05:13:17 AM

Need hosting? Check out Digital Ocean
(more details in this thread)
TIGSource ForumsCommunityDevLogsCraftStudio: game-making for gamers (real-time collaborative!)
Pages: 1 [2] 3 4 ... 10
Print
Author Topic: CraftStudio: game-making for gamers (real-time collaborative!)  (Read 67905 times)
xot
Level 0
**



View Profile WWW
« Reply #20 on: December 08, 2011, 10:53:57 AM »

Ahhh, thank you for the instructions. I'll give it a go when I get home.

I tried to create an account with the form at craftstud.io, but get a Javascript error on submit. I'm running IE8 on WinXP here. Maybe one of the IE6 machines here will fare better.

Quote
Webpage error details

User Agent: Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 5.1; Trident/4.0; .NET CLR 1.1.4322; .NET CLR 2.0.50727; .NET CLR 3.0.04506.30; .NET CLR 3.0.04506.648; InfoPath.2; WWTClient2; .NET CLR 3.0.4506.2152; .NET CLR 3.5.30729; .NET4.0C; .NET4.0E)
Timestamp: Thu, 8 Dec 2011 18:51:54 UTC


Message: Object doesn't support this property or method
Line: 39
Char: 9
Code: 0
URI: http://craftstud.io/javascripts/main.js
Logged

elisee
Level 1
*



View Profile WWW
« Reply #21 on: December 08, 2011, 04:35:27 PM »

Ahhh, thank you for the instructions. I'll give it a go when I get home.

I tried to create an account with the form at craftstud.io, but get a Javascript error on submit. I'm running IE8 on WinXP here. Maybe one of the IE6 machines here will fare better.

I'll spend some time fixing the website for recent IE versions before going into alpha, but for now I just have too much to do with CraftStudio itself. All I can say for sure is http://craftstud.io/ works with the latest Chrome and Firefox stable builds.
« Last Edit: December 08, 2011, 04:43:55 PM by elisee » Logged

xot
Level 0
**



View Profile WWW
« Reply #22 on: December 09, 2011, 11:54:12 AM »

I understand. As a web dev, IE support has always been a thorn in my side.

One more question. Is it true that an active internet connection is required for a complete/initial installation? It seems that the installer doesn't include the actual client, just a mechanism for retreiving the client online.
Logged

elisee
Level 1
*



View Profile WWW
« Reply #23 on: December 10, 2011, 06:40:07 AM »

I understand. As a web dev, IE support has always been a thorn in my side.

One more question. Is it true that an active internet connection is required for a complete/initial installation? It seems that the installer doesn't include the actual client, just a mechanism for retreiving the client online.

That's right, the installer only installs a launcher which fetches the client on first launch.

I could make the client available as a portable ZIP download at some point, but it adds "friction" (one more thing to do) for each release so for now I haven't done it. I have automated some part of the release process through a python script which copies all the various files for client / server / master server, zips them, etc. but it still requires some manual work for upload.
Logged

elisee
Level 1
*



View Profile WWW
« Reply #24 on: December 13, 2011, 12:12:21 PM »

So yesterday I pushed CraftStudio pre-alpha 0.0.9.0 out the door with upwards of 20 entries in the changelog (it's displayed on the home pane when you open CraftStudio).

Most importantly I greatly improved the UI for model texture layout. It's now all drag'n'drop and you can rotate / mirror blocks in the texture to save space. I just posted a

with the new version. I'm pretty happy with how it turned out, considering I made it in 50 minutes.


I added a Community pane with a list of featured open projects. It's a bit early but when actual games / movies can be made, it'll allow listing community projects which you can join and help.

If anyone wants to help with translating CraftStudio in other languages, please check out the related wiki page. pt-BR has been added. de-DE and ru-RU are on their way.



There has been an incredible amount of suggestions added to the Suggestions document on the Public Test Project. Very useful to see use cases other people are seeing in CraftStudio that I might have missed.

Next up for 0.0.10.0 is either model animations or initial scene support. Not exactly sure which one I'll focus on first, as both would be great additions!

On the business side of things, I've laid out a roadmap with things to do for the coming months. If everything goes well, my one-man company will be set up by the end of January, just in time for an alpha release. Well, the release might be later so don't count on it too much!
Logged

elisee
Level 1
*



View Profile WWW
« Reply #25 on: December 15, 2011, 06:17:48 AM »

Started work on CraftStudio 0.0.10.0 and decided to go with model animation support. I'm very excited to get this done, although i'ts going to be pretty tough to come up with an easy-to-pickup yet powerful UI for this.

I need to keep the animation timeline widget pretty generic so I can reuse it for scene timeline and other time-based stuff later on.

My approach is keyframed, interpolated, forward-kinematics animation. Since everything is blocks, there is no need for a complicated skeleton and rigging system: the blocks are the bones and all weights are 1!


Some initial UI research

If anyone has samples of simple, easy-to-use 3D animation editing system, I'd be interested to learn about them so I can draw some inspiration.



You can check out the Roadmap page on the wiki for an up-to-date list of expected features in upcoming versions. Also, you might want to subscribe to updates on Facebook, Google+ or Twitter (so many places to update! Twitter is the one I tend to post on the most often)
Logged

elisee
Level 1
*



View Profile WWW
« Reply #26 on: December 15, 2011, 06:42:41 AM »

By the way I just fixed the sign up process on IE9. The site is still ugly because of lack of border-image support but at least it works.
Logged

slot9
Level 0
*


View Profile
« Reply #27 on: December 16, 2011, 09:17:14 AM »

WOW! Your work has me very excited. I've been posting on my G+ and shacknews and reddit trying to express my excitement! Take care my friend! You've done something wonderful.
Logged
elisee
Level 1
*



View Profile WWW
« Reply #28 on: December 16, 2011, 09:48:21 AM »

WOW! Your work has me very excited. I've been posting on my G+ and shacknews and reddit trying to express my excitement! Take care my friend! You've done something wonderful.

Hey, glad you like it, thanks for the kind words!

I replied to the reddit thread to make it clear it's not ready yet for general use. I'm glad people are talking about it, I just don't want to disappoint with the very early state it's still in Smiley.
Logged

kamac
Level 10
*****


Notoriously edits his posts


View Profile
« Reply #29 on: December 16, 2011, 10:35:39 AM »

You're doing great, keep up.
Logged

elisee
Level 1
*



View Profile WWW
« Reply #30 on: December 16, 2011, 02:50:52 PM »

You're doing great, keep up.

Thanks!



(Warning! Highly interesting technical post ahead!)

So I've started implementing model animations. The great challenge here is to balance ease of use with flexibility / power. Here's some thoughts about how the data will be structured. But first, some background:

CraftStudio projects contain assets. As of v0.0.9.0, there are 5 defined asset types:
 * Models
 * Maps
 * Tile sets
 * Scenes
 * Documents

Maps & tile sets

Tile sets are assets of their own, even though they appear as a component of maps to the user. The server actually creates a tile set for each new map, and there is currently no way in the client UI to reassign a tile set to a map. However, under the hood, maps & tile sets are separate entities.

This will allow (in the long run) to reuse a tile set for multiple maps (like multiple levels using the same look or something). I just haven't gotten around to implement all the UI for it.

A map is basically an (inflatable) list of chunks and a pointer to a tile set. When you're creating a new map revision, a tile set revision is automatically created too and in the map revision, the "tile set revision pointer" is set to match the newly saved tile set revision. This way, you can seamlessly restore a map and its accompanying tile set to an older state. You then get a consistent state that actually existed at some point, not an older map with a newer tile set or vice-versa.

When you open a model tab by double-clicking on it in the list, the client fetches the current asset's data and subscribes to its "update channel" by sending a subscribe message to the server. Simple.

Maps are a bit more involved. When you open a map tab, the client fetches the map's data (just some metadata, not the map chunks, those are streamed on demand!), subscribes to the map's update, and when the initial map data has been received (containing the ID of the tile set used by this map), it also fetches the tile set and subscribes to the its update channel! So yeah, pretty complicated... but also very functional.

Model animations

So how is all this related to model animations? Well, you probably want to reuse model animations with different models, too. You could have various character variants, all sharing a set of animations. So in v0.0.10.0 I'll be adding another asset type: model animations (I'm also adding a "2d sprite" asset type for later use, shhh, don't tell anyone)

Here's how I see it: a model will store a list of animation IDs that it uses. Animations will use block names so they can be reused by other models. Finally, when adding an existing animation to a model, missing blocks will be displayed as such in the animation timeline, but the animation will still work. So you share blocks and have specific blocks for each model variant reusing the same animation.

We'll see if this all works out as well as I hope it will...

(Hopefully that was interesting. Feel free to ask any questions you might have)
Logged

slot9
Level 0
*


View Profile
« Reply #31 on: December 16, 2011, 04:52:54 PM »

Maybe I missed something - but currently, is there a way to place models in maps?
Logged
slot9
Level 0
*


View Profile
« Reply #32 on: December 16, 2011, 05:36:44 PM »

Also, I'm getting Carpal Tunnel trying to fill in a giant skybox with 1 click per box. Will there be a feature to set a point 'a' and 'b' and have the engine fill it in with a chosen block type or even pattern of blocks? Even better would be a way to define X number of points and have the engine fill that in with a given pattern or block. Great stuff, having fun!
Logged
elisee
Level 1
*



View Profile WWW
« Reply #33 on: December 17, 2011, 03:17:12 AM »

Maybe I missed something - but currently, is there a way to place models in maps?

Scenes, when implemented, will allow combining one or more maps with one or more models and adding scripts.

Also, I'm getting Carpal Tunnel trying to fill in a giant skybox with 1 click per box. Will there be a feature to set a point 'a' and 'b' and have the engine fill it in with a chosen block type or even pattern of blocks? Even better would be a way to define X number of points and have the engine fill that in with a given pattern or block. Great stuff, having fun!

You can keep the mouse button down and slide to place multiple blocks. But yeah it's still pretty taxing. I'd like to add tools to fill, create primitives and even maybe generate terrains... not happening before alpha though. One solution for now is to hire friends to help you Wink
Logged

elisee
Level 1
*



View Profile WWW
« Reply #34 on: December 20, 2011, 06:41:31 PM »

Animation support is coming along. I've spent a great deal of time trying out different approach to keep the UI simple and I'm finally happy with what I have come up with.

At first I thought of having a kind of spreadsheet with the time on the X axis and the block list on the Y axis, but it would both be cumbersome to implement and overwhelming for beginners. Instead I'll only display keyframe info about the selected block/hook.

The animation tab will be split in 3 parts:

  • animation settings, with a dropdown list of animations to selected from, and stuff like duration and play controls
  • keyframe setup, which allows setting up a keyframe & its transform for the selected block
  • keyframes list, just a list of keyframes for the currently selected block, which will allow quickly moving between keyframes and deleting them


Rough animation tab mockup

Now that I'm clear on the way it will work, I think the actual implementation won't take too long. I've already started laying out the data classes (ModelAnimation, ModelKeyFrame). I store that kind of stuff in a shared assembly called "CraftStudioCommon.dll" so that it can be used by both the client and the server without duplicating code.

Apart from animation work, I've fixed a number of bugs and started work on the project administration tab. Here's a preview of what it will look like:


The bottom of the General pane will allow setting up member roles (administrator, moderator, user or spectator) and banning people you don't want to see on your project at all.

The "Trashed Assets" pane will allow reviewing trashed assets and restoring them or deleting them for good to unclutter the server.



So there's obviously a lot of work left for 0.0.10.0, but I'm done figuring out the basic design of it all! The release will most likely not happen before Christmas, and then I'll be mostly offline until New Year's (cue awesome 5 days long LAN party Kiss Hand Thumbs Up Right) so yeah, don't hold your breath just yet!

See you guys & happy holidays!
Logged

elisee
Level 1
*



View Profile WWW
« Reply #35 on: January 11, 2012, 08:46:52 AM »

Ok, I'm finally back with a little update.

Model animation support is taking a little longer than expected to implement, but it's getting usable. Here's a little walk cycle animation I whipped up:


The animation only has like 4 keyframes so it's very basic but I'm quite happy with how it looks considering I only spent a few minutes on it. (You might notice the wireframe outline isn't following the animated model, this is already fixed in the development version.)

Can't wait to get this released... and get started on scenes & scripting. Stay tuned!

Also, paperwork & stuff is well on track for creating my company by the end of the month. Pretty excited that this is finally happening!

See you guys soon! Gentleman

EDIT: Note there are currently some lag issues on the public test server (because of the many assets that have been created). When joining, sticking around for a while if the asset list doesn't appear right away. I'll fix it ASAP.
« Last Edit: January 11, 2012, 09:18:20 AM by elisee » Logged

slot9
Level 0
*


View Profile
« Reply #36 on: January 11, 2012, 09:35:35 AM »

Beautiful, so excited for scripting
Logged
elisee
Level 1
*



View Profile WWW
« Reply #37 on: January 14, 2012, 08:03:07 AM »

I just released the new 0.0.10.0 update with model animations. Also just crossed 2500 registered users!

Full changelog on Facebook and Google+ (alternatively, just start your CraftStudio launcher!)

It's quite a relief to be done with this update and have it out there with people testing it. I had accumulated a lot of code changes, I'll try to make upcoming updates more bite-sized again to avoid this.

So I'm going to do more testing / fixing and hopefully some modelling & animating on the server later today. Next week I'll probably work on the Administration tab to implement the most pressing features. Then... IT'S SCENES AND SCRIPTING! Grin
« Last Edit: January 14, 2012, 08:19:56 AM by elisee » Logged

slot9
Level 0
*


View Profile
« Reply #38 on: January 14, 2012, 08:42:57 AM »

Elisee, this animation support is ASTOUNDING. So easy to use and looks great. Thanks Man! This is wonderful! Great work!
Logged
elisee
Level 1
*



View Profile WWW
« Reply #39 on: January 14, 2012, 08:44:15 AM »

Elisee, this animation support is ASTOUNDING. So easy to use and looks great. Thanks Man! This is wonderful! Great work!

Thanks, means a lot Smiley
Logged

Pages: 1 [2] 3 4 ... 10
Print
Jump to:  

Theme orange-lt created by panic