Avatar’s Fate: A Tarot Simulator – A Developer’s Breakdown
I wanted to create a UI-based tarot simulator in Roblox with:
I gave myself a weekend to prototype and publish.
Because I had limited time, I leaned into the following principles:
Cards are stored in a ModuleScript as a table of dictionaries:
local Deck = {
{ name = "The Fool", id = "card_00", meaning = "...", reversed = "..." },
{ name = "The Magician", id = "card_01", meaning = "...", reversed = "..." },
-- etc}
A DrawCard()
function:
Cards are removed or reshuffled depending on game mode.
Reveal is handled with a TweenPosition and TweenRotation chain:
local tweenInfo = TweenInfo.new(0.5, Enum.EasingStyle.Quad, Enum.EasingDirection.Out)
local flipTween = TweenService:Create(cardFrame, tweenInfo, { Rotation = 90 })
flipTween:Play()
flipTween.Completed:Connect(function()
cardImage.Image = revealImage
cardFrame.Rotation = -90
TweenService:Create(cardFrame, tweenInfo, { Rotation = 0 }):Play()
end)
Simple, smooth, and mobile-safe.
When the card is drawn, a text overlay fades in with either the upright or reversed meaning.
if isReversed then
meaningLabel.Text = cardData.reversed
cardImage.Rotation = 180
else
meaningLabel.Text = cardData.meaning
end
The overlay fades in based on user input timing.
Each card has a unique voiceover. When revealed:
local sound = Instance.new("Sound", cardFrame)
sound.SoundId = "rbxassetid://12345678" -- stored in module
sound:Play()
I fed the card meaning scripts into ElevenLabs.io, using the Old Wizard voice for narration. The result gives each card a mysterious, immersive vibe that enhances the draw experience.
Playtesting... didn’t really happen 😅
I tested myself, iterated quickly, and made sure nothing broke. Because the experience is single-player and visual, I focused on user flow and animation timing. I had to rework the layout again once I remembered to check on mobile 😅- its not perfect but readable.
If you're a solo dev or a parent trying to ship something meaningful without losing sleep, here’s my advice:
Avatar’s Fate is a small game. But it’s complete. And I built it between kid stuff, chores, and a lot of “maybe later”s.
And that feels kind of magical.
Check out Avatar's Fate: A Tarot Simulator!