packet.Breach() by Celtican

[raw]
made by Celtican for Ludum Dare 53 (JAM)

LDIcon.png

A unique strategical tower defense about hacking.

RED.gif

You awaken in a haze, with hardly a memory of what happened the day before. In a stupor, you arise and log in to a forgotten server, an unrecognizable sense of urgency permeates your actions.

But of course, this is only the beginning of the rabbit hole. Just how deep will it go?

Play Now on itch.io!

Terminal.gif

packet.Breach() is a 180 degree spin on the classic tower defense formula. As a game designer, and as an avid tower defense enjoyer, I have two design problems with the typical tower defense formula: - Towers, when placed, remain on the field nearly indefinitely. - Towers are also entirely independent, granting no synergy to other towers.

packet.Breach() is my take on what tower defenses could truly be, distilled to the core. packet.Breach() exudes comprehensive simplicity, yet breathes intelligent elegance. Easy to learn, difficult to master.

Portal.gif

Tips

This game is difficult! In order to beat the game, you must demonstrate a solid understanding of the mechanics and strategy.

  • You can hold up to three towers (stock) at a time. If you have three towers in your stock, you aren't generating additional towers!
  • Each packet (bullet) can only be modified by each individual Modifier tower once. (If a packet crosses through 2 different Sting.breach towers, it will still gain +2 damage)
  • When a wave is completed, the screen will move over by 3 tiles. Towers that are outside of the screen bounds cease to function. Plan accordingly!
  • When an enemy touches the left edge of the screen, you lose a heart, and the wave restarts.
  • Gemicorn.breach (duplicate and split) towers are naturally better than snake.breach (rotate clockwise) and counter_snake.breach (rotate counterclockwise) towers, since Gemicorns rotate in both directions anyways. Plus, you can potentially utilize an extra packet!
  • Place your Modifier towers in an order that grants the greatest bonus! For example, Sting.breach (+1 damage) should always be placed before Fatale.breach (x2 damage) towers.
  • Likewise, try to stack as much damage on packets as you can before they get placed in a duplicator!
  • If your tower setup is strong enough that it shreds enemies, don't keep improving it! Instead, try to set up another chain of towers farther ahead, with the intention that you will continue to have a strong setup even when the screen shifts past your previous setup.
  • Defeating enemies as quickly as possible can be a detrimental strategy, due to the fact that you gain more stock (towers) if a wave lasts a while.
  • Pause the game to think through things! You can still read descriptions and place towers while the game is paused.

Labyrinth.gif

Credits

Celtican: Programmer, composer, game designer

Gardenovena: Artist

"Delivery" Theme?

The theme for the jam was "Delivery." It's not obvious how we interpreted the theme, so humor me for a moment:

The easiest way to interpret "Delivery" for a game jam is to make a game that has the player delivering something. Mail, pizza, babies, etc. However, we are natural contrarians, so of course we had to make something different. Let me explain:

In packet.Breach() (emphasis on the word "packet"), you are a hacker that is hijacking servers and injecting your own commands into them. Gameplay-wise, this is represented as a tower defense where you manipulate packets (bullets) that are part of the server (level) using your 1337 h4x0r programs (towers). This interrupts the security trace programs (kills enemies) that seek to cause you harm. These packets are normally harmless streams of information—a user's shopping cart, a request to watch a video, a government log, or anything else, really. Without you, they are still delivered to their intentional destination. However, you, the 1337 h4x0r that you are, are able to manipulate them to overwhelm the security protocols and continue breaching the server. As a result, you're basically causing server 500 errors left and right for standard users. It's all a giant metaphor really. It's basically art!

Thus, we didn't interpret the theme as "you are delivering something." We interpreted the theme as "you are interrupting the delivery of something." Yes, we literally went in the opposite direction of the way the theme intended :joy:

Anew.gif

Why Do The Towers Look Like That?

The tower arts are a reference to the Cyberpunk (TTRPG series, but more specifically Android: Netrunner) interpretation of the internet. Think Tron, where everything is represented with a digital VR avatar. Programmers create unique avatars to pair with their programs. One programmer might create a "Revolver" program that simply appears as a gun, while another programmer might make something a bit more unique.

