Ludum Dare 55 April 13–16, 2024

If you like tower defense games, try Demon's Tower!

Demon's Tower is a game where you have to defend your tower against enemies! Use your cards to summon special abilities to survive longer. Reaching wave 50 allows you to go to a higher tier.

*Link: https://ldjam.com/events/ludum-dare/55/demons-tower

Unfortunately, I haven’t collected enough ratings for the game. A rating and a feedback from you would be greatly appreciated!

2024-04-22 (1).png


2024-04-22 (3).png

Into the Oven !!!

You are a small demon chef! Your job is to make pizza with your choice of toppings, each with their own special effect, and summon these pizzas in combat against hoards of Kobolds to unlock more toppings.

Have fun :D :pizza:

*Link: https://ldjam.com/events/ludum-dare/55/into-the-oven

sc2.pngsc4.png

Woooooooooooooooooo~! Streaming your LD games!

Come toss the games into twitch chat, it'll probably be a quiet stream one otherwise! All are welcome to add their games, just hang around the stream til I'm ready.

Woooooooo! https://www.twitch.tv/justcamh

Guess who is back!!

I couldn't believe it when I saw this...

Brackeys.png

I don't use Godot, but, if I was going to use a flexible, easy to use, FOSS engine that is on the rise and has the support of many great folks, Godot would be it!!

Brackeys is for many of us our introduction into Game Development and he has been, and continues to be the Gold Standard for Game Dev Tutorials. I look forward to his always insightful and instructive videos.

https://youtu.be/EYt6uDr-PHQ?si=6U0GyknTm91c78p4

A Card Crafting Experience!

Check out our game Kalomancy! An auto-battler card game where you can craft your own cards, see what synergies you can make, spam small tokens, wipe boards or buff other cards to the high heavens.

Link: https://ldjam.com/events/ludum-dare/55/kalomancer

CardCreator.png BoardStateUpdatedMana.png

The Making of Bergs

making of logo.png

This is a behind the scenes for the making of our Ludum Dare entry - 'bergs'.

You can checkout the LD page here
https://ldjam.com/events/ludum-dare/55/bergs

Ideas

The first couple of hours were spent brainstorming ideas. We came up with quite a few but eventually landed on the idea of making a 2D puzzle platformer where the player could summon a new character and use the previous character to help them complete the levels in some way. We expanded on this idea a little bit and decided that the characters should spawn with shape and size variations which would also effect how fast they could move and how high they could jump.

Implementation

As the person with the most GDScript (Godot's programming language) experience, I did the majority of the implementation and programming. I wanted to get all the main features added to the game in the first day so that my teammate could start creating levels as soon as possible. On the first day I spent around ~10 hours working on the project. Most of that time was spent creating the core features however some of it was spent on art and a bit polish. Over the next 2 days I spent around another ~6 hours fixing bugs, tweaking a couple of things, and adding polish and game juice (to distract from the lack of any type of graphics lol). There's probably more to say here but I'm writing this a week later so I've forgotten. (I also have no clue how to properly write these things lol).

Level Design

The level design was done by my teammate, CaineTinyArms. I think he did a great job in designing the levels in a way that teach the player the core mechanics of our game without directly telling them.

Here's what Caine had to say about it: I spent a couple hours brainstorming level ideas, many of the early ideas had to be scrapped because I didn't account for berg falling from the sky when they're summoned. The main issue encountered when developing levels was the player could cheese pretty much all of them by just berg-stacking, which is where the no-berg-zone came in. Overall, I think the levels turned out well, considering it's my first forte into level design. (also shout out toast for carrying the team <3)

Sound

The awesome music track was create by my friend, Iiro. I think he did a great job with it and props to him for always being up for creating tracks for my projects. He also did most of the sound effects for the game - including the "BERG" summon sound.

Art

I'm not an artist so I kept things super simple. The bergs are basically just squares with arms, the levels are made from a square only tileset, and the background is made up from spinning squares. This isn't relevant to the art but the game's resolution is also square (it's 160x160 if you're interested). If you couldn't already tell, I quite like squares. All things considered, I think the game turned out looking ok.

Other

The bergs were original called 'guys' (in the project file they still are) but we changed it to 'berg' once we released they kinda looked berg-y.

End

Thanks to everyone who has played the game and left feedback. We haven't replied to many comments as there's quite a few but we have read every single one and taken notes on the feedback everyone has given :).

If you haven't played bergs yet you can check it out here.
https://ldjam.com/events/ludum-dare/55/bergs

We composed the music during the LDJAM

We composed using the precious Roland JDXI synth 5 songs in our game. I let you enjoy the game over screen music.

https://youtu.be/RxkJUpo_-vM

ps : game link is https://ldjam.com/events/ludum-dare/55/demon-lord-revenge

Share your games!

Hiya! I'll be playing some more games this evening and I thought it might be fun seeing if people will respond on here. Feel free to share your game in the comments and I'll try to play them this evening :)

If you also need some more games to play, maybe check this post in a while and join me on my journey of playing some games :)

In the meantime I'll start with our game https://ldjam.com/events/ludum-dare/55/burdemon. If you have time I would love some feedback but don't feel pressured to rate it.

Have a nice day y'all!

Screenshot 2024-04-22 152426.png

Looking for a 2-player game to play with your buddy ?

We got you covered ! :twomenholding_hands:

maintitle.png

Our game TechnoMonk RITUAL has a local 2 player versus mode !

Rocking alone is fine, but rocking together is much better !!

combat-ezgif.com-loop-count.gif

It also has a single player campaign if nobody wants to be beaten by your mad skills... :boom:

wolodance.gif

We're a few ratings shy of the 20 required, so have a go at TechnoMonk RITUAL !

Have you got the time to pay back the fine?

bailout_cover.png

Play a skateboarder who has been summoned to make an appearance at court before noon and pay a fine for the crime of skateboarding. Except you don’t have any money and noon is only 2 minutes away! Skateboard around the city gathering as much loose change as you can find and make it to the courthouse in time. Just don’t get caught skating by the cops!

ldjam55_2.gif

Probably the longest Brainstorming we've done

Sometimes you got not enough ideas, and sometimes you got way too many of them, but none of them since to convince the rest of the team.

After picking our game idea, we realized that we all had different takes on what it was, and started propotyping, deliberating and playtesting with paper cards and drawings for almost 12h straight.

After 12h, we had even more ideas.

In the end we just picked randomly between all our projects and we're actually pretty happy with the outcome ! makingof.png

cards.gif

Have you found our secret room?

For those of you who played our game Sir Lancelittle: who has found the secret room in the game? It contains our lovely NPC Frogkeeper, and he has a special present for you (actually two, if you also count the card reward).

frogkeeper.png

If you haven't found him yet, and had difficulty getting to the boss in our game, Frogkeeper will definitely help you with a full health boost. He's off the beaten path, so keep track of your route through the minimap!

Here's a gameplay video of Metal Harvest!

Hi there, since we put so much effort into the sound of the game this time, I figured showing a little video would make more sense than posting pictures!

https://youtu.be/l6F-VZmsgi8

Try Metal Harvest here!

cover.png

Legend says we are still playing LD games

Road to 100 games continues. Submissions are still open.

We are playing submissions, our favorite games, and games of people who played our game.

Come join us and chill with us :popcorn:

:arrow_right: https://www.twitch.tv/tobugis

3Z3UieUP_400x400.jpg

VCDG dev-log

Virtual Church Of The Digital Goddess is my entry for this 55th LudumDare session. When I discovered the chosen theme (Summoning) I was in an uncomfortable situation. By religious conviction I cannot play with black magical art, evil spirits and all things more or less similar. I have immediately understood that a big amount of entries could play with sorcery - and LD members did. I respect this choice, but I tried to create something different without evil invocation, black sabbath, devil, etc. This is the first time in my indie dev life that I encountered this constraint. So I struggled with a new challenge. Let's go! I decided to create (another) puzzle game - my favorite games' genre, but adding a new way. I asked myself - is there a way to create a game only with a mathematical core, no rigidbody, no collider, etc? So VCDG is an experimentation into solid math processes. Maybe for this reason, the cubes and their movements seem so smooth, perfectly aligned on edges. To do that I use this code :

``` // smooth rotation IEnumerator Tumble(GameObject thisOne, Vector3 direction, Vector3 endPosition, Quaternion endRotation, Vector3 pivot, Vector3 rotAxis, float rotSpeed, bool ret) { float t = 0.0f;

if (loader.GetComponent<Loader>()._move != null && loader != null)
{
    if (Time.timeScale > 1.5f)
        _loader.playSound(_loader._move, this.transform, true, 0.21f, 0.41f, _loader._move.length, false);
    else
        _loader.playSound(_loader._move, this.transform, true, 0.31f, UnityEngine.Random.Range(0.71f, 0.92f), _loader._move.length, false);
}
// rotate player cube
while (t < tumblingDuration)
{
    isTumbling = true; // unreachable
    t += Time.deltaTime;
    // tip to avoid tiny glitch
    if (Mathf.Abs(t - tumblingDuration) < tumblingDuration / 30)
        t += 1.0f; // out of the loop right now

    thisOne.transform.RotateAround(pivot, rotAxis, rotSpeed * Time.deltaTime);
    yield return Timing.WaitForOneFrame;
}
// clean position and rotation
thisOne.transform.position = endPosition;
thisOne.transform.rotation = endRotation;
// store new position so as to check forbidden face
storedPos = endPosition - shift;
// don't store the return movement in back in time mode!!!
if (!ret)
    addNewMov(direction, thisOne);
// check if the last movement is available
checkState(thisOne, direction);
// done
isTumbling = false;

} ```

Also there are a lot of constraints in the game, especially about colors and position/rotation. This part was really complicated - and I struggled hard against some non-understandable bugs. Finally I have this code which seems to me relevant and clever :

