mrjoshuamclean

LD34

Warmup + Ready for LD34!

Last night I did a three-hour mini-jam as a warm-up for Ludum Dare 34. Somehow, with all the flies I’ve been swatting recently, I ended up making a fly-swatting game. Art imitates life?

I also cobbled together a starter template for 2D Unity games, which is hosted on BitBucket and released under the MIT license. It doesn’t have much, other than my preferred directory structure and tiled2unity, although I might add some more generic starter code for LD35.

In addition, my workflow is all set. I’m using the following tools:

  • Unity 3D (well, 2D!)
  • Tiled tile editor for maps
  • tiled2unity to bridge the two (coolest thing ever)
  • Aseprite to make sprites & animations
  • FL Studio to make music & sound
  • Git for source control, which I kind of butcher by keeping all my binaries in

I hope having this all in place will make life a lot easier than my last jam. That one was a whole ten days, butI spent four learning Unity, three doing things the hard way, and three wishing I had found Tiled+tiled2unity earlier.

I wish the best to everyone participating!

LD36

Here we go again…

This is my third Ludum Dare but I’m in for the compo for the first time ever, and I’m completely out of my mind. Why? I’m going to make a text adventure. Well, they call them Interactive Fiction these days, but that’s also the folks that lean more heavily into the “story” side of the thing. My goal is to make sure it’s a game even though it’s nothing but text.

I’ll be using Inform 7 to build the game. This should be an interesting experience since I’m used to writing pretty technical code for SDL, LibGDX, or Unity, but Inform 7 is a beautiful “natural” programming language. It’ll feel more like a really super-condensed NaNoWriMo than a proper game jam. I find that intriguing.

Since the compo only covers the first two days, I’ll be helping people with music on the third day. Feel free to get in touch if you need music, especially if you want high-energy dance music or chiptunes. ^_^

Good luck to everyone!

Website: mrjoshuamclean.com

LD 39

I'm in with an audio spin

Game jams are super fun. Ludum Dare is one of the funnest. So, here I am to make something fun, with a lean toward solid audio and interesting mechanics.

I compose music and produce sound effects for games, so that's my focus. Pretty good at tech. Okay at game design. Not so great at graphics.

This is my fourth attempt at making a game for Ludum Dare. Last time around, I made music for seven projects. Now I'm ready to create a game of my own again.

