Ludum Dare 51 September 30–October 3, 2022

Build chariots and defeat the rats

Link to the game:

* https://ldjam.com/events/ludum-dare/51/carton-carrier *

EVERY TEN SECONDS making unmanned vehicles to defend against the rats’ attacks, chase down the rat’s lair fortress and defeat them to retrieve the blueprints!

flag2.gif

Cache_-30fd15d48b8ae650.png

Version 3.3.5

Changed endings. Added complexity. Improved background.

Overheated Laser post jam version

overheated-laser-cover-5-4_postLD51b.png

Improvements over original version based on other users' feedback:

  • Backgroud music added.

  • Show next level right after completing previous one.

  • Change crosshair to red when laser cannot be fired.

  • Move cannon towards selected mine when shooting.

  • Reduce worm-hole speed rotation.

Play postjam version here.

Thank you all for your feedback!

Play and rate jam version here.

The cat has a question

cat2.gif

You didn't play?

Then you can, together with our heroes, live such an important and unique 10 seconds :heart:

To do this, follow the link here or Itch

New cards coming soon!

tease.png The next extra version will include new cards, card drafting, new enemies and more!

Final stream starts in 1 hour: Let's play (and rate, and analyze) Ludum Dare 51

Fourth and final streaming session of LD51 games starts in an hour at 5:30pm / 17:30 CEST. Last chance to see your game featured on my channel, submit here... https://forms.gle/ZcFWhKuw6Yojvoxz5
... and join the stream for a much higher chance to get picked :blush:
Looking forward to seeing you and your games there!
https://www.youtube.com/watch?v=JWDRP3KwO-E

Match it fast !

Wow some one was really motivate on our game :o Does anyone can beat him ? You still have seven days to try ^^

https://ldjam.com/events/ludum-dare/51/match-it-fast MatchIt.PNG

NEED RATINGS - Be a brave archer who travels the worlds!

