FoonLudum Dare ExplorerLD55 → Astro Heart

Astro Heart

By quasilyte

View on ldjam.com

CategoryRankScoreCount
Overall1333.6329
Fun1853.3529
Innovation1063.6329
Graphics1443.6129
Audio1413.3129

Comments

pupirka 2024-04-15 09:56

Respect for using go! I've seen your stream on Youtube :smile_cat:

ooboob 2024-04-15 10:44

Wow, this is a cool concept. A bit intimidating to get into, though. I wish there was something to ease me into using the software. I think I get it, but the amount of options are a bit overwhelming to me

stmate03 2024-04-15 16:41

A cool concept for a simple auto-battler, with some extra things like a career/arena mode and maybe a tutorial and extra bits and bobs this would be a really fun little auto-battler

mrwarranty 2024-04-15 16:50

I agree with @ooboob that the interface was just a little too overwhelming here. The level of professional design is clearly there but perhaps going for a simpler proof of concept that gets the player right into it might be more appropriate for a jam?

binroot 2024-04-15 16:51

I could totally see this fleshed out into a full-on game! Imagine starting out with only basic components and slowly unlocking new ones. Reminds me a bit of Nimbatus (on Steam). Nice job!

quasilyte 2024-04-15 16:53

@stmate03 to be honest, I'm not planning to get this anywhere.

I needed to play with a visual programming part for my other game. So in a sense, this jam was useful for me. But as for this exact game, it's as good as it gets. :D

The system I ended up with for coding behavior could be better if I had more time. But at least I found a couple of things I like. For example, I like the idea of linear branches instead of a full-fledged trees for the logic. It's more limiting, but this pattern matching approach can make reading larger programs easier for non-programmers (because you just read them one by one, not as a whole tree). Or maybe I'm wrong and it won't scale. We'll see.

The argument/param stack was probably a dire mistake. It makes things harder without much benefits. I mean, it's a way to pass extra data to the instruction and it borrows from the languages like Forth or stack virtual machines (e.g. JVM), but there are better ways to do that. But I thought it could work pretty well in the beginning (I was wrong).

So all in all, I'm mostly interested in the visual programming part of the game than the auto-battler part.

fredrik-andersson 2024-04-15 16:55

Steep learning curve but this is a really cool game concept. It has a lot of potential! World have been great if in the first level you just reach a target position, second is attacking target practices and so on.

Oh and maybe hardware would be purchased from loot rewards

The presentation feels super tight, it could be shipped in this state

quasilyte 2024-04-15 16:56

@binroot my idea is to make this a foundation for allied and hostile units programming. The player could configure the behavior if they want to, but otherwise this system can be used to create tons of units with varying behavior using the in-game terms. The visual programming part would become more of a mini game for a bigger scale game.

Although I can see a space battle game that rivals Carnage Heart, I'm not sure I want to make a game where coding is the central part (it should be an optional mini-game that is connected to the bigger game directly). This prototype is just my way of experimenting with the idea. :) It was a productive weekend in terms of testing out the visual programming aspect of my next project.

See my other comment above for some more context.

stmate03 2024-04-15 16:57

@quasilyte Completely valid, I was focusing on visuals for my game over the actual gameplay so I know how it is to focus on a certain aspect, also lot's of interesting insights on the game's working. I hope you have fun with the visual programming aspect of the game then!

quasilyte 2024-04-15 17:01

@stmate03 I'm also having fun by playing games we made during the jam. :) It's probably the most social activity (albeit online) I did in a while. I hope you have fun too.

woona 2024-04-16 08:25

It is fun trying to use visual programming to figure out the best strategy for each opponent. But I found myself not knowing exactly how my ship will actually follow the instructions, especially with moving. I think a huge improvement would be some kind of a sandbox: seeing your ship moving while you're changing movement instructions. My ship kept going off-screen!

Other than that, I liked the variety of weapons and opponents. Very fun and there is a lot of space for different strategies. Great job!

quasilyte 2024-04-16 08:38

@woona the "Test" button was intended to simplify the testing process, but sandbox idea is even better. A live coding of sorts would be pretty cool.

You know what. An on-the-fly program reload in that sandbox could be used for something other than combat. Imagine a "play sound" instruction that would trigger on some conditions. And maybe something to render on-screen notifications. That would allow a creation of programs that would do something interesting coupled with the game mechanics (movement, energy management, and other things that can control the branching). This kind of sandbox would be fun to have. I'm gonna write this idea down.

quasilyte 2024-04-16 08:45

@woona there are two main things that make movement bad: 1. A bug with "rotate to point" that may take a longer route 2. A very floaty physics with high inertia

While (2) is fun, it makes movement highly unpredictable. I think it should be either reduced significantly or there should be some ways to counter it, programming-wise (like turn extra engine that would compensate for the current inertia).

woona 2024-04-16 09:16

Oh, I see! I thought inertia was by design but didn't notice bugs because exact information about movement is obfuscated and I didn't test the game thoroughly.

Just another thought, maybe inertia could be tied to ship class or there could be different engines. So, for example, you can have more inertia, but more health or more speed as a benefit.

quasilyte 2024-04-16 09:21

@woona inertia was coded by design, but it turned out to be a bad design choice in combination with a zero instrument selection the game provides to handle it.

Btw, I remember your Auto Pilot game. We definitely "met" before on the internet. :D Long time no see.

frogravity 2024-04-16 15:45

I couldn't beat level 6 for the life of me, and even when I tried to cheat by looking at your video, it didn't show the winning strategy :(

Anyway, this was awesome! I'll admit that upon seeing the software interface for the first time, I burst out laughing at how overwhelming it was. Still, after looking at it more, it was pretty intuitive. Trying out a bunch of strategies was fun - even if most of them failed miserably - and cheesing levels 4 and 5 by staying put and spamming homing missiles was really funny.

The balancing was a bit all over the place (like most compo entries), but it wasn't too bad aside from the aforementioned way too hard level 6. The extremely wonky and unpredictable movement made most strategies besides staying put/directly chasing the enemy seem unviable, which was a shame considering two of the three ships seem designed around such tactics. I tried creating a Pusher build, and it just failed miserably - I think the ability to push ships by bumping into them would've been nice. But again, totally understandable given the time constraint.

Also, as others have mentioned, it was very confusing at first. The delay before a tooltip shows up was a bit too long for my impatient self, so I didn't realize they existed until reading your description. Also, there was no notification or something when you unlocked new weapons, so I only discovered them by accident. And lastly, locking the settings and credits buttons was... an interesting design decision.

Overall though, I had loads of fun, and ended up playing it for like half an hour. Really great entry!

quasilyte 2024-04-16 18:12

@frogman I created a basic main menu layout from the start and disabled the buttons that were "yet to be implemented". I didn't had any time/energy to implement them in the end. :D

The movement is kinda broken, that's true. I wish I would spend 30 more mins to make it more predictable and enjoyable.

My friend managed to beat level 6, but it's not a fair level. It's there to add some real challenge to the game after you learned the basics. :)

win.jpg

ilari 2024-04-16 19:34

This is a cool concept! It was somewhat tedious to fiddle with the "software". At first it was confusing how different actions work, but not long after it got clear. Some of the actions seem useless but I can imagine they would be useful in a more complete scripting system. The boss was tough and after that I got to a "hidden" level 7... which froze the game :D. I like how many different weapons you got in! Overall nice work!

duudel 2024-04-17 15:26

Looks great and seems quite complete, but it was a bit too hard for me to grasp. Would be nice if there were a couple of simpler tutorial levels first, but that of course would be a lot to ask for such short time frame. During the battle maybe the simulation speed could be a bit faster so it does not take so long for the battle to end.

dvdagames 2024-04-20 12:05

Being able to quickly copy and paste, insert a new item before/after another item, undo/redo, etc. is super helpful when dealing with visual programming and these quality of life features become more important as the complexity of a programmed chain increases. Would love to have a quick reference to hardware - like which weapon is equipped and what are its stats - when programming the weapon logic.

Definitely an interesting concept.

daandruff 2024-04-21 14:16

Very hard, but maybe with some tutorial levels before unlocking everything it would be a bit more approachable. Nice work though

sharploaded 2024-04-21 14:47

YEEES! Finally! Spent at least half an hour on the last level. Great game! Rotation bug is a bit unfortunate, makes any "just act as a laser turret" build impossible. I feel the out of bounds should work the other way. Could not think of any use for it as it works now, as it also pops the stack so if you want to use the value you checked for, you can't. Anyway, super fun. Great job!

quasilyte 2024-04-21 15:22

@sharploaded this rotation bug was in there for quite a long time in my math library. :D I never had enough motivation to fix it, but I actually did after this jam due to the amount of pain it inflicted. :)

henk 2024-04-21 16:10

I've never played Carnage Heart, but I like the programming and combat simulation idea. It's also impressive how many features you were able to pack into the game given the time limit. It didn't _really_ feel like I had much control over the ship, though. Trying to strafe the enemy bullets using nothing but random offsets feels pretty limiting, and I was heavily relying on flaws in the enemy strategy when making programming decisions (something which did _not_ help me in level 6, which I was unable to beat). I think it would help if there were some math operations available, like addition, subtraction, scaling, dot/cross product, etc. Some other thoughts and things I noticed: - "rotate towards" often taking the long way around is pretty frustrating to deal with, since it felt like it was pretty much random whether the ship would move in the way I wanted it to - The tooltip delay seems a bit long. It might be better to simply not have a delay before the tooltip appears, since I needed to check it frequently for things like weapon range and timing. - I couldn't really tell what units the lengths were in, so it might have been nice to have a message like "the arena is X units wide" or something, or even an on-screen ruler. - It'd be nice to maybe have a way to look at the enemy software/hardware before the round starts - I couldn't tell which weapons were thermal weapons vs the kinetic and energy weapons just by reading the description, and it was even harder to do so for the enemies' bullets, which are just barely-distinguishable colored dots. I had to do a series of test runs with each shield type to see which one was actually the most effective.

All in all, though, it's a solid entry.

yanato 2024-04-21 17:14

It works but battles a little bit long. And also starships flew over the bounds of screen:D Wish you to make some controls for them :3

kiv 2024-04-22 09:56

The scpope of the game is huge! It's pretty complex and solid, and also fun. Great job!

rubixnoob13 2024-05-04 00:59

Cute graphics, solid sound effects. I don't think I have the brainpower at the moment to make anything that actually does well in combat though :rofl: Great job!

quasilyte 2024-05-04 13:56

@rubixnoob13 well, due to the rotation bug you would probably suffer anyway. :) I kinda feel rough to put people through this.

But the bright side is, I managed to come up with some partial solution for my visual programming task. Post-jam brainstorm with the "lessons learned" lead to the value stack concept elimination as it's both hard to use and understand (but it was easy to implement during the jam).

I wanted to check out your game but it seems that I already completed it. :D I remember it being many-things-in-one experience. :D