Tools? Still thinking on those.

  • Engine: Unity (C#) with ProBuilder
  • Audio: FL Studio 12 (Sytrus, Nexus, Super Audio Cart, and/or EastWest Play)
  • Graphics: Aseprite for some pixelly textures (possibly)

Streaming the whole thing on Twitch, which should be an interesting experience.

Feel free to follow me on Twitter and check out my website where I offer various game audio services.

Good luck to everyone else joining in!

Audio Hook (Ludum Dare 39) Postmortem

My previous participation in Ludum Dare involved music for seven game projects, and sound effects for one. That went super well, because I needed that many projects to occupy me for the entire weekend. I even had a painful amount of downtime and wrote a couple bonus songs.

This time, for Ludum Dare 39, I created Audio Hook in 48 hours. This showed me how little down time you get if you make a game entirely by yourself. Games are huge, complicated beasts, and 48 hours isn't a huge amount of time.

Something else totally new: I streamed the entire event live on my Twitch channel. You can watch the full recording on YouTube starting with the video below. But be warned: I overworked myself and might be a little zanier than usual.

https://www.youtube.com/watch?v=rVZ0FPslC-M&t=25s&index=1&list=PLUoOzzJDDg5f6O5fUhfqnX1BgwyHQ5P

My past couple experiences with this - LD 34 and LD 36 - were meant to be Compo entries. However, by the time the 48 hour deadline started rolling around, I decided it would be impossible to have a finished, working game in that time, so I took on the extra 24 and entered the Jam instead.

For LD 39, I used what I've learned about time management (at least in the context of game jams) to force myself into the Compo, whatever it took. And I succeeded.

As always, this document is meant primarily to tell my future self what to do and what not to do with the next Ludum Dare I enter. There won't be a lot of info about the game itself, so you might want to glance at the Audio Hook LD page before reading.

Take my advice with a grain of salt, because it's specialized to my particular situation. I hope you can get something out of it. Feel free to reach out if you have any questions about my experience, or want to talk about Ludum Dare in general.

screenshot-1_shrunk.png

What Went Right

Have a solid idea before going to be the first night - and sticking with it.

The first night, I paced back and forth in front of a whiteboard, marker in hand, spewing out whatever came to mind. This eventually paid off in the following design:

shrunkdesign.jpg

The next morning, I had doubts. The idea had holes, didn't fit the theme perfectly, and might require a ton of music. Also, there would be several graphical assets to produce.

The takeaway here? Stick with it. The 48 hour limit doesn't give you time to redesign after spending a night sleeping on an idea and dreaming about its possibilities. Maybe you'll fix the problems, maybe not. But commit to succeeding or failing the whole jam.

Doubts are a good sign. You should be even more suspicious if you think the idea is perfect after reflection. This means you're blindly loyal to it, and that could cause more problems in the end.

Commit to requirements (in my case, minimal graphics with a focus on audio/gameplay) early.

I'm basically an audio person, with a strong programming background and a bit of dev/design experience. The gaping hole in my skillset is visual art. With enough practice, maybe I could be okay at sprites and models, but since my interests lie elsewhere, it's difficult to polish up this skill.

With this in mind, I set out trying to create an audio-focused game with minimal graphics. My approach for Ludum Dare 36 was to make a text game, but I don't think this appealed to much of an audience. Having some kind of graphics and a more traditional video game (with actual visuals) sounded like a better idea.

This one was a double-edged sword, though. I'm not totally satisfied with one or two of the game's sound effects, and the music could use some extra polish. However, I spent very little time on graphics. At one point, I made the misguided attempt to texture the hookshot line. This turned out okay, but I could have spent the time and energy better elsewhere.

Implement a full play experience before broadening the game.

The advice I hear over and over, and constantly gave myself in previous postmortems, was to start with a tiny, playable experience. Get that working, and the rest is just filling in content. Although I ran into some roadblocks for this (see the bit about the audio system in the next section), I did manage a complete playable experience with a single level before expanding to more.

screenshot-2_shrunk.png

Cut corners early to start release process with several hours left before the deadline.

The initial plan was to have a full playable on the first day. That didn't happen. I pushed it back to noon ET on the second day, then 3pm ET on the second day. The deadline was 9pm ET.

Eventually, I started cutting corners when it got to be around 3 - 4pm. With the deadline fast approaching, I knew it usually took more time than estimated to produce the final executable and make sure it works. The build came around 6pm, leaving me three hours until the deadline (with an extra hour of leeway for submission).

This was a fantastic idea, because the built version immediately showed critical problems. The whole time, resolution hadn't even entered my mind. Unity uses a free-form shape when playing in the editor by default. This doesn't show you how your interface will look in, for instance, 16:9 or 4:3.

When I played windowed mode at the lowest resolution to test (640x480), a viewer on the stream pointed out that the interface was getting chopped off. Sure enough, he was right. Wish I knew his handle because I'd love to credit him for it. This is one part of:

Stream the event. This forces you to work diligently and gives you pseudo-playtesters in the eyes of the viewers.

Streaming might not be for everyone. Some people don't have the setup, some people just don't like it. I thought the experience would be far too distracting because I enjoy interacting with chat.

The result was the opposite. Because I had to come back for streaming, and I knew there were people watching, there was an extra urgency to getting back to work. Most jams, I'd take all sorts of breaks, convincing myself they were needed. For the most part, they're just a waste of time, and streaming helped me focus on the task at hand.

As previously mentioned, viewers can also be a sort of playtester. They'll spot things you might miss while you're focused on something else. This simultaneous feedback is hugely useful because you rarely have time to iterate during a game jam. It just takes too much time to get the game into someone's hands and take their feedback into consideration.

What Went Wrong

Take more breaks.

Although streaming helped me avoid taking too many breaks, in the end it ended up forcing me not to take enough, either. The streaming+jam mindset had me locked to the computer more than a usual jam, feeling like leaving the house would be problematic.

I took one break on Sunday to get the mail. Other than that, my breaks were just grabbing food or coffee, no more than five minutes. This led to some of the more frustrating moments which could have done with a brisk walk out in the fresh air. Usually I can approach problems from a new angle when I come back from such a break.

Build the critical system first (in my case, audio layering).

I knew from the first hour that the game would involve layering of audio stems as a core mechanic. With this in mind, it should have been one of the first systems I developed, if not the first. Tacking it on after the code had already become a bit of a convoluted mess led to many problems.

Eventually, I scrapped a lot of the code I'd written to rewrite that particular system. It ended up a bit too coupled by the final product, a mess I could have avoided by taking some breaks (see previous note) and making it before anything else, so the critical bit would be working first.

Design around content taking more time than anything else.

A common piece of advice for game jams, especially short ones like Ludum Dare, is to use procedural generation as much as possible. This allows for a larger game experience in a limited design without the need for loads of content.

My design worked well for procedural generation of levels and graphical content. Not so much for audio. See, each level needed its own unique audio stems to work. Even if I had multiple levels with the same song, I would have to manually split into a different number of audio stems in order to handle a different number of in-game stems.

I'm glad I went forward with it because I like the game's design, but ultimately this led to having three levels in the Compo version rather than the planned eleven (or the currently planned 16).

Pick a name early on so you can reflect on it.

Right as the clock was ticking down and I was putting finishing touches on the build, I pulled a name out of nowhere: Hook, Beat, an Keeper. I thought it was a clever take on "hook, line, and sinker" and loved that "Keeper" was a reference to football (soccer).

Turns out, people thought the game was about hooker and beer. Names are important, friends.

Conclusion

This Ludum Dare was more successful than any previous LD for me. It's the first time I've streamed the entire event and the first time I submitted to the compo. The votes and feedback are rolling in from all sorts of awesome people, and I've even made a few potential friends along the way.

Next Ludum Dare, I'm streaming the whole thing again, whether doing music or a game of my own. However, I'll take more breaks, make sure the game's size isn't limited by the amount of content, and maybe experiment a bit more with graphics.

Thank you for taking the time to read through my reflections. I hope you found something useful, and if you aren't already interested in Ludum Dare, I encourage you to dive in with the next event. You can learn a lot in a single weekend, especially working with a team for the Jam.

Again, feel free to reach out to me through Twitter, email, or checking out my Twitch stream on Mondays, Wednesdays, and Saturdays. I'd love to talk about my experience, Ludum Dare, or game development in general.

LD 41

I'm in with a Visual Novel and a partner in crime

For my fifth Ludum Dare (fourth time making a game), I'm going to make a Visual Novel. Or, well, a VN-style short story. Hard to call it a novel when I'mma finish it in 72 hours. ;)

This medium fascinates me because I got into game development through interactive fiction. A couple years ago, I wrote a piece of interactive fiction for a Ludum Dare using Inform. Although this was entertaining to me, the game received a lukewarm reception, as it was purely text.

Given my proclivity for music and sound design, along with my past interest in both creative writing and interactive fiction, it makes sense to experiment with the Visual Novel medium. However, most VNs that I've experienced haven't tickled my fancy in the way that many pieces of interactive fiction (or text adventures) does.

There's this idea of a "sound novel" which I think fits closer to my vision. The focus will be top notch audio, but my lady friend @katethemakeupmonster will be providing artwork in her first ever Ludum Dare. This should make it look much better than it would with my own awful attempts at visuals.

I'm hoping that by implementing a substantial amount of "game elements," I'll be able to create a Visual Novel that satisfies both fans of traditional VNs and my own personal taste. But we'll know soon enough.

Hope everyone else has a fun time next weekend, and good luck on the jam!

Crops in Space: Life After Ludum Dare

| | | |-|-| |titleemshrunk.png |crew/emshrunk.png|

Kate and I are super happy with the reception we've received for Crops in Space. It was my first visual novel and her first time working on game art, so the positive reception has been amazing. Thank you to everyone who played the game, and especially to those who rated and left a comment. Your feedback has been super helpful.

We're continuing to work on the game by fixing bugs, smoothing out some rough edges, and expanding on the farming simulation mechanics, as well as further polishing the audio and artwork.

If you want to keep up with future progress on the game, sign up for my newsletter and follow the game on itch.io. We'd love to have you take this journey with us!

LD 42

Anyone else doing interactive fiction?

I'm in! This is my counts on fingers seventh Ludum Dare, not counting the one where I did only music. These have been a racing game, interactive fiction, a platformer, an audio game, a top-down action game, and a visual novel. Hurray for never repeating myself—until now.

I have never been a visual person. I never will be a visual person. I'm hoping the next event, I'll have my beautiful fiancee available to work on some art, but for this rendition of LD, she's busy and I"m flying solo.

These past couple months, I have been steeped in writing: working on my novel, finishing up a short story, editing and performing audiobooks. So, it stands to reason I would do something similar for Ludum Dare.

I'm going to make interactive fiction. Last time I did this (for Ludum Dare 36), I started in Compo, moved on to Jam, and still ran out of time at the end. This weekend, I plan to work harder at time management and scope containment, which I've gotten better at with each prototype I made.

You can still play Connor & Harley (my Ludum Dare 36 game) online. If you prefer a local version, there are download links there, as well.

Anyone else out there doing interactive fiction? I know pure text games aren't the most popular thing these days, being overtaken by visual novels and their ilk, but I figure if I'm making one, I can't be alone.

Good luck to everyone on your Ludum Dare excursion! I look forward to your game.

LD 43

I'm in, with the visual novel thing... properly, this time

Two editions of Ludum Dare ago, I made a space "visual novel" with @katethemakeupmonster called Crops in Space. Given my tendency for less narrative-driven games it turned out more like a simulator/RPG than an actual visual novel, despite using Ren'Py for development and Kate's art gearing toward the VN style. (Check it out here)

This time around, we're going full VN with branching choices and a focus on narrative, character development, and relationships. At least, that's what we're aiming to do.

In addition, Kate will be available for the entire 72 hours of the jam, which is 66 more hours than she had to work on Crops in Space. That, plus additional experience with art, should result in an improved visual presentation. (No pressure, my love <3)

The final themes list is much better in my personal opinion than it has been the past few years. Let's hope for a nice broad theme that's open to interpretation but not so broad it loses all meaning, yeah?

We're also streaming the whole thing so come hang out!

https://www.twitch.tv/mrjoshuamclean/

We finished our visual novel... mostly

We would love to get your feedback on the result. :) https://ldjam.com/events/ludum-dare/43/elwik-mage-academy

Here's a quick and dirty one-off reflection on the weekend.