Hey! I still need some ratings! :( https://ldjam.com/events/ludum-dare/51/arrows-between-worlds

imagemem2022-10-14/em123841446.png

📖Description

In Arrows Between Worlds, you control a brave archer who travels the worlds to train his aim, while eliminating mysterious creatures.  Master the art of target shooting, and try to reach higher and higher scores in this super fun arcade shooter!

Important note: To improve the accuracy of your shots, you must load the shot by holding down the shot button! Also, while you are loading, your character stays still.

⌨️Mouse & Keyboard Controls

WASD - Movement 
Mouse - Aim and Shoot (hold to charge)

🎮GamePad Controls (not optimized yet)

Left Analog Stick - Movement and Aim
X - Shoot (hold to charge)

Proudly developed with Game Maker.

Itch.io Page: https://patrocinioluisf.itch.io/arrows-between-worlds

Ludum Dare Viewer v1.1.0

ld.jpg

Ludum dare viewer v1.1.0 is on itch.io. Windows ONLY! You can make build for your platform by yourself. Check repository's docs.

  • added EXTRA category in filters

Is anyone having "sidebar clock" problems?

ldclock.png

I received a report that some people were seeing ~84 days left on the sidebar clock. Is anyone else seeing this?

I pushed a change that might have fixed it (just refresh), but I haven't heard back from the original reporter if it helped. There's also a small chance that some folks may note even see the countdown clock in the sidebar.

Please let me know if you see any clock weirdness. Thanks!

Third times the charm?

This was my third time participating in Ludum Dare! Here's a short introduction to my game and a recap of the event from my point of view.

retry10

ldjamemtrailer/emshort_gif.gif

You were tasked to work on a new experimental teleporter system. Unfortunately you make a mistake when programming the teleporter which results in a teleport retry loop every 10 seconds. To end the loop and fix your mistake you must make your way to the teleporter programming tool and workstation to reprogram the teleporter. However it will not be easy as you must use the teleport loop to your advantage to overcome some obstacles on the way.

Check it out here: https://ldjam.com/events/ludum-dare/51/retry10-a-bug-in-the-teleporter-code

Behind the scenes

This was my third time participating but it was not to be that I would make the compo timing yet again. Few hours before the compo ended I was still somewhat hopeful but as it seems, finishing a game takes quite a bit of finagling and I ended up needing maybe 5-10 hours more time. I think I could have hit the timing if I worker longer on the first day as I started late and ended kind of early.

I was somewhat happy with preparation this time as I did prepare by installing all the software before hand and refreshed my memory a little bit on blender and unity during the week before. Also I did a little bit of brainstorming on the day before and came up with some ideas for all the potential themes that were on the vote.

As it happens I was kind of expecting the final theme and actually had a decent idea for it even before the start so I didn't have to spend too much time on the game idea. The basic idea was a teleport loop where player would be returned to the teleporter every 10 seconds. To finish the game the player would have to solve some puzzles that (hopefully) involved the teleporting mechanism.

All in all I'm fairly happy with the end result. The modeling and texturing was super fun as I probably made 5x the amount of models that I'd ever done before the event so I got a lot of practice this event. What I could've improved on would be to have some more sound effects, couple more puzzles and some hints or visual cues for the player for what they should do next. And the title screen once again kind of sucks :D, atleast this time it has some elements from the game but the buttons and game title look out of place. I really need to practice making some title screens and menus and such for the next event.

I really liked working on the game and got really inspired to work on some new games as well.

Thanks for reading and checking out my game, leave a comment and I'll check out your game as well!

RandoBots AI Algorithm

RandoBots is a VS arena game we built for Ludum Dare 51.

Two players are on the game field - one is a turret shooting bullets, and one is a "race car" drifting and trying to avoid these bullets. The attacker and avoider switch roles every 10 seconds - the car becomes a stationary turret and the turret becomes a car.

screen3.png

It's basically a symmetric two-player game. But a human companion is not always available! So we wrote an AI algorithm controlling one of the players, allowing you to play against the computer.

In this post I'll explain these algorithms and elaborate on the technical part and also on the game-design aspects of coding an AI player.

Turret AI

Let's start with the simpler one - the turret, its goal is to shoot at the player.

Turret AI consists of two phases:

1. Choose target position

First we need to decide the desired turret direction. The obvious is - towards the other player! But since bullets take time to reach their target, in that case all the opponent needs to do is to keep moving.

A better option is to shoot where the car is headed. For that case we came up with the following calculation:

target_position = car_position + car_velocity * (distance(car, turret) / bullet_speed) * 0.75

In human words:
Predict where the car will be when the bullets hit it; consider the time it will take to bullets to reach the car (distance / bullet speed), and multiply it with the car velocity to get the difference you need to "add" to the current car position. These bullets would almost certainly hit the car if it keeps going in the same speed in the same directions.

But hey, what's that 0.75 factor at the end? Well, after some playtesting, we figured that an AI that is perfectly able to predict your position is not very fun. It was too hard, it felt like it's "cheating", and somewhat inhuman. This "avoider" optimal experience should be - driving fast, drifting around and avoiding. But with this "perfect" turret (before applying the 0.75 factor), the best strategy is to make small moves and avoid each bullet "matrix style" which is much harder. But with the 0.75 correction, speed is your friend. As long as you are going fast enough you can still avoid the bullets, which turned out to be more fun!

2. Control the Turret - Follow the target

We used Godot input system, and the AI mocks actual player keystrokes. The turret would turn right or left, whichever will bring it closer to the target; And if the angle is close enough to the target, it starts shooting (we didn't want the turret to shoot if pointing too far from the target. Nothing wrong with it strategically, it just felt messy).

The result - A "smart" AI turret that follows the player. The white crosshair is the turret's target:

turretemtarget/em3mb.gif

Car AI

Here's the real challenge. The car needs to avoid bullets, but also drive through an ever-changing environment, with walls appear and disappear all the time.

1. Choose target position

Similar to the turret, first of all the car needs to decide where it wants to go. It determines the target point that is the farthest from all the following: - enemy (turret) position - bullet positions - current car position - screen corners

The first two are obvious - you want to get as far as you can from things that kill you.
Then, the car chooses a point that is farthest from its current position. It assumes that the enemy probably already shoots at where you are, and the best thing to do is to keeps moving .
These rules might push the car to choose one of the screen corners, which is not a really good idea, because it can get, well, cornered there... So adding the corners as points to stay away from solved that.

So, we got a target! But how will the car get there?

2. Flow field

Once we have a target position, we need the car to get there. We could just calculate the shortest path (overcoming walls) and let the car go through this path. But - what if the car accidentally slides away from this path? What if it gets hit by bullets on the way and moves out of this path?
That's why we chose flow field pathfinding. We split the game area to 16x16 pixel tiles, and used a form of BFS to calculate for each tile in what direction that would bring the car to the target in the shortest path.

3. Control the Car

Now that we know how to navigate from every point of the screen, we need, again, to mock user input. We calculate on which tile the car is on. Then, according to the tile's calculated direction, we both accelerate and steer the car towards the tile's flow direction.

4. Choose a new target.

Once the car is close enough to the target, we choose a new target according to step 1. The fact that the target is farthest from the car's current position makes sure that the new target is far enough.
If the target is "behind" the car, then it makes a nice tire-screeching drift, as the car quickly turns around towards the new target.

The result:

caremai/em2.gif

caremai/em1.gif

The car navigates towards the target, bypassing walls, always accelerating towards the fastest route to the target.

I could think of ways to optimize this, like recalculate the flow field every time a wall is destroyed (and potentially find a faster route), or actively avoid bullets. But the current behavior was unpredictable and was quite challenging to beat, which was definitely enough for the jam, so we kept it.

Did you enjoy RandoBots AI? Did you find any glitches or bugs in the AI? How would you approach this problem? Please let us know!

And most importantly,

Play RandoBots now in your browser!

Sincerely yours,
Ori and RandoBots team.

Checkout this little Capybara Platform

After years without participating in a gamejam, it was great to fell the emotion of a Ludum Dare again. This time i @thiagowaw, invited 2 of my friends @sombrans and @whitenoise who had never developed games before.

Our main goal was to produce something playable by the end of the event, so we decided it would be a platform game.

Initially, you would have 10 seconds to reach the end of the level, passing enemies without dying, or killing them. But we ended up with just one platform without participating in the jam theme.


1.gif

2.gif


Check the result and rate us! The Legend of CAPYBARA!

Let's play (and rate, and analyze) Ludum Dare 51 - #4

Had a wonderful stream of LD51 games again today, featuring awesome games and people on the chat.
This was actually the final stream from me for this LD, as I won't be around next week. It was once again an amazing experience playing these games and talking to you live on stream.
Thanks everyone for tuning in, and see you all next LD! <3

https://youtu.be/JWDRP3KwO-E

Games in this video: - Love is Legal: Speed Dating For Criminals by @krasimir-balchev and poopie - https://ldjam.com/events/ludum-dare/51/love-is-legal-speed-dating-for-criminals - Power Surge 51 by @vidarn - https://ldjam.com/events/ludum-dare/51/power-surge - Poda Wants a Statue by @dodidouda, @zakku and @doot - https://ldjam.com/events/ludum-dare/51/poda-wants-a-statue - Moirah's Manor by @vergalon, @gowie, @twingle, @vary, @jb-rock and @tobius - https://ldjam.com/events/ludum-dare/51/moirahs-manor - Electroprone by @arfilish - https://ldjam.com/events/ludum-dare/51/electroprone

Impact-Effect Has Over 100 Ratings!

Post 5.gif

I am blown away! I want to thank everyone who has rated and commented on Impact-Effect thus far!

Your feedback has made Ludum Dare 51 yet another highlight in my game dev journey! I did not expect to get 100 ratings again, as this is only my third ever Ludum Dare. I am overwhelmed by your support and feedback! Thank you for keeping Ludum Dare amazing!!

Screenshot 2022-10-14 144853.png

I only joined the Ludum Dare community a little over a year ago, and I have improved so much as a result of joining this wonderful competition!!! Jam On!

Home Office Hero over time ⏳

In our game you're a Home Office Hero with a controlling boss who needs you to check in with him every 10 seconds. However you also need to get your chores done!

Here's some gifs about the evolution of the game over time including what we're working on for after the jam.

Early version

hallo.gif

In the beginning the camera was fixed and the room a bit smaller. This was a bit limiting to the game play, so we expanded the room and had the camera follow the player.

Jam version

clip.gif

For the published version we also had a task system and as you can see a new model for the player.

Post-Jam Status

new file.gif

We're currently having fun with working on a post-jam version with more things to do and a complete overhaul of all the 3D objects.

Feel free to give the jam version a try :sparkles:

Play now!

Rate

Playing your games (...in about an hour...)!

keyboardcowboys.jpg

It's about that time! The boys and I are going to be going live at https://www.twitch.tv/coleslawski at 6pm PST for one last romp through some Ludum Dare games!

This is around the time when ratings hype tends to die down, so we don't anticipate having enough submissions to fill our usual 4-hour block of time (our queue is actually empty right now!). Once we run out of submissions, we will likely be transitioning over to our usual (non-LD related) content for the rest of the evening, and submissions will be closed for the rest of the weekend! :pray:

If you would like to get your game played, fill out this submission form to get put on the list! You must be in chat when we get to your game, otherwise, we'll have to skip you! If you do get skipped but happen to come back later (while we are still playing games), we'd be happy to slot you right back into the queue!

Hope to see y'all there for one last hurrah! :pointright: :cowboy: :pointright: