Sneaking Update
As the dungeon milestone has taken a more final shape, a few fairly major mechanical changes have been happening in the game.
Sneaking

Sneaking is available to all characters and consists of a simple toggle for whether or not your character is currently being sneaky. Toggling sneak uses a turn and you're unable to turn on sneaking if you're currently drowning or holding a lit torch.
Divinity: Original Sin 2
In DoS2, when sneak is toggled on, any part of the ground visible to literally anyone would have a red overlay indicating that if you try to sneak there, you will be knocked out of stealth and detected.
Characters with points invested in stealth would decrease the detection radius causing more room to get closer. It was silly and weird! Any creature, be it a bandit or hidden skeleton or shopkeeper or woodland squirrel would light up the ground. You had no way of knowing who was causing the ground to be red or how many were causing it, only that someone somewhere would see you. This balanced out in a weird way because the presence of omniscient god vision of if your stealth will work possibly needed a little counterbalance.
The other balance was that, outside of combat, the game is real-time, and characters you're trying to avoid would regularly patrol or turn around and put you into the red. This I didn't like so much because it felt like you could randomly get knocked out. But, again, gotta balance the god powers somehow.
In Chronicles
I always loved this weird system and wanted to do something like it in my game. It's been a few years now since it was fully implemented and working, with red eye icons showing up on detection tiles, stealth skill decreasing detection radius, all the things.
I began to notice in testing, though, that it really wasn't getting a lot of use. I thought maybe characters later with more stealth would get more out of it, but it's started to stick out as an underused, not-very-useful thing, and it was time to interrogate and iterate.
Field of View
Here is a test-map that is exactly the size of the base field-of-view for all creatures:

The first thing to think about is that this is an ellipse, not a circle. In fact, the Width-To-Height is exactly 2:1. This is because the player viewport is a rectangle so everything you the player sees in the viewport translates to the same view capabilities of creatures. EGA pixels are tall, 37% taller than wide, so the viewport on-screen almost looks 4:3!
Still, the number of grid spaces in the world shown are literally twice as many horizontally as vertically. Thus, just as you are able to see other creatures from twice as far away horizontally as vertically, so can they. And if an item decreases your view-distance, the effect on the X-Axis is doubled to scale it down the way you would expect.
This is weird and a bit silly! In a game where you cannot move diagonally, I suppose it's not too weird to also see further east and west than north and south. All I really want to accomplish in the end is it feeling consistent and intuitive, if bizarre.
Stealth is a Circle
While having view distance being an ellipse feels ok because you can literally see the effects of it in the viewport at all times, applying this to sneaking detection radius didn't feel great.
Because stealth is decreasing a radius around any creature for determining their detection range, and that affects how close I can get to them, it's more spatially-implicated than just view-distance. Your stealth power is how many tiles close to an enemy can you get, so while seeing twice as far horizontally, also being able to stand twice as close horizontally felt wrong.
I decided to try making the detection radius a circle; using the vertical component of the base view ellipse as the base radius.
A character with no stealth skill would still be discovered at the normal view distance vertically:

And would get a little more heads up when approaching horizontally:

In both cases, the distance you can get to the target without detection is the same.
But how did it play
I was happy to have it working but, as I was saying, I would rarely use it. I think the difficulty with a mechanic like this is that it's theoretically useful to players who didn't design the maps, ie. not me. As such, I would show it off as a thing you could use and assumed people would use it the way I used the sneaking playing through DoS2 on the hardest difficulty with a friend.
Another aspect I lifted from Divinity was moving much slower in real-time while sneaking, half the normal speed in my case. This ended up being very oppressive and was yet another reason why I didn't use it much in my own testing.
It wasn't until I got the milestone out into the hands of a a few close friends that the mechanic's real problem bore itself out.
You may be wondering from the 2nd gif in the previous section, that it seems pretty strong to know there's an enemy over there even though you can't see it yet. This was weird in Divinity as well! Some might even say broken or overpowered! By the end of that game we were fully engaged in sneak cheese to set up desirable conditions outside the arena before triggering the fight.
But I felt like it worked in that game, so what is the problem exactly?
Sneakes
In the Isharri Ruins, there are snakes. And snakes sneak.
The danger of snakes is that they have high stealth and won't appear until they're very close to you and ready to bite.
My testing friend pretty quickly figured out a hard-counter to snakes and, in fact, all potentially dangerous traps:
If you just toggle stealth occasionally, you can check for red eye indicators ahead, toggle back off, and continue about your day safely at full-speed.
This is some smart gameplaying but it is bypassing two entire mechanics:
- Being slower in stealth isn't an issue because you can just toggle twice and get all the info
- If you can't see any enemies causing the red indicators, you can assume there's hidden enemies, which defeats them being stealth
So there's some things I don't like about the stealth system:
- Characters who don't invest in stealth points get a massive advantage to visibility of upcoming danger
- Characters who do invest get a comparatively paltry improvement to that
- A major check against just always sneaking (moving slowly) felt bad always and could just be bypassed
- Some of my devilish hidden traps are just bypassable with little effort or foresight
Time for a redesign
This was pretty hard to think about changing because I like it being silly and unrealistic and weird, but it still didn't make a satisfying enough impact to me. I want stealth to be useful, I want you to occasionally play a hobbit thief, but I don't want to trivialize giant chunks of game.
I could make it take more turns to go into or out of stealth, but that just further punishes people wanting to sneak and does nothing about the “checking for danger from a safe place” use case. I want 0-stealth character to occasionally get some use, high-stealth characters to get a lot of use, and danger to be less knowable before committing to it.
Nerfing the Appearance of Red Eye Indicators
One change I played with was that the red-eye indicators should only appear if the creature is known to the player. This means sneakes or enemies around corners wouldn't show their indicators because you, the player character, do not yet have eyes on them.
The effects for the 0-stealth brigand is a little useful, but only horizontally:

