Documentia
Every choice have an impact.
Discover our RPG narrative game : https://ldjam.com/events/ludum-dare/43/documentia

Every choice have an impact.
Discover our RPG narrative game : https://ldjam.com/events/ludum-dare/43/documentia

https://ldjam.com/events/ludum-dare/43/altar-1
The band DMCP is trying to summon the Lord of Metal. As tribute to the Most Brutal One, they have to sacrifice the Metalheads at their concert by pushing them into the Pit of Doom. Help them succeed in their quest with some epic stage diving and brutal mosh pit action.
Thank you to everyone who's provided feedback so far! We've appreciated all of the great ideas and suggested improvements, and also love how honest everyone has been when it comes to the game's current shortcomings. We're planning on making improvements to the game later on, and we'll keep all of your feedback in mind.

Check it out! https://ldjam.com/events/ludum-dare/43/death-metal-crowd-pusher
As I continue to do a post-compo version of Blót, I am creating a video tutorial series that I'll be posting on YouTube when I make this enemy character for the game.
The video series is about 30 episodes long and broken into 3-15 minute videos that go through everything about modelling, detailing, coloring, rigging, skinning, and animating the character. You can follow my YouTube channel or Twitter if you are interested to see when the videos appear.

Play Trailer Trashed and destroy a trailer park, sacrifice humans for more time but lose points. Choose wisely!
https://ldjam.com/events/ludum-dare/43/trailer-trashed


Hello, LD buddies.
By far, the two most asked additions for our game were more maps, more creature types.
As we are now returning to development and I'm completely refactoring the creatures AI system, it's a good time to ask which unit types you think would fit/you would like to see in the game.
We're interested in any suggestions, critics and other feedback you're willing to give.
Thanks a lot in advance!





https://ldjam.com/events/ludum-dare/43/jesus-take-the-wheel
You have angered the god of war, Ares , and now you are forced to fight in a 1v1 gladiator arena to kill and sacrifice your opponent just for the fun of the gods. You have to choose, it’s your life or theirs
If you want me to play and rate your game please post a link to it in the comments.


You delete files and the game assets disappear. Fun right!? https://www.youtube.com/watch?v=gPRk38sGu9I
Check it out: https://ldjam.com/events/ludum-dare/43/just-delete-them
Hey everyone, I would really appreciate it if you could play my game and help me get some more reviews. Thank you so much! :)
Play my game here: https://ldjam.com/events/ludum-dare/43/sacrificial-movements Thanks
Fire Swept is a Fire Fighting Real-Time Strategy game! Fire it up and give it a shot! Please rate and review if you like the game. If you have any suggestions on the game, please feel free to let me know. I take all suggestions, feedback and critique seriously. Reviews will get your game played and rated in return.
Post-Jam Improvements - Improved Gameplay - Redesigned UI - Pathfinding - Unit training - Budget system - Four season time line with dryness effector - and much more!

https://youtu.be/Jjw7kg_Ae1Q
Just finished last unit animation for postludum version

Hi there!
Today we are Play-Rating Ludum Dare 43 Games live on twitch once more! You want your game rated? Submit it to this form:
https://goo.gl/forms/DmttN0GhV8f8ARsq2
We will do Play&Rate-Streams on Monday and Wednesday for two weeks now:
Plan is subject to be changed.
We would appreciate, if you'd also play and rate our submission:


I have finally realised the potential of my Jam entry. As always my idea was too ambitious for Ludum Dare and my capabilities and whilst I was satisfied with what I achieved, it was flawed. Only being able to play 2 player is a serious comprimise and one I would not thank any one for in their entries. So please play and rate my entry for what it is, I would really love for people to play and give feedback on the post jam version if you can spare the time. I think it is interesting. I will be playing and rating games over the next few days so leave your web based games in the comments and I will get through them as quick as I can, Peace.
So I just remembered earlier this day that the 3rd ld of the year happens every december
im kinda shocked and disappointed that it already happened a week ago
theme looks good though
see you in LD 44
The game has been up a long time now and we are thinking of a post version but don't know what too improve. Help us by playing and leaving a comment. https://ldjam.com/events/ludum-dare/43/suicide-sanctum https://ldjam.com/events/ludum-dare/43/suicide-sanctum



Try Altruist Project in your browser now - it's a mouse-only game of chance, luck and some strategy.
Some advice:
Will you survive the Altruist Project?
Please play and rate my game at https://ldjam.com/events/ludum-dare/43/maze 

In a world of limited resources, there can be no infinite growth. Will you promote innovation to the detriment of some or promote equality at the expense of progress? Use the elements to develop your different territories and forge your society in a limited time. Sacrifices must be made and decisions come back to you...
Living the role of the humanity hero has its burden, there're a few who can live with memories of the sacrifices made to maintain a healthy and stable humanity in an apocalyptic future. 
https://ldjam.com/events/ludum-dare/43/humanity-hero
Finally I took some time to write a post-mortem for my LD Compo entry - Penance

Tools of trade I’ve used:
When I’m brainstorming various game ideas I always end up with something that requires puzzles but this time I wanted to make something filled action. Soon my mind wondered from Lemmings to Cannon Fodder and Overlord poked in and the idea was there right away:
WHAT: Hellish character walking the earth, sacrificing minions WHY: Banished from hell to do the penance on earth HOW: Sacrificing minions…somehow.
Even though I didn’t have a clear game design about sacrificing minions I started out with two goals: 1. Make some pixel art 2. Implement player & minions
First of all I went to LOSPEC which holds a huge variety of palettes for pixel art purposes. Over the last year I found out that using specific color palette makes style consistent and better looking although it is a bit hard to work with limitations.

My pick was ENDSEGA32 palette.
After an hour or two I had rough art ready for the implementation.

There is always experimenting phase
After another hour I had character walking around the forest. Basics were there and with Unity that stage came fast! But then there was the tricky part, minions & pathfinding. I was relying heavily on Unity’s agent navmesh & agents but somehow I couldn’t make it work, at least not fast enough so I ignored that, just in case I will have more time at the end (I didn’t).
For some reasons, I left minions alone and implemented enemies & decided that main character will also be able to shoot some kind of dark projectiles.

Idle farmers, waiting for the swift death.
With enemy dummies implemented, I knew I have to hurry with the minion part because I still didn’t have a clear idea what would be the exact mechanics. What I knew for sure was that minions would be following player & could be lead around while holding the right-mouse button.
My thoughts were all over the place, here are few options:
This was the hardest part of development, I didn’t have a clear goal so I went with option 4. I did a prototype and it was fun but not fun enough, it lacked control, how many minions do you explode on action, which minion exactly? Those close to the enemy?

At that point I had tiny minions following the player or cursor if you lead them. But that’s all there was.
The lack of clear solution was killing me, so I took a nap. When I have problems like that I always take a nap which helps me in most cases and it helped me now. When I woke up, everything was really clear to me – make it simple, save time and make it fun.
I got rid of the ideas to upgrade character, giving him new powers etc. and used idea 4. in some way so this was the decision before I woke up:
MINION MECHANICS: When minion is near the enemy or structure it jumps and sticks to it. When you press “detonate” button, all attached minions explode. This was it, it felt right!
That way you get control over which one explodes and when and after the implementation it felt perfect, leading hordes of minions towards pitchfork farmers, sticking and detonating them was fun!
This time around I didn’t use chiptune sound generator and rather went for recorded sones. All sounds for the competition were done with my mouth, keys, cup, notebook and a pencil. I recorded everything in Audacity with my headphone’s mic and adjusted some pitch & speed and it worked. Of course they are not perfect and sometimes noisy but when I imported them into the game I was surprised by the result.
As for the music, I just searched for random music generator and WolframTones popped out. It generates an amazing music considering it’s random even though the max length is 30 seconds. I did some random generation and instruments adjustments and the result was music for Penance.
Music from WolframTones I’ve used for the game
Next time I’m doing the Ludum Dare I will be using the same combination for sounds and music. You can’t go wrong with that!
On Sunday I was away for 6 hours if not more which took away plenty of development time.
I was still lacking level design, more enemies, buildings and proper game loop (health, death, respawn, main menu…) so I had to use my remaining time wisely.

