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://devforum.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 work we are told that creating the cleanest and following DRY to the core is the answer to reaching the top of your respective area. I say it’s time we cast away this idea that these are the ideals we stride for, in favour that we should use these as th…

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

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://devforum.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 work we are told that creating the cleanest and following DRY to the core is the answer to reaching the top of your respective area. I say it’s time we cast away this idea that these are the ideals we stride for, in favour that we should use these as th…

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 readEditManage 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 entirety of the Autodesk applications while previously being restricted to Blender and Roblox Studio I now, finally, have enough perspective to make an informed post about roblox (somewhat without bias).This is a continuation of this post: Roblox, good or bad for the world of game development?It's no secret that roblox is a large platform, in fact, I bet that you, your chil…

[Mini-Blog] My modelling process

[Mini-Blog]My modelling process#roblox#gamedev#modelling JedDevs March 30th・5 min read For the last few months it’s been a pain importing a piece of work from Maya/Blender into whatever development engine i’m using and seeing it looks completely different from what I had, this is down to Rendering, the real time rendering systems in Unreal/Roblox/Unity all have different looks. Unreal looks great, Roblox looks bad and unity looks unity. This is an issue as it makes it much harder to easily reach your desired look. Due to these issues I have started using my own way of handling the design process, which allows for more incremental changes: (I’ll use an example to explain.) 1. Research, I knew I wanted a low poly look as Robloxs graphics is lagging behind other market leaders until they release their massive overhaul [scroll] in May/June + it’s much quicker than using something such as Substance Painter + Maya + Photoshop. This is key for such a short timeline and large wo…