Toby R's Forum Posts

  • You are setting an object's instance variable and than destroying an object, so obviously changes are not saved.

    Do it "On object create".

  • After just 24 hours since release without any press support, 50 controllers already played ZA on AirConsole. Wasn't expecting that high number to be honest. Looks like AirConsole is more popular than I thought!

  • Thanks arcab072081

    I am totally not a video maker guy, I struggled a lot to make this one. Glad you like it

  • were you able to customize your controller graphics or did you use the basic template?

    also, have you considered writing a post explaining your process and experiences with publishing to airconsole? it is a very interesting platform with a lot of potential. so others may be wanting to know how to get started.

    AirConsole controller is basically a web page. You are able to customize it anyhow you imagine. They just provide API and some useful examples. But it's not mandatory to use AC buttons etc. you can make your own.

    But as I wrote before. Controller has to be made manually (programming). There is no way to do it in C2 for now.

    Yes I was thinking to write about C2 and AirConsole, but I'm sure there are changes comming so I don't want my text to be deprecated just after publishing .

    FraConsole I understand you are rebuilding AC C2 plugin?

    So here are the issues I consider should be rebuilded:

    1. Fetching Data

    Right now there is no way to fetch any other data than the "message" key. In order to fetch generic data I had to do a trick. Looks simple but it took me a while before I figured it out (!).

    So as you see I fetch any data. It is simply always TRUE. And then I parse data in C2.

    2. Loosing data

    As you can send only "message" data you cannot use RateLimiter for multiple elements. RateLimiter overrides the same keys and sends only the newest data. So if you send movement with "message" and some actions in "message" then with RateLimiter you will get your packages lost. You know how RateLimiter is important.

    I tried my Zombie A. controller on iPhone 4S without RateLimiter and it was not playable. With RateLimiter it is perfectly fine.

    So these are criticals I would say because they limit development in some way. So once this is fixed then it's already pretty fine. But still a lot could be better.

    The fastest solution for you IMO would be just to implement C2 Dictionary "wrapping" in AC C2 plugin.

    So simply saying once message arrives to AC C2 plugin, change it to JSON string and add C2 Dictionary entries to it. Then we will handle it with C2 Dictionary.

    If plugin would take care of this wrapping, then we would be able to use AC Controller Generator and RateLimiter without problems.

  • Za is live now. You can check the details here:

    Thanks

  • Try Construct 3

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

    Try Now Construct 3 users don't see these ads
  • ZA is finally live! <img src="{SMILIES_PATH}/icon_e_wink.gif" alt=";)" title="Wink">

    Prepare for the bloodbath!

    Zombie Annihilation is a top-down defense action game where you eliminate hordes of enemies with the heaviest of heavy weapons.

    Your main weapon is anti-tank machine gun which rips your enemies to pieces! When this isn't enough use your rocket artillery and call powerful tanks to smash all the incomming zombies.

    And all this you control with a single finger!

    Trailer VIDEO:

    Subscribe to Construct videos now

    Android (singleplayer): https://play.google.com/store/apps/deta ... hilationac

    AirConsole (local multiplayer): https://www.airconsole.com/play/zombie-annihilation

    Trailer voice lector recorded by Borys (voice-over-voice-acting-i-offer-my-voice_t152251). Great cooperation, 101% proffessional. Highly recommend!

    If you have any questions or feedback, you can leave it here or:

    Twitter: https://twitter.com/TobyReeno

    Facebook: http://www.facebook.com/TobyRgames

  • FraConsole in C2 you can load only strings and numbers. You can load JSON into Dictionary object but it needs a specific format.

    Solution for now is to send specific C2 JSON from the controller to C2 and load it into Dictionary so you can use the data. This is the solution which I've implemented in Zombie Annihilation so you can check my controller.html there.

    BTW: Just realized that probably better solution would be to send only data and wrap it with C2 Dictionary JSON header inside C2 already. That way less data would be send every message. I will make an update to my controller later.

    But obviously it would be the best if AC C2 plugin would parse incomming data by itself.

  • 1. Just after Adding product IDS (at start of layout) you have to Request store listing. Otherwise C2 has no information about your products.

    2. "Consume product" action should be under "On purchase succeeded". You can't consume product which is not purchased yet.

    3. You should have a subfolder for your C2 export. I use "www" so the IntelXDK project directory should have 3 directories: plugins, xdk and It is not mandatory but right now you ave overwriting your "intelxdk.config.additions.xml" file everytime you export from C2.

    So what you should do now is edit this file (intelxdk.config.additions.xml). Remove everything what is there. and paste the following:

    <preference name="debuggable" value="false" />
    <intelxdk:crosswalk xwalk-command-line="--ignore-gpu-blacklist" />
    <intelxdk:crosswalk xwalk-command-line="--disable-pull-to-refresh-effect" />
    <preference name="CrosswalkAnimatable" value="false" />
    [/code:6f2cqxqm]
    
    And since you export your project directly into Intel XDK project directory, you will have to do it everytime you export from C2, because C2 is generating this file.
    
    4. Why you have only one plugin? Do you export as Cordova from C2? And have you selected "cordova project"  in the beginning?
    You should have minimum:
    * cordova-plugin-device 
    * cordova-plugin-splashscreen
    
    You can add them manually.
    1. Add Plugins to this project > core plugins > Device
    1. Add Plugins to this project > core plugins > Splashscreen
    
    5. Crosswalk is the one you should use.
    
    EDIT: Also I'm not sure if Cordova IAP does not require "com.google.playservices" plugin as well. But in other hand... IntelXDK should have added it automatically as a dependency.
  • There is no way to lower the framerate. It always runs at 60 FPS.

  • 1. Exported from C2 as HTML5 or Cordova?

    2. What AdMob JS library do you use?

    3. What Google Play services library do you use?

  • Set minimum Android API to 19 (KitKat). And Target API to 21.

    http://developer.android.com/guide/topi ... ement.html

  • 1. "is overlapping" condition grabs some SOL. So you can simply check the SOL count. If it's equal to 2 then do something.

    2. On collision with wall just run "drop" action from Drag&drop behaviour.

    3. family.count returns the current number of objects.

  • Well if it works fine in the preview then it seems like your mobile struggles with loading the audio.

  • You have to restore purchases only once at the start and it is only usable for non consumables. Like the premium account. So in such case you check if user bought it already in the past or not.

    If you use APK directly from the IntelXDK or IAP license it not set up (or is wrong i suppose) then you won't get any response. The APK must be downloaded from Google with correct license.

  • If it always starts when you start the gameplay then you probably have something wrong with events. It looks like you trigger it not at start of the game but at start of the gameplay.