[Game template] Arrow Lines, a casual puzzle game

Hello,

After my previous game Word Search, here is Arrow Lines.

I made this small puzzle game and it turned out clean enough to release as a template.

The concept is simple: the board is filled with arrows pointing to the four sides. An arrow can only leave if its path is clear. If another arrow blocks it, you must remove that one first. The goal is to find the right order and clear the board without getting stuck. You can tap an arrow or swipe through its path to move it.

image

image

What is included

  • Complete game loop: menu, settings, pause, tutorial, hints, score, saved progress.
  • Responsive UI using the Anchor behavior for PC and mobile.
  • Click, tap, and swipe controls.
  • In-game level editor: create levels, test them instantly, and export them as external layouts. It detects invalid or unsolvable boards and can suggest fixes.
  • Hand-made levels with external layouts, plus a procedural level generator.
  • Generated levels built backwards from solved boards, guaranteeing solvability.
  • Seeded generation: level numbers always generate the same levels for everyone. Custom Level7 layouts can replace generated levels.
  • Difficulty settings from 0 to 5, controlling how constrained the solutions are.
  • Endless progression with saved level progress and reset option.
  • Camera transitions between scenes and levels.
  • Sound effects with random pitch and volume controls.
  • Built entirely with native GDevelop events. JavaScript is only used inside extensions for advanced generation logic.
  • All game settings are centralized in a global Config structure.
  • Event sheets are organized into commented groups for easier reading.

As always, feedback is welcome!


All my game templates:

Seems great! The design is very clean.
Would love to examine it once I finish some of my pending stuff

Thanks, I tried to keep the design simple since the gameplay is already hard enough to make.

Nice to see you have started making game templates as well!

I played it - It’s nice and polished Bouh! - if you need someone to reorganize the project and randomly put event groups inside each other and leave a trail of ambiguous comments …let me know! - I was unaware of the original…and thought wow …why are you putting this out as a template!?..i really need to actually play some games!

that’s the bit i’m curious about! - i spent at least half an hour sat in a queue of traffic on the M1 thinking this through!

Haha, I couldn’t possibly make more of a mess in my groups, but if I need to, I’ll call you!

that’s the bit i’m curious about! - i spent at least half an hour sat in a queue of traffic on the M1 thinking this through!

For the checks, it’s a bit simpler than I thought; since an arrow must be able to move forward if its path is clear, you have to calculate its path starting from the arrow’s head.
And if an arrowhead is at X distance from an arrow, with X being the length of the arrow, then the level is invalidated, and the same applies if two arrowheads are facing each other.

I did some experiments (even though its not exactly on the list of jobs that have been detailed to me).
So for the check solvable algorithm i have

  • updated - posted wrong screenshot b4!

so checking if the distance to path (A) is shorter than the distance from the intersection to the end of the path (B - the path parts are numbered with ‘id’ from the start up to the arrow head) - hopefully this is what you mean
but this results in this


which isnt right
if i limit the detection to whether its only hitting its own path i get this

i apologise …for not simply buying the template! …i am tempted! …but notoriously frugal!

Hello

Thanks to the comments on gd.games and the feedback from buyers, I was able to make a major update! Thank you all for your support!

:speaker_high_volume: Full Audio

Added 11 sound effects throughout the game, the game is now much more enjoyable.

:video_game: Three Game Modes

Three new game modes are now available:

  • CLASSIC, no restrictions.
  • TIME ATTACK, complete each level before the timer runs out.
  • MOVES, a limited number of moves, with a 3-move buffer.

:sparkles: Visual Feedback Improvements

  • Counters are now color-coded:

    • OUT is now green.
    • FAIL is now red.
    • LVL and POINTS remain black, as they display neutral information.
  • The score counter now pulses whenever you earn a point.

  • A ring effect is emitted from the score counter every time an arrow exits.

  • Confetti now appears at the end of every 10th level, as well as after completing the tutorial level.

:puzzle_piece: Handcrafted Levels Reworked

Player feedback has been taken into account:

“The tree and Pac-Man levels only had four arrows that couldn’t be pressed without pressing others.”

Levels 4 through 9 have been completely redesigned so that the arrows genuinely block one another, making the intended mechanics much clearer.

:gear: Level Generation Improved

Level generation previously did not take player progression into account, so the difficulty remained the same throughout the game.

Now, level difficulty is determined by several factors, including progression through the levels, the number of arrows, the distribution of short, medium, and long arrows, how they are nested within one another, and the total number of clicks required to remove all the arrows from a level.

:paintbrush: Level Editor

The template includes a level editor, with a way to test levels and a way to auto-fix arrows that prevent a level from being completed.

This level editor is only included in the template because you need to open the template in GDevelop to run the level editor and copy/paste your own levels into your GDevelop project.

Level Editor