Is a Community C Exporter Legal?

Discussion and feedback on Construct 2

Post » Wed Dec 07, 2016 12:07 pm

@Ashley, it was either last year, or the year before that that I'd originally posted on here with a severe overconfidence of my abilities as a programmer, stating that I'd make a compiler for Construct 2 that basically translated HTML5 to native code. At the time I clearly knew nothing about what I was talking about.

Basically, my goal is to make a program that can read the XML files of Construct 2 projects and export C/C++ code in the same way Javascript code is exported. That way users can compile the code to native and other platforms themselves. I was thinking about making the converter in C2 itself, and use Node Webkit to read and write files.

My concern with pursuing this for fun is that I don't want to infringe any licensing and become a legal issue. So, before I release anything I will need you permission. :)

Anyone reading this, keep in mind that this project is as a hobby, not a legitimate project. Assuming C3 will use the same XML based project file structure, I think it'd be worth the time to invest in it, even after the new version comes out. It will be uploaded to Github once support for Platform, Audio, and Keyboard are fully implemented. I'm using a few different open source projects to mash together to construct the converter, so there's not a lot of work on my side aside from reprogramming the base engine functionality. Which, of course, is the main concern of performance.

All I'm saying is, don't expect this to be a fullproof native compilation method, because I'll likely not have the time to implement everything on my own.
ImageImage
B
49
S
15
G
2
Posts: 268
Reputation: 6,607

Post » Wed Dec 07, 2016 12:26 pm

I don't think that you can release something that can bypass the license limitations. However, I like your project, and I wish you good luck for this ambitious hobby.
B
135
S
33
G
17
Posts: 1,557
Reputation: 20,717

Post » Wed Dec 07, 2016 2:29 pm

Initially there were plans to make an sdk for native as a completely separate exporter, but that's gone by the wayside since html5 got so many wrappers.
So technically it probably wouldn't go against licensing, however, what you are asking to do is much more complicated than you realise.
Not only would you have to create lookups to everything from the editor, you would also have to do that for every plugin including any third party code you wanted to use.
Image ImageImage
B
169
S
50
G
174
Posts: 8,325
Reputation: 110,794

Post » Wed Dec 07, 2016 4:48 pm

This would be really cool! I had my eye on things like Tiny Arcade (witch runs of C), but didn't find anything to convert the code to C.

Hopefully it's all right with Ashely and it does not infringe on the licence.
Best of luck!
ImageImageImageImage
B
30
S
9
G
7
Posts: 245
Reputation: 5,602

Post » Wed Dec 07, 2016 10:20 pm

I can't think of any legal reason you wouldn't be allowed to do it, but our policy is (for pretty obvious reasons) that any discussion of methods to circumvent license restrictions are banned, and I think this would qualify since it's a new kind of exporter.

Still I think your bigger problem will be the infeasability of the project! It's not for nothing we've held off native exporters. Even if you used a JS interpreter so you could re-use all the engine and plugin code, it still amounts to implementing a significant amount of a real browser engine. Several companies and projects have tried before and they were always pretty crap because it's a *much* larger project than you think, so they ended up skipping major features like Web Audio, form controls, networking etc. If you're going a step further and rewriting all the engine and plugin code in a very different language, then I am skeptical you will ever be able to run any meaningful C2 project.

So... good luck, I guess :P
Scirra Founder
B
398
S
236
G
88
Posts: 24,428
Reputation: 194,600

Post » Thu Dec 08, 2016 7:48 am

it's funny. you know what is funny?
wou will spend ~500h on some crappy work that noone will use, won't get you any money, won't be profitable in the end, and for what?

you could make 10 games in those 500h and earn some money instead.

point is: learn how to use your time for something productive, not to waste it onto something that won't gain anything for anyone.
Sea Monsters template - Isometric
Also includes 40 pages PDF of optimizations and "how-to" for your games, and how the "sea monsters" template was built. Follow link for details :)

sea-monsters-templates-and-assets_t162705
B
43
S
14
G
12
Posts: 626
Reputation: 9,450

Post » Sun Dec 11, 2016 12:33 am

@glerikud, Thanks!

@newt, As an experienced programmer, I'm fully aware of everything I'd have to do in order to make something like this, and as has been noted already, is just for fun, so if it never amounts to anything, I don't really care.

@Saiyadjin, try having a little fun once in a while, mate. I don't think I'd want to develop games if I thought of them as simply a way to make money. Not really interested. Money will come, it's more about enjoying life while it last, in my opinion.

@Ashley, Yeah, it seems like the majority of people would think it's a complete waste of time. I will be rewriting the engine from the bottom up, so it'd probably never be useful enough for someone to actually use it, but I think it'd be cool to have either way. I wanted to program something in C, mostly as a portfolio piece, but also because I'd enjoy it. :)

I think a lot of the people reading my words, "Not a lot of work to do", think I meant I don't have to program anything, which is the opposite of what I meant, I'm just not doing it for work. I think, though, this kind of project would work out well for trying to get a programming job in the future, as it'd make a really nice portfolio piece to show my programming experience.

Anyways, I'll probably upload something about it in a year, Valve time.
ImageImage
B
49
S
15
G
2
Posts: 268
Reputation: 6,607

Post » Sun Dec 11, 2016 12:58 am

Just don't wrap up Node js.
Image ImageImage
B
169
S
50
G
174
Posts: 8,325
Reputation: 110,794

Post » Sun Dec 11, 2016 1:19 pm

Just a thought:

if you are doing this as an exercise that is supposed to have impact as a portfolio piece.. why not go all the way and make a new engine?
Imagine a recruiter looking at your portfolio. "Made a working, published game engine" vs. "Made an exporter for a 3rd party engine".

Reverse engineering all the stuff that Scirra did.. that amount of time might just as well go into designing something new, and you would not be bound by C2's philosophy and restrictions.
B
77
S
28
G
32
Posts: 481
Reputation: 19,763

Post » Sun Dec 11, 2016 2:28 pm

@KTML5

You're going to need a team. Seriously, a team! You'll cry from the amount of work & fix that is needed to be done.
Or better use your time focusing on more important things, again don't waste your time. Think about this more clearly...
This is one decision you don't want to regret.
The Things you can create is only limited by your imagination. If you don't have the skills then use your motivation as a natural force to exceed all expectations. Chadori RebornXD
B
65
S
21
G
90
Posts: 1,124
Reputation: 59,857

Next

Return to Construct 2 General

Who is online

Users browsing this forum: Apollo14 and 20 guests