A downloadable game for Windows and Linux

Create your first roguelike!… or die trying.


You have 7 days to create your roguelike by completing its features. But unstable features generate bugs that cost you time… Will you finish your game in time?

Core mechanics

  • You have no hit points but 7 days to make your game. Try not to lose too much time!
  • You control the spawn rate of the bugs by choosing how many unstable features you equip at the same time. Each feature starts unstable: an equipped unstable feature generates bugs. When bugs attack, you lose time (remember, time is your life!). When you slay a bug, the corresponding feature becomes more stable. Tactically, you need to balance the bug spawn rate: too slow and you lose time, too fast and you are overwhelmed.
  • Weapons and features have ego: find the combinations that work best! Take advantage of the synergy between features with the same ego. Use the skills granted by weapons depending on their ego.
  • Depending on the feature that generated them, bugs have special skills. Mapgen bugs can phase, RNG bugs rarely fail their attack, etc.

Beware, bugs are not the only thing between you and the release of your game…

About the game

This is my first serious attempt at making a game. It was made during the 7DRL 2019 game jam and got the #6 place. So, it's kind of autobiographical :)

This is a free and open source game. Feel free to contribute or fork at:
https://github.com/cpiod/1rl

This game uses the python-tcod library. Splash art based on assets by Master484.

Download

Download
1rl v1.2 (post-7DRL) 22 MB
Download
1rl v1.2 (post-7DRL) 29 MB
Download
1rl v1.0 22 MB
Download
1rl v1.0 29 MB

Install instructions

Need glibc ≥ 2.27 on GNU/Linux.

Comments

Log in with itch.io to leave a comment.

(+1)

I know I'm a bit late to the party, but I just wanted to drop a comment saying that I liked this game quite a bit, so much so that I played until I got what I believe to be the maximum possible score of 27.5k (achieved with max-stability v2 pun-based features). Great game!

(+1)

Congrats, you are certainly the holder of the world record! \o/

(+2)

I enjoyed this game so much that I decided to highlight it on my YouTube channel.  The video is below.  

A few additional thoughts since my last comment/review:  

I *think* if bugs are generated under a certain feature type (like self-referenced), and you switch that feature (to Tolkienesque or whatever), then the bugs generated by the self-referenced feature will now have the weaknesses of the Tolkienesque-generated bugs.  I don't know if this was a deliberate decision or not but wanted to point it out.  It is a little inconsistent but probably not worth changing because it works nicer with the UI like this.

Profilers seem a little weak overall -- an equivalent printf() should always out-damage it (or apply more "hits" if you are looking for effects).  Although if there's a max number of hits that enemies can land on you between two actions (as you explained previously), then that seems to be the best time to make use of them since their slowness won't matter.

I may not understand the mechanic fully, but I was using a hack-type weapon during the final boss fight and it wasn't making my features less stable.  I was swapping features around so this may have had something to do with it.

Speaking of the final boss fight, there is a typo in the word "invokes".  (I don't want to give any more information than that to avoid spoilers...)


(2 edits) (+2)

What a coincidence, I saw your message when I was about to upload 1RL v1.1 which integrates your previous suggestions (and corrects the typo in "invokes"; the complete changelog is here).

You are right: the weakness of bugs doesn't trace their creator but the current equipped features. It's a detail but since this would make the rules more consistent, I fixed it.

My idea was to make the profiler more useful when overwhelmed, since the time penalty is so huge that the duration difference between the printf() and the profiler becomes negligible. Since the profiler is clearly more precise, it would yield in this case a higher DPS. I may balance it later (by making the profiler faster or even more precise).

About the hack bug, I may have found it. The inventory is not refreshed when a feature is made less stable because of a hack use. It may explain the behavior you encountered. But it probably needs some balance too.

By the way, I reworked the confusion mechanism. Previously, missed attacks with a paradoxical weapon had 50% chance of confusing the enemy, which made the paradoxical hack and its 100% accuracy useless. Now, successful attack have 33% chance of confusing the enemy. The confusion last longer (when you told me the confusion didn't work on the invoked bugs, I guessed that the confusion duration was just too low w.r.t. your time penalty, so the effect was nearly invisible) and confused bugs you attack have now 50% chance of refocus (I might tweak it later).

Finally, I would like to say a big THANK YOU for helping me enhance the game and increasing its visibility!

Edit: 1RL v1.2 is available :)

(1 edit) (+1)

> My idea was to make the profiler more useful when overwhelmed, since the time penalty is so huge that the duration difference between the printf() and the profiler becomes negligible. 

I thought this might be the advantage, but my roguelike instincts told me not to get overwhelmed in the first place ;)  The profiler definitely gets better as delay increases... It wouldn't be too difficult to crunch some numbers and determine the break even point.

> By the way, I reworked the confusion mechanism. Previously, missed attacks with a paradoxical weapon had 50% chance of confusing the enemy, which made the paradoxical hack and its 100% accuracy useless.

This explains a lot!  I assumed that it always checked on hit and thought my paradoxical hack was going to be awesome!  I was wondering what was going on with that.  The confusion effect wearing off with my giant time penalty explains why it appeared to not work during the boss fight.  The new system sounds like a good improvement.  The confusion effect would still be somewhat strong for stunning an enemy then switching targets (the stunned enemy essentially becomes a barrier for you).

> Finally, I would like to say a big THANK YOU for helping me enhance the game and increasing its visibility!

No problem, I wouldn't have done any of that if it weren't enjoyable to play!  I'll have to try some of these new features now :)

This game is amazing! So far my fave of the challenge. I streamed me playing it for my roguelike week and it was the crowd favorite too! I would love to see you continue with this game!

https://www.twitch.tv/videos/394227796


Wow, I would never have imagined that my game would be streamed! It's an achievement. I enjoyed watching your stream and I'm happy to see that you quickly understood the mechanics (I spent a lot of time designing the UI).

Your viewer was right: loot on floor have the color of their feature type and the letter of their associated weapon. If you search narcoleptic features only, since telepathic weapon are strong against them, you only need to search for "t" loot. And if you search for telepathic mapgen, it's a purple "t".

A few tips: wield a basic weapon when you are overwhelmed. Bugs that miss you may take damage. And try to get faster to the boss: the sooner you get there, the most "health" (time) you have! The game is hard but winnable.

I don't plan to continue with the game but I will maintain it (bugfix and balance ). I think the game is complete and elegant at its current state. If someone wants to continue it, they can: it's an open source game.

If you have any question or any advice on how to enhance the game, don't hesitate to tell me :)