• Register

A deck building roguelike without turns - place cards from your hand onto a timeline along with the enemy actions. Match your blocks against their attacks, and your attacks against the gaps in their defense. Playable in browser on itch.io right now. Game is in very early development - all art is placeholder, and all mechanics are subject to change.

Post news Report RSS A lesson learned (or not)

A summary of the various UX changes made over the last week, and a short story about a lesson not learned.

Posted by on

Plenty of UX changes this week, but plenty more I want to do, so that's going to be the focus for this week as well. Now that the basic functionality and rules are in place, my next priority is game feel. If you have any suggestions of things that feel clunky, strange, or just bad, please let me know in the comments down below!

If you want to see the new changes, the newest version is now available here and on my itch.io page

A few of the things that were changed:
- Cards now give a translucent preview of where they will drop in the timeline
- Cards can now be placed between other cards in the timeline, instead of just at the end

ShowOffCardInsertion

- Changed the shop screen UI to work better in lower resolution windows (like the web client)

GUI

- Made timelines move smoothly instead of juddering along
- Added floating numbers to indicate damage and healing
- Made enemies flash when damaged

ShowOffEnemyShake

- Fixed a few bugs
- Added names to enemies and their timelines
- Added an indicator showing what timelines are getting hit on certain ticks
- Added a longshot card to show off the indicator system

LongShot


-Cards now actually move from the draw pile to your hand instead of snapping there, and move to the timeline when dropped instead of snapping.

That last one is what I'd like to talk about in the dev log portion of this, and a lesson I learned from it (or maybe one I didn't).

When I first started with this project, I was following along with a video tutorial by Adventures in Godot. You can find the playlist here, and I'd like to thank them! I've since diverged enough that it's no longer relevant, but it was very helpful in getting my head around the basic structure.

Early on the tutorial went over how to move cards from the deck to your hand. The process used involved calculating a target position, giving the card that position, and then letting it move to that target position using some simple movement code. It also talked how to create a card fan shape, a very classic card game thing.

However, I could not do the card fan shape, as my cards are wider then they are tall and all different widths. It just wouldn't make sense, and besides, I could see an easier way. My cards were set up as "Controls", a type of object in the Godot engine that has a lot of auto placement inherent to it. I could set up your hand as a Control container, and then just add cards to it and they would appear there without any other work from me.

I could even do the timelines the same way! Happy with my shortcut, I implemented it that way and it worked fine.

A month or so later I was working on this UX work and part of that was making things move more slowly and not just snap to their location. However, I found myself constantly fighting with Godot's automatic control placement stuff. I eventually realized that I was going to have to rewrite the whole placement system to work the way the tutorial originally suggested, by placing things manually.

Immediately I knew what my next dev log would be about. I had written everything assuming this quick shortcut would handle placement, and now I was looking at taking it out. What a good lesson to write about - don't take shortcuts, it only costs you more time in the long run.

Eventually, on a day I could put a few hours aside, I finally dug into it with some reluctance, and found that... it was actually much easier than I thought! It took a few hours, but I was able to entirely remove the autoplacement and replace it with my own manually defined movement over the course of a morning.

So the lesson I'm taking from this is - it's okay to take shortcuts sometimes, especially if you're early on in development! Get it up and running and mark the spots that might need updates, and the time you save on the first build will probably be worth the refactoring time later. At least that's how it worked for me.

Next up - More UX stuff, hopefully including some sound. I was going to add it this week, but I don't want to add it without volume controls or at least a mute button, so I left it out for this update. I'll also sprinkle in a new mechanic or two so it's not just quality of life changes.


If you're interested and want to see what comes next, I'd love to have you follow along! You can also play the demo on my itch.io page here: Isochronalgames.itch.io

Gifs in this were created using ScreenToGif - thank you ScreenToGif!

Post a comment

Your comment will be anonymous unless you join the community. Or sign in with your social account: