The Ruins of Calaworm (turn-based Dungeon Crawler)

Developed or developing a new product in PureBasic? Tell the world about it.
User avatar
diceman
User
User
Posts: 34
Joined: Tue Apr 10, 2018 9:42 pm

The Ruins of Calaworm (turn-based Dungeon Crawler)

Post by diceman »

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

Image
Image
Image
Image
Image
Image
Image
Image
Image
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.
User avatar
idle
Always Here
Always Here
Posts: 5094
Joined: Fri Sep 21, 2007 5:52 am
Location: New Zealand

Re: The Ruins of Calaworm (turn-based Dungeon Crawler)

Post by idle »

looks great thanks for posting.
BarryG
Addict
Addict
Posts: 3322
Joined: Thu Apr 18, 2019 8:17 am

Re: The Ruins of Calaworm (turn-based Dungeon Crawler)

Post by BarryG »

Looks fantastic! Got the demo to try later.
miso
User
User
Posts: 36
Joined: Sat Oct 21, 2023 4:06 pm

Re: The Ruins of Calaworm (turn-based Dungeon Crawler)

Post by miso »

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:
  • 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.
Cons:
(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.
My conclusion: nice job, diceman!
Mr.L
Enthusiast
Enthusiast
Posts: 107
Joined: Sun Oct 09, 2011 7:39 am

Re: The Ruins of Calaworm (turn-based Dungeon Crawler)

Post by Mr.L »

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 :wink:.
Nice graphics and music too!
User avatar
diceman
User
User
Posts: 34
Joined: Tue Apr 10, 2018 9:42 pm

Re: The Ruins of Calaworm (turn-based Dungeon Crawler)

Post by diceman »

Hey @miso, thanks so much for playing, really appreciate the feedback. 8) 8) 8)
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. :lol: 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:
Image

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! 8)
Now these points of data make a beautiful line,
And we're out of Beta, we're releasing on time.
User avatar
diceman
User
User
Posts: 34
Joined: Tue Apr 10, 2018 9:42 pm

Re: The Ruins of Calaworm (turn-based Dungeon Crawler)

Post by diceman »

Mr.L wrote: Sat Dec 09, 2023 8:53 am 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 :wink:.
Nice graphics and music too!
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.
miso
User
User
Posts: 36
Joined: Sat Oct 21, 2023 4:06 pm

Re: The Ruins of Calaworm (turn-based Dungeon Crawler)

Post by miso »

pixelSize stays the same (every Sprite is first loaded as a native image, then scaled up by the factor of 3)
I was wondering, how did you achieve that clean pixel art display. Thank's for the useful tip. :)
User avatar
diceman
User
User
Posts: 34
Joined: Tue Apr 10, 2018 9:42 pm

Re: The Ruins of Calaworm (turn-based Dungeon Crawler)

Post by diceman »

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.

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.
User avatar
diceman
User
User
Posts: 34
Joined: Tue Apr 10, 2018 9:42 pm

Re: The Ruins of Calaworm (turn-based Dungeon Crawler)

Post by diceman »

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. 8)
Now these points of data make a beautiful line,
And we're out of Beta, we're releasing on time.
User avatar
idle
Always Here
Always Here
Posts: 5094
Joined: Fri Sep 21, 2007 5:52 am
Location: New Zealand

Re: The Ruins of Calaworm (turn-based Dungeon Crawler)

Post by idle »

You've done a great job. thanks for sharing this
User avatar
diceman
User
User
Posts: 34
Joined: Tue Apr 10, 2018 9:42 pm

Re: The Ruins of Calaworm (turn-based Dungeon Crawler)

Post by diceman »

Thank you! :) :oops:
Now these points of data make a beautiful line,
And we're out of Beta, we're releasing on time.
ricardo_sdl
Enthusiast
Enthusiast
Posts: 115
Joined: Sat Sep 21, 2019 4:24 pm

Re: The Ruins of Calaworm (turn-based Dungeon Crawler)

Post by ricardo_sdl »

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!
You can check my games at:
https://ricardo-sdl.itch.io/
User avatar
diceman
User
User
Posts: 34
Joined: Tue Apr 10, 2018 9:42 pm

Re: The Ruins of Calaworm (turn-based Dungeon Crawler)

Post by diceman »

Thanks, you definitely earned yourself a spot in the Credits. 8)

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.
Fred
Administrator
Administrator
Posts: 16681
Joined: Fri May 17, 2002 4:39 pm
Location: France
Contact:

Re: The Ruins of Calaworm (turn-based Dungeon Crawler)

Post by Fred »

Nice job here ! Looks very nice and polished
Post Reply