Such is the case in this game, as well! Each tower was crafted by a different hacker, each with its own unique properties and effects. Fun fact: the (arguably) strongest tower in the game matches the player's color scheme, I wonder what that could mean :eyes:

Changes Made During the Bugfix Window

  • Balanced the game a wee bit. Bite me. Seriously, it was unplayable beforehand.
  • Fixed tutorial prompt immediately disappearing at the start of the game.
  • Fixed enemies damage sounds being incredibly quiet.

Known Bugs

  • If the game is paused while enemies are spawning tightly grouped, the enemies can "clump together" and appear like one enemy. Sometimes, this "super enemy" is invincible to damage. I recommend pausing the game while enemies are not spawning.

Scylla.png

Ratings

Overall 61th 4.208⭐ 26🧑‍⚖️
Fun 40th 4.229⭐ 26🧑‍⚖️
Innovation 19th 4.375⭐ 26🧑‍⚖️
Theme 797th 3.688⭐ 26🧑‍⚖️
Graphics 424th 3.938⭐ 26🧑‍⚖️
Audio 220th 3.833⭐ 26🧑‍⚖️
Humor 288th 3.604⭐ 26🧑‍⚖️
Mood 157th 4.083⭐ 26🧑‍⚖️
Given 20🗳️ 23🗨️

Feedback

Osvaldo
02. May 2023 · 16:45 UTC
Really enjoyed this entry, appreciated the game's design and enjoyed the humour on the introduction! Great job Celtican and Gardenovena!
Digx7
03. May 2023 · 00:53 UTC
this game is wildly good, one of the best submissions I've seen yet. The tower defense is so unique, and the progression incentivizes new systems/combos, solving one of the critical issues of tower defense games.

One note, I think the clockwise/counterclockwise are reversed. Additionally, it might be nice to have more lives!


Good job!
LDJam user 281060
03. May 2023 · 01:01 UTC
Holy crap, amazing! You should really put this on Steam and charge money, and then let me know as I'll buy it haha. The writing was great. The gameplay was imaginative and new and really fun. Overall this is just incredible.
Trying to come up with some feedback: dropping the towers didn't feel very tactile and slightly awkward. The forced scrolling thing was very interesting but also a little a frustrating to not know what was behind us that we'd already placed.
But I can't overstate how impressed I was with this. Nicely done!
🎤 Celtican
03. May 2023 · 02:54 UTC
Guys, stop rating my game before I decorate the page :sob: I'M A PERFECTIONIST OKAY

@osvaldo Thank you! The dialogue gets a tiny bit darker towards the end of the game, but I'm worried that the game is too difficult that most people won't make it past level 2 anyways! There are 3 levels in total: a beginner green level, a labyrinth teleporting crazy factory blue level, and a death zig zag red level. Fun times! While you're here, I love your trash game, looking forward to the release :tada:

@digx7 `"solving one of the critical issues of tower defense games"` EXACTLY! This idea was something that I came up with a while ago, when I realized that I had two problems with tower defenses (even though I love TDs):
A) When you place down a tower, it sticks around until the end of the game.
B) Towers don't synergize with each other, they just add damage to enemies.
Of course a lot of TDs solve these in straightforward ways (like "enemies can damage your towers" for instance), but eventually I came up with this weird Factorio math TD idea... and here we are. The clockwise/counterclockwise towers are correct, but the concept of "rotating velocity" is not very intuitive and so we struggled to figure out a good way to portray it. Alas! And for the lives, I 100% agree, I just had so little time to balance the game :eyes: Looking back, I think maybe a mechanic like "when you complete a wave without losing a life, you gain a life" would be best. Thank you!

