Thought Reactor

LD33

Desperate times call for…well, quickness!

So I mentioned laaaaaate last night (with less than 24 hours to spare in the compo) that the “Shade”/sneaking game idea had hit a demoralizing roadblock. Even though I was certain of failure – I wanted to press on!

I thought about a little base defense game but realized the technical challenges and opted for a game I knew would be mostly straight forward.

So I drank a midnight Red Bull and settled on a really cheesy idea of playing a laser shooting giant-lizard named Lazard. Basically it’s a on-rails shooter with infinite waves. Here’s a screenshot of it in action with some placeholder art.

The next steps are to create some more enemy planes and commercial planes. All the planes will spawn bodies for the player to catch in his mouth! I have the beginning workings of a neat stat and score system that I would love to work into a leaderboard if I can find the time to spin up a quick Laravel/Lumen project.

I have some cleaning to do today so I’m not sure it will get done before 9PM tonight. If I can find some time to wrap it up between now and tomorrow night then I’ll be submitting it for the 72 hour jam.

Seriously, though, wish me luck – I’m gunna’ need it!

LD36

Overcoming Creative Anxiety

blog-image

With the preparation of any upcoming event or task comes some anxiety. It is a natural part of our brain’s ability to cope with change and adapt for the future. The problem is our brains often don’t help us distinguish the good anxiety from the bad – it all generally feels the same. Sweaty palms. Lack of focus. Stammered speech. Nerves and anxiety distract us from the reality we’re facing as a means of getting us to recognize the impending thing that we’re anxious about. Nevertheless, this feeling usually brings on more anxiety. Anxiety over being anxious.

In the case of production, anxiety can leave us at a standstill. This creative anxiety, as I call it, is the number one killer for developers participating in Ludum Dare. You can be super prepared and still find that your creative juices aren’t flowing when that theme drops. It may feel different to each of us, and come upon us in different ways – but it is the same mental blockade that our mammalian brain creates. The simple beauty of instinct can often bite us in the ass!

Can we actually overcome this anxiety? I argue that it isn’t about overcoming, so much as it is about channeling it. When we can sit back and try to be cognizant of our anxiety we can gain control over it. Whether it’s the fear of failure, feeling like there’s not enough time, or just feeling unprepared for chaos – these things are meant to give us a certain clairvoyance. The physiological aspect of anxiety is often what bogs us down. The mental aspect can be used as a powerful tool.

I wish it were a simple thing to just channel it. It’s not. Some of us are more prone to anxiety than others and, as mentioned previously, are affected by it in different ways. Now for the motivational part of this blog.

You are not your anxiety. You are a creator and your anxiety is a product of your passion to create.

An event like Ludum Dare is daunting. I’m on my 9th Ludum Dare and I wouldn’t even think of telling you any different. This shit is nuts. It’s absolute masochism to put your brain through such a test. That’s the kicker – just putting your mental fortitude through the ringer will embolden you. There is no trick, no life hack to get you through Ludum Dare. Like our good friend Shia LaBeouf says you just have to “Do it.”

Now, not everyone has perseverance, you say? This is true. Some of us crack under the pressure – I’ve done so 4 out of the last 8 times I’ve done this. But I keep coming back for more. The same must be true for you in the small sense. Keep coming back for more. Don’t stop. Keep grinding. You may not finish. You may feel like you failed. In the words of a fortune cookie I so coincidentally received yesterday:

Failure is the tuition you pay for success.

Failure is not an end – it is a beginning. It is how we learn and adapt. Is that not what anxiety is for, as well? Does anxiety not teach us about failure? Anxiety often emphasizes failure and for all the right reasons. We, in a society that thrives on success both individual and collective, have done ourselves a disservice by linking failure with meritocratic grading systems and negative connotations. Failure is learning.

Your Ludum Dare experience – even if you get it done – will be filled with micro-failures. You will hit walls. You will feel like you’re coming up short. Just keep these things in mind and you can and will persevere:

  1. Your time is finite
  2. Your task, whilst seemingly insurmountable, is actually quite simple – only you will allow your anxiety to complicate it
  3. This contest is about mental fortitude – not perfection, not popularity
  4. Fail fast, learn faster
  5. Fail some more
  6. Have fun!

