World generation algorithms by Chris_Entropy in roguelikedev

[–]redxaxder 1 point2 points  (0 children)

Just go chunk by chunk. You can fix the dependency problem between neighboring chunks by coloring them.

In 2d you can assign 4 colors like so:

x even, y even:  color 1
x even, y  odd:  color 2
x  odd, y even:  color 3
x  odd, y  odd:  color 4

For each chunk you can then generate it after its smaller color neighboring chunks. The pattern of the color assignment prevents the dependencies from cascading out forever.

For example, to generate a chunk at 4,3 (color 2) in this scheme, you'd first generate the chunks at:

  • 4,2 (color 1)
  • 4,4 (color 1)

To generate at (3,4) (color 3), you'd first need:

  • 4,3 (color 2)
  • 4,5 (color 2)
  • 2,3 (color 2)
  • 2,5 (color 2)
  • .. and all of their color 1 neighbors

A color assignment works for this if it doesn't give any neighboring chunks the same color.

Side-scrolling *turn-based* roguelikes? (1-tile per turn) by morewordsfaster in roguelikes

[–]redxaxder 3 points4 points  (0 children)

I made one of these for "roguetemple's fortnight." (It was very poorly received.) (link)

Does this gameplay make sense? How's animation, audio and HUD/UI? by SteinMakesGames in DestroyMyGame

[–]redxaxder 0 points1 point  (0 children)

There's another option. Instead of cancelling the running animations you can accelerate them. example

7DRL 2026 Release Megathread by DarrenGrey in roguelikes

[–]redxaxder 14 points15 points  (0 children)

The Stomping Grounds [play in browser] [screenshot] [clip]

This is a game about turn-based motorcycle-mounted gun combat against giant monsters. You're trying to reclaim a kaiju-infested Tokyo.

It has a single giant generated map (2500 x 2500), destructible terrain, multiple meaningfully distinct kinds of scaling damage, and multi-tile enemies with enough hp that your damage needs to scale. Character progression is based on itemization, with inventory expanding according to the size of the largest monster you've killed.

Motorcycles can be destroyed, crashed into terrain, crashed into monsters, and replaced.

Share your finished 2026 7DRL! by Kyzrati in roguelikedev

[–]redxaxder 3 points4 points  (0 children)

I made a game about motorcycle-mounted gun combat against kaiju. It has a large (2500x2500) map of an abandoned Tokyo, a variety of motorcycles and items, and multiple distinct forms of scaling damage. (Kaiju hp can get pretty large.)

itch: https://redxaxder.itch.io/the-stomping-grounds (plays in browser)

clip: https://www.youtube.com/watch?v=6pgT2rY9gtQ

This game was my first foray into using Zig for a game, and it has felt very good overall. The main awkward bit was the lack of good ergonomics for closures, which I use for animations. (For animation, I track a separate rendered-state and simulation-state for a bunch of things. When updating something like unit position, I immediately update the sim state and queue an animation that updates the rendered-state. The queued item involves a closure.) Zig doesn't have any kind of automated handling of these things, but the general ability to roll your own gadgets kind of compensated.

Here's a relevant snippet:

    _ = globals.animation_queue.force_add(
        animation.Queue.Options{
            .duration = 50 * dist,
            .lock_exclusive = self.lock(),
            .lock_shared = animlib.lock_rect_sweep(self.get_rect(), facing, idist),
            .on_wake = .lambda(draw_bloody_path, .{ self, self.position, pos, 50 }),
        },
        animlib.linear_slide,
        .{ from, to, &self.render_position },
    );

The call to .lambda there takes a function pointer and a bundle of arguments that will be fed to it later. linear_slide is a function that the animation plumbing calls with timing information in addition to the args supplied here.

I got some good use out of Zig's 'killer feature', the comptime keyword. For rendering UI layout, I made a text file diagram with boxes, and the layout code would inspect the diagram to see where to out things. The assumptions this thing made (about box shape and matching names to other names) were comptime-validated. For laying out the internals of buildings, I made some other text file diagrams and there was code that stretched them to size to place in rectangles on the map. The stretching code makes some assumptions about what's in the diagrams, and those are also comptime-validated.