What Went Well

  • I'm very proud of the artwork @katethemakeupmonster did for the game. She's got more talent than she thinks.

  • Despite limitations on time, the music hit emotional notes I was aiming for. I wanted more of it, but... time.

  • Pair streaming with Kate led to some fun times.

  • The order in which I did things made good sense. I developed the beginning and end, then fleshed out the middle. Also, spending almost the entire Saturday on character design and backstory worked in our favor.

  • Knowing ahead of time we were making a visual novel and using a tool specifically geared in that direction (Ren'Py) was a smart move. So was sticking to the system's strengths, instead of fighting against it like we did with Crops in Space.

What Didn't

  • I was super distracted by the stream. I knew it would be hard to write while streaming, even with Kate helping out, and it was. Probably got about 1/2 or less written than I would have sitting alone in a quiet room. But it was totes worth it!

  • There wasn't enough time to flesh out the middle. As usual, we overscoped. It's hard not to with a visual novel, though.

  • Going for a visual novel wasn't a smart move. Maybe we'll do another one for a week- or month-long jam, but in a weekend jam, there simply isn't time to get enough text to the page. Even if we had cut out the distraction of streaming, we wouldn't have had anywhere near what we had planned.

  • The work was heavily skewed toward writing, so Kate was finished super quick. This was partly by design because I didn't want to overburden her with tons of art, but now that we have a better idea of how fast she works, the next one will go better. And we'll probably do something more action-oriented.

How did your jam go? I'd love to play your game! Submit it to my google form here and I'll play it on stream, give feedback, link you to the VOD, and summarize in a comment. Thanks!

Ludum Dare 47

Live now!

I'm live now on Twitch for the next 1.5 hours or so giving feedback for Ludum Dare Compo games.

Drop into chat and use !submit with your game page link to add to the queue. :)

https://twitch.tv/mrjoshuamclean

Going live!

I'm streaming feedback for Ludum Dare games now.

Drop into chat and use submit to submit your game.

Did you miss the stream? Don't fret! You can still use !submit even if I'm offline, and I'll get to your game eventually.

https://twitch.tv/mrjoshuamclean

Live again!

I'm live again checking out any game jam games, so if you need feedback for your Ludum Dare project, drop by and !submit it. :)

https://twitch.tv/mrjoshuamclean

Ludum Dare 49

Ludum Dare 49 Postmortem (Train Tilt)

cover.png

This was my first successful Ludum Dare compo, after several shifts from compo to jam or failures altogether.

I didn't like the theme. No surprise there. It's the nature of Ludum Dare. But it could have been worse.

Saturday

I woke with a few ideas that could go somewhere and spent a couple hours writing them down. This took the form of a bulleted Word document. Some highlights:

Fix Broken Code: Play a normal game, the game breaks (unstable), and you need to update the source code to fix the problem, allowing you to complete the level/area/etc. This was clearly of massive scope, and I would need to look into how to handle the code. Parsing it myself would be a huge undertaking, and I knew nothing yet about Godot's on-the-fly script compilation, though I'd heard it was possible.

Unstable Physics: This eventually became the final project. Train car moving automatically on a rail, bed of train tilts left/right depending on weight of objects on it. If the bed tilts into the rail, the train slows down. Must balance items left/right to maintain stable train and reach maximum speed.

Unstable Economy: This was the first I started on. GUI interface to control hiring, firing, establishing new companies, etc. Player must reach a balanced economy that sustains itself for X amount of simulated time. Largely a numbers game, finding the perfect salaries. Balance between salary and happiness—low salary results in less spending/saving and makes employee unhappy, might quit the job.

I saw someone post on the LD page about how everyone's idea was to aim for stability in an unstable system, and they wanted to see the opposite: a game where you destabilize an already-stable system. So I explored variants of all the above in reverse, and none of them clicked.

