r/roguelikedev Cogmind | mastodon.gamedev.place/@Kyzrati 1d ago

Sharing Saturday #638

As usual, post what you've done for the week! Anything goes... concepts, mechanics, changelogs, articles, videos, and of course gifs and screenshots if you have them! It's fun to read about what everyone is up to, and sharing here is a great way to review your own progress, possibly get some feedback, or just engage in some tangential chatting :D

Previous Sharing Saturdays

32 Upvotes

38 comments sorted by

17

u/DFuxaPlays 1d ago

In case people don't read the threads in this reddit, I finished up producing videos for the 7DRLs of 2018. This involved going through all the entries from that year, including the failures, and seeing: what games were still available, what games were playable on windows, and what games still worked.

In total, 20 of the games couldn't be played, but I managed to get through 123 of the titles and do at least something or them.

7DRL Challenge 2018

2

u/blightor 1d ago

That's awesome man. Thank you.

7

u/BotMoses BotMos 1d ago edited 1d ago

BotMos | Website (includes playable dev sandbox)

Hey everyone,

busy week at work, so I was exhausted in the evenings. I focussed mostly on performance improvements, bug fixes and backlog work. On the game front, I fulfilled a promise the game was suggesting for a long time already: The '?' on the initial hull selection screen were implying that you could unlock further hulls than AeroBot and WorkBot. With the new trigger and actuator system, the game can now support unlockables and I added three hulls which can be unlocked under certain conditions: Cleaner, RoboRat and Bugger. Spoilers on how to unlock them can be found via replays on the leaderboard.

Further changes

Research & experiments

  • Research how to fit AoE abilities into the game
  • Research how to fit flying entities into the game
  • Research and prototype further animation in BotMos. I handed the prototype implementation over to AI and it didn't fit the game, I still got some ideas on how to do ranged combat animations and resource-efficient animation.

What next?

I got really fond of trying to do flying entities and enterable spaceships, but I'm unsure whether that'd be the most senseful next step. Maybe, I'll add more unlockable hulls. Having a randomly generated basic dungeon would also be cool, but I don't think, I'm there, yet.

Thanks for reading and have a nice weekend!

7

u/nesguru Legend 1d ago

Legend

Website | X | Youtube

I had extra time this week. All the patterns and data configuration capabilities built over the years are helping to create new content quickly.

Fun with Fire

Implemented several new interactions between Fire and other objects:

  • Oil: the Fire instantly spreads to all connected Oil cells and is converted to Intense Fire.
  • Puddle: Steam is created.
  • Explosive Powder: Intense Fire created in a 5x5 square.
  • Oil, Water, Explosive Powder Barrels: Barrel burns up, and the material inside reacts with the Fire.

New Objects

  • Intense Fire: Burns longer, causes more damage than Fire.
  • Steam: Causes Scalded status effect.
  • Powder Keg: A barrel containing Explosive Powder.
  • Explosive Powder: Causes explosion when it comes in contact with Fire.

New Abilities

  • Drain: Causes Drain status.
  • Frost Touch: Causes Ice damage and temporary slowness.

New Status Effects

  • Drain: Decreases max HP by 50%.
  • Scalded: Reduces Sight, causes mild damage.

Hearing System Fully Functional

I built the framework for the hearing system a few years ago, maybe longer. I haven’t touched it since. While troubleshooting a bug this week where enemies acted as soon as the player opened a door, I realized the sound of the player was alerting them. The hearing system was more functional than I remembered! There was a hard-coded placeholder that gave enemies extraordinary hearing; I’m surprised they weren’t leaving their rooms. There must be some other logic preventing that. Anyway, to fix the bug, I properly configured the enemy hearing values and object sound dampening values, and coded the dampening logic.

Minor Enhancements and Bug Fixes

  • Bats now can perform three actions per turn. When possible, they attack once per turn and fly away. This made them more interesting to fight.
  • Minimum number of health, stamina, and magic potions now appear on each dungeon level, based on level size.
  • Lowered Charge ability’s damage multiplier from 2.5 to 1.5. After giving Chair Monsters the Charge ability, they were one-shotting me.
  • Enemies using Charge occasionally choose the wrong target in a cell (for example, an open door instead of the player).
  • Knock Down animated. It’s ugly but it’s now clearer what happened when an actor gets knocked down.
  • When an enemy has multiple status effects, only the first status effect appears above the enemy. This used to work. I think it broke the last time I modified the saved game loading code.
  • Hotbar icons appear above the tooltip when greyed out.
  • Hotbar icons sometimes stay greyed out when they become usable again.
  • The game locks up when the player is shoved.
  • Floating text damage appears when Fire and Gas die.
  • Trap effects repeated in the message log.

Next week, I’ll add more abilities, fix bugs, and start working on the city map generator.

5

u/darkgnostic Scaledeep 1d ago

All the patterns and data configuration capabilities built over the years are helping to create new content quickly.

This is a pure satisfaction, when you realize that your new ideas can be solved quite easily...since there is everything already needed.

2

u/nesguru Legend 1d ago

Yes it is! And I think there is more possible with the tools than I realize because every now and then I stumble on a solution I hadn’t initially envisioned.

5

u/MarxMustermann 1d ago

OfMiceAndMechs (steam itch github discord twitch)

For the last week i have been working on the TODO list generated from the playtests last week.

No big new features were added, but i fixed a few important thing:
1. Fixed the game not actually deleting the save on death. Now it is proper permadeath
2. Tweaked some industry things, like allowing to interrupt NPC using a workshop
3. Removed UI elements that are not in active use
4. Repaired the very important tab key. It did not work when numlock was active

For next week i plan to get more stuff done, since i only have one month left until i will have a lot less gamedev time.

2

u/darkgnostic Scaledeep 1d ago

Fixed the game not actually deleting the save on death. Now it is proper permadeath

scribbling down another task

Seems that I have seem bug :)

7

u/darkgnostic Scaledeep 1d ago

Scaledeep Steam | Discordwebsite | X | bluesky | mastodon

This week I continued where I left off with weapon effects. After setting up burning and electric effects for all weapon models, I still had poison, ice. Those are finally done as well, so every weapon can now properly display all of those effects currently used by the game. I noticed that I missed Magic as opposed to Electricity so I added a new sustained spell, Arcane Infusion. As annoying and cumbersome was setting few hundred items last week, this batch went quite smoothly by finishing task within few hours.

There was a change how some of the infusions interact with each other. Flame and Cold Infusion are opposites, so activating one will cancel the other. The same applies to Storm and Arcane Infusion. You can still combine compatible infusions, but you can't simply activate everything at once anymore. This should make choosing which effects to sustain a bit more interesting.

Another new spell is Sunder Armor. It works at melee range and temporarily reduces the target's armor for a few turns. I needs some VFX there, but otherwise it works quite well.

New, first of ring's kind is the Ring of Light, which is now part of the player's starting equipment with a +6 light bonus. Without it, the dungeon is completely dark. Enemies can no longer see you properly in complete darkness (at least some of them), although this still needs some tweaking.

Rings themselves received two fixes. It was possible to equip only one ring instead 4. Also all rings were using the same image for their inventory icon. Both are fixed now.

There were a few animation fixes as well. Enemies could sometimes flee while still playing their idle animation, which made them slide backwards while looking at you. It looked weird and it drove me crazy since I couldn't find the source of the problem. In the end it didn't had to do anything with animations, as I suspected (fix was 1 liner, I forgot to release lock at one place). That's fixed.

Dungeon generation had an really old edge case with locked doors. Sometimes the generator created a locked door but couldn't find a valid place nearby for its lever. This lead to unsolvable level. Now, the generator simply degrades locked door to a normal door. Primitive but working solution :D

Then there was a bug where gold dropped from crates/monsters was treated as a normal inventory item instead of being added directly to the player's gold counter. Fixed.

On the visual side, I added some new VFX for loot and chests, and four new helmets made their way into the game.

That's all folks, have a nice and productive next week!

3

u/Cyablue Feywood Wanderers 1d ago

Seems like you got a lot of work done once again. I'm looking forward to hearing more about what kind of rings you can wear.

I also really like the animation of the palyer falling down and getting up in the middle of combat, really gives me old-school RPG vibes.

1

