Importing Game Data to Godot from a Spreadsheet - Godot Tutorial

แชร์
ฝัง
  • เผยแพร่เมื่อ 29 ธ.ค. 2024

ความคิดเห็น • 21

  • @Aarimous
    @Aarimous  3 หลายเดือนก่อน +2

    Note: It seems like there is some strange google security stuff with the extension I show (possibly an config thing for the app owner). Which is odd because it is clearly working for me. As a work around you can export as CSV and then use a site to convert from CSV to JSON. There are a lot of them if you do a quick google search.

    • @mrmandolino500
      @mrmandolino500 3 หลายเดือนก่อน

      There was some security changes on Google's part that required the author to either fork out a buttload of money or change a big chunk of their code. They just finally released an updated version that should fix everything, poor folk had been chipping away at this for a few months

  • @OldRod99
    @OldRod99 3 หลายเดือนก่อน +9

    Wow, we were just talking about this in Twitch last week and now here it is. Great video! Thank you!

    • @OldRod99
      @OldRod99 3 หลายเดือนก่อน

      Sell, as excited as I was to see this, when I actually try to use it, Google has blocked the app :( I see others are having the same issue. Anyone found a way around it yet?

  • @Aarimous
    @Aarimous  3 หลายเดือนก่อน +4

    Let me know if you have any questions. If you'd like to support my work please checkout Hexagod and consider wishlisting it: store.steampowered.com/app/3059390/Hexagod/

  • @TechAtScale
    @TechAtScale 3 หลายเดือนก่อน +2

    Nice! See, this made it from Twitch to TH-cam!

  • @OldRod99
    @OldRod99 3 หลายเดือนก่อน

    For those that can't install the extension that Aarimous is using (like me), I found "Sheets to JSON" in the extension store and that was not blocked. It seems to be working so far (*edit* OK, the free version only lets you do 25 rows)

    • @Ironpants57
      @Ironpants57 11 วันที่ผ่านมา

      Only 25 rows... wow, eww..

  • @TrekYourself80
    @TrekYourself80 3 หลายเดือนก่อน +4

    How did you manage to install that extension? When I try on any browser, I get the "This app is blocked. This app tried to access sensitive info in your Google Account. ..."

    • @bazbrad
      @bazbrad 3 หลายเดือนก่อน +2

      I have been having this issue for like a month.. I can't figure this out

    • @mqpiffle100
      @mqpiffle100 3 หลายเดือนก่อน

      @TrekYourself80 I originally thought "of course your data is not protected...you are using chrome as your browser!" But maybe that is how he is successfully using that extension, just a guess??

    • @TrekYourself80
      @TrekYourself80 3 หลายเดือนก่อน

      @@mqpiffle100 - I replied to​ @bazbrad but my comment must've been declined since I included a link to Github. But essentially, Google is blocking apps and services that only have username/password sign-in. If you go to the link he provided for the converter, the app has a link to the Github, where if you check the open issues, the creator of the app has acknowledged the issue and has yet to post an update for 3 weeks on it. So nothing to do with the browser, I tried on multiple browsers, Firefox, Chrome, and Edge, none of which worked.

    • @Aarimous
      @Aarimous  3 หลายเดือนก่อน

      It seems like there is some strange google security stuff (possibly an config thing for the app owner). As a work around you can export as CSV and then use a site to convert from CSV to JSON. There are a lot of them if you do a quick google search.

  • @atanii4513
    @atanii4513 3 หลายเดือนก่อน +1

    Great video! I also love using resources.
    How would you go about including Texture / SpriteFrames data into this workflow (not neccessary with excell files, the focus is on the "store it outside of Godot")?
    Eg. my CardData resource has a "Picture" field containing the texture for the art on the card.
    I'm not sure how I would store it outside of godot .tres files and import it...
    I could ofc store it as a base 64 or something similar, coded structure to make it viable for JSON, but it seems a bit too complex when I have to manage dozens of cards.
    Currently when I'm developing a game for a jam, I have to make .tres files after .tres files to store the concrete resources with values...

    • @Aarimous
      @Aarimous  3 หลายเดือนก่อน +1

      Textures are a bit harder and for sure a downside of the spreadsheet. I will usually do some sort of lookup (method that uses a match statement) for a enum to the texture and then grab it when I turn the data into a node. It's not perfect, but it gets the job done.

    • @atanii4513
      @atanii4513 3 หลายเดือนก่อน

      @@Aarimous Hmm I can imagine using something like that when I'm sure there is only a handful of cards. Handling dozens of cards on the other hand, considering it's TGC like, so every card has a different art picture, this can be inefficient.
      If the exporter could turn inserted images from the Google Sheet into Base64 or something similar in the json tho, using google sheet could be viable - assuming Godot has a built in function for creating Texture from a byte array / string.

    • @IPlumpton
      @IPlumpton 3 หลายเดือนก่อน

      If you include the filename in your spreadsheet, you could append it to the base file path when you parse the json potentially. You could even use the card ID as the image filename and do it that way.

  • @PaahtimoGames
    @PaahtimoGames 3 หลายเดือนก่อน

    Does this work out of the box with builded game? I had issues with using xml files and I had to manually copy them to the same folder where I had my executable file?

    • @Aarimous
      @Aarimous  3 หลายเดือนก่อน +1

      Yep, it works fine for the exported game for windows and web (only two I can test but I'm pretty sure it also works for linux and max).

  • @Kio_Kurashi
    @Kio_Kurashi 3 หลายเดือนก่อน +1

    I'm going to be honest with you: If security of your data is actually an issue for you, you wouldn't be using Google Sheets. Especially in an unprotect via external system state.

    • @Aarimous
      @Aarimous  3 หลายเดือนก่อน

      True! I just wanted to throw that all out as a disclaimer :)