The last thing that is worth noting is managing all this in some sort of process, right? Outside of trying to mobilize your mind around acceptance and flexibility, there are procedures that can help. They won’t work for everyone – and often don’t work for me. Some of us have a hard time staying on top of things without notes, lists, and so on. If this is you – leverage these things. But bear in mind that you don’t want to resort to micro-managing. At this level, anxiety is dictating you. Every last detail is not important and trying to account for all of them will push your mind to deeper anxiety, an anxiety you can’t channel.

If you can take away one thing, let it be this: we are defined by our success, but our success is defined by our failures. Do not be afraid to have to settle for less – this is a good failure that promotes a higher level of reasoning with the tasks you have in front of you. Do not convince yourself that the art, the code, or the music is not ‘perfect’ or even ‘ideal’ – and by whose standards? Your task with Ludum Dare is to make a game in 48 or 72 hours – just make the game!

Good luck to all the participants! Only 9 hours until we get this puppy rolling!

Tags: anxiety, creative process, motivation

Ludum Dare 37

Things are coming along…

Decided on a “one room” dungeon shooter a la Binding of Isaac. Got a majority of the mechanics in place, time to add more enemies, weapon upgrades, and obstacles! I can’t wait to spend some time on art later this evening. Keep grinding everyone!

LD 38

I'm in!!

Count me in for the solo dolo. Got my weekend cleared, got some snacks - let's do this!

This time around I plan on using: - Unity 5.6 - Blender - Photoshop CC - FL Studio 12 - BFXR

I'm really questioning some of the themes - but the good news is you don't have to follow them. Just make a game! Don't fret the small stuff and keeping moving.

LD38 - let's get it. GLHF.

LD 39

I'm in!

Howdy!

I'll be joining LD39 - making this my 10th LD (I think I skipped LD30). Last time around I had a little too much going on and had to bow out early.:sweat: This time around, my slate is clear and I'm ready to make a damn game! Depending on how things go I really want to submit this bad boy for the compo.

Rolling with the usual stack: - Unity3D 2017 - Photoshop CC - Blender - FL Studio 12 - BFXR

I plan on streaming the majority of this weekend, so come take a gander and chat at twitch.tv/thoughtreactorlive. GOOD LUCK AND HAVE FUN! Let's get it! :triumph::triumph::triumph::triumph:

LD 40

LD40 - Let's go!

The past couple LDs have been rough for me on time constraints - but this time I should be good to go! Rolling with the usual stack:

  • Unity
  • Photoshop
  • Blender
  • FL Studio 12
  • BFXR

In the spirit of Ludum Dare, I made a wallpaper! Here it is for ya'll to enjoy!

ld40-wallpaper-1920x1080.png

Looking forward to the theme - until then, good luck and have fun!

LD 42

Let's do this thang!

The past several Dares have been a struggle for me - but you just can't resist taking another stab at it! Last couple times I've just had too much going on between friends, family, and life B.S. - this time, however, I've cleared the calendar and am ready to jam!

This time around I'll be using the following tools: - Trello - keeping myself on task is always a challenge during Ludum Dare - Trello helps with that! - Unity - my tried and true engine of choice; shooting for a 2D game this time, but will run 3D if I have to - Photoshop CC - graphics, 'nuff said - FL Studio 20 - tunes and sound effects - SteamLabs OBS - for streaming & recording this bad boy

I'm going to shoot for the compo time frame as I will likely not have any time on Monday granted I have work.

Good luck to all - and remember, the most important things are to keep it simple AND HAVE FUN!

End of Night 1

Coming up on my bedtime, so I figured I would share what I have so far - and I'm proud of it!

https://youtu.be/JFRsVdxA8TM

The game's hook is in place, now we just need enemies, pickups, and polish! Basically, when the player misses a wall is created across the arena in the angle of their shot. These walls kill the player but not enemies. Certain pick-ups will allow the player to destroy their walls, shoot through them, or even physically pass through them.

Successful night - off to bed! Good luck, jammers!

Getting Closer!

Over 24 hours in and the gameplay is about 80% done. Just need to spawn enemies in waves and have some 'random' arenas and the gameplay is done! After that it's polish, art, sound, and UI!

https://youtu.be/tednD6Q9Wls

I'm still confident I can get this puppy done before 6PM tomorrow afternoon.

Good thing I have lots of coffee!

It's done! Give Hovertank 42 a shot!

It was an exciting Ludum Dare this time around - and I got it done! :smile:

PLAY HOVERTANK 42: https://ldjam.com/events/ludum-dare/42/hovertank-42-modern-wall-fare

https://youtu.be/SfRcAIaNzpg

Checkout Hovertank 42: Modern Wall-fare and let me know what you think! Leave a comment and I'll be sure to play and rate your game, as well!

Hope everyone has a great time jamming - good luck to those still racing towards the finish!

Post-Mortem: Hovertank 42: Modern Wall-fare

This is the first time I've ever wrote a post-mortem for a Ludum Dare entry, so here goes!

https://youtu.be/SfRcAIaNzpg

Play Hovertank 42 in your browser!

Another Ludum Dare has come and gone and here I sit reflecting on how it all went down...

To be honest, it went pretty well - and I'm proud of how things turned out. I continually struggled with time management in past LDs and a lot of that was owed to picking an idea with far too much scope.

This time around I forced myself to stick with something really small with a replayable gameplay loop instead of a set of levels. In Ludum Dare 41, I attempted to make a platforming game that required fairly meticulously designed levels. The time sink that created left me unable to get the game done in time. I wasn't going to let that happen this go around!

The Breakdown

The idea phase is typically one of the major hang ups for me when beginning Ludum Dare. This time around it went swimmingly. I didn't sit and beat myself up over the theme sucking or any of that typical nonsense - I just dove in head first and started working. I talked myself out of making an inventory management game and soon stumbled upon the idea for a shooter where the bullets created walls. I mulled around with what perspective and style would work best and settled on a top-down shooter. I figured it would best illustrate what was going on with the walls.

The initial features started to come together quickly. Within the first hour or so, we had our player moving, aiming their cannon towards the mouse, and firing a basic projectile. This was probably one of the fastest idea to prototype phases I've managed to pull off in a LD - and it made a huge impact on me wrapping my head around the scope early on.

The hang-ups started to occur when dealing with the spawning of walls. I knew early on that the wall would need to spawn in at a direction inverse to the bullet. Initially, I did this partially correct but used the wrong set of Quaternion functions to translate it. Needless to say, after plodding through a couple different maths and tricks to get it working I went back to the original code with a different (and correct) rotation and got it working wonderfully. Unfortunately, this cost me about an hour or so of tinkering and bug fixing to get done.

In the first night I had a moving character and a partially completed main gameplay hook. That was the best first 5 hours I've had in any LD ever - so I went to bed with a huge smile on my face and a litany of features to get coded in on Saturday.

Sadly, Saturday didn't quite go according to plan. I knew I had some important apartment/moving business to attend to and had set aside some time to do so. That time ended up moving further and further back and when it came it ended up taking longer than I had budgeted for it. The whole ordeal cost me probably 3 to 4 hours on top of a fairly listless morning where I got some things done and took a break to play Monster Hunter (hey, I'm only human :stuckouttonguewinkingeye:).

Given all this, by late Saturday night, I had basically completed the core gameplay features and started to implement the enemies. At this point, I had to cut a couple frivolous features from the game, mainly different bullet types and a pick-up that would allow players to temporarily pass through their own walls. All that was left to do was art, sound, and UI stuff.

The bulk of this work took place early Sunday morning before bed and in earnest early afternoon after some sleep! As I was super limited on time, still crushing some bugs, and not really in the mood for 3D modeling, I took the easy route on art and just made my prototype stuff look better. I think this decision was the best in order to get this puppy completed. While the art isn't stellar - it's cohesive, thematic, and not an eye sore. This decision also left me with more time to make a solid UI and background music. The tunes and sounds came together after a little struggle. It's simple, punchy, and thematic. Not my proudest work - but not my worse, by far.