Part of the level (zoomed out)
I went on drawing new tiles and implementing new enemies – Archers. They were necessary because pitchfork farmers really didn’t show much threat. They fell with minions before coming close to you.
Implementing player’s health, archer towers and drawing fortress walls for the final scene took me the remaining time and I figured I won’t make it for the proper tutorial, level ending & main menu. There were so many things missing I panicked.
I made temporary level ending, so the player knew that’s where game ends.
Of course game ending is good to have but for the competition sake I believe experimenting and proof of the game design is more important, at least for me.
In the panicking process I also started making a main menu that might work but decided to leave it out – rather having no menu than something ugly.

Main menu mockup – didn’t get into the game
The time was ticking, last minutes were passing by like seconds so I wrapped everything up, prepared the project build & source code and made a new entry on the Ludum Dare website.
The competition was over!

Things that went wrong:
Things I’m happy with:
To cut it short, I pretty much enjoyed this LD compo and I’m satisfied with the result even though it lacks specific important elements. Hopefully I will have time to make this into a short mini game with the menu and few levels to play one day.
Feel free to give Penance a try. Any feedback is more than welcome! Thank you for your time! 😉
We have just added web version of our game to itch.io Feel free to try it out.
https://amiendor.itch.io/moneyrun

Working on the video tutorial! Try out our board game!

A small world into your computer files.
https://ldjam.com/events/ludum-dare/43/documentia

here is the first "artwork" postjam about my game: Lastcrifices

you are welcome at: https://ldjam.com/events/ludum-dare/43/lastcrifices

Enter the arena and kill those aliens ! Send your score in the comments ! ;)
https://ldjam.com/events/ludum-dare/43/muduls-trial

So after reading the comments about my game (and resting for a week or so), I decided it was time to release an update for Torontifornia. Basically, here is the changelog:
Also, there is now a WebGL version avaliable, so no download necessary! However, only the updated version can be played on the web, so if you want to play the Jam version you'll still have to download.
Make sure to check back soon, as we're going to be giving the gift of a major update by Christmas!
Hi, All!
I'm going to be playing and rating today! Please post a link to your jam submission in the comments.
Show your support and play/rate our game as well! There is a post-jam version in the blog, if you're interested in the idea but having issues with controls/collision bugs!
https://ldjam.com/events/ludum-dare/43/the-tearable-three
https://youtu.be/CUTThEnC-XE

Have you fed the Mighty Snek today?
Try our game with a friend and let us know what you think ~
https://ldjam.com/events/ludum-dare/43/praise-the-snek
Hi there!
Today we are Play-Rating Ludum Dare 43 Games live on twitch once more! You want your game rated? Submit it to this form:
https://goo.gl/forms/DmttN0GhV8f8ARsq2
We will do Play&Rate-Streams on Monday and Wednesday for two weeks now:
Plan is subject to be changed.
We would appreciate, if you'd also play and rate our submission:

Hi everyone.
I'm doing one last live stream where I play and rate your games. If you want your game played live on stream and if you want to get some super valuable feedback, comment your game link under this post.
I'll be streaming at 10pm CET/4pm EST right here: https://www.twitch.tv/syrapt0r
See you then!
You delete files and the game assets disappear. Fun right!? https://www.youtube.com/watch?v=gPRk38sGu9I
Check it out: https://ldjam.com/events/ludum-dare/43/just-delete-them
https://ldjam.com/events/ludum-dare/43/plateformer-txt
Platformer.txt is a game where you manipulate files to influence the state of the game and your avatar in order to complete the different levels
you can subscribe to this newsletter to follow the developement of the game https://tinyletter.com/Platformertxt
Go pay off your space debt! https://ldjam.com/events/ludum-dare/43/spare-parts


Come check out our game:
And if you comment a link to your game in the comments I'll come check your's out too!



AAND I'm going to be playing your games for another 30mins, want to see some interesting entries :)
Go play our game if you feel so! https://ldjam.com/events/ludum-dare/43/fighting-souls
Okay okay.. :)
I would love to try some of your games, but I am a Linux user. And well... To find a cool game and to see it's only made for windows... It's kind of frustrating x) ! So if yours is an html5 and/or linux version, gimme :D ! I'll try it whenever I have time :D !
And if you want to try mine, here comes Charming :D ! https://ldjam.com/events/ludum-dare/43/charmings-sacrifices
Can you guess what you will have to sacrifice without reading the comments :'D ?
Hey! We've updated our game a little bit to make it more playable and user friendly.
Check it out at: https://ldjam.com/events/ludum-dare/43/byebuddy
And here are some new screens:

AkimBear was just featured on this website! Check out their review and impressions here :bear: https://www.freegameplanet.com/akimbear-browser-game/
And play and rate here! https://ldjam.com/events/ludum-dare/43/akimbear
https://www.youtube.com/watch?v=gPRk38sGu9I
Check it out: https://ldjam.com/events/ludum-dare/43/just-delete-them/
Hello! My name is Alex, and it is my first Ludum Dare. It was veeery interesting three days, we didn't created all, that we thought, but it is preety good game, it have bugs, doesn`t have a lot of levels, but it is interesting.
Thanks for all who read this.
Game: https://ldjam.com/events/ludum-dare/43/bloody-path unknown.png
Thanks to Abortion Boy, I reached 1000 downloads on my itch.io account! It might not be a big number for some of you, but it's still a pleasure! Make sure to try the game if you didn't already !

Also you can share your games in the comments, I'll play and rate as much as I can tomorrow ! :)
Hi All, just dropping a note to say that I'll be live streaming more playthroughs of LD43 games tonight at 8:00 EST. You can submit your game into my play queue directly from the stream!
Here is a link to the Twitch Event https://www.twitch.tv/events/pNpvdef_RnO8uzYtvxv4wQ
Once again, Tech Valley Game Space will be live-streaming tonight at 8:30 - 11:00 PM EST on twitch.tv/techvalleygamespace! To have your game in consideration for playing and judging, you can sign up on the form below:
goo.gl/forms/zQAhArQG3Lfp2imS2
As the form already states, we do enforce a Code of Conduct in our live-streams. As such, we do reserve the right to cancel streaming and rating a game for any reason. Otherwise, come join us when the stream starts!
I'll be playing and testing games now! Come by if you want!
My stream: https://www.twitch.tv/syrapt0r
Your sacrifice.

My game needs more ratings and reviews, so please go check it out: https://ldjam.com/events/ludum-dare/43/the-gods-are-angry I've been busy recently and haven't been able to play as many games as I'd like, which hasn't helped, but I'm slowly getting round to them all.
I finally got round to making a timelapse of the creation of my game. I made it using Vegas Pro 15 (I got it today for $25 off a humble bundle). Anyway, please take a few minutes to play my game and leave a rating! :)
Game: https://ldjam.com/events/ludum-dare/43/more-sacrifices
Video: https://m.youtube.com/watch?v=ewPoFkNz3fg
PS: I'm especially proud of this one, as I actually took time to polish it, and focus on making it feel good to control and play, rather than focusing on just getting content in.

