A discussion about C2

New releases and general discussions.

Post » Sat Apr 17, 2010 4:05 pm

Mr Wolf, there's no point compiling events to C++. The entire event engine and all plugins are already written in compiled C++, the interpreted part is simply some lightweight code to decide what to run. That's already fast enough. Where events are slow it's usually due to the list-based processing of the SOLs, and that would be pretty much identical in a "compiled-to-C++" event system. So I doubt it would even run any faster!
Scirra Founder
B
359
S
214
G
72
Posts: 22,949
Reputation: 178,544

Post » Sat Apr 17, 2010 5:29 pm

[quote="manontherun":31k8p8s5]I know I shouldn't post without completely understanding the concept [/quote:31k8p8s5]

Seriously, you should check out Python more. Its not just a scripting language.
Its a language that gives you access to literally thousands of libraries. Many of which give you access to other libraries, including many precompiled libs made in c, etc.
Its like having a Construct plugin for just about anything you can think of.

There's just no other language, other than C itself that has this level of extensibility.

Edit:

Also I might point out David is planning on having all Python stuff included in the exe, including the DLL.
Image Image
B
161
S
48
G
90
Posts: 7,347
Reputation: 66,749

Post » Sun Apr 18, 2010 10:38 am

Yeah, have you check out Parrot? It also let's you use Python + many other languages in the same VM. I'm interested as to how that would apply or NOT to a system like construct. Parrot and LLVM, etc are supposedly faster running than Python. It's interesting but not sure how that would be applyed to construct.I didn't see anything about not being able to use libraries of Python just because it's in Parrot, but I'm no expert just out of pure curiosity this is interesting. If it was added to construct it would mean no need to force people to use just one language and could have multiple developers that are experienced at separate languages on the same project.

-edit- I'm guessing with these the problem is they are just not ready yet for some reason or another. It's cool that you can easily use it to compile your own created programming language tho. And that program will be automatically cross platform. If these types of VM are not widely used yet, It'd have to be because of something like a problem with completeness or speed compared to just plain c++.

Interesting concept for the future tho.
B
2
S
2
G
4
Posts: 259
Reputation: 1,968

Post » Mon Apr 19, 2010 5:01 am

It'd be awesome if it'd be easier to combine behaviors. As in - Combine Platform and Physics without the behaviors going nuts. That'd open whole new gameplay ideas.

Also, a lot of the more advanced stuff could be done via a plugin. As in - I talked to David about an attachment system.

Basically, what if you can create a block in a platformer and you have a moving platform - if you just create the block on the moving platform, it won't automatically move with the moving platform and setting this up can be a pain - especially if the moving platform goes horizontal AND Vertical. It'd be awesome being able to create attachment points at certain coordinates during runtime and attach objects to them, so that we could simulate stuff like that.

Another thing I'd love to see is more advanced physics stuff, like 2d fluid simulations that are easy to set-up, as in: http://www.youtube.com/watch?v=Q4z5OLT78zM

And being able to copy events for one object to another while keeping events intact.

Also, just had this idea: Could we update collision masks so that they point to the pngs alpha channel? This could be really useful for precise collision detection for a beat em up or something - you could just create your animations and create simple rectangles for collisions and put them into the alpha channel - Construct could automatically read them and we could set the events up for the collision masks.
B
6
S
2
G
3
Posts: 520
Reputation: 2,690

Post » Mon Apr 19, 2010 8:06 am

Code reusability is an interesting topic.

I really like the way its done in unity. You make a script for a specific function, and then expose variables. So say you have a script for something like a camera that follows the player - the script takes in a 'target' input, and a 'distance' input.

In a way, behaviors are a lot like that. But it would be cool to have code snippets where you paste in an event block which has parameters. For example, a 'target object' code block might require an object that has a particular behavior like custom movement attached...in unity these are components...

Essentually its kinda like writing events, but instead of recreating them and changing which objects they use, you make everything kinda abstract.... anyway i'll talk more about the idea later
B
4
S
2
G
5
Posts: 641
Reputation: 3,011

Post » Mon Apr 19, 2010 8:23 am