@darzu Even though I didn't have as much time as I wanted to to polish this (IRL stuff, you know how it goes), I'm definitely really impressed with how solid the concept came out. I definitely want to break my convention of "don't update jam games" for this title, it's just too good to pass up. Very good constructive criticism as well, I agree with your points—although I hadn't thought of being able to see what's ahead of the camera. I like that idea, thanks! ... And thanks for complimenting the writing, I wrote it on Monday and was really worried that it was too cheesy :sweat_smile:
Digx7
03. May 2023 · 06:22 UTC
@celtican Game balance is so so tricky. When designing D'erp's Delivery Debacle, we had to strive to create "multiple fail states." A mistake should be a learning opportunity, not instant failure. I definitely appreciated the design of "lose life, kill all enemies on board."

Hmm, I'm not super sure about “when you complete a wave without losing a life, you gain a life." In this implementation, the players who gain lives are the players who show mastery of the game and don't need the life?


For this game, a tutorial would be really important. You have a wonderful and unique twist on tower defense, the most important thing is to communicate that to the player.

a plug: if you want a fun 20 minutes, check out D'erp's Delivery Debacle! After 4 game jams I'm pretty proud of what my friend and I were able to make! (make sure to read the how to play)
Digx7
03. May 2023 · 06:22 UTC
whoa, I didn't notice the cool decorations on the page, nice!
Abram
04. May 2023 · 00:32 UTC
Very interesting approach to the genre. I was a bit confused at first but after I got the hang of it I had a lot of fun. I think this is a very cool idea. I don't think I have seen a game quite like this before. Great work!
LDJam user 86735
05. May 2023 · 16:22 UTC
This looks so cool
highskies
05. May 2023 · 17:01 UTC
unique backstory and game
Slightly Ajar
05. May 2023 · 18:00 UTC
I love tower defense games, and this one is definitely up there near the top of my list. I really liked the concept, and the story introduced looked like it would be a good one. I couldn't get through all the waves so I am not sure what happens next. I'm very impressed with what you were able to accomplish in 3 days. I will definitely be revisiting this one!
Lisek Gagatek
06. May 2023 · 22:36 UTC
Gameplay-wise it's an awesome game. Really good mechanics, challenging levels and a lot of strategic depth, that kept me hooked for long. I also love the IRC chat and conversation - on point and looking authentic :P

That being said, the game has some big issues. The main one is that the graphics, while good looking, are really unreadable in game's context. I can barely see enemies and the bullets look too similar to them. It's very hard to actually see what's going on.

Being unable to sell towers, even for free, is also quite punishing. The game makes you place towers as soon, as you can, because sitting at 3 stock towers essentially loses value for you. This means that placing excessive turrets, that will be used later when the game field scrolls a bit to the right, should be a common strategy. Buuuut, if you misplace the tower, you can make it impossible to split bullets later on, which can lose you a game on it's own. The fact that you can't see the full map also adds to the associated frustration. You should either be able to scroll the map, or remove/sell towers.

Even though my comment may seem more like a rant, I find the game awesome to play and would gladly play more polished version on steam or sth. Very good job guys/gals.
Gardenovena
07. May 2023 · 01:29 UTC
@lisek-gagatek
Thank you so much for playing! We really appreciate constructive feedback, so don't feel like you're ranting.

I did some of the graphics (wanted to do more, but had final exams during ludum dare :upside_down: ). I think you're totally right about the enemies/bullets not being super visible. The design of the enemies is more or less the same as the early dev art, as we ran low on time we just stuck with them, but pretty quickly after publishing we noticed this problem too. Definitely, this was a good lesson to prioritize clarity for important game objects earlier in the process.

Slight tangent, someone else above mentioned confusion with the clockwise/counterclockwise towers. We discovered in early playtesting that this rotation of velocity was difficult to mentally calculate at speed, even with a visual aid. I spent a long time trying to find a way to depict this intuitively in the art, I still don't think I achieved that. I am wondering if we should have just scrapped those, leaving just the Gemicorn/splitter? :thinking: Ah, I don't know, but I am looking forward to maybe polishing this game up!