https://itch.io/games/html5
Not sure how it happened though... If anybody knows how the algorithm works, I'd be glad to know more.
Also, you might want to try it, it's fun! ;-)
Hi, Everyone!
I'm going to be playing and rating throughout the day today!
Please post a link to your jam submission in the comments. I will indicate with a <3 next to your comment when your game has been played and rated!!
Show your support and play/rate our game as well! There is a post-jam version in the blog, if you're interested in the idea but having any issues!
https://ldjam.com/events/ludum-dare/43/the-tearable-three
https://youtu.be/CUTThEnC-XE
It's not like I expected it to miss out on having enough votes, but still I'm always happy to have one less thing to worry about 😄

Hoping to write a postmortem this weekend. Lots of things happened, good and bad, so it's always useful to get those out onto paper.
Anyway, if you're looking for more players on your game, just drop me a comment and I'll take a look.
Alternatively, you can play Food Chainz, my weird whacky cute rap game, over here: https://ldjam.com/events/ludum-dare/43/food-chainz

The first week of the Ludum Dare rating and judging season has passed! Time certainly flies when you're busy playing and rating different entries, preparing material to be posted, and recovering sleep due to the unescapable claws of self-inflicted game jam crunch. Sounds like our usual way of doing things here at Whales And Games indeed!