I think users should be able to script behaviors with event logic. Where you specify inputs and outputs, as you said. The inputs may be objects or types, numbers, or strings. Once you've created your function however. You should be able to call it like any normal action/expression/condition. Through the same menus and dropdown boxes. I think an interface like this would make for a more usable, powerful, and streamlined function object. The initial creation would allow/require the user to add captions to each input. Now when it's time to use the functions, it would behave exactly like a built in behavior, except for the behind the scenes stuff. I think there should be a separate type of file that can be exported/imported specifically used for scripted event behaviors. Also,The community could work together to create a huge library of these scripted behaviors. quaz's 3d rotation is an obvious example. Aside from the sharing aspect, it would make it possible to create much more complex projects.
Spriter Dev
B
87
S
21
G
12
Posts: 3,240
Reputation: 16,461

Post » Mon Apr 19, 2010 12:37 pm

Yeah, very interesting concept, but can that be done with out scripting?
Also wouldn't that require an additional editor?... A behavior editor?
Image Image
B
161
S
48
G
90
Posts: 7,347
Reputation: 66,749

Post » Mon Apr 19, 2010 1:42 pm

[quote="David":vgigheoy]Code reusability is an interesting topic.

I really like the way its done in unity. You make a script for a specific function, and then expose variables. So say you have a script for something like a camera that follows the player - the script takes in a 'target' input, and a 'distance' input.

In a way, behaviors are a lot like that. But it would be cool to have code snippets where you paste in an event block which has parameters. For example, a 'target object' code block might require an object that has a particular behavior like custom movement attached...in unity these are components...

Essentually its kinda like writing events, but instead of recreating them and changing which objects they use, you make everything kinda abstract.... anyway i'll talk more about the idea later[/quote:vgigheoy]
It is like a formula in algebra that uses variables. The formulas can be used whenever needed, just fill in the variables.
B
2
S
2
G
2
Posts: 372
Reputation: 1,794

Post » Tue Apr 20, 2010 3:06 pm

[quote="newt":2ydlb2bf]Yeah, very interesting concept, but can that be done with out scripting?
Also wouldn't that require an additional editor?... A behavior editor?[/quote:2ydlb2bf]
it can be done without scripting. If not an additional editor, but maybe a separate tab, or something to indicate you're in behavior mode, or function mode. And a specialized VariableObject, and maybe a Parameter Variable (in addition to private variables and global variables).
it wouldn't require scripting though. Once you indicate the number of inputs and outputs and what they are, you would proceed creating events as normal, in place of actual objects, you would choose these variable objects, but it should be done in the exact same way as normal. you could access and change parameter variables as you would private or global variables. When you were done, it would run as a normal event sheet, but plug in the objects and numbers(or strings, or arrays), the user chose.

It'd really be insane the amount of power C2 would have once the userbase started contributing. Think of all the neat tricks that have been shared via caps in the past. If you could add all those as actions, or conditions, expressions, etc, especially if you could click an icon in the corner of the action, and either change it for a single instance, expand it to regular events, or make a change and save it as your own version more tailored to the needs of your project.

I think if this feature is added, these custom behaviors, which doesn't seem like a completely accurate name, but in any case, they should be taggable, in the hopes of eventually being able to upload them all to a central searchable database.
Spriter Dev
B
87
S
21
G
12
Posts: 3,240
Reputation: 16,461

Post » Wed Apr 21, 2010 1:47 am

[quote="David":23tpx2k6]Code reusability is an interesting topic.

I really like the way its done in unity. You make a script for a specific function, and then expose variables. So say you have a script for something like a camera that follows the player - the script takes in a 'target' input, and a 'distance' input.

In a way, behaviors are a lot like that. But it would be cool to have code snippets where you paste in an event block which has parameters. For example, a 'target object' code block might require an object that has a particular behavior like custom movement attached...in unity these are components...

Essentually its kinda like writing events, but instead of recreating them and changing which objects they use, you make everything kinda abstract.... anyway i'll talk more about the idea later[/quote:23tpx2k6]

IVE BEEN ASKING FOR THIS FOR LIKE EVER!

if you look at how i wrote my IK tut, its set up so that it works kinda like this for the expressions, you just name your objects to the set names, and then you paste in all the expressions and then you change the names to whatever. but its a shitty workaround and it only works for expressions, not events. having variable `objects` for conditions and actions, would be amazing.

`code snippets` would be such a time saver. you only would have to make something used often once. and essentially allow, custom behaviors to be made USING construct. which is amazing.

oh yea and WELCOME BACK DAVO, we all thought you had left us :cry:
B
52
S
7
G
6
Posts: 1,945
Reputation: 7,610

PreviousNext

Return to Construct Classic Discussion

Who is online

Users browsing this forum: No registered users and 4 guests