Podcast #128: We chat with Kent C Dodds about why he loves React and discuss what life was like in the dark days before Git. Listen now.

Hot answers tagged

191

That is a common concept in nearly all existing videogames: you either say yes to accept a new quest or no to not take it. Players get used to this pattern by encountering it over and over, and finally simply start to assume beforehand that this pattern is also true for your game. A good example of handling this problem is Deus Ex: Human Revolution. In the ...


128

It's common for games to have multiple overlapping loops of gameplay and reward, hitting different frequencies and motivation types, so that we don't have all our eggs in one basket, motivationally speaking. This helps the game appeal to more players, and more consistently appeal to any one player, since every player is a multifaceted human being with a ...


124

Change the options to Left-Right rather than Yes-No. A Yes-No choice is an option. Add this extra bit in or ignore it. A Left-Right choice is a choice. You can have this or that, but not both. So instead of having a single character offer an option, have two characters offer conflicting paths. Make it clear that either way the play will miss out on some ...


115

It's not as easy as saying: "Lesbian couple in the game = ± x% copies sold". Just like with most things in game development, it's not the idea which matters, but the execution. When you write LGBT characters into your game, there are many things which can go wrong: You can portray them as ridiculous clichés, offending LGBT people and LGBT allies. A common ...


91

As Charanor and Philipp point out in other comments & answers, there is a school of thought in game design (called "Love the Player" in my studio) that says if the player wants to do something that doesn't break the game for other players, err on the side of letting them do it. Players who see a kidnapping twist coming and strategically prepare for it ...


70

Though there are infinitely many ways to choose them, it is common for leveling curves to follow a power rule such as the following one: f(level) == A * exp(B * level) The major advantage of this formula can be easily explained: for a given rule, there is a fixed value N such that each level costs N percent more than the previous one. Your initial ...


65

I come from a place in the Internet most people deem to be horrible in every single way. While I generally don't agree with most of the stuff said in that website, I can provide some insight on what happens around there when a pro-LGBT game is released. A small but very vocal group of (probable) trolls will complain about it, no matter the way they are ...


42

A way to show which answer is the "right one" without taking away the choice, would be to weight the options through meta-information. Instead of just showing one "yes" option and one "no" option you can provide a list of options for the side you prefer. For example: No. You're going to get yourself killed. No. We don't have time for that. No. That would ...


39

I have some numbers, though they're for a web game, which might not apply to your market. Back in 2012, I wrote a game called Farm & Grow. It featured little people wandering around a farm and occasionally one of them would get married. The game made no distinction regarding gender; I was writing for a game jam and didn't really have time, but also ...


38

In any game where you have character leveling, you need to decide on a power curve. This is a mathematical function which maps game progress to character strength. This curve can be linear, polynomial or even exponential. The flatter the curve, the less progress your player will feel, but the easier it is to balance because early-game content still stays ...


31

Reduce the players sight-range. You can do that by adding an overlay mask on top of the rendered scene. This simulates the reduced sight-radius of the player-characters due to darkness. It forces the player to concentrate on a very small section of the screen giving a feeling of claustrophobia. But keep in mind that it disorients the player, so cut the ...


31

There's no such thing as bad PR. While not universally true, it certainly does apply to indy games with a rather low projected number of sales. This kind of controversy is the best thing that could happen to you, because it's free advertising, spreading the name of your game. Which is also the sole reason that Beauty and the Beast story you linked exists. ...


30

The way one would deal with this would depend on the game and what would make sense for that world. For example a sci-fi game, they could "beam up" to some space storage facility for cryo-sleep. A fantasy game could have them cast a spell on them self to fade away. Or they could be sucked into a portal. Make them turn really small and a bird or robot comes ...


30

You want to start with an asymptotic function. That is, one that starts at a number a and approaches another number b, but never actually reaches it. It's probably going to be easiest if a = 0 and b = 1. You'll take this equation, input the number of stat points (Luck points) the character has, and get the actual stat value (Crit Chance) as the output. A ...


29

There are multiple design constraints, each of which can be solved independently. It's up to you to decide how to solve each one, in a way that makes sense for your game. [I want to discourage] meta-gaming/save-scumming The Quality of Life solution would be to automatically strip the companion's gear. Breaking immersion If the departure was voluntary,...


25

The reason turtling is attractive in this case is because there's no or little incentive to do anything risky during the character's downtime. It's not risk-reward, it's wait-reward. To counter this, you have to incentivize risk. The periods of burst should be buffered with active preparation for their next explosive turn. There's plenty of ways to do this, ...


24

One quick way to get key-value pairs in Unity's inspector is to define a serializable entry class, and then use an array or List<> of them. eg... public class SpellAnimationMap : ScriptableObject { [System.Serializable] public class SpellAnimationEntry { public Spell spell; public AnimationClip animation; } public ...


23

You cannot brand your game as D&D, period. You used to be able to brand your game as being D20 System compatible provided you followed a number of stipulations, not the least of which is that you couldn't reproduce or include rules for character advancement (XP, gaining levels, etc.) which basically means a player of your game would need a copy of the D&...


23

It's a matter of motivating the player. The player has an achievable goal to work towards The player sees how far away from the goal they are The player sees how playing the game visibly progresses them towards the goal Variable ratio rewards can also be a great motivator, but so is an "honest pay for honest work" game mechanic where the reward after each ...


22

Games sell because they're good, not because they have X or Y Your game sales will most likely have nothing to do with the sexual orientation of your characters. What will matter to the players is how developed the characters are and how realistic they feel. If you make a character that is (insert some stereotypical LGBT character here) then you will most ...


22

I love these because there's always a multitude of ways to do this. The first thing that comes to mind is to not make it such a blind choice. If it is a decision that has the potential to ruin a perfect ending, perhaps it's worth making the "no" choice look like a "yes" choice. Something like: Hey, I think we should go do this ridiculous thing that will ...


21

Look at one of the classic-style Zelda games. You can create the illusion of hills by using cliff faces.


21

The problems you have with calculating DPS from that formula are because what you call BaseDamage doesn't actually seem to be that. Assuming that all numbers are positive, BaseDamage / ( BaseDamage + Defense ) will always resolve to a floating point number somewhere between 1 and 0. It doesn't matter if you have 10 BaseDamage, 1,000 BaseDamage or 1,000,000 ...


20

Use per-tile lighting to do sight-range reduction. Shadowlands (1992) - 3 light levels: Diablo (1997) - 8 light levels: You can do much more with this dynamic, such as easily having monsters only spawn on dark tiles, have light streaming out of doorways and windows, etc. To induce claustrophobia beyond just lighting, have a look at the way the Maggot ...


19

Which Stats? First, with regards to what stats to implement, you need to work backwards from mechanics to derived stats to basic stats. Determine what effects and mechanics you want during play, and determine how you want those mechanics to work with one another. The important notion when looking at relationships between mechanics is identifying the ...


19

This behavior is completely understandable. After all, nobody wants to lose an irreplaceable item forever because they made the mistake of having it on the wrong character at the wrong time. There are several solutions I could think of: Instead of fighting against your player's drive to optimize the fun out of your game, just give them what they want. When ...


18

You could also generalize the queue into a directed acyclic graph (DAG). You can read about these on Wikipedia. Basically, each node can have one or more parent nodes that it "depends on". Cycles aren't allowed, i.e. if A depends on B, B can't depend on A (directly or via any indirect chain of other nodes). Each node is in an "active" or "inactive" state,...


18

The best way to come to a conclusion in this regard is - like with most things in game development - to first think about how you want the game to play, and then make up the math which will result in the game playing like that. How long do you want the player to play on each level? In a story-focused single-player RPG you likely want to keep levelups as a ...


17

Don't forget to round the numbers after you figured out your curve. It doesn't make much sense to tell the player he needs 119,378 experience points to reach the next level — because the person would always understand it as "roughly 120,000". Thus you will be better off doing the rounding yourself, and presenting "clean" results to your players. For ...


17

Dialogue could be provided in any form/structure you wish it depends on how you parse the information that makes the difference. I will provide you with a basic XML syntax to get you started without understanding your games structure or language I afraid i cant provide an implementation. <?xml version="1.0" encoding="UTF-8"?> <npcs> &...


Only top voted, non community-wiki answers of a minimum length are eligible