Unfortunately, I still didn't have enough time to get it turned in before the 48 hour mark as I had hoped. By the time the 6PM EDT deadline rolled around I was still patching up some last minute bugs and getting sounds and effects in place. I finally got everything squared away and ready to publish by 10PM that night, missing the deadline by over 4 hours. So, I submitted to the Jam, instead - no biggie - I just finished a LD for the first time in almost a year!

Now for the TL;DR.

What Went Well

  • Idea phase was short and I got to work quickly
  • Pacing was fairly good throughout, a couple hang ups cost me some polish time - but all in all I stayed focused and got the job done
  • I did get to stream a little bit, storms prevented it the rest of weekend and the setup needs a bit of tuning for better stream and sound quality
  • The game has very few bugs reported
  • Got my 20+ ratings - WOOT
  • People find the game fun and challenging; good comments on controls and game feel

What Could Have Gone Better

  • My understanding of quaternions needs improving so as to eliminate the trial and error guesswork of using quaternion functions in Unity
  • I could have had more time to polish the art and add more visual feedback (i.e. player taking damage)
  • I had planned to get controller support implemented, but alas, ran out of time
  • Build process should have gone smoother (didn't have WebGL or Mac build package installed, had to upload those the next day)
  • While my pacing was sufficient, I felt too comfortable taking prolonged breaks and had a couple time management slip-ups that need addressing for the next go around

What's next for Hovertank 42?

I was initially thinking about just letting this one ride post-LD. However, since submission I've come up with a couple ideas on how I could improve and add more content to the game. In that time, I've also implemented controller support into the game. If I manage to take another swing at this game it will definitely feature more modes, more enemies, and perhaps some local multiplayer goodness! I'd be happy to see some opinions on whether or not you can see this as a fully fleshed out title.

LD43 and beyond...!

For the most part, this was a great LD experience and it was awesome to get back in the swing of getting one done after so many failed attempts. I've had loads of fun playing through everyone's entries so far and greatly appreciate those who have played and rated Hovertank 42!

Already hyped for LD43 in December - just need to brush up on some stuff so it goes even smoother! :nerd:

LD 43

Let's do this thing!

Totally in for Ludum Dare this weekend! I have to get the streak going after a successful LD42 that broke a bad slump.

Need to go shopping this afternoon before the gym to stock up for the weekend. :smiley: After that, it's time to hit the ground running!

Sticking with the usual stack this time around - going for the Compo, but if all else fails the Jam: - Unity - Photoshop CC - Blender - FL Studio

Depending on how the internet in my new apartment fares, I'd love to stream a good deal of the weekend over on my Twitch channel.

Good luck to all you jammers - and remember, THINK QUICK, ITERATE QUICKER, and most importantly HAVE FUN!

Ludum Dare 46

Let's do this thing!

Can never resist a Ludum Dare when it comes strolling along! Haven't been able to get one done since LD42 - this time that's changing! Likely going to give myself the bigger window with the 72 hour jam - but if I can mange to get something good in 48 hours, we'll shoot for the compo.

I'll be rolling with Unity for 3D or Construct 3 for 2D alongside Photoshop, Blender, FL Studio, and BFXR for all the art and sound goodness.

Good luck, jammers - and most importantly - HAVE FUN!

24 hours in!

24hourmark_01.gif

24 hours in and I am making pretty good progress. Went to bed last night without an idea and woke up this morning with the vision for a platformer where you have to transport and protect mushrooms. Player moves around and picks up, drops, and throws mushrooms.

Still have traps and obstacles to code, along with some game state stuff and then I'm on to art, music, and levels.

Keep griding, jammers!

Mushie Post-Mortem

I'd like to use this post to not only promote my - cough entry MUSHIE cough - but also discuss some of the things I enjoyed, learned, and took away from this Ludum Dare. First, check out this timelapse I put together - it's about 24 or so hours of footage condensed into 12 minutes!

https://www.youtube.com/watch?v=spPf3jrpiU4

Preface

I wil start by saying that this was the most confident I've felt with a Ludum Dare (or any game jam, for that matter) ever. I can attribute this to a couple things:

  • New job has really sharpended my all around programming skills
  • Moving into a new condo with a dedicated workspace has made me more comfortable
  • Spending the last few weeks in isolation working on game projects has helped shake off some rust

All that being said, it was not a perfect performance and like for most of us, time management was the bane of my existence. If you peep the timelapse you can clearly see where most of my time was spent - and that was coding.

I enjoy coding and can get lost in it, especially when digging into new concepts and experimenting. With this Ludum Dare I wanted to try something I had a little experience with but never fully executed on - and I did just that. This entry was my first serious attempt at a 2D game in Unity and my first ever platforming game.

I really, really enjoy developing platformers. There is so much opportunity to tweak and balance the game feel and level design - and that is something I have always loved above all when it comes to game development. Having refined a 2D platforming controller over the last several months and implementing the new Unity Input System with it made getting a moving character and setting up control mappings a breeze. That left me with most of my time to hone the gameplay and get in some cool art and sound.

Sadly, I didn't get the look and sound I was really going for and had to settle on some rushed polish at the end to tie it together. So, given all this - what went right and what went wrong?

What Went Right?

  1. Having my platforming script to work from made getting started effortless
  2. Sleeping on my idea made for a more concrete concept to start from, which vastly limited my scope
  3. Having a limited scope meant compartmentalizing tasks and getting through them went pretty smooth
  4. Keeping focused when faced with bugs and uncertainty

The first three are pretty self-explanatory, but I want to highlight Number 4. One of the toughest things I deal with in Ludum Dare besides coming up with a good idea and having time for polish - is keeping it together. As the weekend draws to an end, my stress levels climb in suit and my work suffers. This time around, I just kept pushing and pushing and did not allow myself to get discouraged or even think of tossing in the towel.

I can't really attribute this to anything other than just having been there, done that*. This marks my 7th year participating and my seventh submitted entry. Everytime I jump into this challenge the stress goes down.

What Went Wrong?

  1. Being newish to 2D in Unity came with some pitfalls I'll outline below
  2. Neglected art and polish affected the game's feel
  3. Rushed music may have negatively impacted the game's feel, too
  4. Not enough time was spent on levels, so the pacing suffered a bit

Number 1 is really the heavy hitter. For the majority of my game development in Unity I have focused on 3D. It was the only thing Unity really excelled at when it first came out and it was what stuck with me. Since the introduction of the suite of 2D tools in Unity, I have not really spent ample time picking them up and instead have continued to lean on Construct 2/3 to build 2D games.

This presented a number of challenges to me - such as forgetting that collison and trigger methods have "2D" in them or mixing up some of the vector maths from a 3D perspective. I really wanted to leverage more of the 2D tools in my level design, but because I was unsure of how to use them and didn't have the time to focus on level design that all flew by the wayside. What I was left with was some pretty rudimentary levels with no style or variance.

The Takeaways

  1. Having a pre-built belt of tools to start with
  2. Sharpening the tools you have
  3. Picking up on some new ones before Decemeber rolls around

All in all, I feel successful coming out of this Ludum Dare. I feel like I can take my mistakes and focus in on those aforementioned takeaways and improve upon them. I want to build a loose "game jam framework" that contains some good starter code and UX stuff out of the box. This will cut back on some unnecessary dev time that can be then relegated to art and level design. I'm not sure exactly what that entails, but I have plenty of time to figure it out! Lastly, I need to learn more about Unity's 2D tools before the next jam, so I can put them to use!

I had a great time and came up with a solid little game at the end of it. Really been enjoying playing everyone's games and seeing all the different takes on the theme. You all killed it! It's so awesome to have this community where we can all get together and make cool shit!

Play and rate away!~

Ludum Dare 47

Let's do this thing!

Going to going for another solo attempt this year! I'd like to qualify for the compo, but usually I have to take some shortcuts that put me in the jam category :sunglasses:.

Should have plenty of time this weekend to get a nice entry done - definitely want to make something spooky, too!

I will be rolling with the following tools: - Unity for the game deving stuff - Photoshop for the artsing - FL Studio for last minute tune making - Blender for 3D models (or things that looks like 3D models :sob:) - BFXR for beeps, boops, and zings

These tips get passed around the blogs and Twitterverse ad nauseam but we all must remember to: - Keep scope small - Eat healthily - Drink water regularly - Get up and walk, stretch, or safefly vibe outside - Sleep at least 6 to 7 hours a night

MOST IMPORTANTLY - have fun. If you're aren't having fun you're doing it wrong :wink:!

Day 1 Progress

https://youtu.be/ObslwcmrmOM

With only 3 hours remaining in the First 24, I have a pretty solid look and feel going and have implemented the main mechanic of switching color spaces!

Now on to some prototype level design, as that is where the stuck in a loop portion will come into play. Thinking you'll have to carry certain colored lights to the right locations other wise the exit portals will take you right back to the start of the level. :thinking: We'll see what comes of it!

COLORSPACE Post-Mortem

LD-banner.png

First, hats off to all of you who participated this weekend and a big congrats to those who got it done!

I want to make a quick post about what went wrong and what went well this weekend with my entry COLORSPACE. Give it a go and let me know what you think and I'll return the favor!

What went well?

I had some goals with this Ludum Dare to focus on atmosphere and visual game design. In past contests I spent a lot of my time trying to code relatively mechanically heavy games, so this time around I wanted to try and build a game where mechanics were derived largely from visuals and physical space.

Implementing this went well. The overwhelming majority of the mechanics were dervied from Unity's Layer and LayerMask systems. It was effortless to control what the game rendered and allowed the player to collide with, which allowed me to put some more focus on the atmosphere, which is done largely through the toggling of post-process volumes.

The simplicity of these systems made most of the "bugs" I encountered along the way me forgetting to set a layer properly on an object. This success is largely up to knowledge and toolset. I could have just as easily made some huge list of red objects and green objects, etc. and looped over them everytime the player switched colors. In all honesty, that approach would likely have been performant enough for a game this small, but the workflow was something I wanted to avoid.

Leveraging high-level systems in Unity (and the flashy ones) easily cut out hours of work that I'd usually spend. Ultimately, I would need as many of those hours as possible, as I'll detail a little more in the Wrong section.

On top of that, I think there were a few other positive take aways:

  • Keeping my scope simple made getting started easier
  • Getting the visual appeal nailed down early helped solidify the gameplay direction and allowed me to rest easy the first night knowing I could wake up to a game that looked and played as I intended
  • I did not dip my toes into anything I wasn't already familiar with or have implemented in the past

All three of these are important to discuss as a whole, because they relate heavily to my time management experience this weekend. Despite having alleviated the coding time I usually spend, I ended up needing even more time to build levels for this game than I could afford. While I implemented the mechanics of the game fast, my ability to design challenges and puzzles using the mechanic was more challenging.

So that leaves us with...

What went wrong?

By running with a mechanic before nailing down a solid hook or design pattern I run myself into a rut when trying to build levels. That, in turn, cost me time to implement some of the visual and story elements I wanted to reinforce the theme with.

So, with what I gained in style and fluidity I sort of lost in messaging, which is a large component of a game like this. From a thematic standpoint, I don't think I quite hit the mark.

However, I can look past that - I made a freaking game this weekend! :sweat_smile:

Given that, it is still important to reflect on how certain decisions have an impact on the direction the game took. I couldn't get any story in the game in time and I rushed to get music and sound done at the last minute. Time and time again Ludum Dare proves itself to be a challenge in time management. It's tough to divvy up time effectively (not necessarily equally) when you're flying solo.

While I acheived what I set out to do and got the sucker done - I've learned that no matter how I may try to shift my approach at Ludum Dare, the guding principle remains: it's a balancing act on the flying trapese.

So, these things that went wrong weren't terrible things - but a symptom of the challenge that is Ludum Dare. With every attempt I think we all get better at managing our expectations and actions to get things done.

Moving Forward

I'd like to keep exploring this concept further. Once I've successfully launched my current project cough IGEO DX cough, I think I will sink back into this little game and see how far I can take this mechanic. :sunglasses:

Thanks to anyone who checks out COLORSPACE. Please leave a comment and I will 100% play, rate, and comment on your entry!