Hello everyone, and Merry Christmas! For this post I wanted to show off something I worked on many months ago, but ended up kind of forgetting about it. I wanted to give the player a flashlight, but speaking that Runeblight takes place in a fairly low-tech setting, I knew I couldn’t make it a traditional flashlight. It gave me an interesting idea for a flashlight which exists outside the player as some kind of magical entity. Currently I’ve called it “the orblight,” although that name is completely temporary.
The orblight follows the player, shining a light in the direction where they’re looking. While I certainly think it looks cool, getting it to work even as well as it does was a bit tricky. Just having the orb rotate in the direction the player is looking didn’t really work, since the light would be offset by whatever distance it was from the player. This means the light would not shine exactly where the player was looking, and I had to make sure this still served its functional purpose as much as possible. I ended up having to find the angle based on the position of the orb, the player, and where the player is looking. One interesting but ultimately unimportant issue is that when the player is not looking at a wall, the behavior reverts back to how it was before, offsetting the light slightly. This doesn’t really cause any issues, however, since this really only occurs when the player is looking at the sky.
The other tricky thing was having the orb hover around the player, without clipping into walls or getting stuck. At first, I tried just making the orb have collision, but this just made it really janky and much worse.
Ended up going with a solution where the orb detects if there is a solid surface in-between it and the player, and if it does, it adjusts its position to make sure it doesn’t disappear into the wall.
Ultimately, I think that it’s going to require a lot of tweaking before its complete. Some have already expressed concern that the orb might get on their nerves, not doing what they want when they need it to, or obstructing their vision during something important. So there’s some other considerations to take in before it’s ready, like maybe making the orb transparent or smaller, or making it find places to hang around that are more outside the player’s view.
Lastly, I was suggested the idea of adding upgrades for the light. Since Runeblight is a game about acquiring permanent upgrades as you progress, I thought the idea sounded great. That might include things like upgrading the lights intensity or range, and I’ve considered making the light limited use (similarly to the flashlight in the Half-Life games), but allowing the player to increase the use with runes.