TUXDB - LINUX GAMING AGGREGATE
made by: NuSuey
NEWSFEED
GAMES
▪️CROWDFUNDING▪️COMMUNITY DEALS▪️STEAM DECK▪️CALENDAR
tuxdb.com logo
Support tuxDB on Patreon
Currently supported by 11 awesome people!

🌟 Special thanks to our amazing supporters:


✨ $10 Tier: [Geeks Love Detail]
🌈 $5 Tier: [Benedikt][David Martínez Martí]

Any feedback for tuxDB? Join us!

Screenshot 1
Fullscreen Screenshot 1
×
Screenshot 2
Fullscreen Screenshot 2
×
Screenshot 3
Fullscreen Screenshot 3
×
Screenshot 4
Fullscreen Screenshot 4
×
Screenshot 5
Fullscreen Screenshot 5
×

You are Little Johnny, a kid in dire need of a Halloween costume who has to make do with whatever he can throw together using household supplies. Once you have your costume, out into the real world you go for some trick-or-treating! But this isn't your average night in suburbia... many strange things are afoot, and it's up to you to solve the puzzles if you want to enjoy all the delicious Halloween candies!

Trick-or-Treat Adventure features:

  • A wide variety of puzzles to solve

  • Inventory items to combine

  • Characters to interact with around an insane neighborhood

  • Horror movie and pop-culture references

  • Retro-style pixel art

  • The forces of evil to battle

  • Achievements galore

  • Satan (yeah, we were just as surprised as you are that he agreed to do a cameo!)

All this and more can be found in this big Halloweeny tale inspired by the classic point-&-click adventure games of yesteryear!

Happy Halloween! 🎃

Trick or Treat Adventure
PestoForceDeveloper
PestoForcePublisher
2025-10-01Release
🎹🖱️ Keyboard + Mouse
🕹️ Partial Controller Support
🎮 Full Controller Support
6 user reviews (6 reviews)
Public Linux Depots:
  • [0 B]
Trick or Treat Adventure Pathfinding

In my efforts to post a [u]Trick or Treat Adventure [/u] update every week, here is a more technical deep-dive into one of the improvements for the Steam release...

[u]PATH FINDING![/u]

In the original web version of the game, it was pretty frustrating to get around because you would run into \"non-walkable\" areas all the time and there was no logic to smartly navigate your character around a room. And if you clicked something interactive, but weren\'t close enough or lucky enough to be able to walk right up to it, you\'d get an annoying message telling you to get closer.