With all these ideas out of the way, I fleshed out Unstable Economy. I learned a lot about the Godot UI system (which luckily is similar to Unity's, so very familiar) and more about dark corners of Godot I hadn't explored previously. I had something working around 1pm but it wasn't fun.

screenshot.png

I didn't think I could make it fun. I added a progress bar and auto-advance for some animation, realized the core was kind of clickery and that I should head in that direction, but by the end of the day I wasn't feeling it.

Sunday

I made the decision when I woke up to switch projects. In the night, I'd developed a clearer vision of the Unstable Physics idea and even outlined how to implement it in my head. So work began immediately after breakfast.

I started with placeholder art so I could see what's going on, and implemented the movement and physics. I had most everything working by lunchtime except the jump and level loop. Music, bug fixing, jump mechanics, the overall game loop, and some rough balancing took the remainder of the afternoon.

I had a slight panic at 5:30pm when I discovered the build system required a lengthy download. The submission hour meant I had 1.5 hours left, but if there were any major issues in the exported build, I would need to get them fixed by 6pm. Luckily, the builds worked perfectly and getting them exported was a breeze.

4.png

What Went Wrong

Physics-based game. I knew from the start that I wouldn't want to rely on rigid bodies. I used kinematic bodies for tighter control. However, it was still difficult to get the numbers and the feel right because of the chaos of a physics system, and some edge cases caused wild things to happen, needing silly hacks to force into place.

Placing the held box above the player. Instead, I should have revealed a box sprite above the player and removed the held box from the game, then added it back on the throw (hiding the sprite in the process).

Manual physics. Yes, it was good to have tighter control, but rigid bodies would have made the throw and collisions easier to get right. Also, would have avoided the awkward lack of rotation for boxes and the player.

Not enough time to balance. If I'd started Train Tilt on Saturday, I would have left most of Sunday for balancing and fixing edge-case bugs. The game could have used some variation in box weight and more opportunities to use the jump/throw to your advantage, plus a fix for getting buried under boxes and better level length calculation.

What Went Right

Using Godot. It's amazing. So much of GDScript is Pythonic, the documentation is fantastic, the error messages are clear and useful. Something about the object-oriented node system makes more sense to me than the entity/component-driven Unity system. I also love working in pixel coordinates. So many things are designed better with games in mind, like the input manager and pause handling.

Changing direction on Sunday. Although this left me less than nine hours to complete the project from scratch, the first game would have been unplayable and boring had I stuck with it. I think I had the framework for a clicker game there, but it needed bettering theming and more thought put into the play aspect before it could be fun. Plus, it may have taken longer than the remaining single day.

Making the placeholder art first. This helped me get a feel for the game and, had there been more time, I could have further polished the art later. Then again, maybe not. I'm not great at visuals.

Recording sounds instead of finding them. The entire sound effect library took me about five minutes to record and place. Had I been searching for specific sounds, I would have taken significantly longer than that.

Ludum Dare 50

I'm in!

For the past few weeks I've been going back over my Unity code and ~~cringing at~~ fixing it. It's been a while since I last jammed in Unity but I work professionally in C# now so it was quick to pick up again. And realize how bad my code was.

My goal for the LD weekend is to rapidly improve my codebase and make something playable. I've only just got back into it, so not expecting much from the end product. If it's really disastrous, I might try the new "casual" mode.

Also hoping to do some music. I like to do music.

I even have music you can use if you're not doing Compo. [/shameless self promo]

Good luck everybody!

Ludum Dare 57

I'm in! (preferably with a collaborator - looking for artist!

Hi everyone! I'm looking to try another Ludum Dare, having done 12+ in a row and taking a bit of a break since LD49.

I would really love to collaborate with a 2D/pixel artist. Maybe you?

My main skills are music, game design, and programming, so I mostly need an artist to help create something super awesome. I'd be happy with either a true collaborator/co-designer who provides input on the project, or someone who just wants to do art while I handle the rest.

I'm not 100% settled on engine/tools for the project, but the choices are probably Godot, Ren'py, or RPG Maker MZ, depending on our goals and how much time I squeeze in to prepare. (Agh! Less than two weeks! :eyes:)

You can see my past Ludum Dare entries here (although it's honestly not much to look at :sweat_smile:) and if you want, my music portfolio on SoundCloud.

Interested? Send me a note: * Email: retroindiejosh@8bitstoinfinity.com * BlueSky: https://bsky.app/profile/retroindiejosh.itch.io * Discord: @retroindiejosh

Of course, if this line doesn't get any bites, I'm still in... but doing it all myself. XD