The Ruins of Calaworm (turn-based Dungeon Crawler)
The Ruins of Calaworm (turn-based Dungeon Crawler)
Hello all. My name's Alexander, a hobby programmer from Germany, who fell in love with PureBasic after BlitzBasic kinda died a.k.a. was abandoned by its Devs. Luckily I found a new home in PureBasic, and then some.
Been working on a turn-based Dungeon Crawler since 2020. The game is written 100% in PureBasic, I released a Demo almost a year ago, now I just dropped an updated build, showing off the things I've been working on all throughout 2023 (mainly bug-fixing, finalizing mechanics, and polish, that is).
THE RUINS OF CALAWORM is a rework of german Cult Roguelike 'Die Gemäuer von Kalawaum', that has had it's heyday back in early 90s (mainly due to a popular ATARI ST-Port), then vanished into obscurity as PCs took over the world. A Roguelike with fixed layouts and procedurally generated world parameters. It had streamlined mechanics (no Spellcasting, no Ranged Combat, no complex stats), and is built all around the idea of Bumping into Things.
With the rework I first implemented core mechanics (managed to contact the original authors, who were quite positive about my undertakings and gave me their blessings), then threw my own ideas into the mix, basically building on the Roguelike-potential the original hinted at, but never fully exploited. The story comes with a Lovecraft spin: you're a Plague Doctor who's investigating a nearby fortress, thereby encountering lots of monsters. There's Shrines, where one can pray to the Old Gods, there's two full fledged Minigame, and last but not least there's going to be an (optional) Sanity System, where one has to manage their Mental Condition (currently deactivated in the Demo).
The world is being assembled from a pool of handcrafted maps (players can create their own Maps in an Editor and throw 'em in them mix), completed by some procedurally generated Maps. Maps are randomly connected via doors or similar traversal tiles, finding the optimal path through the Ruins is up to you, though.
Last but not least, the game features an original soundtrack by New Zealand-based composer Tom Jensen, who employs a unique mix of NES synth and real instruments, to capture the quirky, creepy-cute atmosphere. For the big screen art, like menu and intermission screens, I commisioned Edjielyn Macasaet, a PixelArtist located in the Phillipines. Also huge shoutout to Ricardo, I think he's active here on the forums as well, he's been a great and loyal help on Twitter, helping me cope with various issues, be it Compiler, IDE or Syntax. <3 <3 <3
If anyone wants to have a look, the most recent Demo build has just gone live on itch.io:
You can find my Twitter, where I'm posting updates about my progress on a regular, basis here.
--> DOWNLOAD LINK
Been working on a turn-based Dungeon Crawler since 2020. The game is written 100% in PureBasic, I released a Demo almost a year ago, now I just dropped an updated build, showing off the things I've been working on all throughout 2023 (mainly bug-fixing, finalizing mechanics, and polish, that is).
THE RUINS OF CALAWORM is a rework of german Cult Roguelike 'Die Gemäuer von Kalawaum', that has had it's heyday back in early 90s (mainly due to a popular ATARI ST-Port), then vanished into obscurity as PCs took over the world. A Roguelike with fixed layouts and procedurally generated world parameters. It had streamlined mechanics (no Spellcasting, no Ranged Combat, no complex stats), and is built all around the idea of Bumping into Things.
With the rework I first implemented core mechanics (managed to contact the original authors, who were quite positive about my undertakings and gave me their blessings), then threw my own ideas into the mix, basically building on the Roguelike-potential the original hinted at, but never fully exploited. The story comes with a Lovecraft spin: you're a Plague Doctor who's investigating a nearby fortress, thereby encountering lots of monsters. There's Shrines, where one can pray to the Old Gods, there's two full fledged Minigame, and last but not least there's going to be an (optional) Sanity System, where one has to manage their Mental Condition (currently deactivated in the Demo).
The world is being assembled from a pool of handcrafted maps (players can create their own Maps in an Editor and throw 'em in them mix), completed by some procedurally generated Maps. Maps are randomly connected via doors or similar traversal tiles, finding the optimal path through the Ruins is up to you, though.
Last but not least, the game features an original soundtrack by New Zealand-based composer Tom Jensen, who employs a unique mix of NES synth and real instruments, to capture the quirky, creepy-cute atmosphere. For the big screen art, like menu and intermission screens, I commisioned Edjielyn Macasaet, a PixelArtist located in the Phillipines. Also huge shoutout to Ricardo, I think he's active here on the forums as well, he's been a great and loyal help on Twitter, helping me cope with various issues, be it Compiler, IDE or Syntax. <3 <3 <3
If anyone wants to have a look, the most recent Demo build has just gone live on itch.io:
You can find my Twitter, where I'm posting updates about my progress on a regular, basis here.
--> DOWNLOAD LINK
Last edited by diceman on Tue Dec 12, 2023 1:47 pm, edited 1 time in total.
Now these points of data make a beautiful line,
And we're out of Beta, we're releasing on time.
And we're out of Beta, we're releasing on time.
Re: The Ruins of Calaworm (turn-based Dungeon Crawler)
looks great thanks for posting.
Re: The Ruins of Calaworm (turn-based Dungeon Crawler)
Looks fantastic! Got the demo to try later.
Re: The Ruins of Calaworm (turn-based Dungeon Crawler)
Gratula, looks awesome! I tried the demo, so here is my opinion cons and pros.
(I mean no harm with cons, I just try to tell what I was feeling as first impression while playing it)
Pro:
(I dont know the original, so some of these might be derived from that)
(I mean no harm with cons, I just try to tell what I was feeling as first impression while playing it)
Pro:
- Felt like a real game
- Loved the Lovecraftian theme
- Pixel art looks great and consistent
- Constellation minigame was fun (though using a sprite of a saucer is wierd, felt out of context)
- movement was fluid, controls were responsive
- Hitting enemies with blunderbuss or energy weapon felt extremely satisfying
- Luring enemies into traps
- The confusion tiles. When I figured them out, I felt clever.
(I dont know the original, so some of these might be derived from that)
- Interacting with map elements felt to stop the fluidity of the gameplay (iterating trough the messages.)
- The inventory system
- short sight (1 tile) combined with instadeath traps. All trap killed me with one hit.
- The confusion tiles, figuring it out can be mere luck. My first playtrough was blocked by this game element.
Re: The Ruins of Calaworm (turn-based Dungeon Crawler)
Incredible work, very well done! I played it for a while now and had much fun, once I got used to the keyboard layout. I thought i was stuck until I realized, there is diagonal movement too .
Nice graphics and music too!
Nice graphics and music too!
Re: The Ruins of Calaworm (turn-based Dungeon Crawler)
Hey @miso, thanks so much for playing, really appreciate the feedback.
The Reference Tile in the constellation minigame is supposed to be a Planet -I guess I can make it appear more planet-like.
Back when I coded this, I had this very strict policy that everything had to fit in a 16x16 Sprite, but since then I broke with this paradigm a lot of times. Important thing is, that pixelSize stays the same (every Sprite is first loaded as a native image, then scaled up by the factor of 3).
Yeah, the Cons you've listed are kinda all things from the original. It's a very old game and I'm paying hommage, but I also nerfed some of its aspects, like the traps will now give you a first-time warning when you walk into them, and afterwards there is a chance that you'll get a warning and just miss your turn, instead of walking into them. It now makes for some "fuck that was close, gotta be more careful"-moments. Even I myself am not safe of them. Luring enemies into traps is a vital part of the gameplay, though, so they have to be insta-kill, and I want the whole place to feel dangerous to the player as well.
That goes hand in hand with the short sight. Mind, though, that I introduced some mechanics to subvert that mechanic, for example the Blunderbuss, Energy Coil and Hatchet have a knockback animation, and if you knock an Enemy back into Fog of War, that tile will get uncovered. Also if you light Fireplaces and Candelabras, surrounding tiles will also get uncovered. Sometimes you're able to spot a Trap early that way, or prepare for an Enemy yet sleeping.
This is how the original looked, by the way:
For now, everyone was able to figure out the "Confusion Tiles", a.k.a. the Corruption, so I gueeeeeeess they are alright, but I'm prepared to introduce more hints if I get reports of Players getting seriously stuck. Thanks for the feedback in that regard!
Messages that interrupt the flow, like thematic blurbs when using a Secret Passage, are only displayed the first time. But maybe I should save the flags, and only make them appear once per run, so when you quit out and then resume, you won't see them again until you're starting a completely new game ...
Almost every action in the Inventory also has a Hotkey, e.g. can press W for quickly dropping your Weapon, or 1,2,3 keys on the top bar to drop Keys. The full game will also have a convenient Menu where you can configure these Keys for yourself. For now, you can also configure Keys for yourself, but you have to edit the respective file in the Game's main menu. Hope that helps.
Either way, thanks a lot for playing and for providing feedback.
I think I'll be able to improve on the design in some occasions!
The Reference Tile in the constellation minigame is supposed to be a Planet -I guess I can make it appear more planet-like.
Back when I coded this, I had this very strict policy that everything had to fit in a 16x16 Sprite, but since then I broke with this paradigm a lot of times. Important thing is, that pixelSize stays the same (every Sprite is first loaded as a native image, then scaled up by the factor of 3).
Yeah, the Cons you've listed are kinda all things from the original. It's a very old game and I'm paying hommage, but I also nerfed some of its aspects, like the traps will now give you a first-time warning when you walk into them, and afterwards there is a chance that you'll get a warning and just miss your turn, instead of walking into them. It now makes for some "fuck that was close, gotta be more careful"-moments. Even I myself am not safe of them. Luring enemies into traps is a vital part of the gameplay, though, so they have to be insta-kill, and I want the whole place to feel dangerous to the player as well.
That goes hand in hand with the short sight. Mind, though, that I introduced some mechanics to subvert that mechanic, for example the Blunderbuss, Energy Coil and Hatchet have a knockback animation, and if you knock an Enemy back into Fog of War, that tile will get uncovered. Also if you light Fireplaces and Candelabras, surrounding tiles will also get uncovered. Sometimes you're able to spot a Trap early that way, or prepare for an Enemy yet sleeping.
This is how the original looked, by the way:
For now, everyone was able to figure out the "Confusion Tiles", a.k.a. the Corruption, so I gueeeeeeess they are alright, but I'm prepared to introduce more hints if I get reports of Players getting seriously stuck. Thanks for the feedback in that regard!
Messages that interrupt the flow, like thematic blurbs when using a Secret Passage, are only displayed the first time. But maybe I should save the flags, and only make them appear once per run, so when you quit out and then resume, you won't see them again until you're starting a completely new game ...
Almost every action in the Inventory also has a Hotkey, e.g. can press W for quickly dropping your Weapon, or 1,2,3 keys on the top bar to drop Keys. The full game will also have a convenient Menu where you can configure these Keys for yourself. For now, you can also configure Keys for yourself, but you have to edit the respective file in the Game's main menu. Hope that helps.
Either way, thanks a lot for playing and for providing feedback.
I think I'll be able to improve on the design in some occasions!
Now these points of data make a beautiful line,
And we're out of Beta, we're releasing on time.
And we're out of Beta, we're releasing on time.
Re: The Ruins of Calaworm (turn-based Dungeon Crawler)
Thanks, I'll pass on the praise to Tom, the composer.
Yeah, most classic roguelikes do not feature diagonal movement, this one breaks with that paradigm. That's why I still think that the NumPad-controls are superior, but you can configure your own controls by editing the respective file in the game's main path. Full release will of course have a convenient menu available, to do that ingame.
Now these points of data make a beautiful line,
And we're out of Beta, we're releasing on time.
And we're out of Beta, we're releasing on time.
Re: The Ruins of Calaworm (turn-based Dungeon Crawler)
I was wondering, how did you achieve that clean pixel art display. Thank's for the useful tip.pixelSize stays the same (every Sprite is first loaded as a native image, then scaled up by the factor of 3)
Re: The Ruins of Calaworm (turn-based Dungeon Crawler)
ResizeImage with the #Pb_Raw Parameter, then draw it into a Sprite buffer.
Makes also editing the art easier, because you draw always at native size (e.g. 16x16). Ingame every tile is 48x48.
Also the big screen art is designed at a native size, then scaled up by factor 3.
Only time where I'm breaking the rule is with the blinking Stars-background in the Align the Stars-Minigame, but that's fine, I guess, it's a more subtle, atmospheric thing. Sizing up these stars proved to be too aggressive and distracting.
Example from the SpriteFactory-Procedure (once called, on startup):
Don't mind the "decrypt"-thing, it replaces the LoadImage command. It's because I encoded all assets via AES.
Makes also editing the art easier, because you draw always at native size (e.g. 16x16). Ingame every tile is 48x48.
Also the big screen art is designed at a native size, then scaled up by factor 3.
Only time where I'm breaking the rule is with the blinking Stars-background in the Align the Stars-Minigame, but that's fine, I guess, it's a more subtle, atmospheric thing. Sizing up these stars proved to be too aggressive and distracting.
Example from the SpriteFactory-Procedure (once called, on startup):
Don't mind the "decrypt"-thing, it replaces the LoadImage command. It's because I encoded all assets via AES.
Code: Select all
tempIMG = decryptImage("wallShadow")
ResizeImage(tempIMG, tileSize(1), tileSize(1), #PB_Image_Raw)
wallShadowSPR = CreateSprite(#PB_Any, tileSize(1), tileSize(1))
If StartDrawing(SpriteOutput(wallShadowSPR))
DrawImage(ImageID(tempIMG), 0, 0)
StopDrawing()
EndIf
TransparentSpriteColor(wallShadowSPR, color(#colBlood))
FreeImage(tempIMG)
Now these points of data make a beautiful line,
And we're out of Beta, we're releasing on time.
And we're out of Beta, we're releasing on time.
Re: The Ruins of Calaworm (turn-based Dungeon Crawler)
Another cheeky trick I pulled with the Falling down the Hole-Animation.
Retaining a consistent PixelSize, these are actually calculated on run-time:
- When initially building the Sprites, usually the Image-Blueprint gets purged from memory after, however I DO keep the Monster-Blueprints.
- When a monster (or the player) falls down a hole, I now get myself a copy of the original Blueprint-Image and repeatedly resize it down to 1 Pixel (with Image-Raw-Parameter).
- Each Image is then drawn into another tempIMG-Buffer, with centered coordinates
- That tempImage is rescaled up to ingame pixelSize (factor 3)
- Finally draw it into buffer of a SpriteAnimationFrame
- Purge temporary memory.
- Run Animation
#PureBasic is blazingly fast! As long as you do such an operation only once, and not repeatedly in a loop, you won't notice.
Retaining a consistent PixelSize, these are actually calculated on run-time:
- When initially building the Sprites, usually the Image-Blueprint gets purged from memory after, however I DO keep the Monster-Blueprints.
- When a monster (or the player) falls down a hole, I now get myself a copy of the original Blueprint-Image and repeatedly resize it down to 1 Pixel (with Image-Raw-Parameter).
- Each Image is then drawn into another tempIMG-Buffer, with centered coordinates
- That tempImage is rescaled up to ingame pixelSize (factor 3)
- Finally draw it into buffer of a SpriteAnimationFrame
- Purge temporary memory.
- Run Animation
#PureBasic is blazingly fast! As long as you do such an operation only once, and not repeatedly in a loop, you won't notice.
Now these points of data make a beautiful line,
And we're out of Beta, we're releasing on time.
And we're out of Beta, we're releasing on time.
Re: The Ruins of Calaworm (turn-based Dungeon Crawler)
You've done a great job. thanks for sharing this
Re: The Ruins of Calaworm (turn-based Dungeon Crawler)
Thank you!
Now these points of data make a beautiful line,
And we're out of Beta, we're releasing on time.
And we're out of Beta, we're releasing on time.
-
- Enthusiast
- Posts: 108
- Joined: Sat Sep 21, 2019 4:24 pm
Re: The Ruins of Calaworm (turn-based Dungeon Crawler)
Thanks diceman! I'm happy that I could help a little.
I'm liking the demo so far. Love the pixel graphics in the the style of 8/16 bits games. I think the mechanics are tight, simple to execute but hard to master, and the rules and interactions inside the game really show the depth of gameplay. I'm still struggling with the align the stars mini-game, maybe I need to play some more to get the gist of it.
Congratulations again! It's not easy to deliver a game and you made it and must be proud. I look forward for the complete game. Good luck!
I'm liking the demo so far. Love the pixel graphics in the the style of 8/16 bits games. I think the mechanics are tight, simple to execute but hard to master, and the rules and interactions inside the game really show the depth of gameplay. I'm still struggling with the align the stars mini-game, maybe I need to play some more to get the gist of it.
Congratulations again! It's not easy to deliver a game and you made it and must be proud. I look forward for the complete game. Good luck!
You can check my games at:
https://ricardo-sdl.itch.io/
https://ricardo-sdl.itch.io/
Re: The Ruins of Calaworm (turn-based Dungeon Crawler)
Thanks, you definitely earned yourself a spot in the Credits.
And I'm sure eventually you'll get the gist about the Align the Stars-Minigame.
I'm the developer, of course, so I've played this 100s of times already (constellations are randomly created with a Maze Algorithm), and I can solve a simple early one in less than 20 secs, so I can affirm it's definitely practice.
Maybe if you see this as an iteration on the populare "Pipes"-Game it'll get easier ... only difference is, that you can dock at any side of the stars, and because of the Gravitational Pull-mechanic you have to solve it from the center, going outwards.
Have you tried the Tutorial Sequence? This one's always available from the Menu (press SPACE) and will gradually ease you into the mechanics.
I introduced the Gravitational Pull, because after playing it so much I found myself just going through the motions, first aligning the border tiles, yadda yadda, which got really, really boring. Now you gotta get a grasp on the full picture as well, it's a bit more challenging, but also more interesting in the long run.
And I'm sure eventually you'll get the gist about the Align the Stars-Minigame.
I'm the developer, of course, so I've played this 100s of times already (constellations are randomly created with a Maze Algorithm), and I can solve a simple early one in less than 20 secs, so I can affirm it's definitely practice.
Maybe if you see this as an iteration on the populare "Pipes"-Game it'll get easier ... only difference is, that you can dock at any side of the stars, and because of the Gravitational Pull-mechanic you have to solve it from the center, going outwards.
Have you tried the Tutorial Sequence? This one's always available from the Menu (press SPACE) and will gradually ease you into the mechanics.
I introduced the Gravitational Pull, because after playing it so much I found myself just going through the motions, first aligning the border tiles, yadda yadda, which got really, really boring. Now you gotta get a grasp on the full picture as well, it's a bit more challenging, but also more interesting in the long run.
Now these points of data make a beautiful line,
And we're out of Beta, we're releasing on time.
And we're out of Beta, we're releasing on time.
Re: The Ruins of Calaworm (turn-based Dungeon Crawler)
Nice job here ! Looks very nice and polished