Search Unity

[RELEASED] AWS NoSQL DynamoDB Helper

Discussion in 'Assets and Asset Store' started by Yukichu, Jul 2, 2014.

  1. Yukichu

    Yukichu

    Joined:
    Apr 2, 2013
    Posts:
    420
    So apparently this is on sale, along with 1600 other assets. Good enough for me.
     
  2. Gunhi

    Gunhi

    Joined:
    Apr 18, 2012
    Posts:
    300
    I cloud not find your support email so I have too post here.
    Currently, I have your asset worked with all Test functions. The question are
    - How can I create, read, find query ..ect with items in Table?
    - How can I require user logged in via Facebook by using Cognito before load/save something.
     
  3. Yukichu

    Yukichu

    Joined:
    Apr 2, 2013
    Posts:
    420
    - How can I create, read, find query ..ect with items in Table?
    1. You'd look at the examples, which are using DBHelper as the database name. Example 1 has a comment where to change it, Example 2 as well, or just search for that value in the examples.
    2. Now you're using your own table, make sure to update the hash/sort keys.
    3. Depending on how you're using it, you'd mimic the examples on how to create, read, write, etc.

    - How can I require user logged in via Facebook by using Cognito before load/save something.
    Nothing will happen until you've established a connection to a database. Everything will throw errors in fact. You have the program open a connection, use cognito credentials, and wait until connection is established. can use coroutine, static variable, whatever... and until connection is established, don't let them do anything. Could be a 'loading' or 'connecting' screen, I don't know. This is pretty much up to you. Trust me, nothing is going to work until they've connected.

    As for using Facebook credentials for Cognito, it says it's possible, but I've never done it. I'd go read the documentation on it. For my asset's purposes, it allows you to use cognito credentials to access the DynamoDB database rather than using your access key + secret key to connect.

    Oh yeah: ouijapaw@gmail.com ouijapawgames@gmail.com either works
     
  4. nmndwivedi

    nmndwivedi

    Joined:
    Nov 19, 2015
    Posts:
    2
    Hi Yuki, I am working on a game for which I need a backend service which can hold player info. It is my first time trying such a thing and I did research on the available services out there. Dynamodb looks quite promising to me so I looked it up on Asset store and came across your product. I would love to try out and purchase your product, if I could get a demo of what I will be purchasing that would be great.
     
  5. Yukichu

    Yukichu

    Joined:
    Apr 2, 2013
    Posts:
    420
    PM me your email address. There is no 'demo', I'll just send you the package. If you keep it, buy it, if you don't keep it, delete it. If you keep it and don't buy it, shame on you o_O

    Actually... I remembered I can create vouchers. PMing you a voucher.
     
    Last edited: May 4, 2017
  6. jeffreyc

    jeffreyc

    Joined:
    Jul 24, 2017
    Posts:
    1
    Hey. Firstly, HUGE thanks to your hard work! Quick question though (been using Unity for a week now):

    Does lack of WebPlayer support mean that I can't use DynamoDB Helper for Unity web games? (ie, WebGL, HTML5)? If that's the case, is there any alternative for using a database in Unity's web games?

    Also, if possible, could I have a quick and dirty explanation as to why WebGL isn't supported? (what is the technical obstruction for actually building out to web version?)
     
    Last edited: Jul 25, 2017
  7. Yukichu

    Yukichu

    Joined:
    Apr 2, 2013
    Posts:
    420
    Let's see... webplayer is deprecated anyhow, but it doesn't work because of the security model they were using. To connect to webplayer, webplayer had to send some validation request on certain port of some security verifier you were running and respond accordingly. DynamoDB doesn't have this and won't support.

    WebGL is because WebGL uses websockets for communication. So it depends how you're using it. If your WebGL app is communication with a server, well the server can then use DynamoDB because the server will establish the TCP connection, etc. However, if you're trying to connected to DynamoDB directly from your WebGL app, DynamoDB does not support websocket communication, so... it's not supported.

    In summary, it is not technically feasible (easily at least) to use DynamoDB and websockets or on custom-secondary-ports-for-security-validation. Not supported.
     
  8. eShineMacromedia

    eShineMacromedia

    Joined:
    Nov 4, 2012
    Posts:
    2
    Hi For some reason we can't upgrade our Unity version to 5.x, but however, We have Unity Version of 4.7.2f1, which is still available as you described in the asset store product page. But I was just confused, because I can't purchase your asset package since it's released and required using 5.4.2 or above to purchase but yet compatible with minimum of 4.6.3p2???

    SO how can I use it on Unity 4.7.2f1??

    Thanks for your kindly reply!!!
     
  9. Yukichu

    Yukichu

    Joined:
    Apr 2, 2013
    Posts:
    420
    You should be able to import it just fine. Does the new asset store not allow you to download it unless your version of Unity is equal-or-greater? Let me know if it's that you're unsure the version will work (it should), or it just can't be downloaded due to your Unity version.

    If it's that you just can't download it, I can email you the package if you give me an invoice #.
     
  10. luniac

    luniac

    Joined:
    Jan 12, 2011
    Posts:
    614
    Hey how u doin, i been doing massive research into databases for a business app i wanna make.
    Like you idont want to be a DBA. i ***** hate backend development to be honest.

    Your plugin appears to make things simpler to use AWS, which itself seems like a nice one stop shop to get thigns going, especially the free tier :)

    I have question, do you know how uploading images work with DynamoDB? is it the same process as string information?

    thanks.
     
  11. Yukichu

    Yukichu

    Joined:
    Apr 2, 2013
    Posts:
    420
    I most definitely do not want to be a DBA either, which is why I went with a vendor/managed solution. DynamoDB has some limitations on size of each item, so... if you're using images, they have to be under 400KB. Additionally, you would have to save the image as binary, as there is no 'BLOB' or 'Object' type.

    Also: "Your applications must encode binary values in base64-encoded format before sending them to DynamoDB. Upon receipt of these values, DynamoDB decodes the data into an unsigned byte array and uses that as the length of the binary attribute."

    As for my tool, I've never tested it with images before. Sure it saves long strings and whatnot, but I think I'd have to make sure there's a binary section in there. Wouldn't be much of an issue I think, just adding a new type. There are also 'custom converters' you can make that would automatically convert your image to base64 to send it, which I have examples of how to create the custom converters.

    Anyhow, free tier is awesome for development, but make sure you're not dealing with large items (> 400KB) or else you're going to hit a brick wall quickly.

    Let me know if you're still going forward with this.
     
  12. luniac

    luniac

    Joined:
    Jan 12, 2011
    Posts:
    614
    thanks for the assisstance, if i move forward with AWS and have questions abuot ur plugin ill let u know!
     
  13. luniac

    luniac

    Joined:
    Jan 12, 2011
    Posts:
    614
    oh forgot to ask, do you have any public documentation available to study?
     
  14. Yukichu

    Yukichu

    Joined:
    Apr 2, 2013
    Posts:
    420
  15. luniac

    luniac

    Joined:
    Jan 12, 2011
    Posts:
    614
    its all good man.
    I'm actually lookin at firebase at the moment.
    They got an official unity plugin too.
     
  16. Yukichu

    Yukichu

    Joined:
    Apr 2, 2013
    Posts:
    420
    So I wrote this in reply for a review, and here it is:

    Yes, this is broken with Unity 2017. The AWS SDK is broken with Unity 2017, all versions, as they changed UnityWebRequest and the AWS SDK doesn't work with it so well anymore. The version of this package was submitted with Unity 5.4 or something like that, and should work to Unity 5.6. Nowhere does it indicate that this was submitted with Unity 2017, though I do see that the new asset store says "supported by Unity 5.4 and higher" like WTF, if I submitted something from 5.4 how do they know it's supported by all versions AFTER it? I'm sorry it doesn't work, there have been quite a few replies on the AWS SDK page for this and no response, which is very unfortunate. I'll see about creating a custom DLL, but even then it looks like it doesn't solve the issue for all platforms.

    Update: So there's an 'unofficial' workaround which may or may not actually work. It worked for a Windows build, but I cannot guarantee it will work for other builds. I uploaded the package, waiting for approval.
     
    Last edited: Oct 23, 2017
  17. Crivens

    Crivens

    Joined:
    Jul 30, 2012
    Posts:
    34
    So this latest version only works in 2017.2 for Windows builds? Has there been any progress since the last update on Oct 25 for other builds?

    I'm going to purchase it anyway, as a Windows build is all I need until ready to publish (probably a year or two in the future), but will you provide refunds if it doesn't work on other builds (Android/Mac/iOS being my main concern) within a reasonable time frame (eg. a year or two)?
     
  18. Yukichu

    Yukichu

    Joined:
    Apr 2, 2013
    Posts:
    420
    No updates from AWS. Don't know why. My post history/comments probably show that I've never refused a refund and offer them all the time, or... if you like, send me a PM with your email address and I'll send you the DDB Helper package. If you like it, buy it, if not, delete it, just be honest. I'm too old for this stuff :p

    The funny part is anyone I've sent a package to never followed up afterwards to say either, "Nice, but not useful, deleting it," or "Wow, thanks seems good, buying it," or "well, now I have it so I'm not paying for it, muwahahahaha!" I don't really care, just be upfront with me. Life goes on.
     
  19. Crivens

    Crivens

    Joined:
    Jul 30, 2012
    Posts:
    34
    No worries. I've already bought it.

    Couldn't work out Cognito access, as the setup differs quite a bit to your document, I've only just started looking at DynamoDB, and it's also Xmas tree decoration day and I'm a few eggnogs (or whatever) into the afternoon :) ZX Spectrum emulation afternoon with the wife is calling, so just wanted to test out a few things quickly.

    Got the normal connection working though. Very nice. This will do for me for now.

    Hopefully the upgrade in the future will fix any problems with other builds. Looking forward to updates.
     
  20. rgarrett7

    rgarrett7

    Joined:
    Dec 10, 2016
    Posts:
    32
    Is there any update with Unity 2017 connectivity?
     
  21. Yukichu

    Yukichu

    Joined:
    Apr 2, 2013
    Posts:
    420
    Looks like there was a fix pushed later last year. The updated SDK is in this version of DynamoDBHelper so it includes that fix. I've not had anyone tell me it's not working, and the workaround is still in the code which I presume works fine with their fix regardless... so good on all fronts. If you are having issues, please let me know.
     
  22. rgarrett7

    rgarrett7

    Joined:
    Dec 10, 2016
    Posts:
    32
    Thanks! I will purchase your asset and give it a try!
     
  23. vivekchakraverty

    vivekchakraverty

    Joined:
    Mar 16, 2016
    Posts:
    5
    Firstly please pardon my naivity, I am a hobbyist game dev and really dont understand the complexities and technicalities involved DynamoDB and Unity. I am building a game in the 2017.2 version( plan to upgrade to 2017.3) for Windows/Mac/ Android and iOS platform and require a player registration and payment system with PaymentWall (https://assetstore.unity.com/packages/add-ons/services/paymentwall-unity-sdk-50682). Can you friendly folks please guide me how to build such a game system with/without the help of assets other than DynamoDB helper?
     
  24. Yukichu

    Yukichu

    Joined:
    Apr 2, 2013
    Posts:
    420
    Uhh... well, I'd suggest you start with Unity tutorials. I feel like you're trying to start at the end of the journey before taking the first step. Make something small, learn, then use what you learn to create your awesome game idea. This thread is for a specific asset for sale and I can't really help you build your game beyond that.
     
  25. dreamyRobot

    dreamyRobot

    Joined:
    May 5, 2016
    Posts:
    8
    Hi Yukichu,
    Can we make a simple highscore with aws and your asset ?
    Here is my goal : I'd want to post the user's score, an id and the time/date. Then, I'd like to get the user's rank.
    Thanks in advance !
     
  26. Yukichu

    Yukichu

    Joined:
    Apr 2, 2013
    Posts:
    420
    It would not be difficult to this. It seems like overkill though. Do you plan on using this data for other things? Integrating into websites? Other games? A local database (sqlite, etc.) sounds like it would be more appropriate. Just some thoughts.
     
  27. dreamyRobot

    dreamyRobot

    Joined:
    May 5, 2016
    Posts:
    8
    Thanks for your answer !

    Overkill, absolutely. :)
    But aws seems a secure and free ways to achieve it... I have no gaming cloud to host my highscore. And it can be a way to learn to use dynamodb.
     
  28. Yukichu

    Yukichu

    Joined:
    Apr 2, 2013
    Posts:
    420
    DynamoDB has a 'lifetime' free limit of 25 reads/writes per second. It is great for development and if you are using this as a learning opportunity, then absolutely go for it.
     
  29. RandAlThor

    RandAlThor

    Joined:
    Dec 2, 2007
    Posts:
    1,294
    Hi, i am interested to buy this asset but read about an error in the reviews.
    Is this working with Unity 2019.3x? Will you still supporting this?
     
  30. Yukichu

    Yukichu

    Joined:
    Apr 2, 2013
    Posts:
    420
    I am still supporting it and as far as I know it still works with current versions. The person that had the error in the reviews did not know how to use it, and wrote a review about having an issue before actually asking me about it. If for some reason it doesn't work, I'll happily issue a refund but first I'll try to find a fix of course and make it work.

    Also, if you want to preview it to see if it meets your needs, you can send me a private message with your email and I'll send you a copy. If you like it, buy it. If it's not going to meet your needs, delete it. It's fine.
     
  31. The-Lemur

    The-Lemur

    Joined:
    Jan 23, 2015
    Posts:
    3
    Hello, I see that the newest post is over a year ago, so I think it is fair to ask:
    Is this asset still alive and if not - does anyone have any good alternatives for working with Amazon DynamoDB?
     
  32. Bay

    Bay

    Joined:
    Mar 27, 2013
    Posts:
    3

    I use Unity 2019.4.16f1.

    This asset worked in editor well, but not android device.

    I fixed asset via below link.

    https://lhkmarcus.com/2020/04/05/how-to-use-aws-sdk-in-unity-2019/4

    I used 'mono', .Net framework 2.0, Then relaced AWS SDK files.

    download link

    https://lhkmarcus.com/2020/04/05/how-to-use-aws-sdk-in-unity-2019/

    I replace only existed files in original asset. (No additional dll and so on)

    Thanks.
     
    drhousemd likes this.
  33. KBryan

    KBryan

    Joined:
    Sep 9, 2021
    Posts:
    1
    I'm looking for a tool to handle custom auth with Cognito. Will this tool do the trick? I currently have this working using OAuth, but I thought it might be cleaner to implement AWS SDK.