``` // check new position and rotation private void checkState(GameObject thisOne, Vector3 direction) { // 1° check if a new step is available if (!loader.GetComponent().giveMeNumber(loader.GetComponent().pattern, listMov.Count)) { computeMove(-direction, thisOne, true, true); // play a sound if (loader.noMoreStep != null && loader != null) loader.playSound(loader.noMoreStep, this.transform, true, 0.4f, 0.95f, _loader.noMoreStep.length, false); // get out of there return; } // 2° check cube face if (listPos.Contains(thisOne.transform.position + new Vector3(1, 0, 0)) || listPos.Contains(thisOne.transform.position - new Vector3(1, 0, 0)) || listPos.Contains(thisOne.transform.position + new Vector3(0, 0, 1)) || listPos.Contains(thisOne.transform.position - new Vector3(0, 0, 1))) { foreach (GameObject g in cc) { // excludes cube player which are not in our radius if (g != thisOne && Vector3.Distance(g.transform.position, thisOne.transform.position) < 1.1f) { var d = (thisOne.transform.position - g.transform.position).normalized; // check if cube touching have the same color on their face var isXA = Mathf.Abs(Vector3.Dot(d, thisOne.transform.right)) > 0.999f; var isYA = Mathf.Abs(Vector3.Dot(d, thisOne.transform.up)) > 0.999f; var isZ_A = Mathf.Abs(Vector3.Dot(d, thisOne.transform.forward)) > 0.999f;

            var isX_B = Mathf.Abs(Vector3.Dot(d, g.transform.right)) > 0.999f;
            var isY_B = Mathf.Abs(Vector3.Dot(d, g.transform.up)) > 0.999f;
            var isZ_B = Mathf.Abs(Vector3.Dot(d, g.transform.forward)) > 0.999f;

            bool sameColor = isX_A == isX_B && isY_A == isY_B && isZ_A == isZ_B;
            // this movement is finally forbidden
            if (!sameColor)
            {
                computeMove(-direction, thisOne, true, true); // back step
                // get out of there
                return;
            }
        }
    }
}
// 3° check colored tiles
if ((Mathf.RoundToInt(thisOne.transform.eulerAngles.x) == 0 && Mathf.RoundToInt(thisOne.transform.eulerAngles.z) == 180) ||
         (Mathf.RoundToInt(thisOne.transform.eulerAngles.x) == 0 && Mathf.RoundToInt(thisOne.transform.eulerAngles.z) == 0))
{   // red tile on ground
    if (greenTilesPos.Contains(storedPos) || blueTilesPos.Contains(storedPos) || greenGoal.Contains(storedPos) || blueGoal.Contains(storedPos))
        computeMove(-direction, thisOne, true, true);
    else if (listBlank.Contains(storedPos))
        blankTileProcess(1, storedPos);
    else if (redGoal.Contains(storedPos))
        levelSolved(thisOne);
    // get out of there
    return;
}
else if ((Mathf.RoundToInt(thisOne.transform.eulerAngles.x) == 0 && Mathf.RoundToInt(thisOne.transform.eulerAngles.z) == 270) ||
         (Mathf.RoundToInt(thisOne.transform.eulerAngles.x) == 0 && Mathf.RoundToInt(thisOne.transform.eulerAngles.z) == 90))
{   // green tile on ground
    if (redTilesPos.Contains(storedPos) || blueTilesPos.Contains(storedPos) || redGoal.Contains(storedPos) || blueGoal.Contains(storedPos))
        computeMove(-direction, thisOne, true, true);
    else if (listBlank.Contains(storedPos))         
        blankTileProcess(2, storedPos);
    else if (greenGoal.Contains(storedPos))
        levelSolved(thisOne);
    // get out of there
    return;
}
else if ((Mathf.RoundToInt(thisOne.transform.eulerAngles.x) == 270 && Mathf.RoundToInt(thisOne.transform.eulerAngles.z) == 0) ||
         (Mathf.RoundToInt(thisOne.transform.eulerAngles.x) == 90 && Mathf.RoundToInt(thisOne.transform.eulerAngles.z) == 0))
{   // blue tile on ground
    if (redTilesPos.Contains(storedPos) || greenTilesPos.Contains(storedPos) || redGoal.Contains(storedPos) || greenGoal.Contains(storedPos))
        computeMove(-direction, thisOne, true, true);
    else if (listBlank.Contains(storedPos))
        blankTileProcess(3, storedPos);
    else if (blueGoal.Contains(storedPos))
        levelSolved(thisOne);
    // get out of there
    return;
}

} // transform blank tile void blankTileProcess(int color, Vector3 vPos) { int i = listBlank.IndexOf(vPos); // UnityEngine.Debug.Log(listBlank.IndexOf(vPos) + " -> " + vPos); // colored blank tile with a new color if (Time.timeScale < 1.5f) { if (stampBlank[i] == 0) { // is this tile blank? stampBlank[i] = listMov.Count; obj.GetComponent().blankTiles.transform.GetChild(i).GetComponent().sharedMaterial = obj.GetComponent().materials[color]; // play a sound if (loader.GetComponent().paint != null && loader != null) loader.playSound(loader.paint, this.transform, true, 0.5f, 0.9f, _loader.paint.length, false); // ... or you can use item selection instead of an integer if (color == 1) redTilesPos.Add(vPos); else if (color == 2) greenTilesPos.Add(vPos); else if (color == 3) blueTilesPos.Add(vPos); else return; } } } ```

To get an inverted clockwise system, allowing the player to come back in time, I used a movement list according to the object and its direction. So the number of steps which are available is computed according to the List.Count integer. We got something like that :

``` // all movement have been saved so as to allow back in time void backInTime() { while (listMov.Last().artefact != cc[index]) splitCube();

if (listBlank.Contains(cc[index].transform.position - shift))
{
    int i = listBlank.IndexOf(cc[index].transform.position - shift);
    // disable a blank tile which has been colored before
    if (stampBlank[i] == listMov.Count)
    {
        obj.GetComponent<LevelConstructor>().blankTiles.transform.GetChild(i).GetComponent<Renderer>().sharedMaterial = obj.GetComponent<LevelConstructor>()._materials[7];
        stampBlank[i] = 0;
        // new blank status
        redTilesPos.Remove(cc[index].transform.position - shift);
        greenTilesPos.Remove(cc[index].transform.position - shift);
        blueTilesPos.Remove(cc[index].transform.position - shift);
    }
}
// invert movement
computeMove(-listMov.Last().movement, listMov.Last().artefact, false, true);
deleteLast();

} ```

My favorite feature is the rounded blank tile which the player paints when a cube walks on it. This is not an easy feature because of one point - you can back in time. So its status must change too. So I implemented a tag on them in order to "clean up" tiles when retrograded cube passes again on a previous tile which has been colored. This tag is just an integer - the step when the tile has been colored. Take a look at the end of the first script - the blankTileProcess() function. In the previous script, you got the code which compute the state of the tile during the right moment.

Some parts of these codes could be improved. As an a single example, I use Time.timeScale like a tag - and I don't like it. There are too many GetComponent occurences in these scripts - and it's not the best way to get a hand on an object. So I have many to do :wink:
For the FX I used some shaders and this project is my first one using the Unity URP system. I tested this option, but I guess that a legacy system could be "enough". I am developing more levels in order to release a full game with 50 levels. I have only one scene for them, and when you see a black screen, it's just a short time to erase the previous level, creating the next... Also I am proud of my level selection system. before I created a button for each level. Now I have only one script to generate how many buttons are required. This script is really useful. Then I share it with you.

``` using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEngine.UI;

public class DisplayButtons : MonoBehaviour { public Transform button; public int buttonOnX = 10; public int buttonOnY = 5;

Vector3 nextPos = Vector3.zero;
public int spacingX = 80;
public int spacingY = 80;

Vector3 shift;
int id = 0;

void Start()
{
    displayThem();
}

public void displayThem()
{
    nextPos.y = 0;
    id = 0;
    shift = new Vector3(((buttonOnX * spacingX)/2) - (spacingX/2), (-(spacingY * buttonOnY)/2) - (spacingY/2), 0);

    for (int i = 0; i < buttonOnY; i++)
    {
        nextPos.y -= spacingY;
        nextPos.x = 0;

        for (int j = 0; j < buttonOnX; j++)
        {
            id++;
            RectTransform myButton = Instantiate(button as RectTransform);

            myButton.GetComponentInChildren<Text>().text = (id).ToString();
            myButton.GetComponentInChildren<Text>().fontSize = 40;
            myButton.GetComponentInChildren<Text>().color = new Color(0.2f, 0.22f, 0.5f, 0.9f);
            myButton.GetComponentInChildren<Image>().color = new Color(0.7f, 0.5f, 0.8f, 0.9f);
            myButton.SetParent(transform, false);
            myButton.localPosition = nextPos - shift;

            nextPos.x += spacingX;
            int level = PlayerPrefs.GetInt("Level", 1);

            if (id > level && !Application.isEditor)
            {
                myButton.GetComponentInChildren<Button>().interactable = false; // disables button for scene that isn't available
                myButton.GetComponentInChildren<Text>().color = new Color(0.2f, 0.22f, 0.5f, 0.45f);
            }
        }    
    }
}

} ```

I exposed some parts of my project, just sharing with you some keys. I guess that it could be improved - and with more time, I will do it. If you want to test the result, the game is available on Itch.io for free. Play, leave a comment - and this way, I can find your own project which I wanna play. Thank you for your support everyone. I wish you the best ++

https://ldjam.com/events/ludum-dare/55/virtual-church-of-the-digital-goddess

VCDG.jpeg

Thank you so much to everyone who played my entry so far!

Just wanted to say thank you for everyone who played my game. Worked out being a miracle it ended up being submitted at all considering the timing compared to my father's fall an hour later, if I had taken longer I wouldn't have had a chance to submit at all, so that is the entire reason it ended up being way smaller than I initially envisioned with no later updates.

