Borderline [7DRL 2017] [Success] and postmortem

Hello all. That is my hmm… 4th 7DRL attempt (6th if you count OoC ones), perhaps not the best one, but neither the worst.

It is a success and can be downloaded here: (for Windows, Mac and Android. Linux version can be built from source)

It is a hybrid of 4X strategy and roguelike. It lacks roguelikish ascii-aesthetics (and lack aesthetics at all, i know), but gameplay is imo close to roguelikes. Or maybe not. Well, try it yourself.

In this game, you must capture alien planets, research technologies, build ships, and protect your territory by minefields. The roguelike part is that the player is an only human ship capable of FTL travel (they stole it from aliens, check story in readme.txt), so the only way to change priorities on planet or get research levels from it is to jump there (wasting precious time).

Combat is mostly automatic, it have some mechanics inside (different fireranges of ships, partial damaging) but player just have to push forward until he wins or lose.

There is also a (short) story in game, with prophecies (1 item), eternal love (1 item) and misunderstandings. This story limits the length of game, so even though there are about 100 star systems on an average map, winning is possible and maybe too easy (at least for an author). Overall gameplay isn’t very deep, but there is still some tactics required and there are some interesting situations (especially when alien starts counter-attacks).

Continue reading “Borderline [7DRL 2017] [Success] and postmortem”

Very long night (days 2 and 3)

Well, day 2 was totally lost. I’ve spent less then an hour on a game.

But day 3, 8 March that is, was holyday, so much more progress – wires connection,  wires drawing,  generation of power producers and consumers done, astar included.

Now all those wires looks pretty messy, just as planned:


Now i have three working days and one Saturday, so roughly there are two full days of time. Two actual gameplay mechanics are planned – first is power failures, search for problems and repairing\emergent shutdowning, partially done but there is still a lot of work. And second is well, actually monsters. Without these two mechanics there won’t be a game, and if i have two days and two problems… well, perhaps readme\tutorial, final run, final bugs, polishing and balancing will all happen at last few hours and few minutes, as usual. Most hated part.

Very long night (announcement and day 1)


This year I’m going to try a horror roguelike about engineer fixing power cords in some dark place (in fact, in a space ship, but it’s pretty abstract).

I’m using a Bearlib libraries as an engine of game. BearlibTerminal is by far most developed part of it, but Bearlib includes other “libtcod-like” parts – map generation, fov, astar. Some of them are developed by me, lol. They still lacks bindings for  languages other than Pascal, though.

After first day i have combined most of the libraries (todo – pathfinding) into simple project and have @ walking, doors opening and closing, directional and blinking lights done and darkness that fills all around.



7DRL Success: Liberation of Yarna

Youtube video (very short, i haven’t time to upload longer):

Download link:

My aims for this project was to create roguelike about saboteur in interesting setting, with complex behavior of creatures. Citizens should go from work to home and back to work (sometimes going to shop for an items), police partol streets checking documents and react cleverly to any detected crime, seeking tracks leading to player.

I have a playable game with battle system, basic map generation and basic AI at day 2 already. The rest of the time i “wasted” improving map generation and trying to add complex behavior. At the 24 hours before deadline AI was finally working and i have a time to add something to the gameplay. So I’ve added two types of missions (bombing a factory and killing teleporting mediums), help and polished ui.

Now the game is complete, but of course it isn’t as shiny as i imagined it. Citizens do go to the work and to home, but player will unlikely see it – he sees just useless letters, sitting in houses, sleeping in factories and rarely walking on the street. Police do patrol streets and cleverly react to detected crimes (but this part was simplified a lot). But player see just those annoying letters checking his documents at every step, but failing to properly enter a door because they are doing clever “patrol simulation” instead.

But even with these problems game is definitely complete and fun. Well, it is fun if you have decent pc (so it don’t lag every turn).

Some words about my tools.

1. I’m using Ruby, and it is imo a best programming language. Sweet syntax constructions, true OOP, friendly libraries. Maybe it’s not fast and is not well supported by corporations, but who cares. Let Python or C# conquest the world, it won’t stop me from using this wonderful language.

2. I’m using JetBrains RubyMine as IDE. It has some bugs, but still much better then NetBeans or Eclipse.

3. For output i’m using bearlib as a replacement for famous libtcod. The cause is that bearlib has “out-of-box” TrueType and UTF8 support and nice looking non-square tiles, and libtcod fonts are either too smal either ugly. So i recommend Bearlib to everybody who wants Unicode TrueType fonts in their roguelikes. Well, i WILL recommend, because now it’s only in the development and lacks documentation.

And finally i want to say about great Russian writer, Яна Завацкая. Her books about Quirine are just great, i just have no words to desribe it.

SubversionRL (working title: Liberation of Yarna)

My 2012 roguelike was not very successful, partially because it was my first program on D and my first expierience with libtcod.

So this time i’ll use the language i’m most comfortable with (Ruby) and working engine from my mecha-roguelike project (RubyRL). But my current idea for this challenge is still slightly too big for 7 days. I’ve written an approx. plan of realization and it consists of about 65 tasks, 10 tasks per day. It would be possible if i can work on the game full time, not just few hours after work. Ok, we’ll see.

The idea is the game about spy\saboteur, who must complete missions (laying bombs, mostly. i dont think there will be time for our missions) in randomly generated cities, avoiding partols, running from or killing anyone who have spotted him. Enemies will not know you are ‘bad’ until they see you are doing something wrong or anybody else who seen it will tell them. Well, some patrols will try to check everybody, so you must hope that they will distract on normal citizens.

Goal – survive after completing mission, go to the safehouse, sleep there, do next mission.

Battle system: you can shoot, enemies can shoot. Chance of hitting is 90%-10%*distance, but only 50% at melee range. Enemies die after first hit, you die after third. You can also use melee hits to kill with 100% effectivity and use nanoagents in your blood to heal wounds or temporarily speeds up self.

The main source of inspiration is a great russian novel “Сагонские войны” (I never heard of it’s translation to other lanuages).

I’m going to start at 0:00 Sunday, so i’ll have the full night after Saturday, then full day\night of Sunday, and the finally almost full day at Saturday 16th. Well, and few hours at working days. I’m surely won’t have a time to post here until finishing – i wonder how can people find a time for it.

7DRL Success (well, sort of): GatewayRL

I can’t say it is a 100% success… because the version that i posted contains serious bugs(most of planets with crew>1 will crash the game at some point). Now I have fixed them and uploaded a new version, but that means two more hours of work.

So 7drl and “7drl+2 hours” versions:

This game is based on sci-fi novel “Gateway”. In a spirit of original, it is even more hardcore than roguelikes, because even single trap or unknown device can kill you, because you will die in flight due to fungus or turn into ooze due to genom modification.

My first mistake during this project was coding and simultaneously learning the language (language D), but that wasn’t mistake – that was intended.

My second mistake was adding new features in a last day. Well, most of the work was done in a first two days and in a last one, but perhaps i shouldn’t try to improve pathfinding at last three hours, but instead test it more and catch that three stupid bugs BEFORE 12:00, not after.

My idea was to create a roguelike where killing monsters won’t be main part – traps and commands are the main part. I haven’t complete everything i wanted to add, but it’s playable. Perhaps i’ll improve it later.