We were expecting to post a blog post going in-depth about how the characters for our latest entry, Super Sellout (which has just smashed our last entry's record!) were created in terms of art, but unfortunately, our artist has gone internet-less for the weekend and just recently recovered it, meaning that probably for the first time ever, our first in-depth blogpost will be about the programming instead!
So let's dive right in! This post goes into the technical deeps on how the different Sponsors in Super Sellout were made, how the scoring system of the game works, and the overall benefits of Scriptable Objects and why we keep using Unity! Hope you're ready, because it's a long one!


In case you haven't seen our latest in-depth programming post from Jazzy Beats, our team at Whales And Games mostly develops projects through Unity. At least for me personally, it has been my engine of choice for five years and, as expected, I've grown comfortable with it in terms of workflow. Our other programmer, @kroltan, has also got some experience in Unity but also has his own hand-full of qualms with it. Our IDE of choice is Visual Studio, and @kroltan utilizes ReSharper on top of it. Visual Studio is pretty much the standard IDE for everything related to programming, being utilized together with other game engines beyond Unity (such as the Unreal Engine) as well.
For this edition of the jam in specific, we decided to risk it and utilize the beta of Unity 2018.3, hopefully to get accustomed to utilizing the new nested prefab workflows that are being introduced in this version (at long last!!) for development. While we did catch a few crashes here and there, and a lot more of them than usual, if we hand't decided to stick with this version, we probably wouldn't have been able to properly complete the game during the allocated jam time.

While our post on Jazzy Beats was mostly about Inheritance and how different behaviours were inherited by different characters to perform different actions, with @kroltan's inclusion in the Whales And Games team we've been trying to do things a lot more through composition. This means, breaking much more behaviours into Components and more specifically, some very underrated data containers in Unity called Scriptable Objects, which allow for fast data management and insertion without necessarily affecting the rest of the game's structure.

If you've been following Unity in the past years, then certainly you must have already seen them trying to promote the concept of Scriptable Objects through articles, tutorials and talks especially during the last year. While they certainly have been around for a while, there's still a lot of potential case-scenarios where people could be using them but end up utilizing the standard tools instead. We were guilty of this too, and only recently with us rewriting one of our past Ludum Dare projects for a future update we're planning did we realize just how handful they can be.
In a short explanation (you can read everything about them in the documentation), Scriptable Objects are essentially instances of classes that can be stored and re-used as if they were assets. If you're already accustomed with C# and using it in Unity, you're probably already accustomed to the idea that you can have classes dedicated to holding data without them necessarily having to inherit from Monobehaviour.

Scriptable Objects take this concept further by allowing you to create these data classes as if they were project assets, rather than having them be created by either code, or exposed to an inspector through Monobehaviour. These data assets can then be added to other behaviours, read from the project, etc.
Our Sponsors in Super Sellout utilize Scriptable Objects. Each different sponsor is a different asset, composed of their name, icon, explanation, how many rounds they take to unlock the sponsor, etc. While you can add logic to Scriptable Objects, we strive to keep all of the logic that is not relevant to the concept of the object itself (such as creating objects on the scene, storing runtime values associated with it) on the Scriptable Object class itself. This allows these objects to be independent on their own, serving only as data references, meaning that all of the state related to them (such as if a Sponsor is equipped or not) is stored elsewhere, and not keep with the Scriptable Object when it is serialized and deserialized.
(It should be noted that *Scriptable Objects* show the Unity standard asset icon by default, whereas we display icons thanks to the *Asset Icons* extension available on the *Asset Store*.)

As such, what we do is add all of these sponsors to our GameManager and then utilize that list through the game. The sponsors screen is the best example of this. All of the buttons for the different sponsors are created at runtime, and the icon and name of the sponsor are filled-in at the start. This would allow us to scale this screen and system infinitely if we wanted. We'd have to make graphical changes to accommodate, but we wouldn't have to directly change anything in the logic itself if we were to add more sponsors.
Each sponsor is delegated to these buttons by creating their EventTrigger when the buttons are instantiated, keeping all the logic in a single place. Sponsors that are picked by the player are then added to another list that keeps track of the sponsors that the player has equipped, and removed accordingly (such as if the player changes their mind on the sponsor equip screen). This list is frequently checked, and helps establish the magic of the following section.

With the sponsor system in place, and with the UI and GameManager wired in, the next part is to wire the different sponsors to actually affect the different facets of the game related to them.
If you have played Super Sellout by now you will have understood the whole gimmick of the game is that you sacrifice movement and your comfort while playing (which we so called sacrificing your integrity) by enabling different sponsors that cause a variety of different effects and obstacles to react to you in exchange of getting an higher score when you rescue people throughout the game (and depending on some sponsors, even based on time you have left).
It's also worth noting that most Sponsors also have different cosmetics that are overlaid on top of the character. These are stored in arrays together with the rest of the scriptable object, and are checked every frame to check if the cosmetic frame matches the one of the current player's frame.

There are a few gimmicks that are standard and re-used through the game due to the limited time-frame that we had to put the whole game together. For each of these sponsors, their logic is kept in different places, most notably being the ones that the sponsor affects. Sponsors that affect a player's abilities or controls are kept together with the player, while sponsors that affect objects are kept with those objects.
One of the most standard gimmicks, for example, is the speed reduction gimmick with different sticker sponsors you can add to you which reduce your character speed (while keeping the world speed increasing as always) in exchange of score over time. Being a sponsor that affects the player, the logic for the sticker sponsors are kept together with the rest of the player's scripts under a PlayerAffects class.

When the game begins, the scripts checks through each of the sponsors to check if they're activated, and applies the correspondent speed reduction, reducing the player's speed on the spot. The same is done for other sponsors that also affect the player, such as the Dog Sitters sponsor which applies random forces on the player's velocity at regular intervals.
As for other behaviours that are affected by sponsors, such as metal objects following you, the check is done on each individual behaviour instead. One such example is the MoveToPlayerBehaviour which causes both metal objects and the dogs to follow the player if their sponsors are active. These perform a similar check to the previous speed-affecting behaviours, checking if the sponsors that are needed to run that behaviour are equipped by the player, before actually executing it's logic in Update.

Finally, there are the sponsors that make certain objects appear on the stage if they are enabled, such as the billboards and the different puddles. Just as you might expect given the way the logic of the previous objects is checked, these are actually placed on the different rooftop segments ahead of time (or are spawned in at randomly on places dedicated to random obstacles). Once the game starts, they make the same check on ConditionalObjectSpawn likewise to the following behaviour, and depending on the result, choose to disable the object (if the sponsor is not equipped) or leave as it is (if the sponsor is equipped).

If we were to look back and think of a few ways we could have improved the way sponsors are managed and utilized throughout behaviours, we could have potentially done a single SponsorBehaviour class (for objects other than the player) to hold the checks if a sponsor is active or not in a single-place, and then inherit that class to add each specific behaviour.
Inheritance isn't inherently (heh) bad, however it can very quickly lead to a complicated upkeep of classes and deeper-than-they-need-to-be inheritance levels on top of the classic diamond problem. However, depending on very specific situations, they can potentially reduce project complexity as well, making it a double-edged sword. However, that's beyond the scope of this post, and instead we will be talking about dough, moolah, simoleans, money, because at the end of the day, that's the scoring of our game.

Similar to the Sponsors, Score Types are also a Scriptable Object in our project. This allowed us to create different score types and rates that are affected by the different behaviours and actions without having to individually declare each of them by code and creating adequate functions. Instead, having them as Scriptable Objects allow us to re-use the different score types, and even derive score types from each other.

We wanted to have a score breakdown screen, and for that the game needed to track where each amount of score came from. We started by making some Scriptable Objects that had some basic information about each score source, where, for example, one “Grandma Saved” would be worth $10. That worked perfectly for simple proportions, but for anything more complicated it was a bit limited.
When sponsors started being implemented, we carefully employed inheritance and created a new kind of Derived Score Type, which in addition to the base multiplication-based monetary value (where each score-type adds a certain amount of score each time) can query the value of other score types to calculate its final value. This was used in some sponsors, which awarded money proportionally to a specific type of heroic act or time.

This approach allowed quick balancing by non-programmers, as well as a clean implementation for the graphical interface, which didn’t need to differentiate between derived and pure score types. It also allowed us to quickly connect any given Sponsor or character in need of rescue to a score-type, and implement them on the scoreboard without any new overhead. Of course, even with such systems in place, there was still a lot of content ideas that had to be cut.


Even with all these systems in place, there were still a lot of ideas for different sponsors and modifiers that didn't make the final cut into the game due to it's scope. Here are some highlights of these ideas in order to not extend this post by much longer but that we still wanted to share for pure curiosity:
With the current system in place, we could theoretically add these new effects and scenarios without much challenge other than creating their respective Scriptable Objects and adding-in their respective behaviours where it'd make the most sense to keep their functionality.
At the moment we have no plans to do an this nor update the game with new sponsors and content. However, if that was to ever become the case, the introduction of several of these ideas would definitely be one of the plans for an expansion!


Phewsh, and that ends that! I hope for those that are into programming this post is at least an interesting read or that it sheds some light in the way that we have decided to handle things with creating our sponsors in our entry, Super Sellout. Likewise to our previous jams, we still have our usual post-mortem on the way, not to mentioned the aforementioned art-cantered post.
In behalf of our team, thank you once again for all the support you have given us so far in terms of ratings and coverage. Ludum Dare is a very important and heartful event for us, and it's specially thanks to it that we are able to grow as a team and spread our word around. :whale: If you haven't had the chance to play Super Sellout, we invite you to do so, and make sure to send us your game too!
Finally, we also invite you to join us at our team's Discord server! We have a whole room dedicated to #gamedev and for talking about this type of technical jargon, and we'd love for you to share your own entries with us there!
If you've managed to reach this far, cheers, and thank you for reading! :whale2::tada:

Hi guys, first of all THANK YOU for all the nice feedback you gave.
I updated my little game with an android port.
For the moment this is just the same game as the other versions. There are no improvements or fixes... yet. I´m planning to work on a post ludum version next.
Link to my game: https://ldjam.com/events/ludum-dare/43/volcano-island
20 rating points received!
and i just want to say everyone! thanks for yours votes!

We are having a review party tonight! We are getting the crew back together to review some of your games in the hopes that you will give ours a whirl! We had fun making it together, and now we are going to have fun playing some others together. If you are in Salt lake, drop by tonight for some fun playing LD43 games! classEgames: 3333 S. 900 E., Suite 220, Millcreek, Utah 84106
Link to our game: https://ldjam.com/events/ludum-dare/43/something-evil-is-brewing
In this post I'll be describing the implementation of some of the platformer elements in Welcome to the North Pole.
Perhaps this can serve as inspiration for others or as a way to start exchanging tips. We made the game using Unity but these concepts apply elsewhere.
See also: * Part 2 - Building snowmen

Each snowball has 4 detectors that report contact with the ground or other characters. We use them to detect whether a snowball can jump and what shape a snowman has.
Detectors are configured as trigger and only react to contact with other characters or the environment:

Our layer setup, note that it avoids inter-collisions between static layers or between triggers
This is the simplified code for the collision detection:
csharp
private void OnTriggerStay2D(Collider2D other) {
// Layers is defined by hand.
if (other.gameObject.layer == (int) Layers.GROUND) {
GroundContact = true;
lastGroundContactTime = Time.time;
}
}
Contacts are reset in FixedUpdate(), which executes just before the physics loop (where OnTriggerStay2D is called). We moved CharacterGroundDetector last in the script execution order to make sure that the correct value can be read from other scripts' Update() or FixedUpdate() loops.
```csharp void FixedUpdate() { // Do not clear contact if the rigidbody is sleeping, // otherwise it won't be re-registered until the rigidbody wakes up. if (controller.rb.IsSleeping()) return;
// Allow some tolerance after the last contact before clearing the flag.
// This allows e.g. jumping slightly after leaving a platform.
if (Time.time > lastGroundContactTime + ContactTimeTolerance) {
GroundContact = false;
}
} ```
Detectors are children of an "Upright" GameObject that preserves its orientation even though the snowball rotates:
csharp
void FixedUpdate() {
transform.rotation = Quaternion.identity;
}
Two size 1 snowballs: before accumulating snow (left) and about to grow (right)
Main ideas: * The physical size of a snowball is fixed for each stage (small/medium/large). * The visual sprite grows slowly as you accumulate snow.
This let us balance the game for a fixed collider size while giving a visual feedback that a snowball changes size (coherent with the world).
We kept the ball diameter below the size of one tile to make sure a snowball can easily fit through a gap of the corresponding size (collider diameters are 0.8, 1.8 and 2.6, a tile is 1x1).
Because snowballs are made of snow, the default visual size is already slightly bigger than the collider because a slight overlap looks more natural than having snowballs touch the ground right along their edge.

We took the movement principles from this Sonic physics guide. Another helpful resource was this blog post by Yoann Pignole.
Main ideas: * Each snowball has a maximum speed and an acceleration factor (the bigger the snowball, the slower it is). * While a direction is held, we increase the snowball's velocity in that direction up to the maximum speed. * Velocity is not reduced if it's above the maximum speed. This lets you gather a lot of momentum on the ground and keep it while jumping, or as a small snowball and preserve it as you grow bigger (adds a nice flow and is actually helpful for one of the challenges). * The ball does have some amount of friction that we let the physics engine resolve. This is helpful to make the snowball rotate naturally as it rolls along the ground.
Translated into code, it looks something like this:
csharp
private void MoveSideways() {
var currentSpeed = Mathf.Abs(rb.velocity.x);
var currentDirection = Mathf.Sign(rb.velocity.x);
// Air speed is lower than ground speed to allow less control in the air than on ground,
// but momentum is preserved if you hold the direction.
var maxSpeed = Grounded ? stats.GroundSpeed : stats.AirSpeed;
var targetSpeed = currentSpeed;
if (currentDirection == Direction) {
// Accelerate up to maxSpeed, but do not decelerate while holding the key.
targetSpeed += Mathf.Min(stats.Acceleration * Time.deltaTime,
Mathf.Max(maxSpeed - targetSpeed, 0));
} else if (Direction == 0) {
// Decelerate up to 0 if no key is held.
targetSpeed -= stats.IdleDeceleration * Time.deltaTime;
targetSpeed = Mathf.Max(targetSpeed, 0);
} else {
// Decelerate faster until we flip direction if the opposite key is held.
targetSpeed -= stats.OppositeDeceleration * Time.deltaTime;
}
// Apply the velocity change through a force on the rigidbody.
rb.AddForce(Vector2.right * currentDirection * (targetSpeed - currentSpeed) * rb.mass,
ForceMode2D.Impulse);
}
Holding the jump key makes you jump higher:

This is implemented as a combination of forces:
* JumpImpulse is applied right as you press the jump key.
* JumpHoldForce is applied over time, while the jump key is held, up to a maximum duration (0.35s).
In code, it looks something like this:
```csharp private void HandleJump() { // Trigger jump if (Grounded && input.Jump && !Jumping) { Jumping = true; jumpEndTime = Time.time + stats.MaxJumpDuration; // Cancel vertical velocity and jump up. // Vertical velocity must be canceled because the snowball may still be falling // when the ground detector triggers. rb.AddForce(Vector2.up * (stats.JumpImpulse - rb.velocity.y) * rb.mass, ForceMode2D.Impulse); }
if (Time.time > jumpEndTime) {
Jumping = false;
}
if (Jumping && input.JumpHold) {
rb.AddForce(Vector2.up * stats.JumpHoldForce * rb.mass, ForceMode2D.Force);
} else {
// Stop jump hold force when input is released.
Jumping = false;
}
}
```
We later added a small tweak: moving against a wall while holding jump gives you a small additional boost (ClimbHoldForce) to counteract the added friction and because it feels satisfying:

This allows you to clear 4-high walls without building a snowman :)
Thanks for reading!
See also: * Part 2 - Building snowmen
In the next parts we plan to describe: * Art style and implementation * Music and sound effect design
Feel free to post other suggestions in this thread.
@fre and @catie-jo
Hi guys after a week of catching up at work I finally got that @^#&^$@#&@&$# html build working of my game. Check it out at : https://ldjam.com/events/ludum-dare/43/cheela ! I am now also ready to play some games, I have some catching up to do!! COmment below if you want me to play your game :D
Hi guys after a week of catching up at work I finally got that @^#&^$@#&@&$# html build working of my game. Check it out at : https://ldjam.com/events/ludum-dare/43/cheela ! I am now also ready to play some games, I have some catching up to do!! COmment below if you want me to play your game :D
Tonight, I am going to be streaming working on some improvements and suggestions given by the LD community. Here is the game I will be working on.
I will begin streaming noon (EST) on Thursday, 12/13/2018.
Hi guys! You can kill some fruit right now!) You need to sacrifice soldiers to help grape Princess save a Prince) Not so usual. Right?) https://ldjam.com/events/ludum-dare/43/for-the-princess