My father has been back from hospital for a week now and he has a head injury that will likely take him 1 month to completely recover from plus other damage.

This was also the first gamejam using the Godot game engine I completed so it was a huge learning experience for me.

Comments like this make me truly appreciate making games: Screenshot 2024-04-22 at 14-43-32 Bone Train - For Ludum Dare 55 ldjam.com Ludum Dare game jam.png

Thank you for all the support and I'm gonna try and play some more of your games now that things are a bit more stable at home.

Just gonna share the entry link to make it easier to find: https://ldjam.com/events/ludum-dare/55/bone-train-for-ludum-dare-55

Mobile games

Hey, friends. If anyone made a mobile game, drop me a link! Have some time to kill...

Thanks for the great jam, everyone!

Had so much fun, first LD with Godot. We spent roughly half our time making secret interactions/secret good ending which no one has been crafty enough to discover yet. :smiley:

If you're a fellow Godot dev, let me know, I love checking out other entries, especially Godot games!

Here's ours, if you have time to check it out, thank you!

No tea time for Slime:

https://ldjam.com/events/ludum-dare/55/no-tea-time-for-slimes

Screenshot 2024-04-22 at 12.21.04 PM.png

63032 (1).png

I fixed the web version of my game

I just fixed the web build, so I made an itch.io page. I only updated code related to the web version to make it work properly (I fixed the graphical bug and added sound, it was only available to the native version up to now, I’m not sure if it’s ok, but say it if it’s not and I’ll remove it), so the native version stays the same, so it should be fair because:

Certain Bug Fixes are allowed. You can’t add new features, but if something broke or didn’t work correctly as you were finishing up, you can fix this after the deadline. You are asked to highlight the changes you make in your submission (a short change log). You probably wont get a 2nd chance with some players, but at least it wont be a problem for future players.

The download stays the same.

I'm planning to upload a time-lapse soon!

Enjoy playing it at https://mibi88.itch.io/the-seven-crystals!

You can see the changes on the GitHub repository!

Calling All Speedrunners

We have just created a speedrun version of our game with a built in network leaderboard. We have leaderboards for any% and 100% (all crystals collected). Master the movement in Throes of the Javelin and try to reach the top spot on the leaderboard. Show us whatchu got :)

https://garbanzo-goon.itch.io/throes-of-the-javelin (Make sure to download the speedrun version)

Here's a clip of one of our devs @Matterlinx getting a high score on a 100% run. https://www.youtube.com/watch?v=aD4EmV9-i3U

Can you beat "Hard" Difficulty ?

If you like cute pixelart and challenging gameplay (3 Difficulties and a Tutorial) you should try our game:

Auto Summoner Hero LD55.gif

"Hard" is really really difficult but it can be done (source: Me). Make sure to post your scores.

Our Final Boss!!

Thanks for the first 30 votes. Thank you very much to all for the comments you have posted and for all the votes we have received!! <3

DragonVerde.gif

Illegal Summonings got its 20 ratings!

Hello all,

This was my very first Ludum Dare and I wasn’t really sure how it would go, but in the end I’m really glad I participated: It’s been a ton of fun trying games and getting feedback on mine!

My game, "Illegal Summonings", got pretty good feedback for now (honestly better than I expected, since I had to settle and make a much shorter experience that I would’ve liked) so I’m strongly considering iterating on the concept and making it a "real" game, thanks to that! Getting to 20 ratings seemed a bit overwhelming in the beginning, but I’m glad I made it :slight_smile:

If you’d like to, I’d love to get your opinion on the game! It’s a very short (only about five minutes long) investigation game, "cutscene" included. I’m also going to start testing a bit more games now that I’ve taken a break out of this for a few days :)

ezgif-4-5bf6a1870a.gif

How to compose a musical tribute to "Diablo"

banner-new.jpg

Step 1: Never have played Diablo before

Step 2: Saturday morning crash course on the Diablo I OST on Youtube

Step 3: Download a 12-string guitar VST

Step 4: ???

Step 5: Profit? (still figuring this one out, tbh (the game isn't for sale))

"Tristram" was my 6th Ludum Dare working with the same core team, so we've definitely got a system going.

Unfortunately (for many reasons), I'm in the US and the rest of the team is in Germany, which means nothing happens until they wake up on Saturday morning, and I don't start on music until I wake up many hours after that.

This means I miss out on the main brainstorming session (one of these days I will just stay up until 2am or whatever and be a part of it) but also means that by the time I wake up, there is usually already something resembling a game waiting on me.

This time around, they wanted to make a tribute to Diablo I, a game which holds fond memories for everyone on the team... except me. To their surprise and my great shame, it's just one of those games I never got around to!

So my first task on Saturday morning was, as mentioned above, a quick crash-course on the music of Diablo.

While I was becoming familiar, they temporarily put actual Diablo music in the game while they were working on it, which led to one of the first realizations about how to approach creating the music: Diablo is a dark game, and its music is quite fitting. Our game is an homage, but its tone isn't nearly as dire. Which meant I needed to make not-quite-as-dark Diablo music.

I mean, look how cute our heroes are:

01.png

We had to lighten the tone at least a bit.

Track 1: "Village Memory"

First on the docket, the main music of Tristram, the village where the heroes gather before heading into the dungeons. (If you aren't familiar, like I wasn't, Tristram is also the name of the town in Diablo.) For this I had to download a 12-string guitar VST. Even though I am a guitar player, I don't own a 12-string and time constraints prevented me from tracking one down. So I had to go fake!

The main melody was originally played on electric guitar. There was something irksome about this approach that I never quite put my finger on. So I switched it to a VST flute which helped to match the medieval vibes a little better. The problem was, it also felt a little thin, especially in the B-section of the track, so I added an English horn underneath to beef it up a bit.

I tend to not work with orchestral instruments because:

a) in my experience, a lot of game composers tend towards orchestral or chiptune. I don't really like working in either, and

b) putting together an orchestral arrangement is hard and I don't know what I'm doing

But something about the way this track was coming together really pushed me into going outside my comfort zone a bit. 12-string acoustic, electric bass, flute, english horn, cello, and violin aren't the most common orchestral arrangement but, uh... yeah. I think it works!

As you progress in the game, the music builds gradually. First by adding bass and percussion once you've reached stage 2 in the dungeon, and then the strings once you've reached stage 3.

I think the bit around the 3:00 minute mark may be some of the prettiest music I've ever made.

Track 2: "Form Up!"

This track, of the four on the soundtrack, is definitely the least Diablo-esque. When you call the heroes to action, and to form their parties before heading into the dungeon, we needed something kind of invigorating and exciting. The tranquil & slightly sad town music didn't seem appropriate.

For this one, I kind of just went with my gut. I kept it in the same key (I think, again I don't know what I'm doing) so it wouldn't be too jarring of a change, but made something more militaristic with timpani hits, rolling snares, horns, and strings.

All in all, this probably draws more from Final Fantasy music than it does from dungeon crawlers.

Track 3: "Deep Below the Cathedral"

The dungeon music was a lot of fun to make. I wanted to keep using orchestral elements like I had in the other two tracks. I also wanted to lean a little more into the darkness with this one. Having playtested with the original Diablo dungeon music (which was a bit too dark) I wanted to distill the essence of that music without recreating it. I added some wordless vocals (with a formant shift on them to make them sound deeper than my natural voice) and some atonal and dissonant elements. Once you reach stage 3, I also added in some chugging electric guitar with the string section.

For the main melody, I ended up using a couple of Arabic instruments, a plucked string and a flute. Sometimes it's lazy shorthand using "non-standard" instrumentation to evoke an uncomfortable feeling. Sometimes you're making music for a game jam, so fuck it.

All in all, I really like the eclectic instrument selections on this track. It's a bit of a grab bag, but I think it ended up working quite well!

Track 4: "A Hero's Reward"

I originally wrote this as title screen music, but it ended up getting moved to the end of the game instead. It's a simple 12-string acoustic piece with some bass and light percussion. Not really sure what else to say! It's a pleasant way to enjoy a well-earned victory, I think. :smile:

So that's that! I can never tell if shit like this is actually interesting to read about. But if you did enjoy it, please check out our game!

Play "Tristram"!

We just released a post-jam update on itch.io that adds lots of new juice, so even if you have played it already, it might be worth another spin.

If you made it all the way to the bottom, thanks for reading! :green_heart:

PS - If you enjoyed the OST, you can download it for free here.

Premature Sporification or Dirt Merchant?

banneremanimation/emmyce_SHADOWED.gif

