Ldjam41 - Stealth 'em up

Hi guys (and gals),
this year i decided to take part in the “Ludum Dare”, a game jam and compo where you have to make a game in 2 days (3 for the jam).

Last time i took part in a LDJAM was around 4 years ago and i made a small puzzle game in JS.
This time i’m trying to do something a tad more complex using Defold.

The theme for this editon of the LDJAM is “Combine 2 Incompatible Genres” (ie: turn based racing game, text adventure fighting game, etc…)

At first i tought i was going to sleep and see the theme in the morning, but i could not wait and kept up til 3am (damn timezones!), i took note of a couple of possible ideas and went face-first on my pillow.

The genres i chose are: Stealth and Beat 'em Up.
One of the peculiarities of the beat em up genre is to clear an area of the enemies to procede to the next (i’m positive you all know games like Double Dragon, Golden Axe and Castle Crashers).
Mix it with Stealth and you have a problem, how do you knock out the enemies if you can’t be seen?

My idea is to taunt an enemy (you throw a rock at him for example), he gets mad and attacks the closest entity he finds. So they start punching themselves, leaving you enjoy the show in the safety of the dark :smiley:

Now a little summary of things i realized in the last 24h:

Nice things:

  • Defold is really fast for prototyping
  • Lua is really great for scripting (and again being so simple helps with fast prototyping)
  • Editor2 is sleek and fast
  • Defold’s messaging system is amazing (even if it seems wierd at first coming from OOP)
  • I could not have done this with another engine/editor
  • having so little time really helps getting things done

Bad things:

  • i’ve only been using Defold for less than a month, i still have to figure my way around it (this is not really a negative thing but with a 2 days deadline it is :smile: )
  • [DEF-521] almost ruined my day
  • [DEFEDIT-1283] was about to ruin my day but i can survive :slight_smile:
  • fonts rendering quality is kinda bad, at least for pixel fonts (or i’m doing something wrong)
  • rendering and camera management needs some love (but i managed even without extensions)
  • i’m on a crappy laptop that freezes and has hick ups (i swear i’ll buy a new one soon)
  • tomorrow i will pass out at work (for once i will be sleepier than my students :sleeping:)

Little peak at the current status (i will add art last thing before releasing hehe)

I’ll try to keep you updated and, after the compo ends, i will make a more coherent post, so pardon me for writing this with 24h of little to none sleep.

4 Likes

Good Luck!

1 Like

Yes, sorry about this. We need to give this higher prio. I’ll stick my neck out and guess we can sort it out before end of Q2.

You need to change the font material and add a sampler. Like this: https://github.com/britzl/gbrausers/blob/master/assets/font/pixelfont.material

Yes, the built in camera solution is very simplistic, but there’s good extensions that are easy to use. And when working on a game jam project it will for sure save you time. When you say rendering, what do you mean specifically?

2 Likes

Sorry i took so long to answer but i had a couple of busy days and i wanted to give you a proper answer.

Thank you, this issue is particullarly confusing because the editor shows the expected behaviour.
At least you can easely identify the problem using the physics debug feature.

That helped but i still get some jagged edges (i know nothing about material definition, i really need to dive into that topic), i guess i need to fiddle a little with the font size (finding the right compromise between the size you choose to create the font and the scaling you use to make it match your game resolution seems to do the trick).

By “rendering”, as you guessed, i actually meant the available functions the user has to work with, the rendering itself is really good.

In Defold 1.2.125 you added some projection helper functions that helped A LOT (i don’t think i was ever in the situation where i would use the default stretch projection) but i think that in this case the end user expects some more love, like some helper functions to map the input coordinates to the rendering projection (it’s all fun and games until you resize your window :sweat_smile:).

Thanks for your time!

3 Likes