Play my game, and I'll play yours! If you want my ratings, sacrifices must be made! I also appreciate any and all feedback that you can give me.
https://ldjam.com/events/ludum-dare/43/reactor-overdrive (Available on HTML for all u lazy peeps)
Try my game

Your objective is to grow and reach you next age phase
Match items dragging them horz and vert, use buttons on top left to have more items
Don't run out of energy or you will die
enjoy, thanks!
If you are interested, we just uploaded the whole making of (that means the full dev progress) our game to our YouTube channel:
Day 1 - Part 1: https://youtu.be/IVUjnrZ-4AQ
Day 1 - Part 2: https://youtu.be/W6GfWcPU3b8
Day 2: https://youtu.be/I_GNV1zWyIY
German language!

With a new balancing upgrade, Berrytales - Fracture Flight has never been as much fun! In fact, now it plays like we envisioned our LD game in the first place! Try it now! :)
Please play and rate my game at https://ldjam.com/events/ludum-dare/43/maze 
https://www.youtube.com/watch?v=gPRk38sGu9I
Check it out: https://ldjam.com/events/ludum-dare/43/just-delete-them/
Yeah! Timelapse starts at 1:00
https://www.youtube.com/watch?v=y3oMNiVRhM0

Hey folks! I have published an improved post-compo version of TPK to Newgrounds:
https://www.newgrounds.com/portal/view/722211
This version has lots of bugfixes, 5 new levels, redone controls and other little adjustments I didn't have the time to do during compo.
You can find the original compo entry at the game's Ludum Dare page: https://ldjam.com/events/ludum-dare/43/total-party-kill
Thank you for playing!

HEY GUYS I HAVE A CHANNEL WHERE MY FRIENDS AND I LOVE TO PLAY GAMES https://www.youtube.com/channel/UCXbqC6P393eIfOtQYXriUA https://www.youtube.com/channel/UCXbqC6P393eIfOtQYXriUA
Is the number of ratings relevant or is it only about the average rating in a category?
We can make it to the exit about half the times at least!

Try Altruist Project in your browser now - it's a mouse-only game of chance, luck and some strategy.
Some advice:
Will you survive the Altruist Project?
Comment on this with a link to your game if it has browser version and I'll review it. ;)
Looking for a nice long list of Web based games to play and rate. Will try any none Web ones too. Especially interested in unconventional games. Hit me
Drop your link below and I will play and rate it (Please browser-based games only)
I would also really apprieciate feedback on my own game, https://ldjam.com/events/ludum-dare/43/ethical-smoothies-co
When you delete files you make the assets disappear. Fun right? https://www.youtube.com/watch?v=gPRk38sGu9I
Check it out: https://ldjam.com/events/ludum-dare/43/just-delete-them

The Fallen Prince Needs feedback!
Hey guys, just throwing my game you there. It is pretty barebones, but hopefully still fun :)
Rolled out a small bug fix, enemies not attacking and allies not attacking.
I'm currently progressing nicely with the story and post-jam version of the game (which is not on LD because that wouldn't be fair).
https://ldjam.com/events/ludum-dare/43/the-fallen-prince
Hi! we are advertising here for the second and probably last time, don't forget to rate our game and if you want to you can leave your game there so we can (hopefully) rate it. Thanks! :)
Electrocuted: https://ldjam.com/events/ludum-dare/43/electrocuted
Hello everyone, I came here to share a bit of the development process of the game Grauby Grauby, made during the Ludum Dare 43, event that took 72 hours. Our team had 3 days to research, generate ideas, evaluate them to select one, prototype, validate it and finally start the development cycle (art, music, design, architecture and functionalities).
The result was a casual game where the player helps the Slime GRAUBY to progress in his dungeon, moving away from his enemies. For this he needs to sacrifice his body mass to move around the walls. The control of the game is simple, can be played with a mouse or with the touchpad just by dragging and releasing to launch GRAUBY forward.

You can download the executable (Win or Mac) or play on your browser.
https://ldjam.com/events/ludum-dare/43/grauby-grauby
Danilo| Designer: Responsible for generating various game mechanics, planning and testing the level, and keep the team always on the same page throughout the entire process.
Maida & Marconi | Developers: Separated by 4 time zones, they were responsible for the construction of the architecture and logic to give life to our game. Our team used Unity to develop the game.
Filipe | Composer and Sound Designer: Responsible for making the sound effects and the music of the game. In the process of building these assets also encouraged the team to define an ambiance and context for the game.
Tamyres & Clarc | Artists: Always in sync to design the best visual solutions for the game by mixing Clarc's pixel-art skills with Tamyres 3D modeling experience. They used Aseprite, Maya and a little Substance for that.
I (Danilo), Daniel and Filipe were in the same city, which facilitated our communication because we used the same space to work. Although they were in the same country, Clarc and Tamyres were 1 hour apart from us, and Marconi lives in Denmark, which is 4 hours ahead.
A few days before the gamejam, we already had the team defined and we knew that we would have to face the timezone differences. So we focused on putting together a spreadsheet with the available schedules of each team member and organizing the discord channel to communicate and get more involved as a team
We also defined some steps to be completed each day; to decide on an idea by Friday, to have the functional core on Saturday ... Even though it is not so accurate in practice, it helps us know how late we are along the jam to be attentive in the moments of simplifying the scope or removing some functionality.

