TinyQuest banner

TinyQuest

7 devlogs
31h 51m 41s

This will be my first project using godot, so ive been experimenting with the engine and its features to make a 2d game, nodes and all of that, huge props for freecodecamp for making a crash course on godot (https://www.youtube.com/watch?v=S8lMTwS

This will be my first project using godot, so ive been experimenting with the engine and its features to make a 2d game, nodes and all of that, huge props for freecodecamp for making a crash course on godot (https://www.youtube.com/watch?v=S8lMTwSRoRg) #MyFirstGodotProject

This project uses AI

I used GitHub Copilot to help write some parts of this godot project, review ideas, suggest features, explain code, debugging, assist with wording and more….

Demo Repository

Loading README...

abdurahmansharif.uk

Devlog 7 - Boss rework and Optimisation

i now added summoning vfx (not from the sunny land pixel asset) custom made (made by copilot) sorry if it looks blurry in the image but it looks clearer and more cleaner in the actual project


the boss now has 3 moves,

  • fireball - its main attack, which does damage…..
  • tail swoop - the jump slam has been removed due to lack of animation that logic switched to tail swoop which stuns you
  • summoning which summons elites (with the new summoning vfx i made)
  • significantly overhauled boss

*still loads of bugs for the boss prob gonna change the map so its more flatter and more boss-friendly and prob gonna nerf it soon


optimisation

now lets get back to optimisation

  • the game now auto-saves every 12 seconds and not every kill or every level up. this is primarily to avoid multiple disk writes every time you do something so people with lower ends hopefully can manage it
  • reworked enemy progression to scale by wave instead of player level, added spawn telegraphs
  • added pooled fireballs: pool size 8, max 4 active, 1.75s lifetime, new cooldown curve with a 0.25s floor
  • replaced cherry group scans with tracked active counts.
  • switched the renderer in project.godot from Forward+ to Mobile.
  • added a simple tutorial like really basic not much only like level up, stomp an enemy, fire a fireball at an enemy im gonna make it more advanced soon

notes

also tommorrow ill be going on holiday for a week - i wont be devlogging or working on the gaming in this time 🚢✈️

Attachment
0
abdurahmansharif.uk

Devlog 6 - Optimisation and Fixes

expanding on devlog 3, the characters were invisible for some reason that includes slimes and the player character and interestingly enough cherries and frogs were suprisingly intact, so i had to force load it in during run time, knowing the risks i decided to leave it to future me…..

FUTURE ME here:

today is now all behind-the-scenes, ive did what any normal and sensible people do, spent hundred of prompts negoitating and prompting for ai to fix it, instead of doing that by myself .i now pinpointed and found the issue:

  • the issue came from how some character animation frames were referenced.
  • player and slime resources were relying on brittle texture/import references, so their frames could fail to resolve correctly in certain states.
  • cherries and frogs stayed visible because their scene setup was cleaner and already using stable references.

after pinipointing and diagnosing the issue, i….:

  1. rewired player and slime animation resources to use more reliable scene texture references.
  2. removed bad/mismatched frame links that were causing invisible sprites.
  3. kept a safer fallback path in code so missing frames can recover instead of failing silently.
  4. cleaned script warnings and naming conflicts that made debugging harder than it needed to be.
  5. verified the key gameplay scripts reload cleanly with no errors in the updated files.

i apparently have to attatch an image here so… idk what to put err ill just put a meme here

Attachment
Attachment
0
abdurahmansharif.uk

Devlog 5 - game balancing

today was all about making the game balanced, i made elites every 5 waves and made a boss every 10 waves. the boss has 3 moves, one is its normal attack fireball that once you come close you get hit, 2nd is summoning it will summon elites or other monster coming, and 3rd is 1 wide area jumping mechanics, reworked A LOT OF formulas (if not all) and more…. oh yeah and i forgot i also added a confirmation dialogue when you try to use esc to quit the game after wave 5. the enemies now have more detection radius and enemy patrolling, and when you jump on the head you will now bounce on enemies

formulas

  • Max HP: `max_hp(level) = round(10 + 2*(level-1) + 0.05*(level-1)^2)
  • HP upgrade cost: cost(level) = round(10 + 4*(level-1) + 0.25*(level-1)^2)
  • Fireball cooldown: cooldown(level) = max(0.25, 3.0 / (1.0 + 0.12*(level-1)))
  • Enemies per wave: min(4 + floor((wave - 1) * 1.0), 18, available_spawn_slots)
  • Frog chance: clamp(0.30 + 0.035*(wave - 1), 0.30, 0.65)
  • Enemy speed scale: 1.0 + min(0.06*(wave - 1), 1.10)
  • Enemy damage scale: 1.0 + min(0.08*(wave - 1), 2.00)
  • Enemy gold scale: 1.0 + 0.05*(wave - 1)

elites scale like this

  • Speed: x1.15
  • Damage: x1.35
  • Gold: x1.75
    also elites has different colours they are more desaturated
Attachment
0
abdurahmansharif.uk

Devlog 4 - ui polish + feedback

after reading through the feedback from my last release, I’ve started working towards v0.2-alpha, focusing on improving overall game feel, clarity, and performance.

i will now include more devlogging from now on and the following:

  • optimisation
  • ui polish + feedback [✅)
  • bosses + more gameplay
  • tutorial
  • music + sfx

today i added health bar, damage feedback so itll show like -XX damage so -10 damage (but depends on level) if you get hit, +XX gold if you get gold (from enemies, not cherries), also i updated max cherries to 25 and not infinite for performance. ill also plan on removing unused assets

Thanks again to everyone who tested and gave feedback.

Attachment
0
abdurahmansharif.uk

Devlog 3 - Windows Export problems

it took a while but me and my boi github copilot solved this it took an hour and several prompts to find out the problem. im sorry for any technical difficulties that made gameplay close to impossible to play. it was thanks to 1 of the guys that tested this that this have been brought up to me. ive been testing on the godot editor and not the actual exe version. so… 😅 i couldnt of known. but the godot editor seems fine so idk

What is fixed:

  • solved major rendering failures in exported builds where map textures were missing.
  • repaired stale texture reference issues in world/background scene data.
  • fixed invisible player in export while movement and collisions still worked.
  • fixed slime enemies not rendering in export (frogs were already fine).
  • added robust runtime sprite-frame fallbacks for player and slime so broken cached texture hashes no longer break visuals.
  • verified gameplay now renders correctly in exported build with no blocking visual issues.

the game now behaves much closer to the editor version in exported Windows builds.
exports are more resilient against texture import/cache inconsistencies.
v0.1.0-alpha is now in a much better state for public testing and release packaging.

Attachment
Attachment
0
abdurahmansharif.uk

Shipped this project!

Hours: 24.81
Cookies: 🍪 76
Multiplier: 3.08 cookies/hr

I built TinyQuest, a small 2D action‑platformer where you fight waves of enemies, collect gold, and level up to survive longer each run. The hardest part was designing a core loop that actually felt fun - balancing waves, scaling enemies, and progression took a lot of iteration. I’m really proud of getting a full playable build exported and shipped for the first time. It finally feels like a real game instead of just a tutorial project.

abdurahmansharif.uk

Devlog #2 – First Playable Build Released [Alpha v0.1.0]

I spent this session turning TinyQuest into an actual game instead of a science experiment. I added the full wave system, complete with scaling enemies and a proper survival loop. The leveling system is now fully functional too, gold drops, HP upgrades, cooldown scaling, and all the juicy progression bits that make the game replayable. I packaged everything into a clean build and shipped the first playable release (v0.1.0‑alpha). It finally feels like a real loop: fight → collect → level → survive → repeat.

Attachment
0
abdurahmansharif.uk

Devlog #1 - Godot Engine Initiation

I pushed my first project up at github.com/rylvion/MyFirstGodotProject and dove straight into Godot. Following the fundamentals from this tutorial:
➡️ Godot 4 2D Platformer - https://www.youtube.com/watch?v=S8lMTwSRoRg

Spent time breaking down the engine mechanics and mastering the essentials:

  • Installed and configured Godot from scratch
  • Learned core GDScript concepts and syntax
  • Built and connected signals / connectors
  • Explored 2D physics and movement systems
  • Worked with normalisation and vector control
  • Studied scene structure, nodes, and workflow patterns
Attachment
0