Important info regarding the new IAP behaviours

gingagaminggingagaming FREELANCE GS DEVMember Posts: 1,685

For those of you strugling with the new IAP behaviours in adhoc. I have found a bug in the system which make the IAP table crash (or wipe its data). This is cause by having a TIMER in the rule [if Purchased] you cannot currently (0.12.5) use a timer in this rule. If you do then it will crash the purchase and wipe the table and as a dirrect result of this, the game will hang in the shop. The players will not be able to repurchase anything.

The work around I have found that works for this is have a self attribute in the button and change that self.att to true when [purchased] then run a rule that triggers the timer and do what you want to do before like save att etc.

Also I have found that the "Change Scene" Behaviour CANNOT be placed in the [purchased] rule. So like before when we could make a purchase and then change scene to a purchase screen we cant do this inside this behaviour. It has to be in another rule. The reason for this is that when used in the [purchased] rule, it changes scene before the server changes (or saves not sure which) the table. So what happens is that everytime the player comes back to the shop they will automaticly get the comsunable item added again and then it will change scene automatically because the table gets stuck at purchased and cant clear.

Both the timer bug and change scene error will brake your IAP and in the case of google play will result in having to make new product IDs too. Because once you have made this mistake ONCE the user account that has made the purchase error freezes on the product ID so there is no way around it apart from new product IDs, compile, new IDs in google play store again etc.

I hope this helps you peeps with hanging stores....

Comments

  • HopscotchHopscotch Member, PRO Posts: 2,782

    @gingagaming, are you getting the localised currency symbol included in the price column on android? Have you tried iOS?

  • gingagaminggingagaming FREELANCE GS DEV Member Posts: 1,685

    @Hopscotch said:
    gingagaming, are you getting the localised currency symbol included in the price column on android?

    No it doesnt show. Only the numerical value is given.

    Have you tried iOS?

    Not yet as the process is still ongoing and longwinded!

  • HopscotchHopscotch Member, PRO Posts: 2,782
    edited September 2014

    @gingagaming, then this is another serious bug, without the localized symbol and no indication of the user account locale, it is unusable.

    iOS also does not show the symbol.

    Posted under

    http://bugs.gamesalad.com/show_bug.cgi?id=337

  • HopscotchHopscotch Member, PRO Posts: 2,782

    @gingagaming‌, about your suggestions regarding tables, rules, saving etc.

    This problem of tables not saving also appears when you have GameCenter functions or ads before or after the scene.

    I have been fiddling with this for a while trying to find a pattern, but it seems that these background processes (IAP functions, Leaderboards, networking and table saving) interfere with each other.

  • gingagaminggingagaming FREELANCE GS DEV Member Posts: 1,685

    @Hopscotch‌ Ive also been on this again tonight and it goes further than I thought. Basicly the IAP will work just fine when first purchased, you can purchase a non consumable 100 times without an issue (to be fair ive tried 6 or 7 in a row) HOWEVER if you leave the scene or close the app and return. This is where you get this issues. The whole IAP system collapses. It loses data and stops functioning.

  • RowdyPantsRowdyPants Member Posts: 465

    I am also having this issue. I can do my non consumable in-app purchase in my ad hoc version on my phone but then if I close out of the app and reopen I see that my tables haven't saved. This is the only reason I haven't submitted to any stores yet. Frustrating.

  • gingagaminggingagaming FREELANCE GS DEV Member Posts: 1,685

    @RowdyPants said:
    I am also having this issue. I can do my non consumable in-app purchase in my ad hoc version on my phone but then if I close out of the app and reopen I see that my tables haven't saved. This is the only reason I haven't submitted to any stores yet. Frustrating.

    Please add to the bug report pants. The bug is still showing as unconfirmed so they need more info. Just simple tell them what happening in you game. the link is here:

    http://bugs.gamesalad.com/show_bug.cgi?id=335

  • BigeaterBigeater SingaporeMember Posts: 35

    i am now using 0.12.8 version,i think i have to redo IAP all over again... am in the state of confusion... any update on this 0.12.8 version having the same issue as mentioned by @gingagaming‌ ?

  • gingagaminggingagaming FREELANCE GS DEV Member Posts: 1,685

    @Bigeater said:
    i am now using 0.12.8 version,i think i have to redo IAP all over again... am in the state of confusion... any update on this 0.12.8 version having the same issue as mentioned by gingagaming‌ ?

    The big has nothing to do with the timers as previously stated. Bug there is a bug present that is being investigated by QA. Currently, they still dont know what the issue is but to replicate the issue with the current 0.12.8 you can follow these steps:

    Install a clean instal of the game.
    Open the app and navigate to your shop.
    Make a non consumable purchase
    Exit the shop by pressing the HOME button (not the back button)
    Reload your app and navigate to tyour shop again
    Make the same purchase again
    Notice the purchase goes through but consumable product is not added (the purchase state is wiped)
    The game then hangs at this stage and you cannot make this purchase again.

    Then at this stage in the shop and while the game is hung. If you use the BACK button sometimes it will throw an IAP error message, refresh and then add the consumables as expected.

    Anyone interested in following the bug should go here and add your own comments as this is unsolved and GS are scratching there head so no near fix expected if the community doesnt help out!

    http://bugs.gamesalad.com/show_bug.cgi?id=377

  • BigeaterBigeater SingaporeMember Posts: 35

    Thanks @gingagaming‌ , Appreciate your detail elaboration. yes, i have try it out on both the consumable and non consumable on iOS ad hoc on Stable release 0.12.10 . glad that i didn't redo my game. phew.

    Both consumable and non consumable iap works thru out the game as it suppose to be on the first try.

    Once game is over....click "reset game" behaviour, problem arises:

    When i click my login aka "Request data purchase" again, i observed that the index toggle to 1 as expected.

    Unexpected result: all my IAP button (i placed display text to see the status (unpurchased, pending, purchased ), there is no status (blank) in the button. Despite that, i went on clicking my iap button and it stated successful purchase without attribute change.

    Repeated trying of pressing that iap button will only resulted in " you have purchased that item, you will get that for free"... no changing of attribute will be done in this matter.

    In order to change the attribute, closed the app and open again.... with that, it will change the attribute as it previously suppose to.

    Anyone have the similar experience ?

  • traceur93traceur93 Member Posts: 44

    Hy guys!

    I have a problem with "Request purchase data" behaviors. Everytime this behavior run, the game crash out! I am logged with a Sandbox profile to test the IAP. I cannot find a solution right now. Does anyone know?

  • BigeaterBigeater SingaporeMember Posts: 35

    Would recommend for u to troubleshoot yr rules again. E.g "is" instead of "contain" for text expression etc

  • gingagaminggingagaming FREELANCE GS DEV Member Posts: 1,685

    This bug has been solved in 0.12.08 If you are experiencing issues with a later GOOGLE PLAY IAP then you must do the following as instructed by Gamesalad QA:

    Clear your cache in your settings dont just uninstall.
    Then Uninstall your game
    Make new IAP prodoct IDs on Google Play
    Put these new IDs in Your project and make new APK.
    Upload this new APK to Google Play and wait for Google to update their server.
    *** DO NOT sideload the APK direct on to your device. Only download from Google.

    The above instructions has worked on my device.

    Can we now ask @BlackCloakGS‌ or @jonmulcahy‌ to close this thread now as the subject does contain old and incorrect information that may cause confusion to others if followed.

This discussion has been closed.