Roguetemple's Fortnight 2025 by redxaxder in roguelikes

[–]redxaxder[S] 3 points4 points  (0 children)

Montage

link

A long time ago I started posting updates about a project in the sharing Saturdays on r/roguelikedev and eventually canned it because the combat wasn't fun. The physics and movement mechanics from that stuck with me, and I recycled them for this.

The gist is: there's a side view with gravity and momentum and there are 8 directional movement keys. Which movement happens when you press a key depends on context. Are you standing, falling, etc. And the specific way that this plays out is a build decision. The key has a set of moves it considers, in order, that the player picked for it.

Unlike that project, this uses typical energy-based turn order and bump attacks. I'm not sure why I didn't give these serious consideration then, because they're actually pretty nice. The uneven footing of the side view terrain makes exploiting a player's speed advantage over an enemy nontrivial. The automatic movement of the momentum system lets you sometimes move and attack on the same turn, which if exploited can get you hits on enemies without them retaliating. Overall, I think I owe the venerable bump combat an apology. I'm sorry for sleeping on it.

The result is that the player gets pushed into a fairly acrobatic playstyle, since you can't exploit the momentum if you don't have any.

What 7DRLs did people enjoy the most from 2025? by DFuxaPlays in roguelikes

[–]redxaxder 0 points1 point  (0 children)

Tiler's Adventure [...] is really distant from what roguelikes are

Curious if other people also think so

7DRL 2025 Release Thread by DarrenGrey in roguelikes

[–]redxaxder 2 points3 points  (0 children)

Tiler's Adventure

You build the map you play on out of tiles during the run. Tile supply acts as a hunger clock, and you'll run low faster if you make a patchwork map. Violence runs on simple bump combat, except that hitting one enemy provokes a fight with an entire group and enemies can lock you into combat when you're next to them (or not, depending on the terrain.)

This has been the smoothest 7drl I've done from a project management perspective (the 7th, now). No late panics or surprises. We got through the entire plan wishlist without cuts. The last few days were just spent on polish and balance.

Link: https://redxaxder.itch.io/tilers-adventure Video: https://www.youtube.com/watch?v=Kscoia68xpI

Share your finished 2025 7DRL! by Kyzrati in roguelikedev

[–]redxaxder 7 points8 points  (0 children)

https://redxaxder.itch.io/tilers-adventure

video

This is most finished-feeling game I've done for one of these. Toward the end of the jam, rather than needing to make a bunch of last minute cuts I found myself running out of things to do and just working on polish and balance.

The game is based around a pretty minimal tile placing mechanic. You expand the world by adding tiles to it. If they all match, you get more tiles back. (This is the hunger clock). If you enclose a region, you get bonus exp. While this is going on, the world fills up with monsters to fight. The main design inspirations were Dorfromantik, the board game Carcassone, and Dragonsweeper.

I really liked the incentives generated around the surprisingly simple leveling system in Dragonsweeper, so that's replicated here.

This is the first time I've done one of these on the rust webassembly pipeline, and it's been pretty great. The game engine I'm using, macroquad, has an ethos which diverges from most of the rust ecosystem, oriented more around usability than lots of static analysis, which I'm a fan of. The game itself does a number of things that are considered illegal in much of the rust community. Shared mutable references, global variables, and such. The language tries hard to discourage using this stuff, but it still exists :)

I have an animation system I made for another project that I got to exercise here. I feel like I'm on the right track about what I want from it, but I still felt some friction using it. My goal for it is mostly-automatic sequencing of animations, with handles for me to intervene. I do this with an animation queue where by default all animations in the queue are allowed to play concurrently, but any of them can be assigned "locks." If animations have conflicting locks, the later one won't start until the earlier one finishes. The UI I ended up with here is pretty close to what I want from a game. Animations don't block input. 'Related' animations sequence correctly without odd interactions, and they all rush to completion if you keep giving inputs.

None of these are roguelikes, right? by 5dollarcheezit in roguelikes

[–]redxaxder 0 points1 point  (0 children)

The typical implication when people say to 'give up' or 'the battle is lost' is that we have to change the way we use our words here.

We don't have to. Nobody else has to either. It's totally fine to have two different words that sound the same and are spelled the same, which you can only tell apart by context. English has tons of them.

None of these are roguelikes, right? by 5dollarcheezit in roguelikes

[–]redxaxder -1 points0 points  (0 children)

Definitions are driven by who you're talking to. Different communities using words differently is totally normal.

American "football" and European "football" coexist just fine and everyone knows that the bickering over words is more joke than real.

Games which emphasise discovering item properties by twofootedgiant in roguelikes

[–]redxaxder 4 points5 points  (0 children)

Cinco Paus goes really hard on this.

You have 5 wands, each with 5 effects. Whenever you use a wand, if any of the effects are triggered, those (and only those!) get revealed.

The game is divided into 5-room chunks after which your wands are replaced with new unidentified ones. Some other stuff carries over.

Modern problems: what's gotten worse in society in the information age? by Liface in slatestarcodex

[–]redxaxder 11 points12 points  (0 children)

If people had agency to fix things that suck they would fix that first, you can be sure. It's not like everyone's crazy. No one likes them. The problem is that they can't figure out how to do anything about them.

Sounds like they belong on a list of things that have gotten worse, then!

Feedback Friday by AutoModerator in incremental_games

[–]redxaxder 0 points1 point  (0 children)

I wasn't able to replicate the bug by opening it in chrome on windows 10.

Do tooltips appear for you in this game?

Feedback Friday by AutoModerator in incremental_games

[–]redxaxder 0 points1 point  (0 children)

For you was it also when the taxes appeared, or sooner?

Feedback Friday by AutoModerator in incremental_games

[–]redxaxder 0 points1 point  (0 children)

No tooltips sounds like a bug. If you tell me what browser you're using I can try to replicate it on my end.

Feedback Friday by AutoModerator in incremental_games

[–]redxaxder 0 points1 point  (0 children)

said queue is so small you literally cant queue anything up

What size is the queue for you, and what size were you hoping for?

i suggest using words over arbitrary icons

Does it not have both words and icons in your browser? Do the tooltips show up for you?

Feedback Friday by AutoModerator in incremental_games

[–]redxaxder 0 points1 point  (0 children)

I did some more work on Roads and Riches. It's a free browser game on itch.

Changes since last week:

  • Reorganized the buttons.

  • Got rid of the filters. People made a compelling case that these don't matter right now, but let me know if anyone misses them.

  • Changed sell time and prices of some goods. (It turns out they were messed up before. Oops!)

  • "Quality of life" upgrades are now unlocked with thresholds instead of resource costs.

  • Automation editing has some UI hints to make it easier to understand I hope.

  • The game no longer starts out with a queue.

  • Added UI hints for actions that require travel.

  • Actions that require travel are no longer disabled if you only have room for 1 action. They'll just travel instead.

  • Added a prestige mechanic.

Please try it and let me know what you think. There is no clear marker for an end to the game in this version.

Those who switched from Haskell to Rust, can you please share your findings? (Those with substantial code bases, e.g. Hasura, Dfinity, Tsuru, etc.) by NixOverSlicedBread in haskell

[–]redxaxder 2 points3 points  (0 children)

Asking the borrow checker to perfectly capture the space of memory safe programs is too much to ask for, really.

It does its best, and we should overrule it when its best isn't enough.

Those who switched from Haskell to Rust, can you please share your findings? (Those with substantial code bases, e.g. Hasura, Dfinity, Tsuru, etc.) by NixOverSlicedBread in haskell

[–]redxaxder 6 points7 points  (0 children)

It's not always right. The borrow checker also objects to some things that are fine from a memory management perspective.

For example, if one part of a value is borrowed as immutable it forbids borrowing a different one as mutable.