If you like vampire-survivors-like games (or if you don't, all are welcome), we'd love to hear your constructive criticism on our game mechanics, items, their interactions, or anything else that sticks out to you! How could the enemy spawning be designed better, what are some game-breaking builds, does the difficulty scaling feel too punishing, what are your suggestions for improving the gameplay or adding new mechanics/items?

 

So far, we're planning on adding active abilities, keyboard controls, more unique items (focused on modifying other items/slots), and a boss in the post jam update.....and audio (sigh)

 

We'll gladly leave quality feedback in return, check out Mycelium Runner here!

 

MyceGifVid2-optimized.gif

How erroneus c# math cost me a couple of hours and nerve cells

The last thing you want in a jam is to struggle with your language of choice, but that is exactly what happened to me.

In my custom rectangular grid world checking logic I've got this piece of code to calculate the position and type of field in rectangle grid into which an enemy is moving: public (int, int, FieldEnum) getGridPositionAndType(Vector2 position, bool up) { float fj = (position.y - transform.position.y + wholeHeight / 2 - wallSize / 2) / wallSize; int j; if (up) j = Mathf.FloorToInt(fj); else j = Mathf.CeilToInt(fj); float fi = (position.x - transform.position.x + wholeWidth / 2 - wallSize / 2) / wallSize; int i; if (up) i = Mathf.FloorToInt(fi); else i = Mathf.CeilToInt(fi); if (i < 0) i = 0; if (j < 0) j = 0; if (i >= gridWidth) i = gridWidth - 1; if (j >= gridHeight) j = gridHeight - 1; return (i, j, GetFieldType(pixelArray[j * gridWidth + i])); } For some inexplicable reason the enemies on the left and bottom sides of the screen were going berserk. I lost some precious hours of my compo development time and was going crazy until I realized the problem was with negative numbers. So I tried adding a large number before doing the operation and subtracting it later: public (int, int, FieldEnum) getGridPositionAndType(Vector2 position, bool up) { float fj = (position.y - transform.position.y + wholeHeight / 2 - wallSize / 2) / wallSize; int j; if (up) j = Mathf.FloorToInt(fj+30f)-30; // force positive math else j = Mathf.CeilToInt(fj+30f)-30; // force positive math float fi = (position.x - transform.position.x + wholeWidth / 2 - wallSize / 2) / wallSize; int i; if (up) i = Mathf.FloorToInt(fi+30f)-30; // force positive math else i = Mathf.CeilToInt(fi+30f)-30; // force positive math if (i < 0) i = 0; if (j < 0) j = 0; if (i >= gridWidth) i = gridWidth - 1; if (j >= gridHeight) j = gridHeight - 1; return (i, j, GetFieldType(pixelArray[j * gridWidth + i])); } It worked like a charm. Then I remembered that most programming languages including c++ and C# are doing modulo operations wrong. Instead of doing proper euclidean map they take the absolute value, calculate modulo on that, and return the sign. imageem2024/em04em13T21/em11em54/em833Z.png The same goes for rounding off to the nearest higher or lower number (ceiling and floor operation).

I learned this lesson the hard way so I decided to write this up in case it helps anyone.

Counting sheeps shouldn't be so profane!

Hello there!

61aa4.gif

Do you like to count sheeps to sleep? Do you like rhythmically get notes right in a summoning of nightmarish proportions? All hail the slumber demon! It sounds more epic than it is and way more dark!

Our game is all about playing correctly the ritual song to get a GOOD NIGHT OF SLEEP - like all of us wish to do every night!

We are used to participate in game jams and this is our first try with the Godot Engine. We are pretty stoked with the result and invite you guys to try to get asleep with our new humble game.

Thanks - we wish for all a good demonless rest!

Spend 30 seconds or 30 minutes on Cat-o-Conjurer, the choice is yours!

Can you master the chaotic cycling between these 5 different cats?

Cat-o-Conjurer is seemingly simple at its surface, but once you play for a few minutes, you begin to realize the true strategy behind it all! Can you make it 5 minutes without losing a rat??

Play now! https://ldjam.com/events/ludum-dare/55/cat-o-conjurer

cat-o-conjurer.gif poofy.gif striped.gif mini.gif

Post Jam version The Dodge Invoker!

The Dodge Invoker is a rage-game precision platformer! Everytime you jump, double jump or dash you will invoke a different demon that will try to make you fall!

The game now has a Timer for speedrun and a speedrun leaderboard in the Post Jam version!

The Dodge Invoker

(Best played on itch web player)

RYWmfR.png

Command: summon. Post-jam version

Hey fellow summoners!

We just finished our post-jam version, Here what's new: 1. Our own pixel graphics. There was not enough time for this within the jam, and we have no experience in art at all. So now we've added this as an experiment. 2. Removed mandatory "summon" word for every command. 3. Added new command ("music") 4. Added two new endings:

!> Spoiler * Kill the princess * Bard saves the princess

https://ldjam.com/events/ludum-dare/55/command-summon

We want to extend a huge thank you to everyone who played the original version and provided feedback. Your input has been invaluable in shaping this update, and we hope you'll enjoy the changes as much as we enjoyed making them. post-jam1.png post-jam2.png

Parmigiano Rolliano

menu-logo.png

Hey! For this Ludum Dare we made a cheese themed game. It involves cheese being summoned by the king, as well as summoning cheese-making gnomes to guide your cheese wheel to Castle Roquefort! Below is a brief summary of the lore of the game. Check it out here!


Mama miabella! ‘Tis an emmergency! Bert Camem, the Grand Mozz of House Arella, hath verily summoned the finest cheese in all of the Kingdom of Halloumia! Are you worthy of His Majesty’s tastebuds? Rolleth downwards to Castle Roquefort :european_castle: where HE awaits with knife and fork! Alas! Thine flavor shalst be judgeth - let not the filth of nature nor the ravenous mass of edacious peasantry touch thine exterior most sublime!

Hey, you!!

i love u ;3

MEOWTERSPACE Post Jam

Here's a sneak peek into ideas we've been tossing around for future content:

A linking mechanic that allows the player to create formations and move them around all a once

image (13).png

Ideas for new stages

City.png

New enemy designs

Planes.jpg

???

image (12).png

Until then tho, if you wanna play our game you can try it here!

full-logo.png

Would you dare to challenge Ambrose, the Bald?

MAGO.gif

No, you didn't read it wrong. This handsome fellow with his bald head is waiting for you to face off in our game 😱

What are you waiting for? Play now: Dungeon Evoker

P.S If the link isn't working, visit my profile to play.

63a09.png

Some reviews we've received

"Daang i like your game a lot!" - ldjam user 1
"This game is such a vibe!" - ldjam user 2
"A strong GOTY candidate" - hypotetical IGN article
"Shouldn't you be spending your time on something more productive?" - my dad

As you can see, we've got all sorts of reviews.
But we've been stuck on 23.5 for some time. So feel free to leave your take on 666!
It's all about keyboard skills and quick-thinking
Here'ya go: https://ldjam.com/events/ludum-dare/55/666

in game print.png

Not the Right Way - An Unconventional Game about Summoning

For LD55, we made this game: Not the Right Way. Link: https://ldjam.com/events/ludum-dare/55/$383570

Cover Image.png

This is an unconventional game about summoning. Here, you are not a sorcerer summoning demons and spirits, but a border control officer, summoning obstacles and traps to stop people from entering your country. Besides the political satire and the innovative gameplay, there is also a deeper layer of "summoning" in the game's narrative. You, the player, the boarded control officer is also being summoned by your supervisor. The supervisor is also summoned by their supervisor. The hierarchy of "summoning" just goes up and up. So what's at the top of this DEHUMANIZING pyramid? Your country? Your ideology? Nothing? These are the questions we hope the players can reflect on after playing them.

屏幕截图 2024-04-15 203234.png

We welcome everyone to play this game and give us feedback! We hope to strive further and create more games in the future! Also, you can leave the link of your game in the comment, so that we can also review them! Thanks!

FRIENDLY ASKING

it's been a while since the rating time has started, so we highly recommend you to play our game before the deadline! i promise it's worth all your time (to be more precise, ~15 minutes)

CHECK IT OUT HERE

DWARF WILL BE WATCHING YOU

thrilling dwarf.png

Ascension of the Satanic Shepherd !

🐑 Step into the role of the Master of the Pack and command our army of satanic sheep in our thrilling decision-based game. ⚔️ With just a few days left to rate our game, seize the chance to experience the thrill firsthand. Will you lead our flock to victory or succumb to the chaos?

⚔️ Come, join the fray now! ⚔️

915x189.png

Let's Kick a** ! https://shenoit.itch.io/sheep

https://ldjam.com/events/ludum-dare/55/s-h-e-e-p-sheep-hell-emissaries-eradicate-purity

Could you spare a minute to rate my game? (Just 6 more)

I’ve played and commented and done the right things, but I haven’t yet got to 20 rating on my game.

If you can, could you play and rate my little toy game, it’s HTML based, no downloading, and will take all of 60 seconds

Please and thank you to anyone why does

https://ldjam.com/events/ludum-dare/55/keyboard-warrior

Mortein

Please test our game and give us feedback! This is our first game!MorteinCover (1).png

Thank you for your precious feedback!

Background.png

Hey there, daring dungeon masters and necromancers extraordinaire!

We’ve been toying with some wickedly whimsical ideas that might just elevate your eerie escapades. Here’s a peek into the mischief we might stir up:

Fearless New Heroes: Imagine an eclectic mix of heroes daring enough to venture into your sinister lair. Wouldn’t that be a sight?

:knife: Pinpoint Hexing: What if you could curse your most annoying visitor with pinpoint accuracy? The possibilities are endless!

:heart: Bloodletting Bonanza: How about a snappier, more visually striking way to collect that precious blood you so dearly love?

:smirk: Sinister Summons: Consider new summons that could change the tide of battle. Choose your minions wisely to counter those pesky intruders!

:nightwithstars: Endless Night Mode: Picture this—no more racing against the clock, just endless, thrilling survival... if you can manage it.

:dark_sunglasses: Dungeon Tweaks: Imagine fine-tuning the dark corners of your lair with some minor key layout and UI enhancements to keep things smoothly spooky.

Intrigued? Haven't had the chance to join us yet? Click if you dare:

https://ldjam.com/events/ludum-dare/55/blood-rite

We treasure your feedback; it enchants our dark hearts (really, we’re not just saying that!). Who knows? Your ideas might just become reality, shaping the future of our bloody gatherings!

LudumDare_RatSacrificeArm.gif

Check this out - The Summoners Rift

Hey, I've finished my game and would like to get some feedback!

I'm sort of happy on how it came out and spend quite some time trying to get it to feel as right as possible.

It would be really wonderful if I'd get some notes on how this could be made better :bow:

You can find the game here: https://ldjam.com/events/ludum-dare/55/summoners-rift

2_Playing.gif

Thanks for playing! Everybody was so nice and LD was really fun!

Canoe_Ready.gif I appreciate everybody who played my game, and especially all of you who gave really encouraging comments, those meant a lot to me! I had such a blast participating and playing everybody's games, I think I played like 70 of them last I checked! You all are super talented people and thanks for giving this game jam such a positive atmosphere!

Who likes old-school point and click adventures with a touch of humor?

Hi friends! We invite you to try our game on summoning the spirit of a nice granny to enjoy the old unforgettable vibes...

https://ldjam.com/events/ludum-dare/55/a-cake-from-beyond

Let us know what you think and leave us the links to your creations, me and @nuanda79 can't wait to try them!

Ludum-dare_nonna2.jpg

Seance Postmortem - Audio

Detectiveembasic/em1.PNG

Welcome

Well, that's probably the most work I've ever gotten done over the course of a single Ludum Dare. Seance is my 20-somethingth collaboration with @alexrose, and it very well may be our best yet. It's definitely our most ambitious. A fairly complex story (especially by gamejam standards) written by Alex and mapped out to facilitate work between @lowri-bowden on the graphics, our 7 voice actors, and me on the audio editing/processing side. Over 400 lines of dialogue auditioned, edited, and processed. I personally handled 2+ hours of voiceover takes resulting in ~350 lines of dialog. There were some additional audio efforts from @sonnybone, who took care of processing his own voice for the detective, and @alexrose, who did some additional work on our friendly neighborhood malevolent being's voice. Scope creep is real, but we powered through.

Voice Casting

This was the first time we've attempted to create a game with anywhere NEAR this amount (or quality) of voice acting. We needed to find people who could record themselves at a sufficient quality, could get the tone of a character, and give a compelling delivery of their lines. We started off with a fairly broad call on Twitter that resulting in Mike Bithell(?!) saying he'd be down for a quick take or two.

Once we had Mike on the list we doubled down on trying to find the best voices we could for the other roles. We got some long-time Ludum Darers (@sonnybone, @sheepolution, @rincs, @naetoid) and some friends that we turned into first-timers (@chrissiecodes, @loriston4shoriston) to jump in. Everyone killed it with their roles. I think I've heard each character referred to as someone's favorite character (#RendellGang4Lyfe), which shows that we didn't end up with any weak points.

Additional thanks to @pomo and @blay09 for their work over the weekend trying vocal takes and helping make connections with some of our actors.

Art

Voice did a bunch of the heavy lifting in this game, but art was instrumental in pushing the quality forward - both in the final result, but also in giving people a visual to tune their vocal deliveries to. This was our second time working with @lowri-bowden and she absolutely killed it.

Music

I had a bunch of ideas for how to handle the music, but the rest of the work ended up eclipsing the stuff that I had in mind. We ended up with about a minute-and-a-half of music which, when spread over the course of an hour-long playthrough, means you hear the same thing a LOT. We added some dynamic controls to allow some variation depending on who you're talking to, which helps out considerably, but I had planned to lean into this dynamic control a lot more. I wish I hadn't focused as much on my (failed) solo entry in the early part of the weekend or that I had figured out some efficiencies in the vocal editing earlier so I could have spent more time focusing on the music.

I still REALLY like the Soundtrack that I created, I just wish there was more of it.

Audio Automation

It took MOST of the jam period, but eventually I got a suitable workflow for processing the 2+ hours of audio takes I had to process. Initially I started with a VERY manual process to ghostify all the voices (pre-verb in particular required extra steps) - make sure the voice ROUGHLY matched the tone and volume of the other voices, find the take I wanted, normalize it, bounce it, reverse it, add processing for pre-verb, un-reverse it, add additional processing, export as wav, convert to ogg. About halfway through the first characters takes I realized this was COMPLETELY unsustainable. I ended up developing an Audacity macro that allowed for me to automate the bulk of this process.

Audio Editing

Once I had the macro sorted out, I still had the much smaller (but still fairly large) job of vocal matching and mining the raw audio for the best takes. This was COMPLETELY new territory for me, so I had to learn as I iwent. Initially it took an ABSURD amount of time for me to properly process, edit, and bounce the clean audio takes. After hours and hours of doing things inefficiently, I eventually got a workflow that simplified things. By the final set of takes, I was able to power through half-hour of dialogue in right about an hour. If I had figured out my process earlier in the weekend I would have saved SO much time, but I got there. If we do something this absurd again in the future, I'll be prepared.

The End

Overall, I'm incredibly happy with how this complex of a project ended up pulling together. Huge shout-out to the entire team - everyone did their part to elevate the quality of what we attempted. Extra huge shout-out to @lowri-bowden for killing it on the art and helping formulate this story. And hugest shoutout to @alexrose for creating such a clear structure for all of us to be able to do our parts effectively and then tying it all together into a cohesive project at the end.

Check out our Game

Check out the Soundtrack

Exorcist Pianist - Postmortem

Play Exorcist Pianist in your browser

Exorcist pianist is a typing game with a musical twist, about beating your inner demons by playing the piano.

The Idea as I first wrote it

"You are a pianist that exorcizes demons by playing music. You must discover which notes hurts the demon by playing".

Base Profile Screenshot 2024.04.15 - 23.18.31.17.png

What went right

Gameplay

I made what I set out to create and it worked pretty well. You feel like you're playing the piano. The typing game is challenging enough, and the game is fun to play.

Art and Atmosphere

I succeeded in achieving the mood and style I aimed for. I would've loved to make more detailed art with animations etc, but I'm very happy with the results.

Tapping into a common feeling shared by many

I set out to create a game that speaks about something real to me. Everyone has inner demons, and I think this made the game more relatable.

Midi Keyboard / Controller support

This was a pretty unique and cool feature to make the game playable with a midi keyboard and I think a lot of people appreciated it. Plus, it immerses the player even more!

Positive feedback, and lots of it!

I was amazed to see so many people playing and commenting, and the amount of positive feedback the game received. This is by far beyond my expectations - I knew I enjoyed the game, but I didn't think it'd be my most popular LDjam game. I spent far less time working on it than the other two I made (I decided I'm not crunching this time, although I kinda did during the last day), and I didn't think a typing game would be very popular, or that combining it with playing the piano would elevate it from a simple typing game to an "experience" of sorts. I'm very grateful for this.

Base Profile Screenshot 2024.04.15 - 23.12.21.52.png

What went wrong

A typing game that wants to be a rhythm game

Typing games encourage the fastest action possible, and rhythm games are about making the right action at the right time. Those two concepts are naturally hard to combine - there's no telling how fast a player types and how fluid their experience will be. I would've loved to have more time to work on this.

Seeds for sequences

The game has three different seeds for all of the sequences, one of which sounds a lot better than the other two. In retrospect, I should've only left that one to ensure everyone has the same experience, or finetuned the other two. The thought behind it was that if you'd replay the game, you'll get a different tune so it won't be the same every time.

More variety of demons with the same number of notes (I.E 2 types of demons with 2 notes, etc)

Seriously... How did I not think about that? I mean, drawing more demons would've been very tough considering the time I had left, but this would've made the game's "generated melody" a lot less repetitive and the gameplay more interesting.

Not melodic enough

This is probably the most common feedback the game received and it's totally understandable. Unfortunately, I did not have much time left to experiment with the musical aspect of the game and it feels like a missed opportunity. This feedback could also be the result of my previous point with not removing two of the subpar sequences-seeds.

The game needs a better score system

Keeping time was not enough to encourage players to try and beat the game, and besides, it wasn't very clear how to beat the game or how long it takes. It would've been great if the game had better score keeping.

The game needs to better communicate how sanity loss/gain works.

Maybe show a number when sanity is restored, etc.

Backing track and more sound effects!

Something to accompany the piano and SFX when demons appear or disappear would've been very nice. If I had the time.

More visual effects!

Would've love to add more effects, such as a red vignette when making mistakes, notes flying out of the piano when playing, text effects, etc.

Base Profile Screenshot 2024.04.15 - 23.13.45.32.png

Final Thoughts

I believe this game was an important stepping stone towards continuing to make games that speak from my heart - and I believe this led me to create my most popular LDjam game so far, even though it's a lot simpler than my previous one.

I'll definitely be thinking about making a post-jam update for this game.

Thank you for reading, feel free to leave suggestions.

Play Exorcist Pianist in your browser

HTML 5 Version!

We added a HTML 5 version of our game! Check it out! In my profile!

2d-sprites + 3d-world = ❤️

Our game — Oversummoned — uses many cute 2d-sprites (demons and decorations) with completely 3d surroundings (tiles and houses)

At first, we rotated sprites to look at camera, but they started to clip with 3d objects 😈🏠. So we devised a hack: our sprites rotate only around vertical axis, and are scaled vertically by sqrt(2), so they look unmodified (camera looks down at 45°).

1.jpg In-game view

2.jpg Editor view of a demon — it is as tall as a house!

When demon is grabbed player sees it turned upside-down, but actually it's parallel to the ground...

photoem2024-04-23/em21-12-18.jpg Editor view and in-game view of a grabbed demon.

We added a soundtrack!

I mean we had sountrack in our game, but now you can download it!

Feel free to check it out on our game page on itch.io https://kettle-studio.itch.io/oversummoned Screenshot 2024-04-24 000641.png

New logo for Tug Of Slime

cover_animated.gif

I made a new logo for my little jam game. I also made an animated thumbnail for itch.io, which you can also see here.

The old logo was just plain green text with the same high-res font as used in-game. I feel like this new logo fits the game better. What do you think?

This was the old logo btw: oldlogo.png

nice

69.png

Forgot to make a post announcing our game, so making one for posterity!

NecroWizardryTHemNoText/emWS.png

Hey everyone! just realised I never made a post showing off the game! Our very boringly titled Necrowizardry was an absolute blast to make, and is actually kind of fun!

You play as a goodly wizard (played by @smartwilliam), out to defeat the dastardly evil wizard (played by me). The two of oyu only know how to summon progressively large hordes of mindless skeleton minions, though. You each have a unique advantage, however. The Evil wizard can summon a little more often, and his brutal spell attack, whilst slow, destroys skeletons instantly when hit.

You, however? You prefer to do the dirty work, so instead win the battle by possessing your minions and fighting personally with sword in hand! But beware, your fragile wizard body is totally undefended when you're a skeleton! The main mechanic of the game is summoning skeletons and evading the enemies as the wizard, then switching to skeletons to defend yourself and go on the offensive!

There's a lot of jank, and tonnes I'd have loved to do to expand it more, but I'm really glad that my experience has taught me to focus on game feel and gameplay polish before expansion of scope, because I think the game really benefitted from that, not least because of the amazing VFX done by my teammate. Was my first time doing all the foley myself, and that was a tonne of fun, seriously, but not as much fun - as usual - as doing absolutely silly voices. Half the reason we chose this game was so we could do silly skeleton voices!

I do have a habit of always going for somethign combat or action oriented though, it is my specialty. Next time, I'm going to see if I can make something tinier, more casual, so I can focus less on moment-to-moment combat and something maybe more narrative!

Thanks for an amazing jam, all, I've played some seriously great entries so far. I'd love some more comments on our entry if you had a couple minutes and feel like being a skeleton!

Play Necrowizardry Here!

skeletondance2-ezgif.com-optimize.gif

⊕ ⎅⏃⊬⌇ REMAINING

☌⍀⟒⟒⏁⟟⋏☌⌇ EARTH ⟟⋏⊑⏃⏚⟟⏁⏃⋏⏁⌇!

⍙⟒ ⏃⍀⟒ SORRY ⎎⍜⍀ ⏁⊑⟒ ⌰⏃⋏☌⎍⏃☌⟒ ⏚⏃⍀⍀⟟⟒⍀. ⍜⎍⍀ TRANSLATOR ⟟⌇ ⍀⎍⋏⋏⟟⋏☌ ⟟⋏⏁⍜ ⌇⍜⋔⟒ ISSUES ⏃⋏⎅ ⍙⟒ ⌇⏁⟟⌰⌰ ⊑⏃⎐⟒⋏'⏁ ☌⍜⏁ ⟟⏁ ⎎⟟⌖⟒⎅. ⊑⍜⌿⟒⎎⎍⌰⌰⊬ ⟟⏁ ⍙⟟⌰⌰ ⎅⍜ ⏃ ☌⍜⍜⎅ ⟒⋏⍜⎍☌⊑ ⟊⍜⏚ ⏁⍜ ☌⟒⏁ ⍜⎍⍀ MESSAGE ACROSS.

⍙⟒ HOPE YOU ⊑⏃⎐⟒ ⊑⏃⎅ A WONDERFUL JAM! THERE ARE STILL ⊕ ⎅⏃⊬⌇ REMAINING UNTIL THE JAM CONCLUDES, SO BE SURE TO PLAY AND RATE AS MANY GAMES AS YOUR FREE TIME ⌿⍜⌇⌇⟟⏚⌰⊬ ⏃⌰⌰⍜⍙⌇ ⟟⏁! NOW IT'S A ☌⍜⍜⎅ TIME TO CHECK THE DANGER CATEGORY AND GIVE THAT EXTRA PUSH TO THE GAMES THAT NEED IT! ALSO BE SURE TO LEAVE SOME FEEDBACK, ⍙⟒ ⏃⍀⟒ SURE IT MEANS A LOT TO EVERY SINGLE PARTICIPANT. IT FEELS REALLY ☌⍜⍜⎅ KNOWING ⌇⍜⋔⟒⍜⋏⟒ HAS PLAYED YOUR GAME AND FOUND SOMETHING TO ENJOY IN IT!

⌇⌿⟒⏃☍⟟⋏☌ ⍜⎎ ⍙⊑⟟☊⊑, ⍙⟒ ⍙⍜⎍⌰⎅ ⍀⟒⏃⌰⌰⊬ ⍙⏃⋏⏁ ⏁⍜ THANK EVERYONE WHO PLAYED OUR GAME, ⌰⟒⏁⍜! ⍙⟒ READ EVERY SINGLE COMMENT ⏃⋏⎅ ⟒⏃☊⊑ ⍜⋏⟒ ⊑⏃⌇ ⋔⏃⎅⟒ ⍜⎍⍀ ⟒⌖⏁⍀⏃⏁⟒⍀⍀⟒⌇⏁⍀⟟⏃⌰ ⊑⟒⏃⍀⏁⌇ ⎎⎍⌰⌰! ⌇⟟⋏☊⟒⍀⟒⌰⊬, THANK YOU! ⏁⊑⟒ ⎎⟒⟒⎅⏚⏃☊☍ ⊑⏃⌇ ⏚⟒⟒⋏ ⏃⋔⏃⋉⟟⋏☌ ⏃⋏⎅ ⍙⟒ ⏃⍀⟒ ⌇⍜ ☌⌰⏃⎅ ⍙⟒ ⋔⏃⋏⏃☌⟒⎅ ⏁⍜ ⌿⍀⍜⎐⟟⎅⟒ ⌇⎍☊⊑ ⏃ ⌿⍜⌇⟟⏁⟟⎐⟒ ⟒⌖⌿⟒⍀⟟⟒⋏☊⟒ ⎎⍜⍀ ⌇⍜ ⋔⏃⋏⊬ ⌿⟒⍜⌿⌰⟒!

ezgif-1-0fe5b72ed5.gif

⟟⎎ ⊬⍜⎍ ⊑⏃⎐⟒⋏⏁ ⌿⌰⏃⊬⟒⎅ ⌰⟒⏁⍜, ⏚⟒ ⌇⎍⍀⟒ ⏁⍜ ☊⊑⟒☊☍ ⟟⏁ ⍜⎍⏁ ⊑⟒⍀⟒ ⏃⋏⎅ ⟟⎎ ⊬⍜⎍ ⎅⍜, ⌿⌰⟒⏃⌇⟒ ⌰⟒⏃⎐⟒ ⏃ ☊⍜⋔⋔⟒⋏⏁!

... ⍜⊑, ⟟⏁ ⌰⍜⍜☍⌇ ⌰⟟☍⟒ ⍜⎍⍀ ⏁⍀⏃⋏⌇⌰⏃⏁⍜⍀ ☌⍜⏁ ⏁⍜⏁⏃⌰⌰⊬ ⏚⎍⌇⏁⟒⎅ ⏃☌⏃⟟⋏, ⏃⋏⎅ ⍀⟟☌⊑⏁ ⋏⟒⏃⍀ ⏁⊑⟒ ⟒⋏⎅! ⍜⊑ ⍙⟒⌰⌰, ⏚⏃☊☍ ⏁⍜ ⏁⊑⟒ ⎅⍀⏃⍙⟟⋏☌ ⏚⍜⏃⍀⎅, ⊑⍜⌿⟒⎎⎍⌰⌰⊬ ⍙⟒ ⍙⟟⌰⌰ ⊑⏃⎐⟒ ⟟⏁ ☊⍜⋔⌿⌰⟒⏁⟒⌰⊬ ⎎⟟⌖⟒⎅ ⎎⍜⍀ ⏁⊑⟒ ⋏⟒⌖⏁ ⏁⟟⋔⟒.

HERE COMES DWARF

it's time when people are getting tired to do anything and waiting patiently for the end. NOT US THO!

10 days and the party will be over, so hop on a rate train and check out our game, if you still haven't already! we will be glad, if you share yours masterpieces as well here in comments!

(somehow i'm still not out of ideas for funny post pics please appreciate it)

PLAY HERE!

here comes dwarf.png

Ecaroh's Mecharoh 2 - A post-compo update

tqx5q4.gif

Godot Wild Jam #68 was running concurrently with LD #55

So I expanded my compo game a bit last week! Thanks to all who played and rated my game. I really appreciated all the feedback that helped me keep working and improving :)

+ 2 additional monsters

+ A tower zapping attack

+ More electrons, no ammo limits!

+ And a new upgrade forge!

Play original LD55 Entry

Play Updated Ecaroh's Mecharoh 2 : Forgeroh's Fortress

xEXEbT.gif

sGhJzJ.gif

And a brief LD-Jam post mortem:

I learned a lot this jam and it was so fun and super inspiring to play everyone's games last week!!

In my compo, I experimented a lot with sound design, making sounds from scratch with just my mic and a few things around my office. I came up with some really efficient methods for generating the exact sound I wanted using Audacity's PaulStretch + BitCrusher, and then just changing the pitch speed in Godot as needed.

I also started to wrap my brain around data approaches to building games. I created custom resources for the first time in a real game and WOW... seeing the potential now has me thinking this will drastically change my whole approach in the future.

I didn't get to implement all the different types of upgrades I wanted in the end, but I was able to quickly make some adjustments in the data for character stats that was super easy to manage during the last minute crunch time when I needed to add a few stats that could be upgraded.

Custom resources are so cool!!

Here's a behind the scenes look at my development journey from Compo -> Expansion.

https://www.youtube.com/watch?v=thiKk2-jzHg

Art for Make it Rain

Hey everyone! I'm AJ, and I made the art for our silly and fun QWOP-style game, Make It Rain.

https://ldjam.com/events/ludum-dare/55/make-it-rain

animated.gif

2024-04-15 17em33/em06-Make it Rain (DEBUG).png

When making a cohesive looking game, my favorite first step is to decide what the setting is, and what color palette would best encompass the feeling I want the game to have. Then I'll start by sketching out what I want the game to look like (knowing that some things will probably be changed).

Here are some of my in-progress work during the jam that turns into what you see in-game, in no particular order. Enjoy!

refsm.png

sketches_copy.jpg

startsketch.png

king_puppets.png

backgroundsm.png

flags.gif

If you liked this post and the art, please take a moment to try our wonderfully silly game, Make It Rain. Thank you!!

-AJ

Have you heard this track ? if yes...

If you have heard this track you have already played DEMON LORD REVENGE. That's nice ! If not, we let you enjoy the song and the game :

https://youtu.be/pdBro2ynB-c

This have been composed with one goal : make you panic, make you loose. Can you hold the stress of being attack by dozen of magicians ?

Let's see if you can pass wave 5 ... we'd love to have you feedback on it !

https://ldjam.com/events/ludum-dare/55/demon-lord-revenge

And now for something completely different - T-shirts

I had a dream :wink:... an idea to express my love for this awesome jam of ours with a t-shirt. So, I made some designs in our Redbubble store. Aren't they just cute :grin: I'm very new to this Redbubble endeavor, so I'm quite excited!

https://LimboOfWonders.redbubble.com

ld-tshirts2.png

BloodRite is open to Hero-Applications!

What's poppin you necrotastic dungeon keepers?

As we're trying to clean up some issues our dungeons left us and collect new families of rats for your sake, we're also raising our budget for new heroes - meaning we're open to hero applications!

Here's the first application we received and one of the heroes that will try to raid your dungeon upon the next big patch:

LudumDareemHero/emv2.gif

It's a thief class hero which is skilled in vanishing in the shadows which will make it really hard for your skeleton friends to target. Also, since a lot of your precious feedback containt more challenge this hero will hit very hard but in exchange hold a very low health value. Furthermore, since our fellow necromancers seems to be a bit into feeling pain (not only the one of being alone) we're thinking of implementing some tasty poison or blood curses just for you!

With that said - Drop us an idea we might considering your Hero-Application!

Try it here: https://ldjam.com/events/ludum-dare/55/blood-rite

Have a RATastic day!

d8d61c5aeab343349c5e5feab744eb92.jpg

Phasebound Mascotte

Hey everybody!

I just wanted to give another shoutout to all of those who tried out my game Phasebound - I appreciate all of you and the feedback I've gotten!

On top of that, I just wanted to share this little picture of my monitor- my little mascotte given to me by my best friend who doesn't understand why I'm obsessed with giraffes yet continues to fuel it. If you don't have a little mascotte sitting on your monitor... can recommend!

20240424_140420.jpg

Me Want Donut! - Post-Mortem

This was my 12th Ludum Dare, and the first one after taking about 3 years off… it’s great to be back. This time I used Godot instead of Unity. I’ve been using Godot off and on for about 6 months and this was the first time I finished a game using this engine... the result is Me Want Donut!

Friday

As always, once the theme is announced, I have difficulty trying to find a game I want to develop. I do look over the possible themes and jot down some ideas, but for Summoning, I had nothing. I decided to see what came to me. After a few hours, nothing did, and since it was late I decided to call it a night.

Saturday

Up early Saturday morning to see if I can put together an idea. I had an idea where someone would get items for the player. I started coding basic movement and after a few hours, I had something working. A few dozen updates later and the game morphed into what it is now… bringing donuts to a monster.

I learned a lot about Godot on Saturday… trial by fire. I had to (quickly) learn how to create and use tile maps, how to animate objects with sprite sheets and individual images, and how to create builds for Mac and PC.

Sunday and Monday

Both days were spent on testing, adding “just one more” idea to improve gameplay, adding sound and visuals, and getting ready for submittal.

What Went Well

I am impressed with Godot and gdScript and how easy it is to put together a game. I am also glad I had a few months to work with Godot and put together some smaller games… the experience really helped during the game jam.

What Can Be Improved

I seem to have a difficult time putting together an idea for a game once the theme is announced. It takes me forever, and I “wing it” as I go along. The end result is what counts though… I do get a game out, but it seems more difficult. I also had a little trouble understanding what all the UI Nodes do, but I got something workable.

Future?

Of course, every LD leaves me thinking that I should expand my game, and this one is no different. I do have some ideas that I think will make this a lot of fun to play with a group. I’m going to spend some time to work that out. Who knows… maybe something will come out of this game in the long run.

Screenshot .png

Grand Finale of 100 LD Games LIVE!

Is today the Grand Finale of our grand challenge?

Submissions are still open. We are playing submissions, our favorite games, and games of people who played our game.

Come join us and chill with us :popcorn: :popcorn: :popcorn: :popcorn: :popcorn:

:arrow_right: https://www.twitch.tv/tobugis

3Z3UieUP_400x400.jpg

Post-Jam Cull

We kept working on the game after the initial demo for the 55th Ludum Dare Jam and now we are proud to announce our first update that brings many improvements!

timeremsmall/emsmall.gif

Timer?

Many playtesters wanted to have a timer in the game but we were hesitant to slap a boring stopwatch on the GUI and instead went with a more unconventional solution, see if you can spot the remaining time in-game!

timer_small.gif

If 6 was 9

The game's progression is now better designed to increase the difficulty as you progress through culls.
You can also enable Easy mode in the settings which gives you 9.99 seconds each round instead of the standard 6.66 seconds on Normal mode.

Souls and Bad Blood

The Bad Blood ending was a bit confusing for players so we revised this mechanic into a new system that gives you three Souls (shown as green flames at the bottom of the screen). * If you slash something that doesn't match your goal, you will lose one Soul. * Your Souls carry over to the next culls * If you run out of Souls, you will get the Bad Blood ending. * You can aquire new Souls by completing three Pure Evil rounds in a row * Slashing the wrong targets now also has chilling screams to make it easier to notice your errors

souls_cropped.gif

Throw Ability

While we retuned the spawning system to somewhat reduce overlapping targets around you, we also added an ability to throw creatures into the air to clear out the way for other targets behind them. You can use this ability with the Right Mouse Button. Look at our cool dude enjoying himself... for now.

throw_small.gif

Accessibility

To make our game more accessible to colorblind players we implemented toggles for each color in the game's palette. By disabling these colors you can exclude them from appearing as target goals. Targets will still be colored with the entire palette but you will never get an "ALL THE ORANGES" goal for example, if you disabled Orange.

settings.gif

Settings

The game now includes a Settings menu where you can adjust different aspect of the game

  • Mode for selecting difficulty
  • Fullscreen toggle for preventing the game from going fullscreen automatically
  • Sensitivity for adjusting mouse look speed
  • Volume for reducing the terror
  • Colors for excluding colors from the goals

Rules & Stats

With this jam I think we somewhat improved upon our tendency to present hard to understand games with no explanation to players, our revised menu also includes a tutorial page.

rules.gif

The game now remembers your highscore and other statistics about your play. You can check them out in the new Stats menu.

That's about it for now!

thanks.gif

Play The Culling

✨⚔️ Choose Your Spell Wisely ⚔️

post_chooseyourspell.png

Now it's your turn to vanquish the enemy, not just with sheer numbers, but with the powerful spells in your deck!

➡️ Let’s Kick a** ! https://shenoit.itch.io/sheep ⬅️

https://ldjam.com/events/ludum-dare/55/s-h-e-e-p-sheep-hell-emissaries-eradicate-purity

2d-sprites + 3d-world = ❤️

Our game — Oversummoned — uses many cute 2d-sprites (demons and decorations) with completely 3d surroundings (tiles and houses)

At first, we rotated sprites to look at camera, but they started to clip with 3d objects 😈🏠. So we devised a hack: our sprites rotate only around vertical axis, and are scaled vertically by sqrt(2), so they look unmodified (camera looks down at 45°).

1 In-game view

photoem2024-04-23/em21-12-18.jpg Editor view and in-game view of a grabbed demon.

When demon is grabbed player sees it turned upside-down, but actually it's parallel to the ground...

2 Editor view of a demon — it is as tall as a house!

Post Jam version available!

Mushrooms Screenshot 2024.04.24 - 15.17.10.76.png

Due to popular demand, I improved the game and added a new level. I thank everyone who supported me and the team with feedback, helped with testing and suggested interesting game mechanics and improvements.

The most difficult task was recoding the fungal root growth algorithm. I had to divide the space into voxels between colliders, then use a custom pathfinding algorithm A* in 3D space, and then convert the resulting path points array into a spline onto which the root mesh is already attached. It was a very interesting challenge!

I hope the team has enough strength and resources to turn this prototype into a full-fledged game.

You can play post-jam version here: https://katamary.itch.io/mushroomaissance

Thank you for playing our game!

The final version

I think this will be the final version of my game, I fixed some bugs, polished the tutorial a little. I could try to make a bigger version of the game, but I think this little version is finished and works well. Furthermore, I am happy with all the feedback, there were not a lot of complaints and they are all really nice, thank you all 💕

202020.gif

not here...

Postmortem Reflection: A Weekend of Runic Summoner

This LudumDare marks my 6th time participating and my third consecutive Jam entry. As usual, the weekends have been a rollercoaster of emotions, but in the end, I managed to create Runic Summoner, which I am quite proud of. Let's break down how the weekend went and what I learned for the future.

  • Pre-Event week:

Throughout the week before the event, I made sure to deal with every real-life responsibility I could. I ensured we had all the snacks at home, completed all the housework, and made sure nobody from work (or the family) could bother me. These all helped to make the weekend a much smoother experience than usual.

  • Friday:

Right after work, I decided to install every software I would need. I really wanted to make something 3D this time as well, so I installed Qubicle Voxel editor to create models and tried it out a bit. Then I set up OBS and my new microphone for the stream. After that, I got bored and instead of creating the Unity project and testing some model imports, etc., I went and played Valheim until like midnight… Yeah, good start, I know.

  • Saturday:

Surprisingly, right after reading the theme, I thought of an idea that was neither overcomplicated nor impossible to manage in two days. After some quick planning and setting up the stream, I opened Qubicle and realized I had no idea how it works. After a quick Google search, I swapped over to MagicalVoxel, which works the same way but somehow clicked way better for my brain. I spent the rest of the day focusing on coding the main game loop, doing my best to ignore how dumb everything looked with just different-colored cubes and spheres. My plan was to finish everything I needed to play the game, and then I could spend the second day on polishing and art.

Remember how I said the idea was doable in two days? So yeah, at the end of the day, I threw away about 40% of the planned content. Pretty good time estimate considering how it usually goes…

  • Sunday:

Sunday started pretty alright. I was motivated to do some art and put them into the game. Unfortunately, soon after, this motivation dropped hard when I realized how much work needed to be done and also how annoying it is to draw everything by hand and import it into Unity. I was close to packing up and calling it a weekend at this point, but my wonderful partner helped me get through the worst of it. Soon after the first few arts were finished, I regained my motivation and spent the second part of the day on a mad sprint to fix all the bugs, create menus, and convince Unity to let me export the project on the web.

Things that I feel like I did well:

  • Effective Breaks and Rest: I took way more time off to take a few 30-minute naps instead of suffering through the day tired. They always gave me some extra push for the next feature, the next bugfix, the next model.
  • Building the Main Game Loop with Boxes and Spheres: It was way better than spending half the day drawing 6 extra enemies I had no time to implement in the end.
  • Cutting Content: I think the game actually got better from not having 3 extra enemy types and mid-game upgrade options. It left more time to polish up and fix bugs.
  • Actually Ended Up Learning a Lot: About how textures and emission maps work in Unity. My workflow to use them, on the other hand…

Things that didn’t go as well

  • Not Having a Tested Workflow: To create models and import them into Unity was a major mistake. I think at least a few hours were spent figuring out how MagicalVoxel works, and copying .png files, opening them manually, finding that one pixel that I want to have emission, recoloring it to white so it can have any light effect, then coloring the rest to black… Every time it took forever and was single-handedly responsible for having the same projectile animation on every character.
  • Playtesting: I Ended Up Not Having Enough Time to do a lot of playtesting or even release a working version to ask some friends to try it out. This led to inconsistent pacing, sudden difficulty spikes, and a UI that created a lot of confusion for the players.
  • Streaming and Social Media: I spent almost the entire event live on Twitch, but I think it was hurting more than helping. Glancing over to the chat to see I have 0 viewers did affect my mood a lot during the weekend. I also didn’t have time to create posts on the LudumDare site during the event. The whole social media aspect feels like it takes an entire extra person.
  • I Also Ended Up Being Cooped Up Inside: I believe going for a quick walk on Sunday would have saved a lot of time spent on worrying.

Overall, I’m pretty happy with how the weekend turned out. I learned a lot and found some extra motivation to keep working on games outside of jams. Would like to thank everyone who ended up playing Runic Summoner and hope to see you all again for the 56th LudumDare.

PostmortemImage.png

A Reflection on my game "The Ghost of Leo"

I have reached over 20 user ratings, which means I'm eligible to receiving a score for my categories! Thank you to those who have played my game for the jam! And in return, I think I'd like to reflect my jam experience of what went well and the things that didn't go as planned.

The Ghost of Leo cover 2.png

The Good

  • The dialogue system was running well. I was able to code a mechanic to allow myself to easily write dialogue and swap between images in the cutscenes running.
  • I'm proud of the drawings and art that I made, especially in the black-and-white style I had the idea to make digital drawings with a pixelated-vibe to them similar to the previous jam I did. Some of these drawings were based on a previous jam I failed to make in time that I wanted to do with this style, and I'm glad I got to incorporate it.
  • The narrative I wrote in the game had a lot of people liking it based on the comments. I tried to write a narrative or story in attempt to be very touching, and I'm glad it worked.
  • I made some music to properly set the mood for the game.

2024-04-1818-57-19-ezgif.com-video-to-gif-converter.gif

The Bad

  • Turns out 72 Hours isn't a lot of time when you have a social life and have some stuff to do over the weekend. Then again, it's not healthy to live a lifestyle of eat, sleep, game dev, and repeat for 72 hours straight.
  • Spawning in different rooms/items was not set up properly.
  • There were some extra gameplay mechanics I was not able to make in time. For example, I was planning to have the objective to visit other dog ghosts from the graves, learn much about them, then find a missing item that they're looking for. But 72 hours isn't enough, so maybe in the future
  • The gameplay isn't as fun as I expected. The harvesting seemed a bit tedious and was more about stretching time in the game than actually making it really fun. This was recycled from the "Harvest" game jam I failed to meet, and I still didn't make it that engaging.

2024-04-1818-57-19-ezgif.com-video-to-gif-converter (1).gif

Anyways, that's my experience with the jam. Thanks again to those who have played my game. If you want to check out my game, feel free to check my profile or click this link: https://ldjam.com/events/ludum-dare/55/the-ghost-of-leo

See you in the next one!

I made a game about creating custom monsters for the Compo

Key Art.png

The game is called STUPID LEGS – you summon customized derpy monsters to do the chores for you: check mail, do the laundry, gather apples, pay taxes, and more!

It was made in 48 hours for the Compo – I managed to do all the essential stuff in time, but there's also a post-compo version that is more polished and has some additional content and sounds in it.

first level first monster.gif

I loved making this one, and it's pretty fun to play! There are 4 levels (6 in post-compo version), so it's not very long (around 5-10 minutes, I'd say).

→Try STUPID LEGS←

Playing your games on stream

Hey guys, I'll be playing, and streaming, and critiquing LD games :D
Also happy to try out Post-LD entries! Starting in about 10 minutes (9:00 MDT)

https://www.twitch.tv/technostalgic

Submit your game to the #ludum-dare channel on my discord, I'll be playing them in the order they are listed there:
https://discord.gg/HA65WGU9Dm

Hello there

Scrolling on by huh? Why not check out some of that Vocatio.

My next plan

8 Days left until 'Rating games ends' and My LD55 submission still needs ratings.

I have fixed the player's movement and now it accelerates and decelerates faster. But I will leave the original version here and I just added my GitHub repo's release link in the description. so it will not violate the rules.

LD55_cover.png

After the end of rating games, I am planning an engine migration for my LD54 submission, Metagirls from UE5 to Godot 3. I have placed all sprites of this shoot'em up game in XZ plane and this was a huge mistake. So I will completely remake this with Godot engine so that no more critical errors will occur (and rotating all objects to XY Plane for each 2D sprite import in UE5 is such a hassle).

And I need to get a job from now on. I might not enter LD56 and my game remaking project will proceed slowly.

-

How I created creatures for Uncanny Inscriptions

1_Title.gif Hi, I'm Bo, and I'm an artist on our team! In this post, I explain how we optimized our pipeline, the challenges we encountered and the decisions we made to overcome them. For game Uncanny Inscriptions

Preparation and thoughts

2-prologue.gif We decided that the game will be in 3D, however creating characters in 3D takes much time. For instance, my model of a duck includes: sculpting, retopology, UV-layout, texturing, rigging, and finally animation. But I needed to figure out how to create several characters within a short timeframe. I decided to create 2.5D characters, which simplified my work. You'll understand why as we progress.

Creating Character in ZBrush

3emZBrush.gif I'm skilled in 3D rather than drawing, starting with _ZBrush where I can rapidly refine the shape of my characters and add cost-effective details. I created a model for 2D rendering, so the most important part is the front. I don't focus on the other sides. Also, I used Polypaint(vertex paint) for texturing characters—an easy but effective method. I didn't need retopology and UVs, which are often the most frustrating parts of 3D work

Render and export the sprites in Unity

4emMarmoset.gif For rendering, I used _Marmoset Toolbag 4. I separated the model into several layers in ZBrush and exported it to Marmoset. Then, I set up the scene, adjusted the camera angle, and lighting. Additionally, I added an extra render pass for the Normal map. Furthermore, I used this scene for other characters. I organized and refine the render layers in Photoshop and then exported the PSB file to Unity. The "2D PSD Importer" automatically separated my layers into sprites

What's the issue, my friend?

5_problem-shader.gif Before this moment, I hadn't tried working with 2.5D. I realized that sprites don't interact well with a 3D environment and lights. This confused me, but our programmer figured out how to fix it and wrote the shader. Sprites began to behave as I wanted; I was able to use the Normal map, and the sprites responded to light.

Rig and Animation

6emrig.gif I rigged the characters using the standard _'2D Animator' and 'IK Components' in Unity. During animation, I focused on my favorite principle of animation: 'Follow through and overlapping action'. We realized that we didn't need triggers for animation, as the animation starts automatically when we call the prefab. The programmer prepared prefabs before for characters that we planned, and I began to fill them with other characters.

7emend.gif I hope you found this post useful and interesting. It's my first time writing something like this. I've always wanted to share about my work on the Jam. Thank you for reading, and _don't forget to play and rate our game Uncanny Inscriptions

Update! More Dialogue, better maps

Summoner Armin's Bad Day just got updated! Play the updated browser version on our itch.io or download the original version to try it out! https://commadotgames.itch.io/summoner-armins-bad-day

63617.png

See out LD Jam page here: https://ldjam.com/events/ludum-dare/55/summoner-armins-bad-day

636171.png

Better, shinier, faster!

First of all I would like to thank everyone who played Runic Summoner and gave feedback on it!

I found some time during the week to create a post jam version that you can play right now directly in your browser from: https://freamdev.com/games/RunicSummoner/

Changelogs:

New Features:

  • Added death effects for enemies.
  • Added projectile hit effect for enemies.
  • Implemented summoning effect for bosses.
  • Updated aura effect for Paladin boss.
  • Increased camera angle for better visibility.
  • Ascended player model and attacks now accessible in-game (requires re-unlocking).

Bug Fixes and Improvements:

  • Corrected spelling errors throughout the game.
  • Eywas rune is now traversable.
  • Targeting now functions properly on enemies.
  • Left mouse button no longer required for basic attacks.
  • Reduced base attack damage by approximately 33%.
  • Increased heavy attack damage by 20%.
  • Movement speed increased by approximately 30%.
  • Close combat enemies now deal damage during "dancing around" phase.
  • Reduced base health of all basic enemies by about 33%.
  • Enemy healing effects weakened by approximately 30%.
  • Adjusted enemy spawn intervals to occur every 8, 10, 12...30 seconds instead of every 37 seconds.
  • Mage and Priest enemies now spawn one wave later.

NewPaladin.png