[img src=\"https://cdn.cloudflare.steamstatic.com/steamcommunity/public/images/clans/45705236/7474facb561f867aedb010da97adad85604a3af5.gif\"][/img]

In the new version, we\'ve implemented better path finding! You might be thinking: \"Wow, you must have used some advanced pathfinding algorithm like A*!\" But you\'d be wrong... DEAD WRONG!

The way we did it is actually based on an old post by Aaron Worral about how he did pathfinding in [u]Johnny Rocketfingers 2 [/u]! Basically, you put down (as named MovieClips) some \"numbered nodes\" in strategic walkable areas of the \"room.\" These nodes can all \"see\" each other (direct line of sight) without running into non-walkable space. They\'re numbered, so they form a kind of \"ordered backbone\" to the walkable area of the room. You only need enough nodes such that every walkable area of the room can be seen by at least one node without hitting the non-walkable area.

[img src=\"https://cdn.cloudflare.steamstatic.com/steamcommunity/public/images/clans/45705236/8608e91843a760583e5445ce0105ea7151353b08.jpg\"][/img]

Here they are overlaid on the kitchen background/room from the game. The transparent red is the \"antiwalk\" (non walkable) area of the room. You can see how it feels like the room\'s \"spinal cord\" and each vertebrae can allow access to areas of the room it can see directly (direct line of sight).

[img src=\"https://cdn.cloudflare.steamstatic.com/steamcommunity/public/images/clans/45705236/3ebd441e8954b83f3c7c1721b63f823f8c57d4e5.jpg\"][/img]

Then the rest of the logic is pretty simple:

[olist]
  • On a click, can the player reach the destination without hitting antiwalk? Just go directly there.

    [/*]
  • Is the destination blocked? Ok, get the node nearest the player and the node nearest the destination. Figure out if the node nearest the destination is greater than or less than the node nearest the player (this tells you which direction on the spine you need to move). Move the player to the spine node nearest him.

    [/*]
  • Navigate along the spine (either increasing or decreasing node number based on step 2 above).

    [/*]
  • You can either wait \'til you reach the node nearest the destination and then walk to destination, OR you can just constantly check if the destination is \"in direct line of sight\" with the player, and as soon as it is, walk to the destination.

    [/*][/olist]

    It\'s really that simple! Of course you need to write some code that uses a while loop to do the direct line of sight checking (using trigonometry to crawl along the hypotenuse of a triangle in small increments to see if you hit the antiwalk at any point). That\'s probably the most \"complex\" part, but you can do it!

    The code might look something like this (wow Actionscript 2.0!!!):

    [code]// determines if player x,y has a direct line of sight to a destination point\n// without hitting the antiwalk\n// allDots = \\[] // uncomment this to visualize what this code is doing\nfunction hasDirectLineOfSight(x, y, who) {\nvar distx = x - who._x;\nvar disty = y - who._y;\n\n// hypotenuse of the triangle!\nvar hyp = Math.sqrt(distx * distx + disty * disty);\n\nvar dx = distx / hyp; // 1px increment in desired direction for x\nvar dy = disty / hyp; // 1px increment in desired direction for y\n\nvar startx = who._x;\nvar starty = who._y;\n\nfor (var i = 0; i < hyp; i += 6) {\nstartx += dx * 6;\nstarty += dy * 6;\n\n/*\n// use this if you want to actually visualize what this code is doing...\nvar d = wrap.attachMovie(\"vtest\", \"vtest\" + i, i + 8888);\nd._x = startx;\nd._y = starty;\nallDots.push(d);\n*/\n\n// checking if we\'re hitting the antiwalk\nif (wrap.aw.hitTest(startx + wrap._x, starty + wrap._y, true)) {\n//trace(\"hit antiwalk!\");\nreturn false;\n}\n}\n\n//trace(\"clear!\");\nreturn true;\n}\n[/code]

    Hopefully that made sense!

    Here\'s the final result, sooooo much nicer to play now!

    [img src=\"https://cdn.cloudflare.steamstatic.com/steamcommunity/public/images/clans/45705236/2f66e58ad613bfd8bda39430374b2cefb0991787.gif\"][/img]

    Thanks for dropping by, we\'re very excited to keep adding new stuff and improvements to this game for everyone here on Steam!

    --Nick

  • [ 2025-08-08 01:28:04 CET ] [Original Post]

    Minimum Setup

    • Processor: Intel (2.5 Ghz. single core) or betterMemory: 2 GB RAMStorage: 100 MB available space
    • Memory: 2 GB RAMStorage: 100 MB available space
    • Storage: 100 MB available space
    ⭐ SPOTLIGHT DEAL ⭐
    METAL GEAR SOLID - Master Collection Version
    METAL GEAR SOLID - Master Collection Version
    $14.99
    -25% OFF
    Fanatical
    GAMEBILLET

    [ 6372 ]

    1.17$ (92%)
    13.02$ (13%)
    49.77$ (17%)
    16.39$ (18%)
    29.02$ (17%)
    4.87$ (19%)
    16.57$ (17%)
    8.28$ (17%)
    16.98$ (15%)
    26.65$ (11%)
    41.47$ (17%)
    33.59$ (16%)
    3.12$ (84%)
    3.59$ (82%)
    16.79$ (16%)
    16.57$ (17%)
    24.87$ (17%)
    16.57$ (17%)
    33.17$ (17%)
    24.87$ (17%)
    8.39$ (16%)
    29.02$ (17%)
    8.27$ (17%)
    7.54$ (16%)
    24.87$ (17%)
    1.44$ (79%)
    33.17$ (17%)
    1.95$ (80%)
    4.14$ (17%)
    9.33$ (38%)
    FANATICAL

    [ 5878 ]

    58.09$ (17%)
    35.89$ (10%)
    81.99$ (18%)
    23.89$ (20%)
    14.99$ (25%)
    23.89$ (20%)
    33.19$ (17%)
    33.59$ (16%)
    15.89$ (21%)
    33.59$ (16%)
    33.99$ (15%)
    57.39$ (18%)
    61.59$ (12%)
    57.39$ (18%)
    14.99$ (25%)
    33.99$ (15%)
    70.39$ (12%)
    67.99$ (15%)
    23.89$ (20%)
    50.88$ (15%)
    26.88$ (10%)
    76.49$ (15%)
    84.89$ (15%)
    59.87$ (25%)
    49.79$ (17%)
    65.99$ (12%)
    84.99$ (15%)
    44.99$ (25%)
    23.89$ (20%)
    61.49$ (25%)
    GAMERSGATE

    [ 1991 ]

    4.05$ (86%)
    1.5$ (81%)
    1.31$ (81%)
    30.0$ (50%)
    3.19$ (79%)
    1.58$ (77%)
    3.06$ (83%)
    1.11$ (91%)
    8.49$ (58%)
    3.51$ (88%)
    6.38$ (79%)
    1.45$ (91%)
    1.58$ (77%)
    1.58$ (77%)
    1.28$ (87%)
    3.87$ (70%)
    0.43$ (91%)
    0.98$ (90%)
    8.49$ (58%)
    1.31$ (81%)
    1.28$ (87%)
    5.72$ (56%)
    15.0$ (70%)
    0.94$ (81%)
    0.56$ (81%)
    1.5$ (85%)
    2.55$ (91%)
    0.56$ (81%)
    5.95$ (70%)
    4.25$ (83%)
    MacGameStore

    [ 1943 ]

    53.99$ (10%)
    1.99$ (87%)
    1.99$ (80%)
    9.49$ (5%)
    1.19$ (94%)
    2.99$ (75%)
    4.99$ (50%)
    1.19$ (76%)
    1.49$ (85%)
    1.19$ (88%)
    1.19$ (88%)
    4.99$ (88%)
    1.89$ (81%)
    4.99$ (88%)
    1.39$ (90%)
    1.19$ (88%)
    1.29$ (84%)
    0.99$ (93%)
    1.19$ (88%)
    1.10$ (84%)
    1.19$ (76%)
    2.49$ (75%)
    1.19$ (91%)
    1.69$ (83%)
    1.09$ (96%)
    21.99$ (27%)
    0.99$ (80%)
    1.19$ (40%)
    42.49$ (15%)
    9.49$ (5%)
    INDIEGALA

    [ 986 ]

    3.99$ (69.28%)
    1.79$ (90.0%)
    2.39$ (80.0%)
    1.19$ (70.0%)
    2.99$ (80.0%)
    0.79$ (90.0%)
    3.29$ (67.06%)
    3.99$ (80.0%)
    1.49$ (85.0%)
    3.99$ (90.0%)
    2.24$ (85.0%)
    3.65$ (75.65%)
    1.49$ (90.0%)
    13.99$ (53.35%)
    0.4$ (59.0%)
    1.29$ (90.0%)
    0.99$ (90.0%)
    3.49$ (65.0%)
    2.24$ (25.0%)
    0.99$ (90.0%)
    1.99$ (90.0%)
    2.49$ (50.0%)
    1.79$ (90.0%)
    0.89$ (90.0%)
    0.69$ (90.0%)
    0.99$ (90.0%)
    3.49$ (65.0%)
    2.49$ (90.0%)
    0.89$ (90.0%)
    0.59$ (80.0%)

    FANATICAL BUNDLES

    Time left:

    356099 days, 12 hours, 53 minutes


    Time left:

    356099 days, 12 hours, 53 minutes


    Time left:

    3 days, 20 hours, 53 minutes


    Time left:

    31 days, 20 hours, 53 minutes


    Time left:

    34 days, 20 hours, 53 minutes


    Time left:

    35 days, 20 hours, 53 minutes


    GMG BUNDLES
    Indie Adventures

    Time left:

    9 days, 6 hours, 53 minutes


    HUMBLE BUNDLES

    Time left:

    4 days, 14 hours, 53 minutes


    Time left:

    10 days, 14 hours, 53 minutes


    Time left:

    11 days, 14 hours, 53 minutes


    Time left:

    16 days, 14 hours, 53 minutes


    Time left:

    18 days, 14 hours, 53 minutes


    Time left:

    22 days, 14 hours, 53 minutes


    INDIEGALA BUNDLES
    Huge Pixel 2 Bundle

    Time left:

    2 days, 3 hours, 54 minutes

    Adult Positions 2 Bundle

    Time left:

    6 days, 20 hours, 54 minutes

    Holiday Tales Bundle

    Time left:

    8 days, 19 hours, 54 minutes

    Psycho Gates Bundle

    Time left:

    14 days, 3 hours, 4 minutes

    by buying games/dlcs from affiliate links you are supporting tuxDB
    🔴 LIVE