Part of the sheet with our team schedules throughout different time-zones.
The theme was our greatest difficulty (Sacrifices must be made). We spent a few hours listing ideas in a worksheet: each member would pitch their own ideas, as well as give feedback on other people's ideas.
We were in the middle of the night (3:00 a.m.) and the process of ideation was so difficult that we preferred to go to sleep to renew our ideas and make the decision more objective and less obvious (we saw many of the ideas we had had during Ludum's early hours on the main page).
Among the ideas that we like the most; (1) the player controls a skeleton running away from dogs, needing to throw pieces of their body to gain distance (I loved this!). (2) player needs to protect a child by fleeing monsters in a maze, to keep the enemies away the protagonist would need to use his own blood. (3) Slime who sacrifices his mass to launch forward and reach his goal.

Sketchs of the idea number (3), chosen to be our game
We ended up choosing the idea that the whole team felt the desire to work with and that had a possible scope (given the time). We still had most of Saturday to plan together the next days of work. At last we were ready to begin development; with the first sketches we could already see where our project could go, with different layout layouts that allowed different game experiences and various scenery hazards… There were lots of ideas for a short time, so we needed to plan the next steps objectively.
With the details of the idea at hand, it was possible to plan which features were essential for core-gameplay: control of the slime (input of drag and drop), basic obstacles (mobile and hazards), hp and respawn. With these features listed and prioritized along with the secondary / auxiliary mechanics, we can organize what would be the focus of each day's work. For the first day, our goal was to deliver all of the core mechanics, with placeholder art or as much as we could integrate in time.
During development, due to the difference of time zone, the programming team was always attentive to the division of tasks between core-gameplay, secondary mechanics and integration of art and sound, avoiding wasted time solving merge conflicts.

Prototype made with blocks to validate the game idea
One of the biggest challenges of a gamejam is the limited time the team has to develop a cohesive game where the contribution of all areas makes sense among each other to create value and FUN to the gameplay. Much of the activity is done in parallel, while art and sound are being sketched and shaped, new ideas of mechanics are emerging, and the old ones (already listed and being implemented) need adjustments to make more sense. You need to pay attention to what is being done by each team member, knowing that each new task can generate an activity for another person. It helps a lot to have a team member allocated to manage and prioritize activities among the team.
The visual of the game began to take shape quickly. Although it was a novelty for the whole team, mixing 3d models with texture in pixel-art was already something we intend to do because of the isolated skills of our art team. The synchrony between the team worked very well, they quickly test the aesthetic results by making mockups before uv-mapping the models, texturizing, validating and and integrating the object in Unity.

Some of the character art progress
In order to make the music of the game, it took an effort of the whole team to define an atmosphere that made sense with the game and the theme of the jam, discussing and building a thematic that enriched our mechanics. Starting from references of melodies and instruments of the dark ages, we were able to create something that would fit not only with the atmosphere but also with the rhythm of the game.
At the end of Sunday (second day) with everything going well for releasing our second build, containing all of our core-gameplay and much of the visual assets (the first build was a prototype of the mechanics), errors at Unity prevented us from generating it. The solution to the lack of a playable build was to record a gameplay video in the Unity editor, in order to sync the team with the current version of the project to continue polishing, adjusting or starting new activities.
The last day is always the hardest, in our case the fact that all the staff work on Monday got in the way. But we made good use of the time we had to* work on some team feedbacks* that we collected internally with our video and later with the build.
From a design perspective, we had a lot of problems setting up the scene over the first few days, due to inconsistencies in functionality and little knowledge of the tool by the designer. Starting the sketch of level design throughout the project was essential to learning how to improve our tools to make the process flow faster. Since the mechanics could already be tested in Unity alone, it was already enough to plan much of the level on the paper while these adjustments were made to later facilitate the assembly of the whole level in Unity.

Level Design planning before implement on Unity
In the last few hours we had many crucial things being made at the same time: the level design implementation with little time for testing and validation; the validation and integration of sound assets; the review of the checkpoints functionality; and the attempt to add an art asset that was planned over the previous day. Not to mention the description, screenshots and generation of builds to upload to the Ludum Dare website before the timer reaches zero.
We managed to deliver much of what was planned. It was 3 days of effort, but in the end we managed to upload our game to LD43!
Despite the few hours of rest, a lot of time in front of the computer and headaches to solve all the problems that came up during the process, it was worth every second. We had a lot of fun, we were always laughing and playing with each other through discord voicechat or hangout.
We could not deliver everything we had planned, certain things did not go through the necessary adjustment in time, but the process of building and solving problems together taught us a lot. We learned and have a lot of fun together, this is worth more than any game.
https://ldjam.com/events/ludum-dare/43/plateformer-txt
Platformer.txt is a game where you manipulate files to influence the state of the game and your avatar in order to complete the different levels
you can subscribe to this newsletter to follow the developement of the game https://tinyletter.com/Platformertxt
A small world living into your computer files.
https://ldjam.com/events/ludum-dare/43/documentia


We changed a few things on our game Abortion Boy based on the feedbacks we took good note of. We're not changing the download link on the Ludum Dare website since it would be cheating, so make sure to play the first version if you want to rate us, however you can find an updated version HERE and see the few updates that have been made ! :)
If you're looking for a simple game to play quickly, try Flocked :sheep:

Flocked is a neoclassical shoot-the-targets game in which the targets are sheep, the goal is to sacrifice as many sheep to the gods as you can within the time limit :smile:
The game currently supports Windows, Mac, and Linux; for some reason the web build is currently broken.
I would appreciate if you could rate the game as well; it only needs two more ratings to reach the target amount.
You can find the game here
Cheers! - IceMaker
You delete files and the game assets disappear. Fun right?! https://www.youtube.com/watch?v=gPRk38sGu9I
Check it out: https://ldjam.com/events/ludum-dare/43/just-delete-them
Sadly I've been super busy and haven't had a lot of time to play and rate other games. I'm doing my best, but it would mean a lot to me if you would play my game, Ultimate Sacrifice. Thank you, and I hope you enjoy!

Squares are coming.
Get ready for the fighting.
#You will kill those Squares.
I don't know why. Nobody Cares.
#By sacrificing your guns.
While I'm making these puns.
#But I'm out of time, which is only thing I fear.
So you should go and play it here: https://ldjam.com/events/ludum-dare/43/squares ;)
#
For this Ludum Dare @JamesOliverMusic and I put together a game called King and Country! I also continued my tradition of getting my own game's name incorrect on the submission page... :rolling_eyes: I normally make pixel art action games so I wanted to try something different. This time, we decided on a strategy game where you have to help the king escape a castle under siege. The enemies are too numerous to fight them all, so you have to strategically use the knights you have to run interference. Sure, sometimes they die, but SACRIFICES MUST BE MADE to insure the safety of the king.
We work well together since I do all the code and art while he takes care of the music and sound effects. This was our second Ludum Dare working together plus some jams in between and since we can both work independently the process was extremely smooth.
@JamesOliverMusic and I are ~5 hours apart so by the time we were able to brainstorm and come up with a plan we were already 18 hours into the competition (about 3:00 Saturday EST). Losing all the time was painful especially when making a strategy game.
Originally the game was going to have some real time combat element, but that was scrapped very early on when I realized how complicated the systems were becoming. So in the final version the battles are fought automatically.

Friday night. I got the theme at 9:00 and brainstormed for 3 hours. I came up with a bunch of ideas, none of which I liked. Crap.
I had a meeting in the morning and spent the morning brainstorming with @JamesOliverMusic trying to come up with an idea. He proposed a castle under siege and after some discussion we ended up with King and Country! I got started working at 3:00 PM on Saturday, almost 18 hours after the theme was announced. By the evening I had most of the systems finished but all the art was just placeholders.
I lost another couple hours in the morning to other obligations. Then again in the evening when we had company come over. I basically worked on the art finished up the systems for 6 hours and ended up going to bed at 1 AM.
Monday. I worked. I put another 3 hours in the evening and crammed in as much polish as I could and submitted about 20 minutes before the submission hour started.
Here’s the post-mortem in the Good, Bad and Ugly format.

The art style - I knew that I wasn't going to have a lot of time for art. I wanted something clean and simple with a hopefully nice aesthetic. I made everything in Inkscape which let me quickly and easily scale and modify it, which was good because I didn't decide on a resolution until late in development.
The music - I think it fits with the game perfectly. It builds from suspenseful during the planning to frantic and epic during the Battle phase before returning back for the planning.

Code - I normally write some fairly clean code during jams that is easily extensible. This time I knew I wouldn’t have as much time so I hard coded a bunch of stuff that came back to bite me. Normally I expect the pain of bad code to come after the jam is over when it doesn't matter as much, but not this time.
One nasty bug - I got caught on a bug that was driving me crazy. My game would randomly crash with null pointer exceptions, but I could never recreate it. I don't mind bugs during a jam, especially on some of the more complex systems I had in the game, but this one made the game unplayable so it had to be fixed. It ended up being my own fault. When a unit dies in battle I would kill it, which removed it from all the arrays and locations in the game. But the unit was still present on the board, just invisible. So when you draw the selection box you would catch the dead unit and move it along with the live ones, which would place it in a new room. Then a battle on the room would have a different number of alive units vs total units which caused the crash. I could have went through and done actual garbage collection or coded around it, but I had already wasted so much time that I just move their invisible dead bodies up to -1000,-1000 in the game. If you scroll all the way up there and click on them, then scroll back down to the board and move them you deserve the crash.

The systems - This game has a crazy amount of systems all running independently, none of which my engine supplied and I had to code from scratch. The castle was a collection of nodes, so I needed heatmap pathfinding. The selection of multiple units is all coded from scratch. The movement and arranging of units is all scratch. The battle screen and relationship to the board units is all scratch. I think this is my most complicated, system heavy Ludum Dare entry yet, and if it is all working well nobody even notices.
Overall this was a great Ludum Dare and I had a ton of fun participating.
The game is here if you want to play: https://ldjam.com/events/ludum-dare/43/for-the-king


Hey, we decided that we open up a competition - so far none of our players seemed to reach the lowest possible number of rabbit sacrifices. So we decided to offer a prize - a beer with developers (if you're in reasonable distance from or directly from Czech Republic, else we have to negotiate something instead) - to anyone who can finish the whole game in one run sacrificing the least amount of rabbits of all the players (including the dev team)! Leave an endgame screenshot with your best numbers in the comment!

We're not sure what numbers are possible, we encourage you to glitch and destroy the game completely, just tell us how you did it to your numbers afterwards! And if you won't make the lowest? Then we encourage you to leave a comment so we could play and rate your game back ;)
We're looking forward to your numbers! Play here https://ldjam.com/events/ludum-dare/43/ronin-sacrifice-the-story-of-a-rabbit
The link was broken on the other one so here’s a fixed link:
https://m.youtube.com/watch?v=ewPoFkNz3fg
My game: https://ldjam.com/events/ludum-dare/43/more-sacrifices

Greenguy's life was a peaceful one before the apocalypse. He and the other Greendudes lived in Greenvillage, a little self-sustained rural settlement where they planted their greens.
Living his whole life off organic food Greenguy has become quite nutritious. Of course, no civilised being would eat a sentient creature ever. That's a disgusting thought. Wild beasts however...
Come and play Berrytales!:)
Reverse Quest began with a simple idea that my friends and I, and I'm sure many other people, have thrown around for a long time. What if it was a Zelda game, but you have to put your items back. It is such a simple idea, but I find it incredibly evocative, and "Sacrifices must be made" seemed like the perfect theme to finally use the idea. I finished the game after 49 hours, and feel very good about it, and the amount of stuff I was able to make without sacrificing sleep or food or anything like that. The final game looks like this:

You can play it here: https://ldjam.com/events/ludum-dare/43/reverse-quest
Every time I do a game jam, I try to come in fresh with a few goals. Sometimes, it is as simple as learning a new tool, like how my last game was a learning opportunity for Unity's new ProBuilder tool. Sometimes it is do try a new design pattern to see what works. Other times it is to optimize my schedule or figure out what good scope looks like for a Jam. For this Ludum Dare, I had been playing a lot of NES games on Switch Online, so was really looking into that sort of scope of Zelda 1 and Metroid as a goal. In addition, I had just recently learned about Scriptable Objects in Unity which really open the door for good design practices.
With these two jam goals in place, I decided on a schedule.
Day 0: Brain storm an idea for each of the possible themes.
Day 1: Choose an Idea, Create mechanics. Only make levels for testing.
Day 2: Content and Polish.
Especially as a solo dev, I have found that programming all the way up until the end is just asking for trouble. If I am making new mechanics 6 hours from the end, then I have done something wrong. By creating the tools on the first day, I have found that I can keep my scope in check and deliver something that I feel good about. For this jam, I would spend the first day creating the jar, and the second day filling it with something (hopefully) delicious.
As soon as I grasped onto the Idea of doing a reverse Zelda game, I started making some art. I knew I would be using Unity's tilemap, so I had to figure out what would make for good assets using that system. As I am not primarily an artist, I decided that all of my assets would be using an 8x8 grid. Having just played through Zelda 1, it felt a little strange to be using half the resolution of such an old game, but doubling that would mean 4 times the pixels that I would have to place, and that would also mean there is more importance on that sprite looking good. I felt that as long as could get the characters and tiles feeling evocative of what they are supposed to be, then I am good; Therefore, I create the main character, a skeleton enemy, a bush, water, and a cliff. If these didn't look good, I would have to start thinking larger. I then made them interactable, putting collision and different layers on the cliffs and water, a simple movement script to go on the player, and easily breakable bushes. After 4 hours, I had this.
It was fine! I can tell what is going on, I showed this image to some friends, and they could as well. I could walk around and swing my sword and hit things. Before even going to bed for the first night, I had something playable which I feel is always a good goal.
Sleeping is important. I now know how my character moves, and what the basic world interactions are going to be, so I wanted to brainstorm the full list of interactions so I could start thinking about how I would implement those ideas. Basically, I wanted to know my scope before turning in for the night. I decided on 10 hearts, meaning I would need 7 places to return hearts to to reach the classic 3-heart starting point of a Zelda game. I decided on two weapons, so I needed two dungeons to return those weapons to. I wanted non-linear connective tissue to hold the game together, so an over world like the original Zelda seemed like the way to go. I would need obstacles, so I decided on two enemies, eye switches for arrows to hit, and breakable objects for swords to hit. Perfect, 2 weapons seem very doable since I already had one. 2 enemies seemed good, as I already had one. An overworld is easy enough, I could just expand my test area out in all directions. 2 dungeons and 7 mini-dungeons I was not as sure about, as those would require differentiation and a unique feeling to each to not just feel like padding. Overall I was satisfied with the scope, and was ready to start in the morning.
As I began piecing the game together, I began to explore the ramifications of the concept. What interesting gameplay can emerge from losing items over the course of the game? Hot off the heels of playing zelda 1, I admired how the world slowly expanded as you gained more items and more power, but also how just gaining more health and confidence in the mechanics did the same thing. You could truely explore in that game, and get to dangerous places before you were really ready. Losing power over time felt rather counter-intuitive initially as the game would be sealed off and more restrictive as you go by necessity, but then I thought about how to use that to my advantage. The answer I came to is that it allows for an ever escalating difficulty curve as well as an avenue for organic optional difficulty. Players of any Zelda game have the choice to not pick up any new hearts to do a sort of challenge mode, so i decided that you should be able to go down to 3 hearts before any of the main dungeons, In fact I decided that this will be the way to activate "Hard Mode" and thus how you 100% (Or in this case 0%) the game. So I have my structure, the game should increase in difficulty whenever you return an item, but you should be able to choose to play the game however you wish.
My main task then became to make it playable from beginning to end. I created all the code required to strip items from the character and placed them onto a map. Once you got rid of the items, the gate to the end of the game should open up and you get the end screen. Once that is in place, then I have a minimum viable product and won't feel to bad about releasing. All of this meant that I made two levels on the first day. The intro:
Which is a simple temple to present the premise of the game and prove that the player knows the controls was the first to be created. The second, which felt counter-intuitive, was to create the connective tissue of the game, the overworld.
Entering any of the dungeons or sub-dungeons would give up the corresponding item and spit you back out into the world, and 24 hours after starting the jam you could play through the entire structure of the game. My final task before sleeping was to come up with my plan for the final day. 9 new scenes would need to be made, which felt like a lot and I may have been starting to panic. I narrowed the list, and hooked up all logic needed for those new scenes before going to sleep. Triggers were set up to prevent reentry after completion of a level on the overworld, so what I was left with was that fully functional jar I mentioned before. I had a concept for each level, and perhaps a few scenarios to go with them as well. The final day was going to be hard. Here is that final brainstorm:

Keeping with the idea of completing the minimum viable product, I began with the two main dungeons. The concept would be that you would return the sword in the Temple of the Serpent, and the Bow in the Temple of the Eye. But my game is non-linear, so I decided that each dungeon would require the item that you turn in at the end, but be a lot easier if you also had the other weapon. This introduced a problem which I will talk about later, which Is that I was already running out of ideas for scenarios. You could smash pots with a sword and shoot eyes with a bow, but that was it. There was no other thing you could do with one that you couldn't with the other. I will talk more about this later, but I believed I may have underscoped in terms of mechanics. So quickly I added in a new enemy type, a bandit who would throw daggers at you. I figured that you could take them out at range with a bow, or you could sneak up on them to get easy kills with a sword, so I felt that I could solve two problems with this one new feature. After completion of the two main dungeons, the tension just left my body. I'm practically done. Anything that I add after this point is extra, and was not needed to fulfill the promise of the game. Now I could have fun!
The final stretch of this jam was the most fun to me. At this point, I had no more "requirements", and could just go nuts. I had about 6 hours left, so I just started creating. I started with a level which was basically an homage to Zelda 1, I gave myself leeway to add new mechanics like locks and keys, or killing certain enemies unlocking certain doors, or I event modified a goo enemy with different stats to be a boss. I just had a blast with the whole level.

I then made a few levels designed to be mazes, one was literally just a maze. These came with the intent of being the "baseline" for what a level would look like in the game. An area with a unique feel, perhaps a new or modified piece of music, and some new or recolored art assets.

The final kind of level I made were the challenges, these were either puzzles or gauntlets that would test the player, and would probably require a weapon. For instance, I wanted to mix up the mechanic of shooting eyes on the wall by making them move, or obscuring them.

In the end, I am quite happy with where the game ended up. It was not without its struggles, and were I to do it again I think there is plenty I would have done differently. Overall I was left with a few main takeaways to bring into the next jam:
The negatives: - Figuring out the exact right scope is hard. I think in this case, it was unbalanced and I had to reevaluate mid way through. There are only so many interesting combinations of game elements, and I would have run out of ideas had I not broken my initial scope. In the future I will try to think more about these sorts of reusable elements more. - My most interesting stuff became the optional content. I guess if I had had another 12-24 hours (and didn't have to work in the morning) I would have gone back in to polish the intro and two main dungeons as those are what every person will see. It just feels a little bad that the earliest, and weakest parts, are what the most people will see. Maybe this is just one of the problems with creating games this non-linear in a game jam setting though. - After creating most of the game, I determined that the movement might be a little floaty, and stuff like aiming might be a little un-intuitive. This is hard, because changing the foundation of the game so late may break everything that is stacked upon it. I would have to re-balance everything. I would have to playtest to make sure everything still works. I think I missed one of the first steps that I always try to do which is to make movement feel good as the first step to the game. I think I succeeded on getting the rest of the game around the player to feel good, but I could have done better on the actual controls and feedback of those controls.
The positive: - Plan ahead for the next day. It is really easy to just start improvising, and sometimes that can be good, but I think most of the time it leads to scope creep and problems keeping your game cohesive. - When working solo, maybe art does come first? I could easily have started with capsules attacking cubes, but I don't think it would have sold the concept of the game as well as it did in this case. I even got a music track written out very early just to get my brain churning. - Build tools first, then use them. Once I figured out how to create a level for my game and made that easy, I could crank these things out like they were nothing. In the beginning of production, everything is experimental and you don't know what works well for your game. By the end, you have had 30-40 hours with the game and know exactly what works and doesn't work.
And that is all! Hopeful anyone who got this far gained some sort of insight. Please leave me a comment on my game, I love feedback (Make it harsh!) Also I love writing pieces like this, so I would love to talk more about my process or what the rest of you have found to work. Time to get back to playing all of these wonderful games!
Well so do I! Check mine out, play, rate (maybe even leave some feedback) and I'll play your game! It's mutually beneficial, a win win!
*Available for play on web: *https://ldjam.com/events/ludum-dare/43/reactor-overdrive
I uploaded a polished version of the game on itch.io, the game it's still far from finished, but hopefully I'll be able to keep updating it. However if you want to rate the ludum dare game please do it based on the link of the game page :)

LUDUM DARE: https://ldjam.com/events/ludum-dare/43/the-lord-of-possessions-1
ITCH.IO: https://cigsandflowers.itch.io/the-lord-of-possesions
https://ldjam.com/events/ludum-dare/43/rift-plugger
In our game you play as a hero who defend village from demons. Demons come from dimensional rifts and to save your friends you need to plug them. But how to plug the rifts? Maybe you will use one of this villagers? It is up to you what you will sacrifice to do it.
P.S. This is first LD for most of our team. And we really enjoyed to develop the game for this event. That was really fun!
...
One more ludum for us! After an usual "damn this theme is tough", we finally came up with an idea:
You play as a parent of a broke family and struggle to have enough money to feed your children.

With this idea came the wish of showing how tough lfe can be for some parents by making a game in wich you have to act as the worst kind of parent.
Unlimited birthEach day comes a new little kido. You can stop this flow only by buying condoms. Nothing's free...
Your children don't obey?Slap 'em!
Not enough time to clean the house in one day?Make them do it! You will be quickly overwhelmed with all the things you need to do for them.

Feed only the bests of them.
Your children have stats (RPG style) which drive you to decide which one deserves to be fed and cared.

They have satisfaction gauges that you need to fill for them not to die, and being efficient at doing their jobs.
Make money!To earn money you can make art (your favorite hobby isn't it?) but it won't be enough. You need to send your children to work. Work? Yeah. Prostitution, streets, drugs.. but also Astronaut, if your manage to grow a children educated enough.

Post your links here.
Our game is now ported to webGL! Try it out! Brothers and Sisters rejoice! https://ldjam.com/events/ludum-dare/43/an-unpharo-seeable-future

You are Herakles, son of Zeus, and you have been chosen to become a god. In order to achieve that, you have to survive to seven dangerous rooms. Every time you cross a gate, you will have to sacrifice the power of one of the gods supporting you.
Let's see if you can reach Apotheosis! (playable on Windows, Linux and MacOS)