Thanks again for playing!
Lisek Gagatek
07. May 2023 · 09:35 UTC
@gardenovena Yup, I totally understand. In our team we've made an unwritten rule that "there are no temporary solutions", because if something is technically done during the jam, there are very high chances it won't be revisited anymore and will end up in the same form in the published game. Thus, you should always make proper implementation from the start :D
Link270
18. May 2023 · 03:56 UTC
Really cool game! I thought the begining sequence was fun just mashing away to type, and I laughed when it gave me a y/n option, I pressed n and it autofilled to y. haha The game itself is also a cool idea. I liked seeing all the different towers and how they all worked. It all seemed to work well. As others have mentioned the visibility could use a little work, and I also think a little more explanation would be helpful overall. That being said I did play for a bit and had a good time. I also was able to figure it all out after a try or two.

Nice work!!
MountainInn
18. May 2023 · 08:08 UTC
I like how this game somewhat tower defense with puzzle element, and is overall pretty unique.
I always mix up clockwise and counterclockwise snakes and end up sending my packets off the map. In such cases it would be nice to be able to sell last placed modifier.
This game needs the restart in situations when you already know that you gonna lose so you're not forced to sit and watch while enemies go from right to left.
One of the best games that i've seen on this jam.

P.S. The rust joke at the beginning is funny =)
🎤 Celtican
18. May 2023 · 16:52 UTC
Catching up on comments :muscle:

@abram Thank you! It's maybe not the most unique game I've made, but it's definitely out there. The tutorial I threw in literally last-minute, I wish I had gotten to that sooner :sweat_smile:

@lathomas64 It does! The lighting effects helped out a lot. I was worried that they would be difficult to implement, but it turns out it was pretty easy to have the setup that we wanted and I implemented it in maybe 15–30 minutes. Thanks!

@highskies Thank you very much! The story was originally going to be inspired by Johnny Mnemonic, and it was going to somehow involve the protagonist selling their memories to make room for more RAM in their brain or something, and the story would be about them trying to get their memories back. But I ended up pivoting in this direction, taking a little bit of inspiration from Mirror's Edge's "Project Icarus" and having the protagonist be the "secret weapon" against the hackers. I really stumbled through the transition scenes between the acts but hey, I'm a programmer at the end of the day, not a writer. Thanks for enjoying it!