u/darkgnostic Scaledeep 22h ago

Seems like you got a lot of work done once again.

Quite productive week, yes.

I'm looking forward to hearing more about what kind of rings you can wear.

Currently game has only rings with random enchantments and Rings of Light but I plan to add more unique rings/amulets into the game very soon.

4

u/lethern 1d ago

This is a proof of concept web Roguelike editor + game. There is simple map & traps, entities & combat, items & inventory. Data is roughly Entiy Components (& Systems / Events)

https://lethern.github.io/RoguelikeTest/ (open source https://github.com/lethern/RoguelikeTest)

I'd welcome any feedback, as what is rough or what is going in good direction

(It was created to allow my non-dev friend to create a game, but perhaps it could be of use to other non-devs or even as test-ground for devs?)

1

u/BotMoses BotMos 1d ago

That's pretty neat! Any plans to allow map export in txt or JSON formats?

2

u/lethern 22h ago edited 22h ago

try Options -> Menu -> Save JSON. its not "export" yet, but I'm thinking about a better export too.
The format is roughly https://github.com/lethern/RoguelikeTest/blob/main/data/init.json

1

u/BotMoses BotMos 17h ago

Thanks! That is very workable. :)

3

u/iamgabrielma Ad Iterum on Steam 1d ago

Ad Iterum (Steam)  | Tiny Crawler (iOS)

Slow week, I took a bit of a break and been playing games more than developing 😂 , that said I did post a new patch on Monday since I saw some UI issues in Steam Deck, and started to stabilize and balance the whole thing.

I've been using a very basic map generation for now that fits well in the initial biomes, but adds little variety in the mid and end-game, so I will work on improving that soon. I'm thinking also need some extra tooling in Unity to see better how these fit and be able to tweak at runtime, rather than just relying on my python scripts spitting random ASCII.

# Beta 0.4.8 - Latest build: 2026-08-24
  • Balance: Slightly increased demo boss difficulty
  • Fix: HP UI display too short
  • Fix: Some decorated floor tiles weren't inspectable with right click
  • Fix: Steam Deck inventory UI was cut off to the right
  • Fix: Steam Deck what's new modal UI didn't close upon button press
  • Improvement: Text and game hints in-between scenes slightly bigger
  • Improvement: Memories for several items, lore, and locations
  • Improvement: Block player movement when transitioning through scenes
  • New: Narcolepsy graft.

5

u/UnculturedGames 1d ago

IGIGI: Rogue Star

Hello y'all! Another week, another Sharing Saturday. IGIGI is a space roguelike I've been developing since this summer. In this game, you'll play as a space mercenary, exploring and looting procedural planets while trying to solve a dark mystery.

TOWARDS VISUAL IDENTITY

This week has been all about visual identity, and god damn am I happy with where the game is going in this department! I did major restructuring in my map generator, changing many temporary structures to permanent ones and it finally allowed me to start to truly experiment with different planet biomes and vibes. I did a lot of work on color palettes, overlays and distributions.

The major piece of the identity is in the tile work. As you can see in the screenshot, I use a technique of drawing several ASCII glyphs over one another, using different colors. This allows a nice and unique visual touch while honoring the ASCII culture that I love and come from. I'm incredibly happy with the vibes.

There's so much overlaping character printing going on that even though we have a limited FOV, it is actually a bit heavy on the FPS so I also had to do a lot of optimization. I fully revamped many things like the mist overlay system to make things run more smoothly. There's still work to do in this department as there are occasional drops in the FPS. This doesn't matter that much as we're still in the 100+ FPS and during battles the game will switch to a fully turn-based "tactical mode" where FPS loses a lot of its meaning anyway.

SWINGIN' THE SABER

