💎 Gamify Glide Apps (Updated 2022-11-28 - Episode 11: Craft Items)

follow the same problem

Robert, thank you for the amazing videos, they’re really upping my glide game.

I’m working through adding challenges to an app I’m creating and running into a weird issue with the relations column related to marking whether someone has completed a challenge or not.

When I follow your walkthrough, my relations column is yielding the user’s email address rather than the title of the challenge. I’ve gone through several times to see where something might be different but can’t find any discernable differences between your video and the steps I recreated in my app.

Any thoughts about why this might occur?


Edit: I just figured it out. It had to do with the naming of the columns. It was picking up the word name in two columns and just choosing the first column to display the details. Hope others can learn from my mistake and make sure your column names in tabs are unique.


Gamify Glide Apps Reboot #5: Item Store and User Inventory

Allow your users to purchase items using their in-app currency and store them in a private inventory. Define inventory slots, place inventory purchasing restrictions, and allow users to manage their inventory by dropping, using or selling back their items.


I’ve learnt so much from your video! Thanks @Robert_Petitto
Currently on your video 2 and I couldn’t make my rank image move to the bottom left corner. No matter what number I change to positionX, the rank image just stuck at the bottom right. Any advice?


Hello Robert! I think yo filtered the store in order not to show the items that are out of rank to be purchased. Then the if condition of the purchase button that you don’t have enough rank is no necessary no?

EDIT: I’ve just seen that you don’t filtered the list for rank sorry. You filtered by class.

1 Like

I’d need to go back and look at my own code :upside_down_face:

1 Like

Hi Robert, I have done exactly like in the video but the rel_inventory, inventoryCount and itemSlotsRemaining values in the app Data are not changing for different users and therefore My Inventory tab is always the same. But the sheet Data for that same user is showing different values! I don’t know why this is happening! Any ideas what to look for?

1 Like

Can you show me the edit column details of the rel_inventory?

Okay, here it is:

That looks right.

So what could be wrong here? The thing that surprises me is in the sheet the values for rel_inventory, inventoryCount and itemSlotsRemaining are all different and correct but in the app Data it gets these values from only the first row for every user.

Are you filtering your inventory screen by signed in user?

1 Like

That was it, thanks, it worked! :grinning:

1 Like

Gamify Glide Apps Reboot #6: Health, Potions and Graveyards

Develop a health system in your app! Determine base health per class, provide health boosts as users level up, allow users to use healing potions to regain health and allow users to revive themselves by sacrificing their gold and inventory.


Gamify Glide Apps Reboot #7: Boss Battles—Part 1!

:point_right: Create bosses
:point_right: Determine rewards if defeated
:point_right: Select a boss to battle
:point_right: Add members to your battle party


Gamify Glide Apps Reboot #7: Boss Battles—Part 2!

:point_right: Create Boss Battle logic and turn-based gameplay
:point_right: Bosses and players attack for random damage based on their stats
:point_right: Collect rewards upon defeating a boss!


Ok, I need some clarification on something. Every time I’ve watch the trebuchet method being demonstrated, I’ve always felt like it’s much more complicated than it needs to be. I just haven’t been able to determine if there is some kind of advantage that I’m missing.

With what you demonstrated in your part 7.1 video above (with keeping the party members selected for future battles), wouldn’t it make more sense to just have a custom action that sets a boolean value to true or false. Then use only three columns to build your list. First the boolean column, then an if column to carry over the email, and finally a joined list column.

To step it up and have it automatically clear when you open the form, you would do what I did in my reset multiple rows example and first set a new UUID for the user in the user profile when the form is opened, use a single value or template column to carry that onto all user rows, replace the boolean column with a text column to hold the UUID when selected (or clear when not selected), then the IF (comparing selected UUID to user profile UUID) and Joined List columns like above.

The joined list would dynamically build itself without having to have a complicated set of templates with commas added and removed, and moving values back and forth between columns every time a user clicks on another user.

Again, maybe I’m just missing something, or a particular scenerio where trebuchet makes sense, but in a lot of examples (like the above video), it just seemed like it could be simplified quite a bit. I can potentially see an advantage of trebuchet if you are not viewing a list and not directly interacting with each list row, but instead only passing in an email to the first row, followed by an action…so something like a choice component and a button to add or remove a user…but if you are directly working with the list, it seems like it could be a lot simpler. I’m happy to be wrong, but I’ve never been able to wrap my head around why it needs to have so many steps to it.


I would love to be able to simplify the trebuchet method if possible. Let me test something out based on this post and I’ll get back to you.

1 Like

Like I said, there probably are cases where it needs to be set up that way, but I just haven’t run into those cases…yet. The closest I’ve come to the trebuchet method was my calculator app, but that was slightly different since I was only adding and removing the to the end of the string instead of trying to remove something from the middle.