Construct 2 - Realistic State after 1 gazilion downloads

Discussion and feedback on Construct 2

Post » Wed Mar 05, 2014 11:22 pm

'Stutter' issues on mobile are what have hurt C2 the Most.
B
82
S
32
G
7
Posts: 281
Reputation: 10,695

Post » Thu Mar 06, 2014 12:04 am

My personal opinion is why isn't Scirra using all that money they got from us and HIRE some temp developers? I'm sure they can afford 10K to deal with all the mobile stuff. If you don't have it, Scirra, take a loan. You know that this will bring tons and tons of new costumers and make C2 the de facto standart.

I personally can't believe that someone else didn't do it already. It's business gold.
B
33
S
9
G
1
Posts: 156
Reputation: 3,044

Post » Thu Mar 06, 2014 12:17 am

Well I'll chime in on a few commentaries.

Chrome could fine as a wrapper export. The issue is that there are non required bits and there is some structure that needs to be removed. For any browser to work as a wrapper some one needs to go into the source and remove parts of the load. Here is what needs to be removed to start
DOM
requestAnimationFrame
C2 would perform a lot better if both of those were removed. Instead JS runtime needs direct access calls to GPU image buffer rather than having to wait for a valid hertz speed request.

I already suggested letting the community develop a wrapper from an abstraction layer for us to create native wrappers. It was vetoed. Also if anyone wants to create a C2JS converter to another language there really isn't any reason you can't. Accept what it is right now. Complaints aren't going to change.

As for power. If your supporting older hardware don't. You may have older hardware(as i do); however that doesn't mean you should support it. It's callous, but the truth is that mobile CPU/GPU techonology is advancing at a faster rate than desktop. Next year or two will stabilize this. Next year you will have mobile chips that perform PS3 level performance. If that's the case why are you supporting iphone4. The most common iOS version is 7+ at this time. If you know that then you know none of the A4 chips can run iOS7. You can classify all A4 chips and there equivelent Android counterparts as already obsolete. Stop supporting that generation of chips.

@Arima
I don't agree with you that all images are LOADED into the game memory upon the game start. Watching the memory profile for the game drastically changes on Layout to Layout. What C2 does is DOWNLOAD all the assets locally and LOADS them into memory at run time. JS does have a Garbage collector as does Java. Java runs Android and there really isn't a problem. it's not a memory management problem. However CJS sucks for memory management and does suffer your statement of loading everything. However CJS is the exception not the norm.

As an answer to performance. I have a game tested day 1 running on my A5 chip iOS device and runs at a smooth 60fps with Spriter working out the tweening animation. My program calls angle 3 times a tick and includes very poor mathematical operations constantly working floating point precision math. I personally gave up with the idea of supporting hardware from 2012 or earlier. Especially with the Tegra 6 and equivelant chips due late 2014 or early 2015.

Personally I think C2 weakest link is that a large multitude of games possibly well more than 50% have a logic FPS at 30. Where as C2 mandatory runs at 60Fps. If your device doesn't run the game at 60fps then the game suffers. I know no matter how much Ash says other wise; it just does. If we could set the logic fps30 properly then even when your game seriously dips or your logic is poor your games would suffer less. But that's not going to happen.

Anyways I'm going to be starting a new game soon where I will be keeping a devlog. The focus of the game will be MP on tablet devices(sorry no phone) of 7"+. I will be keeping progressive updates and let everyone know how performance will be.
B
92
S
18
G
9
Posts: 2,455
Reputation: 15,113

Post » Thu Mar 06, 2014 2:51 am

jayderyu wrote:I already suggested letting the community develop a wrapper from an abstraction layer for us to create native wrappers. It was vetoed.

I don't recall reading about this. How it would work?
jayderyu wrote:Also if anyone wants to create a C2JS converter to another language there really isn't any reason you can't.

Yes there is, I have no ability to code traditionally at all.
jayderyu wrote:Accept what it is right now. Complaints aren't going to change.

These are significant issues, please don't discourage discussion of them.
jayderyu wrote:As for power. If your supporting older hardware don't. You may have older hardware(as i do); however that doesn't mean you should support it. It's callous, but the truth is that mobile CPU/GPU techonology is advancing at a faster rate than desktop. Next year or two will stabilize this. Next year you will have mobile chips that perform PS3 level performance. If that's the case why are you supporting iphone4. The most common iOS version is 7+ at this time. If you know that then you know none of the A4 chips can run iOS7. You can classify all A4 chips and there equivelent Android counterparts as already obsolete. Stop supporting that generation of chips.

The most common ipad is the ipad 2. I mean, apple is still even selling the thing. By your own logic we should continue supporting it. Also, phone companies continue to sell older phones for cheaper. The point is if we had native exporters, we wouldn't have to set the cutoff so high and would therefore have a larger audience. It's the same reason sony is still supporting the ps3 now that the ps4 is out. There's still a sizable audience there.
jayderyu wrote:@Arima I don't agree with you that all images are LOADED into the game memory upon the game start. Watching the memory profile for the game drastically changes on Layout to Layout. What C2 does is DOWNLOAD all the assets locally and LOADS them into memory at run time. JS does have a Garbage collector as does Java. Java runs Android and there really isn't a problem. it's not a memory management problem. However CJS sucks for memory management and does suffer your statement of loading everything. However CJS is the exception not the norm.

Textures are not alone in determining total memory use. Instances, music, garbage and a ton of other things contibute.

C2 does in fact load all images at the start. You can tell by going to chrome's developer tools and looking at the resources, from the very start, with the exception of a loader layout, all of the images for the whole game are there. I think you're forgetting about VRAM. C2 downloads or reads from disk all textures at the start AND puts them into ram, but with webgl on, only puts the ones for the current layout in VRAM. Layout by layout loading only controls what gets put into VRAM, not RAM. Additionally, images in ram might not be decompressed until they're needed if webgl is in use - if that is the case that would cause ram use to fluctuate as well (I'm not entirely sure about that point though).
jayderyu wrote:Personally I think C2 weakest link is that a large multitude of games possibly well more than 50% have a logic FPS at 30. Where as C2 mandatory runs at 60Fps. If your device doesn't run the game at 60fps then the game suffers. I know no matter how much Ash says other wise; it just does. If we could set the logic fps30 properly then even when your game seriously dips or your logic is poor your games would suffer less. But that's not going to happen

As far as I understand it, that would be easier to implement with native too.
Moderator
B
95
S
34
G
33
Posts: 3,007
Reputation: 27,876

Post » Thu Mar 06, 2014 2:56 am

EDIT:upon reading my post, I think my post seems kind of unfair I think, not sure, If it does feels like it, sorry, that wasn't the expected result

@jayderyu : I like the way you are thinking, it brings hope and is still reasonable, C2 does HTML5 well, and the HTML5 is cross-platform, from what I've tried, this is not a lie, but like anything else, it has compatibility problems (exe have too before someone say otherwise).

Also It seems there is a pattern, like every two month a big topic "C2 bad performances, it is bad" comes, with valid or invalid arguments depending of each topic, but mostly I wonder if people use C2 as it is meant to be, an HTML5 game engine that get rid of the programming, but not the design (I don't say that the presentation of the program is perfect on the homepage, but it is what it really is)

Also it seems everyone tries cocoonJS because it is the "best performance wise", which is wrong IMO, for JS execution maybe, but I always see the main complaint is it is bad at everything else it seems, I thought scirra stopped to support cocoonJS because of that + bad communication can anyone confirm or invalidate that?

To stop this kind of complaint I do:
-Yes I love C2, No it isn't perfect, but it will improve, it has already improved, a lot, do what you want, I stay personnally, there is improvement to be done, well, how can we help then?

Also I would love to see your performances reports, and remember to code it well ^-^
Game design is all about decomposing the core of your game so it becomes simple instructions.
B
54
S
22
G
18
Posts: 2,123
Reputation: 17,150

Post » Thu Mar 06, 2014 3:49 am

I appreciate all these comments as they totally speak to things that have concerned me in recent months. I've only been using C2 for about 9 months, but I fell in love with how fast it was to produce something. I, like others, ran into some performance issues, but was mainly due to an old computer. However that said, I want to make deep games and the idea of Chrome or web games seriously turns me off. I bought C2 because of node-webkit. It's not exactly what I thought it was but @Arima I agree whole heartly that if Scirra came out with its own local build exporter that would be a great thing indeed.

I've been using Unity3D for a bit and think that tool is something else, not really comparable to C2. I look at C2 as a good way to prototype a game (a 2D game) and is currently what I am using it for. If I feel my game has real potential I will redo it in Unity. But to do that in Unity I will need a team, and for C2, all I need is me (although one could always use help!). However, I think there are certain designs that lend themselves very well to C2. But the whole 'web game' stigma seems very limiting. I could care less about mobile. Even though I work on mobile games (as a music contractor), I have no real interest that platform.

I love C2, and I love that it has got me way deeper into game development than I ever have been before. I used to code in the IT world (functional programming). And C2 has taught me so much.. it teaches you to think like a game developer. I used Unity and Torque long ago without much success. Going to Unity after designing and producing many small games in C2 helped a great deal. Can't say it enough.

btw @Arima, if you've been using Construct for 7 years then you could definitely pick up traditional coding pretty easy.. I'm not saying you'll be coding for Blizzard any time soon, but you should pick it up fairly easy. Do some tutorials, you'll see :-)
B
100
S
33
G
16
Posts: 1,204
Reputation: 16,865

Post » Thu Mar 06, 2014 4:41 am

@jobel

I've tried, I just can't seem to wrap my head around it for some reason. There's all these random symbols scattered all over the place in seemingly random places and every tutorial I tried, even ultra beginner's newbie's very first tutorial series for dummies seems to think that I already know what they mean. I just look at code and see gobbledygook. Then I found construct and stopped trying to learn to code, as C2's editor is the editor I've always imagined and wanted anyway.

It also doesn't help that I have problems with my hands and it hurts to type. I have to use a Wacom with C2 and assistive devices to type a lot of the time, which are utterly unusable for traditionally writing code. So yeah, without C2, I'm not making games at all. I really don't have the option of looking elsewhere.
Moderator
B
95
S
34
G
33
Posts: 3,007
Reputation: 27,876

Post » Thu Mar 06, 2014 5:00 am

@Arima - well I don't think you are giving credit to your understanding of how things work. Maybe the language and the syntax is foreign, but you understand the logic and problem solving is more than half the battle. Syntax is a pain, but once you get by that, you'd be golden.

And for typing use a speech recognition software like Dragon... check this out... http://www.youtube.com/watch?v=XWxZwnOn7co
B
100
S
33
G
16
Posts: 1,204
Reputation: 16,865

Post » Thu Mar 06, 2014 6:04 am

@jobel - probably so, but it's pointless for me to bother with at this point.

Sadly, I also have such significant problems with my ears that I can't use voice recognition due to being unable to tolerate almost any sound any more, including that of my own voice. Hyperacusis - don't get it. Seriously.

Thanks for the thought though. If you want to discuss it further we should probably do so via PM, as to not derail the thread with my health problems.
Moderator
B
95
S
34
G
33
Posts: 3,007
Reputation: 27,876

Post » Thu Mar 06, 2014 6:21 am

I was going to announce this in a few months...

But i love c2 so much that i thought i would give a heads up to people.

Currently been working on 2 native compilers for android and ios for the past month.

Of course they are in very /very early alpha, but so far so good.

Android a bit easier than ios.

I was originally going to make a construct 2 clone that compiles to native, but in the end i thought it would be far better to just write a direct compiler (and not step on @scirra's shoes)

Again i wasn't going to let anyone know for a while until i had something /stable.

But this is really for the people who are thinking of jumping ship :)
B
10
S
2
G
1
Posts: 92
Reputation: 926

PreviousNext

Return to Construct 2 General

Who is online

Users browsing this forum: dop2000 and 4 guests