@slightly-ajar Yeeeeep this game is hard. It took *me* an hour to beat. *Me!* I created the darn thing! Anywho, I definitely should have made Level 1 easier and I should have taken a bit of extra time earlier on to balance Level 2 (there's a few moments in that level with drastic difficulty spikes). Level 3 is fine, in my opinion. For a final level, anyways. I'm glad you enjoyed it!

@lisek-gagatek Thank you for the feedback! @gardenovena already commented, but to add a few thoughts: I'm thinking that it might have been a good idea to allow the player to overwrite towers with new ones, or have a bomb that deals damage to enemies and destroys nearby towers or something. I also like the idea of being able to see 3 tiles ahead, and getting a small amount of progress to the next stock whenever a tower hits the left edge of the screen. Ideas, ideas. Thanks for enjoying the game!

@link270 I was playing Tears of the Kingdom when I saw this comment, so your username was funny, heh. Anywho! Yes, I 100% stole the keyboard typing thing from Superhot. It works great in that game, and I figured it would work even better in this game, where you can pretend to be a 1337 h4x0r with a 300 WPM typing speed. If I ever continue working on this game, I'll definitely make optional tutorial levels where you learn by trial. Thanks for playing and enjoying the game!

@mountaininn I kept on trying to figure out how to describe the game, and I still can't really figure it out. I want to put the word "Factorio" in the description somehow, since all of the towers work together, just like machines in a factory. "Factorio Meets Tower Defense" or something, I dunno. You describing it as "Tower Defense with Puzzle Elements" isn't something I considered before, that's a good way to look at it. And yes, Rust lang has been voted the most beloved programming language for at least the past three years, so I thought it would be funny to insert a hot take in the narrative (don't worry, I'm a Rust fanatic myself, a rustacean). Thank you muchly for enjoying the game!
Rustywolf
18. May 2023 · 18:00 UTC
I cannot overstate how much I adored the intro. having the player type is such a wonderful touch.
TheSmellofOxygen
18. May 2023 · 19:29 UTC
This might be one of my favorite games of the jam. It's certainly the most polished I've seen! The art, vfx, sfx, and exposition are all top notch. The lighting around towers, the "hacker" typing, the way the beat seems to match the pulse of weaponry here all meshes so well. I will say I played level 2 for an HOUR and still couldn't beat the frustrating boss. No health display meant I couldn't even tell how close I was getting and a combination of the fact that the screen slide deletes all but one packet spawner, necessitating a load of ballistas ready for it, and the boss's large collision box triggering the screen edge before it even goes around the final two bends rendered it nigh-impossible for me. I reeeeally tried too. Paused and thought about placement. Must've played that segment 8 times. Wish I could have seen the finale! I'm so impressed at the UI, the tooltips, the fact that you included intro and exposition?! Truly astounding! It's criminal that you haven't gotten more ratings. This was a five star game down the board.

EDIT: I came back to it today and beat it! Glad I did. Dark ending. Got a bunch of medusae and killed the bosses.
LDJam user 202408
18. May 2023 · 23:32 UTC
Honestly one of the best games I've played in this jam even though this is the last day of voting! how did I not discover this earlier?? the mechanics are really well made and the gameplay is so fun and addictive that I found myself repeating a level again and again until I beat it despite me usually quitting after a few loses lol, I have no idea how you managed to find the time for so many mechanics and visual effects, I bet this is a rare case of teammates working efficiently and not getting in each other's way! the story telling aspect is also fun and really well thought out, all in all I enjoyed this a lot and I wish to see this amongst the top games this jam!

oh also the feather powerup if so freaking OP they stand no chance!
![ccc.PNG](///raw/8a6/13/z/5bdcd.png)
Corrupt Spaghetti
20. May 2023 · 00:38 UTC
Wow! Such a new and refreshing take on tower defense games. Love the overall vibes an aesthetic
🎤 Celtican
20. May 2023 · 02:02 UTC
@rustywolf Thank you! I've been experimenting with new concepts for main menus/intros in the last year or so. The typing is 100% stolen from Superhot, and being able to name the protagonist came from an idea I had [a few Ludum Dares ago](https://ldjam.com/events/ludum-dare/50/against-the-dying-of-the-light). And in a non-LD jam I made what is probably [my best main menu ever](https://celtican.itch.io/heart-string). Good times. Thanks for playing!

@thesmellofoxygen Firstly, nice username. Secondly, thank you! Thirdly, thank you for coming back to beat the game! It means a lot. Level 2 is definitely really hard with the boss... I, uh... didn't test it until the jam ended. Level 3 is way easier :joy: And yes, the ending is definitely dark. I don't know of any cyberpunk story that has a happy ending. Thanks for enjoying the game!

@0x-void-x0 Popcorn guy! Thank you for enjoying! You're the first person in this comment section to mention the `Scholar.breach` towers, I didn't realize that they were that powerful until a friend played through the game and managed to get a bunch of them and abuse them. I always considered `Rosett3.breach` (the green flower that triples packets) to be the most powerful tower until I saw him abuse the hell out of a few `Scholar.breach`s. If I continue working on the game, I'll probably create a common version of the tower that doesn't duplicate packets and instead just slows them down, it's a solid strategy. You don't need bullets everywhere, you don't need 10 `Fatale.breach`s (Medusa heads), nothing like that. A few `Scholar.breach`s will do. This is the kind of game that is meant to be abused, thanks for abusing it!

@corrupt-spaghetti This whole idea came from a GDC talk ("Cursed Problems in Game Design") that talked about player perceptions and how some games do not satisfy those perceptions, creating a "cursed problem." So, I identified that there were some cursed problems in typical tower defenses: A) players expect to always be building towers, but towers stick around forever and clog the screen, and B) players expect to strategize, but towers don't synergize and the best strategy is usually to just build the strongest tower. Lots of brainstorming later, and here we are! Thanks for playing!

---

Looking forward to ratings coming out tomorrow :fingers_crossed: