Skip to main content

The Importance Of Human Code

The importance of Human Code. # roblox # gamedev # discuss JedDevs 24 Jan 2020 ・5 min read ------------------------------------------  This post was originally hosted on Roblox DevForum: https://dev forum.roblox.com/t/the-importance-of-human-code/441496 ------------------------------------------      I recently read a blog post that really resonated with me, my struggles and experiences which was later expanded via tweet by Daniel Irvine 7 who said: You’re conflating two separate things. One is the desire to write clear, well-structured code. Another is your belief that your code is more valuable than that of your colleagues. I fear you’re missing the more important lesson. In both education and wo...

The Two Types Of Random

https://p1.pxfuel.com/preview/1021/342/434/dice-game-random-good-luck.jpg The Two Types Of Random

teotcd profile image JedDevs September 10th・7 min read


Introduction

Randomness plays a large part in a huge range of games, from main mechanics to small unseen changes. They can be used in creative ways, like with Nintendos games or in a selfish way, like EAs money grabbing lootboxes.

In games we can break randomness down into two types, not noise verse “random” number generators or even simple vs cluster but, Input & Output Randomness.

Input Randomness

The first of the two types is Input Randomness, which from the name I wouldn’t blame you in thinking it means the result of an action by the player; But in fact it means quite the opposite, an action made prior to the players involvement.

“ Input randomness is when a random event occurs before the player gets to make a decision.” - GMTK

The most common examples of this include:

  • Procedurally generated worlds

Procedurally generated worlds come in all different shapes and sizes and used in many different ways, they can be generated once and repeatedly referenced, which is where “seeds” come from. Or built on the fly to create new challenges.

Negatives

Minecraft and No Mans Sky are both examples of this. Using similar technology at the very foundation yet presenting very different experiences. See, No Mans Sky fell to a common problem of procedural generation. Soul.

When a game designer is, well, designing a game there’s imagination & purpose in every decision from “This looks nice” or “so player can climb” to more nuanced decisions, a good example of this is in The Last Of Us: Part II and how they use light to draw the players focus

This could not be done with procedural generation.

Positives

While there are a handful of negatives to Procedural generation, not all of which are explained here, it’s still an exciting and essential tool. While we all know how well No Mans Sky went, Minecraft is quite a different story.

Holding the #1 spot for highest played game and coming just behind Roblox is concurrent player counts it’s a truly amazing game. While there may be a less of creativity with procedurally generated world, when the focus is not the world itself it can be extremely powerful - instead making you focus on the mechanics of the game.

Within both Minecraft and rouge likes game, this can be incredibly useful. Instead of being able to just master that level you’re forced to learn the unerlying mechanics in new situations.

  • rolling dice and then choosing where to spend them”
  • “drawing cards before taking your turn”

Output Randomness

“Output randomness, though, is when you make a decision and then luck takes over and the game tells you what happened.” - GMTK

Quite possible the most common example of this, without you knowing, is with shooters, where you may have a range of chances at hitting a target or later in the game when you open a lootbox and there’s a % chance of winning x.

These two terms have also been referred to as Pre and Post luck by Soren Johnson, a game designer on Civilisation 4. But this concept was first mentioned on the podcast “Ludology”:

GEOFF ENGELSTEIN: “In general, I find this distinction between input and output randomness to be very valuable. I think this is the fundamental difference between randomness that supports strategy, and randomness that undercuts strategy”.

Comments

Popular posts from this blog

What's Roblox and why you should care.

What's Roblox and why you should care. # roblox # gamedev # career JedDevs 16 Dec 2019 ・5 min read Edit Manage Writers Note: I've allowed this post to sit in drafts for over two month, hardly being touched and I think it's because while I love roblox and there's a lot of reasons you should to, I just didn't have the level of experience with other engines to make an informed review and now I'm several months into my Game Design and Development course at college and have actively been using Unreal Engine and Unity coupled with Maya and the entir...

The Importance Of Human Code

The importance of Human Code. # roblox # gamedev # discuss JedDevs 24 Jan 2020 ・5 min read ------------------------------------------  This post was originally hosted on Roblox DevForum: https://dev forum.roblox.com/t/the-importance-of-human-code/441496 ------------------------------------------      I recently read a blog post that really resonated with me, my struggles and experiences which was later expanded via tweet by Daniel Irvine 7 who said: You’re conflating two separate things. One is the desire to write clear, well-structured code. Another is your belief that your code is more valuable than that of your colleagues. I fear you’re missing the more important lesson. In both education and wo...