Halfgeek's Forum Posts

  • i beg to differ,I now have my project running at 60 frames per second on XDK Crosswalk! Im so happy!!!

    If you would like i could send you a demo to your email.

    Congrats.

    XDK doesn't care about asset optimization as such because its just like on PC, it handles memory loading very well. That is its main advantage.

    I'm still waiting for IAPs on XDK then its the goto compiler for Android.

  • RookieDev If it doesn't work on the CJS launcher app, most of the time its because the game is loading too much into the memory and it locks up. If you compile it on the cloud and test the debug APK, you can get a better idea of the memory usage (if it finishes loading without crashing).

  • RookieDev

    I will be frank, forgive me if its seems harsh.

    There are so many poorly optimized assets (almost every single art asset is poorly optimized for mobiles!), your game would probably take >400MB of ram on mobiles with CJS and crash on a lot of devices.

    Just one example, your Laser Beam asset is a 5 frames of 710 x 20 pixels told to loop 30(!!) times per second. The amount of overdraw is horrendous for mobiles.

    You have to think of what each art will be when its actually in the GPU as a texture.

    Your Laser Beam, each frame occupies a 1024 x 1024 texture, because its width is too large for the next one down 512 x 512, it has to go to the next one up, 1024 x 1024. That's 4MB of texture memory for that single frame. Not only that, the entire frame is mostly empty and overdrawn (1024 x 1024 textures 30 times per second!). Just that laser beam by itself would kill performance on a lot of devices.

    Another asset, your Explosion sprite (exsplosion) is 89 FRAMES! The problem with this is a lot of them are slightly larger than 128 pixels in dimension, so they occupy 256 x 256 texture and again, large areas of it is wasted on overdraw! A single 256 x 256 texture is 256 x 256 x 4 = 262kB of memory, with all your frames, that single explosion is 20MB of memory.

    Your ingame background is 1280 x 720p, its the same mistake I did in my first game, making a single large BG, but the mistake here is going above 1024 width. Now that BG is a 2048 x 2048 texture in the GPU OR 16MB of memory. Your menu screen is the same, a 1282 x 722 image, but a 9-patch (not a sprite). I don't know if CJS can handle 9-patch that big as a 2048 x 2048 texture, it would be a black or white texture if it cannot handle it, or even crash.

    I think I will write a tutorial to help other mobile devs when I get time, but you CANNOT make a mobile game like this. It won't work and even the best device will struggle to run it or even load it at all.

    For now, just know this basic:

    All images go into memory as textures, by the power of two sizes only.

    16 x 16 = 1KB ram

    32 x 33 = 4KB ram

    64 x 64 = 16KB ram

    128 x 128 = 65KB ram

    256 x 256 = 262KB ram

    512 x 512 = 1MB ram

    1024 x 1024 = 4MB ram

    2048 x 2048 = 16MB ram

    Never go beyond 2048, many devices will crash since they cannot handle it. Most PCs can handle up to 4096 x 4096 (but some older ones cannot!).

    Always try to ensure your sprites take the smallest texture as possible. Never have a thin line (laser) that's very long that it has to go into a massive texture. Make it as a 128 x 128 and stretch it out, change its width to whatever you need but the sprite itself is still 128 x 128.

    Also, CJS doesn't support text boxes with input. Only normal text object, but it handles it very poorly if you update your text often. I highly suggest you look up Spritefont usage for your mobile games, its faster & it looks properly on mobiles (not all devices will have the font you specify, PCs have heaps of fonts, mobiles do not!).

  • Congrats Aurel

    The Next Penelope is going to be a huge success and a glorious example of C2 games.

  • Sometimes CJS/MoPub just fails to show Ads for a day or two. Its probably their server taking a dump.

    But it fixes itself eventually.

  • C2 can make very complex games, the major limit is your own ability.

    Saying that, on mobiles, its a different story.

  • i have tested on mobile ever since i started working on my project but it seems now that i want to build,It wants to give me issues.

    I would love to use Ludei but i can not figure out why im getting the whitescreen,If i could get help on what the reasons that cause it,i could maybe narrow it down to why its happening.

    Right now i can not get a game to play on mobile and it is very stressful.

    I am very open to any feedback you have to offer,im at my wits end.

    I am willing to help, but I'll need to look at the CAPX to see if there's any concerns. Generally I have no troubles with CJS for Android, or previous XDK builds.

    Put it on Google Drive and invite me to access it:

  • Out of curiosity, is there a reason you are not using Ejecta for your iOS build?

    Have you posted the issue on the github page? Seems to be the only place they pay attention to anything.

    Ejecta flag warnings about depreciated functions & code when I tried to build it using Xcode5.1 or 6, it refuses to build at all, and I changed all the required details and bundle id and sign/provisions properly so its not my end. Xcode reports a lot of the code in Ejecta is obsolete for iOS 7+.

    No idea why, I downloaded the master zip from github straight from my MAC onto desktop, exported C2 game, put it into the app subfolder in Ejecta. Troubleshoot it for a few days but it did not want to work so I resorted to CJS. When it worked, it would get stuck at the Ejecta loading screen, and Xcode reports code errors in Ejecta leading to crashes. Btw, it was using up to 160MB of ram when it crashed. My game on CJS uses ~140MB.

  • Im getting nothing but Whitescreens when i test using Ludei,Im getting errors when i upload to Intel XDK.

    This is really starting to get on my last nerve.I am trying to get a project to my friend/partner and i cant even come up with a stable build to play my freakin game.

    Are we all supposed to just let our projects be dictated and ruined by 3rd party exporters,When in my honest OP i think scirra should have its own exporter.

    This is just bull.Ive worked so hard and come to find out that i cant even play my game.I would understand if it was something i did on my part,but im being held back by 3rd party people that are not working on Construct 2.

    Yup, for C2 mobile developers we're going to be at the mercy of 3rd party wrappers for a long time yet.

    But you can work with them (mostly), have you tested your game during development at major checkpoints on mobiles to see if they work well? Or you made the same mistake I did with my first game, build it all, finish, then find it doesn't work on CocoonJS and spend a lot of time fixing it.

  • They "depreciated" version 1.4.7 on their cloud compiler, I tried and it would not compile.

    Way to annoy everyone because version 1.4.7 is actually the most stable.

    YOU CANNOT EVEN SUBMIT APPS TO THE IOS APP STORE compiled with later versions because they included SDKs that flag IDFA advertising, your binary will be rejected for being invalid.

    Way to go Ludei. Now I am pissed.

  • The older Intel Atoms are just really bad, terrible GPUs on them.

  • Changelog: https://software.intel.com/en-us/node/517505

    All the extra services are via Cordova plugins which XDK will support, including IAPs & AdMob.

    Ashley Does this mean you guys need to update your C2 plugin to cater to these & get it working? Hopefully a tutorial too. <img src="{SMILIES_PATH}/icon_e_biggrin.gif" alt=":D" title="Very Happy">

  • Just a heads up for those unawares, CJS is not compatible with Xcode 6 beta.. I wasted days trying to troubleshoot this lame problem and its a problem with Xcode 6 beta and CJS conflicting.

    The problem is that building a CJS project with XC6 add entitlements (permissions) "application ID, beta-access-group, keychain sharing" automatically to the IPA, which conflicts with your provisioning entitlements (since you dont have those and dont need it).

    In Xcode5.1 (current version on the App Store), it does not have this problem.

    But there's another problem, CJS version 2 or later, including 2.0.2 has a IDFA flag with Xcode so when you submit it to the App Store, they will email you asking why are you flagging Advertising code when your app doesn't have Ads? It turns out because CJS later versions include facebook & other SDK into their compiled build, this is flagging IDFA.

    Seriously nearly threw my mac out the window with all the troubleshooting for the past few days.

  • Try Construct 3

    Develop games in your browser. Powerful, performant & highly capable.

    Try Now Construct 3 users don't see these ads
  • Pandy

    Not currently, Intel have told me they are expecting it in their next build for early August. But I'm not sure if it will be ready & compatible with C2's IAP plugin (I suspect NOT), so Ashley will probably have to release an update for C2 to make it happen.

    The performance difference isn't huge, the chromium engine is pretty fast, and XWALK has some serious advantages over CJS to make it much more viable once it sorts out these monetization issues.

  • Wouldn't crosswalk give lower fps than cjs?. assuming your game has iap, is crosswalk able to handle iap and leader boards and such. I assumed that many preferred cjs because it could handle iap, leaderboards, ads( a long long time ago) etc whereas crosswalk had issues with the above mentioned.

    And Silverforce , i'm not familiar with your game but couldn't you use the players username as a sort of key for the saved file. Maybe in an update you can have the ability to name the ship and squad and etc etc, so you use the ships name and the squads name and etc etc name in digits(1 for a, 2 for b etc etc) multiplied by a large number and keep it as a save file key. Probability of 2 people with the same ship name and squad name and etc etc name would be zero, i guess. Just my 2 cents.

    Xwalk is pretty good now, I notice in all my games so far its running around 20% slower than CJS BUT its smooth, it doesn't have the stutter that occurs on CJS once in awhile. Also I tested it on some very old devices and they were able to hold 30 fps during combat and it was still smooth enough to play and enjoy. On newer stuff its usually 50+ fps.

    I only need IAP for my game, don't even care much for Ads because I don't use fullscreen Ads since as a gamer, it annoys me. Whatever annoys me (as a gamer) wont go into my games.

    The problem with implementing these clever saving system is that a large amount of gamers are always behind on updates, about half of them are on 2 updates ago. If they were to update later on, they would miss out on my saving system and suddenly find their game resets to the start.

    Its just I didn't realize CJS/XDK were not compatible with Webstorage, eventhough the bundle name & keystore signing is the same and the game installs on top of the same location.