As a part-time technologist at Do Space I see video games capturing the attention of our patrons every day. I’m not surprised, video games are smart and so are their developers. They always have been. For video gaming development carries a mission: to outsmart a challenger or at least to nurture their intelligence to a point that they can outsmart the game. But what I have witnessed very recently is a new benchmark in video game and developer intelligence. Video games are now so smart they are simulating entire universes.
Now, I understand this statement may be a bit bold for those who witnessed the beginnings the video gaming. It has evolved significantly since the likes of the original SpaceWar! in the 60s or Zork (a.k.a. Dungeon) and The Oregon Trail released on MS-DOS in the early 80s. With the latter two being Interactive Fiction (IF) these games barely had a graphical interface. Instead, you simply had a text parser to input commands and interact with a fictional character and environment. In short, you played in a text-based imaginarium or ‘videobook’. I’ve offered an example of Zork below.
At the time Zork was an impressive feat of programming. The authors hailed from the MIT Laboratory for Computer Science and distinguished themselves by creating a sophisticated text parser that could often recognise full sentences. Despite a surge during the 80s interactive fiction eventually dropped off as games steadily incorporated graphical interfaces. However, many aspiring programmers will often create such games to familiarise themselves with certain programming languages. Zork, of course, is but one sample from the multitude of games that defined the origins of video gaming. If you are interested in exploring the classics then I suggest visiting the Internet Archive at the link below.
As a part of its free-to-use software archive it offers access to a large number of open-source PC and arcade games, all playable in-browser. Internet archives such as this are often maintained by voluntary donations and an open-source community of IT professionals that volunteer their time and effort. It really highlights the talent and solidarity of the open-source IT community.
Jump ahead to 2016 and a newly-released title called No Man’s Sky – one of the years most anticipated games – has offered players an entire universe worth of stars, planets and moons all simulated in-game. It does this with a relatively new concept to video game development called ‘procedural generation’.
Procedural generation works by using a base ‘seed’ along with complex mathematical algorithms to generate game content. Instead of building a universe from scratch with every nuance and detail shaped by digital artists a program is painstakingly coded to generate the detail and content instead. The ‘seed’ – often a random number – is input into the program and algorithms built with certain parameters generate the content as it is explored. As one layer of content is generated it then acts as the parameters for the next layer of content. The result is a new tool that is changing the way games are made. While not prolific this carefully controlled randomness is increasingly being used. Indeed, we have already seen it in the terrain construction of Minecraft and solar system generation in Elite: Dangerous, as pictured below.
No Man’s Sky, however, uses procedural generation for the entire game. For example, a seed number creates a universe with stars – approximately eighteen QUINTILION of them – at various coordinates. Those coordinates then act as the number seed for the planets and moons that populate each solar system. A planet’s coordinates then determine its terrain layout, life and so on. Certain parameters built into the algorithms ensure that content is not generated too unnaturally. Planets are not placed too closely to a host star and planet flora and fauna are generated in line with evolution and a periodic table. In playing it I have noticed reoccurring elements, however, this should not detract from the impressive efforts of Hello Games to expand the boundaries of programming and artistic expression.
No Man’s Sky was built by a small thirteen person indie development studio in the U.K. The result really is testimony to the importance of STEM (Science, Technology, Engineering and Maths) subjects in our school curriculums, vocational training and tertiary education. To craft every planet in No Man’s Sky without such an innovative use of programming would have literally have taken until the end of our own universe – some thirteen billion years away. Sean Murray, one of the co-founders of Hello Games, grew up looking at an unfiltered view of the stars from the remote Australian outback. Being in awe of such a view and wanting to explore the galaxy did not mean an unending pursuit to be an astronaut. That isn’t for everybody. What it did mean was using a talent for programming and collaboration with others to push the boundaries of virtual space-faring instead.
Every day at Do Space I witness kids, teens and young adults playing – often challenging – video games. For most, video-gaming is native to them. There are no boundaries as to what can be produced within a video game. Should they wish to transform an artistic vision or idea of their own into a game there is not a notion of ‘if’ but rather ‘how’. That is why community technology learning spaces like Do Space are so vital. Programming, computer science, information technology, engineering and maths are all inextricably linked to video gaming and are a vital part of the knowledge-based economies we are progressing into. Subsequently, no one should be excluded from participating due to a lack of exposure or resources, of which Do Space provides many. In this exciting transition there are many possibilities at hand – especially in immersive gaming – and I’m looking for to what our programming and design protégés can come up with next.