THX1342

LD 40

Karma is a b*tch (also, my first LD!)

I've been following LD for quite a while, and I'm a big fan of many of the devs and their games (shoutout to @managore). This time I finally mustered the courage to join. I'm not a professional programmer or a game developer so there is a high chance of failure.

Since I've been recently very interested in roguelikes, and they are somewhat easier for non-artists like me, that's what I'll be attempting to build!

My concept right now is of a very minimalist roguelike, where most of what you do to enemies comes back to make your life harder. You know.... KARMA.

karma2.PNG

This is an early concept "art" made using the awesome RexPaint.

On the subject of tools, I'll be using: 1. Python 3 2. Python TDL library 3. RexPaint 4. Coffee

See you on the other side (I hope!)

[Karma] This is going better than I expected (so far)

Maybe it's the time pressure... maybe it's because I 'planned' what I wanted to achieve the first hour. Things are moving much faster than I expected! I have the skeleton of the interface

karma3.PNG

I have learned a few new tricks along the way (like exporting pieces of my mockup from RexPaint to a CSV file and using it in my straight in my code. Time saver!)

So far I think I've put in about 2 hours (1h of coding, 1h of brainstorming and drawing the mock-up)

[Karma] it lives!

I now have the player movements done. It needs some patching to constrain it inside the desired space, though.

karma_movement.gif

Also, player stats are appearing where nedded along with score and current 'dungeon' level.

I'll take a break for a few hours and after that I'll start working on the procedural map generation (which I'm almost certain will be the hardest part of the project).

[Karma] Procedural map (kinda?)

As expected, making the procedural map was going to be the toughest part for me. I'm sure there is some very obvious way to do it but I fried my brain trying to figure out how to put the correct tile in each position to make a seamless path for the player. The code is ugly, but it works. Don't ask me how, but it works! :D It will be a fun challenge to optimize this later... but now there's no time!

This procedural map won't win any ProcJams anytime soon, but it is exactly what I had planned during my brainstorming session, so I see it as a win!

karmaemmapgen.gif karma/emmapgen_2.gif

unexpected bonus: changing one of the variables allows the game to have at least some variance between maps.. with more or less 'cells/rooms'.

Also got to implement non-passable tiles which will be used in the future for combat and possibly FOV/FOW (not sure if I'll use this).

[Karma] now with twice as many bullies

karme_enemies.gif

Implemented some simple 'enemies' and action log.

I put myself a severe restriction for screen real estate, to force me to be creative. The challenge is that as I get more tired, my code gets sloppier (which in turn required I spend more energy to do anything) and my imagination fades...

I got to say, I'm starting to get a bit worried about time. There's so much to do! Items, Level system, Balancing... But I'll keep pushing until I have something worth sharing!

[Karma] Now with loot

karme_loot.gif

started working on the item drop system. still needs to appear in the inventory/hotbar

[Karma] Spaguetti code intensifies

Now items appear in the hot bar.

karme_inventory.gif

I did some juggling around with classes and objects and I'm feeling this is quickly turning into a spaghetti monster! If I had time this would be the moment to do some massive refactoring... but time I have not!

[Karma] Next level

karma_nextlevel.gif

A lot was done since the last update: 1. You can progress thru levels 2. Earn points 3. Die 4. Restart

Time is short and I think I won't have a feature complete game until the deadline... but I'll post what I have until then anyway so I can enter the compo

[Karma] I failed the compo...

... but I'll post my game to the JAM.

karma_bullies.gif meanwhile... you can now scare bullies :joy: but beware of what it does to your karma (soon™)...

[Karma] so close... lesson: prioritize

karma_soclose.gif

I came very close to having a barely working game to submit to the Comp. But I failed to prioritize my work and ended up leaving a core piece out of the game. Hats off to the people who build those amazing games in 48h! Now I know from experience what I could only imagine: building a full game in 48h is an amazing achievement!

I'll take a break now and finish this game tomorrow, in time for the JAM (I hope!)

Is the submission broken?

I can´t submit my game for some reason. Pressing the publish button does nothing :(

[Karma] finished

~~Well... I give up trying to publish the game, but here it is! :)~~

~~After 3 hours trying to publish it I think there's either massive load on the servers or there's some bug I haven't been able to figure out. Anyway, here's my game :)~~

It worked! It's published!

Thank you @zwrawr and @pov for helping sort the bug out :)

You can find the published game here: https://ldjam.com/events/ludum-dare/40/$61146

About

I've been following LD for a long time, always wanted to participate. This year I took a chance at it!

This was the first jam I participated in, and also my first game developed from scratch (not using a tutorial). Also, please ignore the horrible code... I program as a hobby (mostly)!

I came up with the idea of the game about 2h into the challenge. And this is what I was able to code so far.

karma.gif

The concept

The gist of it: 1. You play as a douchebag that just wants to keep moving forward 2. Sometimes people are in the way 3. Items may help you handle those situations.... 4. ...but the more you use them, the more negative Karma you have

Installing the game

Unfortunately I wasn't able to figure out how to build an execution file from my Python code (I guess this is why nobody is using Python), so the source code will have to do. Instruction on how to install are available below.

  1. Make sure you have Python 3 on your machine
  2. Clone the repository at https://github.com/gcmartinelli/karma - git clone https://github.com/gcmartinelli/karma.git
  3. Run pip install -r requirements.txt
  4. Run the game python main.py
  5. Enjoy! :)

Playing

Use the arrow keys and numbers to play.

Your goal is to get as far as possible before your karma holds you back and you get crushed by time.

Credits

The great soundtrack was made by @draysound (Hihellohiya) who kindly offered to make some tracks after seeing my initial posts on the LD devblog :)

Karma Run now has an executable!

After battling with Python I managed to get an executable file for Windows :)

Check it out at https://thx1342.itch.io/karma-run

Rate game at https://ldjam.com/events/ludum-dare/40/the-game-previously-known-as-karma

Tux Plays Karma Run

tuxemplays/emkarma.png

First of all thank you all who played and left feedbacks for Karma Run! It has been a great experience sharing my first game!

Today I managed to export a binary for Linux. So if you are a Tux fan, make sure to try it out! :)

Also, I plan on doing a post mortem soon and incorporating some of the feedback in a new version (AFAIK I can't do that while rating is taking place, so I'll wait).

Itch.io

LD Submission