The Game Design Tool that changed how I see my game - Bottled Sky Devlog (April 2024)

Video Statistics and Information

Video
Captions Word Cloud
Reddit Comments
Captions
Hello everyone and welcome to  another devlog for Bottled Sky,   an action exploration game with a big drill. I got a bit sick so I delayed recording this   video, but now it’s nearly 2 weeks late and it  hasn’t gone away, so apologies if I sound sick,   you’ll just have to deal with it. This month, I’ve been thinking about a game   design concept that outlines what information the  player has access to and perhaps more importantly,   what they don’t have access to. I don’t know what people call it,   so I’m calling it “Available Information.” So I’m gonna talk about that concept for a   little bit and then apply it to  a specific part of our game.   As a game designer, I like to look  at game information as being on a   spectrum of discoverability. On one side of the spectrum,   information is “highlighted,” meaning  the player is being directly shown that   information and they don’t need to search for it. An example of this is in chess, both players know   the positions of all the pieces on the board. At no point during a game are any of the available   pieces ever obscured from either player. If you’re wondering what happens if you   design a game where all information is  knowable at all times with no uncertainty,   that is what you might call a solved game. Like a puzzle, where you have all the pieces   and you just need to figure out  how to put them all together.   The downside is that the more information your  game has, the more overwhelming it is to players.   On the other side of the spectrum,  information is “hidden.”   This is the side of the spectrum that  can make games more interesting.   Oddly enough though, if you try to have  information that is completely hidden the whole   time then you just end up with a guessing game  where you can’t deduce the information at all.   The most interesting kind of hidden information  is when you can gradually uncover and decipher it   using other pieces of known information. This is pretty much the   foundation of the mystery genre. To use chess again for this example, the   hidden information is your opponent’s next move. At the start of a game of chess, you don’t have   much information to be able to discern  what your opponent’s first move might be.   As the game of chess continues, you can  begin to evaluate what moves are available   to your opponent and figure out what their most  optimal options are, and plan around those.   Somewhere in the middle of the discoverability  spectrum is when the information is available,   but is not being directly given to the player. Keeping information in this grey area of   known or unknown is what tests the  player’s ability to analyse data.   I might as well stick to  chess for this final example.   Trying to figure out which move is best on a given  turn, is something you can figure out by analysing   all of the non-hidden information on the board. Analysing all of the possible outcomes takes a   long time, even for a computer, which is why  competitive chess involves a time limit.   Being good at chess involves analysing lots of  outcomes quickly, combined with lots of pattern   recognition to save time by sifting out common  bad outcomes which usually comes with experience.   I might make reference to the discoverability  spectrum in future videos, but for this video,   I want to look at some specific  pieces of information and decide how   discoverable I want it to be. So what I want to look at is   enemies that are nearby, but off-screen. First, let’s look at where this information   currently sits on the discoverability spectrum. An enemy that is on screen would be pretty   close to highlighted information. I’d say the difference between being   perfectly highlighted and close to highlighted is  where you have to look to find the information.   UI elements are usually located in the  same position on the screen all the   time so they’re easier to find compared to an  enemy that might be anywhere on the screen.   Having camouflaged enemies might be an interesting  idea to explore, which is an idea I got simply by   using this design concept and wondering  how I could reduce information about an   enemy that is on screen. I’ll write it down and   distract myself with that idea later. Where would you think an off-screen enemy   fits on the discoverability spectrum? Well, it depends.   If you haven’t yet encountered the enemy there  is currently almost no other way to tell if that   enemy is just off-screen. Almost.   Enemies can still be active  and make noise off-screen.   I mostly use 3D audio for sound effects so  you might even be able to tell which direction   and how far away it is, although I  won’t expect players to do that.   This means that knowing whether  there is an enemy nearby depends   on how much noise it makes normally. This is a slider I can adjust on a per enemy basis   so I could have enemies that are easy to detect if  they frequently make loud noises, and enemies that   are impossible to detect if they make no noise. I think I’m happy with the current state of   information for enemies you haven’t  yet encountered, but what about   enemies you’re currently fighting? There are multiple reasons why an   enemy might be off-screen mid-fight. Some enemies try to distance themselves   from the player for a ranged attack. Some enemies might outright flee from you,   or you might try and flee from them. Let’s see where this fits on the   discoverability spectrum. Interestingly, when an enemy   is off-screen the information you know  about it doesn’t remain constant.   Shortly after an enemy goes off-screen,  assuming you have object permanence, you   have a pretty good idea of where the enemy is. However, the longer they stay off-screen,   the less certain you’ll be about its location. There are additional factors at play here though,   such as the behaviour of the enemy  and how much randomness is involved.   If you were fighting an enemy that remains  stationary, then you can be reasonably certain   that it will stay where you last saw it, but  aside from that, every other kind of enemy will   eventually venture towards unknown information. One problem I have with this is that it makes   ranged combat difficult, both  to use and to play against.   An off-screen enemy is harder to hit with a  projectile, even if you know its exact position,   and a projectile is harder to avoid if it’s  moving quickly and you couldn’t see the enemy’s   animation signalling its attack. Couple that with how much dynamic   camera motion the game has and that gives  me a recipe for combat that is harder than   I really want, so something needs to be done. So what are some ideas to solve this problem?   Solution number one: I could zoom out  the camera far enough to encompass the   range attack distance of every enemy. This technically works, although it’s   a bit of a blunt solution that causes  other problems if taken at face value.   Why? Well, the more you   zoom out the camera, the more information  that becomes highlighted to the player.   If you’ve already decided what a good zoom  level is for your game, then you might be   giving the player more information than you  initially intended which is a balance issue.   It can also overwhelm the player, depending  on the information density of your game,   although I don’t think that would be an  issue for my game in its current state.   The main problem I’m concerned with though is that  it reduces the visual accessibility of the game.   Zooming out the camera means everything you  normally see on the screen becomes harder   to see due to its smaller relative size. Except for these UI elements of course.   One thing I am considering though, is a mix  of dynamic camera panning and zooming during   combat to keep nearby enemies on screen. The shuttle is rarely on the exact centre   of the screen so I think deviating  further wouldn’t feel too alien.   It’s a system that might require a lot of  balancing and playtesting to get a feel for   what is a comfortable amount of panning  and zoom during combat, but it’s worth a   try in the near future I think. Solution number two: a minimap.   A minimap is a UI element that gives the player a  top-down view of the area around their character.   Sometimes it comes in the form of a radar  where you don’t really see landscape,   and only blips of nearby activity, and  often it’s just a low resolution map.   This is a pretty common solution for 3D games  where you can’t see much of what’s behind you.   You sometimes see minimaps in 2D games like this  one, where it shows you a much wider area than   your main screen view, but with much less detail. I don’t think this is a solution I want to explore   for Bottled Sky for one major reason. A common complaint about minimaps is   that if they are actually useful enough,  players end up just staring at the minimap   instead of looking at the rest of the game view. Not all minimaps are like that in my experience,   but I am concerned that this is  a pitfall I could fall into given   that this game is already top-down and 2D. I am considering doing something like this,   but only for showing audio sources nearby,  mainly as an accessibility option.   Solution number three: markers on the edge of  the screen that point towards nearby enemies.   This is what I ended up making. These are UI elements that move   around the edges of your screen and  indicate the direction of a nearby enemy.   When the enemy is on screen it disappears  so it’s otherwise unobtrusive.   There are a couple of problems still  so this isn’t my final solution.   Firstly, this does make it easier to aim  projectiles at enemies that are further away, but   I still want players to be able to see what these  enemies are doing and be able to react sooner.   Trying to avoid projectiles flying at  you from off-screen is not really the   experience I’m going for. The other problem with this   solution is that I now have to be careful  about overlapping with other UI elements.   I have some ideas to avoid that, but they all  come with trade-offs so I’m going to try this   idea first and only revisit it if I have to. So that’s my final decision on this topic;   I’ll be combining screen edge markers, with  the dynamic camera panning and zooming.   This will only apply to enemies you are  directly in combat with and your camera   won’t start panning around if you pass by  creatures that are idle or ignoring you.   I actually built the edge marker  system for a different purpose.   Because this game is set in space,   there aren’t really any landmarks to help  navigate and find your way to destinations.   To solve this, I created a waypoint system  which uses these markers to point players   towards where they need to go. While making this system,   I realised that it would also be useful  if I tagged moving objects like enemies.   So all of this was a nice, happy accident. This feature isn’t finished.   You might have noticed the little stick figure  on the marker; it’s just a placeholder.   I want this image to represent what it’s  pointing towards so you can tell each   marker apart when there’s multiple on screen. I’m also considering having a distance counter   for waypoints to destinations so players have  an idea of how long they’ll need to travel.   So yeah, look forward to that. If you thought any of that was   interesting then like the video and subscribe  to be notified about future videos.   Thanks for watching. That’s all  for now, and I’ll see you later.
Info
Channel: Raymoclaus
Views: 1,084
Rating: undefined out of 5
Keywords: gamedev, devlog, Bottled Sky, indie game, gaming, Raymoclaus, programming, game, game development, unity, indie gamedev
Id: WCQs538ws-M
Channel Id: undefined
Length: 10min 46sec (646 seconds)
Published: Fri May 17 2024
Related Videos
Note
Please note that this website is currently a work in progress! Lots of interesting data and statistics to come.