The high-stealth character gets less use than before, but way more than the 0:

You'll notice that indicators persist for a few turns after losing sight of the skeleton. This is because your player knowledge of the enemy persists in a partial state for a few turns, which works great for this system.
And finally, the snake is dangerous again because, being as they are sneaking, you aren't aware of what they can see:

Now even though I couldn't see the snake seeing me, I was still knocked out of stealth with a “Revealed!” popup! This is intentional because you were still seen by something you just don't know what. Leaving this concession in can still assist a player in being alerted to unseen danger, but it's less powerful than before because they're already, at that moment, engaged, which is much closer to what I want.
One last little tweak to this was that if a creature is at least partially aware of you, you will still see their red indicators even if you cannot currently see them. This is to allow hiding while in combat because you wouldn't be able to see where they're looking while trying to juke.
Hooded Vision
While writing this very blog post, I did a lot more thinking about this solution and couldn't shake that I still was getting an outsized advantage for 0-stealth characters. For the case of a brigand approaching an enemy from the east or west, having stealth activated can be a great boon with no real disadvantage and that makes the advantages of someone with high-stealth feel a little superfluous.
Having all this info and thought written out in front of me, I was drawn to that core conceit behind the use of stealth being a circle: spatial positioning. If sneaking allows you to convert an ellipsoidal engagement distance to a circular engagement distance, isn't it a bit much to still retain the ellipsoidal view?
More simply, what if sneaking caused your view distance to be constrained in the same way that detection distance is? What if, while sneaking, you lose the 2x horizontal view distance?
From all directions, your vision is now more directly related to your stealth radius, which then affects which actors you can see, which then affects which indicators you see on the ground. For the 0-stealth brigand, the second you see an enemy, they see you, so becoming aware of their detection range simultaneously knocks you out of stealth.

But even 1 stealth point will allow you to stand in full light away from an enemy in the distance and view their detection radius without being seen. Another crucial feature to aid this is that auto-movement is automatically halted upon contact with an enemy, so running around stealth won't accidentally walk you into a detection circle you're aware of.

This is interesting and I don't quit know how I feel about it, but I do think I like it.
- It's “fairer” in the sense that the generic act of sneaking doesn't automatically confer horizontal engagement distance
- It's a nerf to sneaking across the board for low skill and high-skill users alike, including snakes!
- The fact that you're losing horizontal vision feels like losing peripheral vision by having a hood over your head, which is very dumb in a way that I love
Speed Sneaking
Lastly, the movement speed malus is removed because there's nothing stopping a 0-stealth brute from walking around in stealth when, mechanically, they don't get much benefit. You do still move a little slower, about 30%, which is as much thematic to feel like your state is different, but it's hardly the punishing slowdown from before.
Given the disadvantage of losing horizontal vision, there's really no reason to punish sneaking further.
How does the redesign play
I really like it! There's incentive to use it in general because you may find yourself avoiding certain encounters or entering them on your own terms, but not totally ubiquitous because even a non-sneaking character waiting around a corner is going to get the drop on you within detection range when you sneak in front of them.
This also leaves the door open for synergy with other stealth-related abilities like detecting life or night-vision! I'm very happy to leave the door open on the power of this ability to be augmented by your builds in later runs!
Thanks for Reading!
I haven't done a design blog like this in forever and it was really fun. I don't know when this will get posted because I don't want the current tester populace to hear about snakes just yet 🐍
Edit: The Dungeon Milestone Playtest is currently live! And will be running through Aug. 10th. You can join the discord or contact me for access!

Wishlist Chronicles IV: Ebonheim! 🌐
🙋