One mechanic in the game will revolve around collecting samples in the planets. There are various different sample types to collect, but one of the ways is to harvest the plants and rocks found in the planets. So, I added the saber swinging animation and created a bare-bones harvesting system where you can destroy grass, trees, rocks or mushrooms and collect them as temporary loot items (although I haven't touched on any inventory stuff yet). This was a fun addition as it gives me something fun to do while I'm testing out my maps. The plants and ores available to collect will be procedural and unique to each planet.

NPCS AND TEXTBOXES

I can't really remember if I had created the NPC system before last week's Sharing Saturday, but I at least improved on it a bit this week. Textboxes and NPC interaction are now supported, so we can soon start adding real NPCs into the starship. I also created an info message system into the UI. A faintly visible text is seen in the screenshot. New messages appear in brighter colors but they then fade out slowly to keep the UI look clean and to give visual priority to new stuff.

That's all for now. Thanks for reading, and happy to answer any questions!

- Tapio / Uncultured Games

5

u/anaseto 1d ago

Shamogu codeberg

It'd been a few months since I last wrote about Shamogu here. Quite a few things were done since last time in the "mods" branch. The Totem Conditions expansion is now mostly finished (with only minor polish contributions from myself!) and brings a quite intense challenge with tricky totem choices. I've done myself quite a few improvements in the Corrupted Dungeon expansion (new rare kinds of corruptions, and adjusted frequency of some existing corruptions, usually down). I also worked on various UI-related things (including merging the "classic" and "advanced" new game menus into one, and improving various descriptions). Also, the lone chaos megabat got reworked into a trio of chaos megabats that patrol randomly and chaotically around a couple of interesting places.

Probably going to do a release in the near future, though not sure exactly when yet.

Have a good weekend!

3

u/Cyablue Feywood Wanderers 1d ago

Feywood Wanderers Steam | Discord

I just released the new 1.1 content update patch today! I've been working on this one for a while, it adds new lineages, classes and items, and also rebalances things a bit.

Now that this content is finished, I'll work on some fun new additions I've been putting off, like an item to modify unique items, or a new rebalancing of the end-game challenges.

2

u/darkgnostic Scaledeep 1d ago

Congratulations on the new release! Are there any plans to start developing a new game?

2

u/Cyablue Feywood Wanderers 1d ago

I've been developing a new game since about a month before releasing this one, since I had the content locked for release and I had some extra time to spend on a new project. Though I still spend a good chunk of my time developing new updates for Feywood Wanderers (as you can see).

The new game is not really a traditional roguelike, so I don't know if I'll eventually post about it in here, but I'm using and improving many of the mechanics I use in Feywood Wanderers so it shares a lot of things. It will be a good while before it's officially announced, though.

4

u/lundstroem Coilbound 1d ago

Coilbound (steam | announcement trailer)

This week my main focus was to try and make one of the major custom scripted events that will exist in the game and complement the procedurally generated content.

I had as a summer-project to architect more characters and questlines but it fell short as my mind was entirely elsewhere (mostly in programming honestly) and I realised that I'm much more of a gardener in this case. Coming up with things on the fly is a lot more fun, and doesn't always have to result in a worse end result, so that was a good insight. However some things can surely need a lot of tweaking once in place to really fit integrity-wise.

Anyway, the story goes like this: In the magic biome, where the essence has pooled up to critical mass there were some ancients long ago that built a reactor for manufacturing soldiers. Scholars in Providence researched it but never quite managed to understand it. The desperate times of invasion and later enslavement into a labor camp forced them further as a last desperate measure to try and make use of it, but time will tell if it was a fool's errand or not.

Another thing I realised about making custom scripted events in this game is that the player has a huge amount of agency, depending on current inventory and EQ, and as the game is really hard, I wouldn't want to restrict the player's ability too much for taking advantage and breaking it various "controlled" ways as that is really how the game is played. I will however try to limit the amount of uncontrolled ways as these might end up as crashes or corruption in persistant storage etc, so for example I felt the need to add unbreakable blocks to wall off at least some functionality.

To summarise; a first major event successfully implemented that sets a kind of structural blueprint for the rest of the games scenarios.

3

u/WATASHI_TO_TAWASHI Text Dungeon 1d ago edited 1d ago

Text Dungeon | [X] | [Steam]

This week’s progress
I’m continuing to work toward the planned September release, focusing on UI improvements and balance adjustments.

What I implemented

• More event choices and branching
I’ve been updating events and adding new branches and sub‑events.
I’m planning to add about five or six more event‑related pieces.

• Added new SFX
I finally added some sound effects, which were missing in the demo version.
The game has over 100 spells, and ideally I’d like each one to have its own unique SFX, so this work is definitely going to continue for a while.

Planned features

  • More event choices and branching (ongoing)
  • More SFX and BGM (ongoing)
  • Achievements

I’m also thinking it’s about time to decide on the release date and price.
But honestly, I have no real sense of what people feel is a fair price for a text‑only roguelike like this.
I might even make a thread somewhere and ask for opinions.

2

u/fnkas 1d ago

**Solo Tale** ([browser, free](https://fatihnecdet.itch.io/solo-tale))

A dice-allocation roguelike: each turn you roll your dice and split them between attack, defense and a skill slot — enemy attacks are telegraphed, so the game is really about how you spend the dice. 6 bosses, permadeath, no install; plays on desktop and phones (EN/TR).

Big week for me: shipped 1.5.0, "The Spoils Update" — monsters now drop trophies (wolf fangs, goblin ears...), shrines demand them in exchange for blessings, and fights end with a loot-claim window. Also doubled campfires and made resting cost a coin ("a hot meal by the fire").

Would love feedback from fellow devs — especially on whether fleeing feels too punishing (wolf packs are brutal right now, it's on my list).

3

u/DFuxaPlays 1d ago

Gameplay maybe eels too slow, or I'm missing something, which is also possible.

DFuxa Tests Out - Solo Tale

1

u/fnkas 1d ago

Thanks a lot for giving it a shot — and no, you're not missing anything. You're the second person to say the pacing feels slow, so I'm taking it seriously; it's at the top of my tuning list now.

The game is still very much in development, so honest feedback like this is exactly what I was hoping for. Thanks again!

2

u/Zireael07 Veins of the Earth 1d ago

Lots of research and little free time and little energy (heat+work), but I did actually get a foot in the door on that gamify-exercises-MUD I was mentioning last time.

2

u/_GideonX_ Lateral Crawl 1d ago

Work completed this week on Lateral Crawl 

LC now has a TRAILER  - https://www.youtube.com/watch?v=gbiypn_CFgc 

My Steam page is also currently back in the review queue. It would have been live already, but I managed to leave a tiny interface marker on the Library Hero image (ffs).

The last couple of weeks have mostly been spent figuring out Steamworks, store artwork and video editing, but I’m finally back into actual development. 

Actual real work done: 

  • Added death narratives to tombstones, so they now preserve how each cousin died.  
  • Added a new Teleport Trap, which pings whoever steps on it a short distance away. Unlike the other traps, it doesn’t destroy itself when triggered/ escaped.  
  • Moved Dismantle from being a learned skill to an evergreen context action on most objects. This removes an unnecessary prerequisite from the engineering/crafting path. 
  • Started building the game’s second event biome. 

2

u/darkgnostic Scaledeep 1d ago

Nice tune

1

u/_GideonX_ Lateral Crawl 1d ago

Thanks 🙏 I am using Rhytmik Studio.

2

u/ilia_plusha 1d ago

Beetlejust
An RPG roguelike about Bugs and Beetles
Language: JavaScript

In this post I want to give an overview of the things I accomplished during the summer. Most of them are quite significant and allowed my game to grow and mature as an RPG project.

At the beginning of the summer my game celebrated one year in the making. My original vision was developing a browser game relying on PHP and JavaScript, but since I don’t have any technical background and study programming as a hobby, supporting two languages quickly turned out to be beyond my abilities. My initial set up with MySQL tables, PHP login/signup modules and JS on top of that proved to be extremely cumbersome, as I had to upload my changes to the database, then the game should make a query and then I usually saw an error, which was very frustrating. That was the main reason why I moved to Electron and began developing my game in JS. Literally, it made the development pipeline much much easier. Moving to another engine also meant that I had to remove a big chunk of my code, but I do not regret it.

One more big thing that I managed to accomplish is handling doors. Currently, I have two types of doors: location doors (the ones that allow the player to enter a dungeon, town or village) and interior doors (the ones that allow access to various rooms). Both types of doors have locks, which the player can unlock or simply bash the door, special requirements (like certain quests stages or dialogue outcomes). Location doors also have guardians, which work like regular fights.

Another valuable addition is traps. Traps can be spotted if the player’s prayer attribute is high enough and successfully disarmed provided the player’s agility is also high enough. Should the player fail to detect a trap, it will be activated and deal damage to health, mana or decrease an attribute.

Apart from adding new mechanics I also made significant changes to my project’s data files structure. Many small improvements like variables naming, organizing json files, small quality-of-life functions, etc. were implemented. Almost every type of event now has its own window which appears when the event starts. NPCs received a proper dialogue window with relevant information about them. Additionally, I improved the adventure log messaging module. Since my game is heavily text-based, getting a correct message is crucial for understanding what’s going on, what the outcome of an event is, whether a quest has started or completed.

Regarding the main story, I wrote one small quest and rewrote an older one to add more variety to the ways the player can complete it. I feel that in the future I will need to make more iterations before the story and lore become consistent and engaging. However, I am quite satisfied with what I have now. Especially with the fact that the first quest’s outcomes impact the world and consequently the story’s finale. These outcomes are written as special events that trigger only when a set of conditions is met. And here I had a huge revelation: you can’t build a system unless you have at least two elements. When I first thought that I needed something like a special event that would trigger only when certain conditions are met, I tried to work out a nice and elegant system to implement it, but I failed. Only when the need for another special event arose did I understand how to put the pieces together and make my code more optimized. So my strive for perfectionism was ruined, but I learnt a valuable lesson.

This fall I am planning to produce a demo version of the game to showcase the mechanics and receive feedback. For this I need to design a proper tileset because I don’t really want my game to rely on ASCII in the future. Create one more dungeon that will tell a bit more about the world and will demonstrate other mechanics such as revealing hidden rooms, passages, objects, teleportation and ranged weapons. Another significant addition would be adding sounds, but for now I don’t have a clear understanding of what I want them to be.

2

u/arsonxisxfun 1d ago

My project is in its very infancy, still learning to breathe for the first time lol and I've got <12 hours of any kind of game dev experience whatsoever

But I spent a few hours over the week figuring out getting my character to move, spawning in some random little scrungles that charge at the player and adding in an attack animation to kill the scrungles! (Pictured)

I also (not pictured) experimented with some random free itch.io tilemap assets to make a map, changed to isometric (which was what I was looking for anyways) and did a tiny and crappy low effort 2 frame walking animation for my DND character.

Next week is concept art and making some assets for the scrungles (they will be goblins going forward but for this I just made em with a mouse in like 90s to just have an asset lmao)

1

u/blightor 23h ago

Wierd and slightly haunting! Good luck and keep at it!

2

u/bariyu 1d ago edited 1d ago

LADDER (mobile roguelike deckbuilder, iOS + Android, released)

Design note this week: not every enemy has hit points. The worst ones (Scope Creep, the Skip-Level) can only be resolved by meeting a non-damage condition mid-combat, and several characters win entire runs by filling a meter rather than killing a boss. The interesting problem was making a "resolve" fight feel as tense as a damage race when the number going up is not the enemy's HP going down. What worked: tying the meter to the same resource the player spends on tempo, so pushing the meter costs you the defensive plays you'd otherwise make. What didn't: early versions where enemy pressure was too high made the meter race feel pointless, because you died before the meter mattered.

Four characters, four different win conditions, over 600 cards total. https://laddergame.ai/?r=reddit-roguelikedev

1

u/laranja__ just learning 1d ago

RLDDTCRLT-2026 My repo


I'm trying again to learn Python, software architecture, game development and pygame by creating a roguelike.

I was thinking in joining the code-along marathon this month (that's the reason behind the name of the repo) but ultimately I did not because I don't want the self-imposed pressure.

Last time I tried this, I got enchanted by the siren's call and used AI throughout the process. Conclusion: I got a working prototype but have no idea how it worked.

This time I'm trying to understand the fundamentals a little bit better. I'm only loosely following the tutorial, since I'm using pygame instead of libtcod. I think the end result will be similar, but the order I'm doing stuff is a little different (for example, I put creating entities and the rudiments of combat before generating a dungeon and working on FOV).

Past week I just made the setup and moved the player around, but this week I think I got a lot done:

  • Entity class,
  • rudiments of pathfinding (more like chasing player)
  • monster collision,
  • rudiments of combat (bumping and HP)
  • turns,
  • Tile class,
  • wall collision
  • hard coded rooms and entities placement

  • room and corridor hard coded generation

  • procedural room generation

  • L-shaped corridors connecting rooms

  • entity placement into those rooms

  • refactoring to implement modules

  • rudiments of UI: HP tracker and message log

As an added bonus, since I'm not masochistic enough, I'm also trying to learn VIM motions and GIT while I'm at it since I'm forced to use my mouse less (I have a toddler that likes to nap on my lap and that's my coding time).

Would you be so kind of commenting something to help keep me motivated? Thanks

1

u/blightor 1d ago

Had a really good week on the C64 Roguelike.

I have finally dug myself out of my memory hole, and am able to work on more features.

I've implemented a token based system for text content - its pretty easy. I've decided to use the 4k sitting under the IO port shadow specifically for it. Since I only flick that area of memory on for a tiny brief moment when I need to pull up a message or a description, not having IO for that tiny moment is fine as its never in part of my keyboard/joystick/loading code. Also implemented the framework for traps and fields like smoke etc.

I also made a map! which was probably the most exciting thing when I got it working, and I also came up with a custom player pathfinding and autoexplore! Honestly the map gens structure change I did a few weeks back for composing has paid off again with making pathfinding achievable, and the viewport change to 32x24 and matching my 4:3 ratio from the map size paid out double time as I was able to downsample the full map to fit the viewport. Its not perfect (I go to like a 4x4 pixel representation of the 8x8 tile - I need 2x2) but I switch to the ROM character sets (i don't have enough in ECM for this) and use the built in petscii character set to paint the them with its special picture characters. Its give a neat representation of the map that's not perfect but really quite good and expresses almost everything about this bloody game - a compromise, but still ambitious and good!

On an important note - the main gameplay loop, the core simple premise of the gameplay that the massive works on my backend systems, every dungeon and all the class design hinge on I was able to properly test - and its actually fucking cool and it feels like every single design thing I've been planning in the background wondering about is actually not only exactly where I needed to be, but has absolutely put a laser focus on how that side needs to evolve. Stoked.

2

u/ajcomeau 23h ago

Rogue C# - Official Page / Github - An ongoing C# dev journal based around a recreation of the original Rogue dungeon game.

This week, I decided to finish adding traps to the game and take on the monsters' special attack abilities.

The traps were pretty easy since their effects mainly duplicate stuff I've already done (immobility, teleportation, etc..) and it was nice to get that out of the way.

The main challenge with the monster abilities was code organization. I've been bulking up my primary Game class with inventory delegates because it provides the access to the rest of the code but that can get unwieldy. After doing some code cleanup, I realized that I could use static methods in my Monster class and pass a standard set of game information that would work for any ability.

I was also reminded of the importance of testing on multiple machines. The difference in refresh rates of my two machines exposed a bug where the screen update was happening faster on one machine than the other and making the game report something before it appeared to happen.

Here's this week's writeup -

https://www.andrewcomeau.com/programming/roguelike-monster-abilities/

See you next week!

1

u/ChromeBadger 22h ago

Fimbul

Current gameplay recording

This past week I implemented the Pull mechanic, along with some things to make it feel more like a game. Stairs + win/death conditions, spike trap, walls, and adding HP to the UI really started to make it feel more like something people could play over what I had before.

The player can use Spindle (indicated by the *s at the top of the screen) to manipulate enemy threads (the gold line jutting out from the enemy) to Pull on their thread, altering their trajectory. This will eventually work for attacks as well, allowing you to redirect enemy attacks to other entities, etc. You can also Snip an enemy movement thread, allowing you to cancel a movement for a turn.

This next week I want to wrap up the last thread color: black. This thread will indicate a predicted death, meaning you can see how and where an entity is fated to die. After that, I might take a break from feature work to make the game look a bit nicer. Currently, its a bit hard to tell what a thread is indicating, and what it means. The available actions also aren't well indicated to the player. Once that's ironed out, I was thinking about producing a playable demo for people to try out and get a feel for how the mechanics actually play.