game – the megastructure development blog http://blog.megastructure.org tracking construction of megaprojects Sun, 23 Dec 2018 15:54:33 +0000 en-US hourly 1 https://wordpress.org/?v=5.0.2 Expression through play http://blog.megastructure.org/2014/04/expression-through-play/ Sat, 05 Apr 2014 08:21:18 +0000 http://blog.megastructure.org/?p=804

Among some recent thoughts I’ve been having is the idea that “play” is more important than “game”. When you play with a system, or with people, you engage in a testing of boundaries, an exploration of the configuration space. A game is just one kind of system supporting such an activity.

I’m fascinated by people who can take a seemingly closed system or game, and rework or reinterpret the goals to such a point that the original game loses all relevancy. One such field is TAS — Tool-Assisted Speedrunning. Usually, no holds are barred, and speedrunners exploit every bug they can get their hands on to shave seconds off their time, which often has the players running through walls or flying directly to the end boss. But sometimes the very idea of “completing the game” takes a back seat to simply showing off. (A recent example involves corrupting Super Mario World so thoroughly that the clever speedrunner actually reprograms the game to run arbitrary code!)

How far removed are these self-set challenges from the original intention of the game designers? How much richer? The game becomes an impersonal, arbitrary infrastructure for a means of expression that carries subjective, personal value.

But you don’t need to destroy the game to find it. Minecraft has no “goal” yet allows for expressive building and interaction with its many complex systems. Skate 3 allows the player to curate video replays of one of the glitchiest physics engines I’ve ever seen. Even America’s Army allowed players to throw their weapons to the ground, and I fondly recall trying to get the opposing team to do the same so we could peacefully cavort in an awkward jumping dance at the center of the map.

It’s wonderful when a game yields to personal expression.

A coworker of mine recently spoke proudly of how his 3-year-old daughter plays a tablet game called Rat Fishing. The player is told to brutally murder helpless rats by placing bits of cheese in strategic spots, luring the hungry rats unwittingly into death traps.

But my coworker’s daughter doesn’t play that way. Her self-set goal is simply to feed the rats. She enjoys watching them eat the pieces of cheese.

Another interesting case is a modified game of chess, invented by two daughters of a friend. I saw this photo (above) posted to Facebook and immediately asked what the rules were. My friend answered,

It’s a role based game. Pieces move at the whim of the player. They also converse, argue and have relationships.

A dry, closed set of rules suddenly becomes an open world, full of expression and intrigue. And yet the chess board and pieces are no accident — this is clearly meant to expand upon the well-known idea of a formal system. To me, it is a brilliant repurposing of the ancient game.

I, too, made a short game exploring this idea. Called Dressed, the game allows the player to dress in whatever combination of clothing they wish (from a closet I populated with whatever came to mind at the time). It’s a little bit of a parody of “customizable characters” from role-playing games and open worlds like GTA. But ultimately, I wanted to distill the most basic personal expression into an interactive format. You can see more info and play Dressed online here.

In conclusion: Like many aspects of game development, I believe popular opinion is misleading us. We don’t necessarily need to “hone our game mechanics”, or playtest until smoke comes out of our ears. We don’t necessarily need to curate the ultimate experience for the player. Maybe we need to take a step back from thinking we are in control at all, and let the game breathe and exist simply as a means for the player’s desire to express themselves. Maybe we don’t have to be so afraid that people will play the game “the wrong way”.

I’ve disabled comments — if you want to discuss this post, please join me on Twitter or use the Contact page.

]]>
So Twenty-One [Abandoned WIP] http://blog.megastructure.org/2013/12/so-twenty-one-abandoned-wip/ Sat, 28 Dec 2013 19:58:52 +0000 http://blog.megastructure.org/?p=787 I’ve been sitting on this project for a long while, and it’s time to come to terms with the fact that it will probably never be completed. So I’m releasing it and the source code in the very state it exists on my hard drive.

The game was inspired by (and features) So Twenty One by Sleepy Town Manufacture. This song is a free download on archive.org, but I also got permission from the creator to make the game. The idea was to have a short, interactive experience in time with music. There is a challenge involved (you can lose) but it was meant to be something anyone could play through in one or two tries.

I’ve exported my old SVN-based code to git, and uploaded it to GitHub. I hope someone finds it informative  or even helpful.

]]>
FPSTXT: the text-based first-person shooter http://blog.megastructure.org/2012/06/fpstxt-the-text-based-first-person-shooter/ http://blog.megastructure.org/2012/06/fpstxt-the-text-based-first-person-shooter/#comments Wed, 27 Jun 2012 20:03:58 +0000 http://blog.megastructure.org/?p=674

 

(Looking for the links to the game? Skip to the end of the post…)

June began with a game development event called 7DFPS: the seven-day FPS challenge. Participants from around the globe built first-person shooter games. I didn’t sign up, and my game doesn’t appear in the list, but the fact that the event existed was enough of an inspiration for me to try my own take on the genre.

Whenever a strict theme is chosen for any creative endeavor, I usually try to subvert it in some way, in order to fake a sense of freedom while remaining within the word of the rules. In fact, if I really want to go wild some time in the future, choosing a “no subversive themes” modifier would be quite out of the box indeed!

The 7DFPS challenge is most commonly referred to by its acronym, which gives quite a lot of freedom to the creative backronym writer. (Some people suggested making a 7-dimensional FPS.) I liked the idea of first-person being a literary term, so I turned to my old pal/nemesis: Inform 7.

Inform 7 is a tool for creating text adventures, which I have dabbled with in the past. Before I started on this project, I did a little hunting for something similar on the internet, but I couldn’t find anyone who had made an FPS using a text engine before. I got excited that my joke idea might carry some weight with it. (After finishing, however, Christer told me he had seen such a thing from a previous Ludum Dare — EDIT: here it is).

Text adventures are traditionally written in the second person (“You pick up ye flask”, etc.), a fact I completely ignored until I was almost done making the game. By that time, however, I felt like what I was working on was worth something in its own right. The idea of taking a thoughtful, semantic system and forcing it into the mold of a fast-paced, reflex-heavy game based primarily on split-second reactions made perverse sense to me.

I planned on having many more features in the game. More verbs, different enemy types with their own AI, multiple non-rectangular rooms, obstacles, having the room report only the locations of objects you are facing, finer-grain aiming abilities, weapon spread, etc. … Perhaps it was fortunate I focused on finishing it. In the end, it became more a turn-based grid game, similar to a roguelike, rather than an FPS kind of game. And thus I started with “7DFPS” and two weeks later returned with “14DSPRL”.

One thing that surprised me about the game was the reactions I got from friends who played it. One of them, Yoni, took the time to figure out the mechanics (by playing) and was able to complete the first version. He gave me feedback, some of which I incorporated into a newer, harder release. Other friends reported how they found the game fun, which I really wasn’t expecting to hear. I’m fairly sure that the game does NOT warrant extensive exploration, seeing as the mechanics are so simplistic. (I fancied myself a miniature Michael Brough while working on this project, but my two or three simple rules governing gameplay fall painfully short of his deep and complex game constructs.)

Before I link to the game itself, a word about using Inform 7. Inform is a fantastic language. It’s extremely different from any other kind of programming I’ve experienced. It’s extremely well-built for the task of making text adventures. And my favorite feature is how lovely it is to read through the code. It’s not quite poetry, but it gives a feeling that perfectly matches the concept behind the language — as you read through, you read facts and rules about the world you created. You can write “procedures”, but it’s really meant to be a declarative language. Which means that whenever you try to make a game that is NOT a traditional text adventure, reading the code you wrote starts getting a little ugly.

And this is my problem with Inform 7: not that the language is bad, but that I always seem to want too much from it. I try to make it something it isn’t, and this leads to a lot of programming pain. Because even though it is rather elegant in its design, Inform is extremely strict. When describing what you want in the game, you have to be extremely precise, and know the correct wording for each rule type. This is fine, because at the end of the day, a computer has to parse and understand what you are requesting. Also, the documentation is usually sufficient (with very many amazing and eye-opening examples). The problem lies in expectation. Because it is based on natural language, one might find Inform at odds with the strict semantics/syntax demanded of the programmer. Furthermore, finding out how to do something that isn’t mentioned in the documentation can be a hassle.

I think future versions of Inform will only increase its accessibility. The language is very rich, if strict. And when more and more synonyms are added, it will get looser and easier to use. That said, if you are not making a traditional text adventure, you probably should carefully assess your demands on the language before choosing Inform.

And with that behind us, let’s play FPSTXT!!

Original version

Harder version (also a few bugs fixed)

Each version can be played online in your browser. The full source is included.

]]>
http://blog.megastructure.org/2012/06/fpstxt-the-text-based-first-person-shooter/feed/ 3
Presenting FEX http://blog.megastructure.org/2012/04/presenting-fex/ Mon, 09 Apr 2012 18:06:27 +0000 http://blog.megastructure.org/?p=655 This Friday, after five years, Fez is finally coming to households everywhere! … if you have an Xbox, of course. And if that wasn’t enough to give me a Feeling of Missing Out, a select elite who got the game early have already flooded the twitternets with reports of how wonderful the game is.

My answer to this was FEX, which you can play right now, on many home computers, for free!

This game is notable for being one of the fastest games I’ve ever made — having conceived of the idea late in the afternoon, and completing it only a few hours later. Daniel Zoran graciously made the music (also very quickly and at short notice!).

Go ahead! Give it a try!

 

EDIT! See the FEX LONG SCREENSHOT teaser trailer:

]]>
Eli News Update http://blog.megastructure.org/2012/02/eli-news-update/ Fri, 03 Feb 2012 10:27:31 +0000 http://blog.megastructure.org/?p=600 == — == we interrupt this broadcast for a special news bulletin == — ==

  • This year I will be attending the Game Developers Conference in San Francisco, California. All arrangements have been booked, and I will arrive a few days earlier to poke around the city and meet with family and friends. If you are into game development and want to meet up, please let me know! Especially if you want to jam. I hope to document my experiences (photos and writing), so keep an eye on this blog.
  • I am currently seeking a new work situation. My CV is available in Hebrew and English — please contact me if you are interested.

== — == and now back to your regularly-scheduled programming == — ==

]]>
Escape Imprisonment at the Satanic Mental Hospital – Ludum Dare 21 http://blog.megastructure.org/2011/08/escape-imprisonment-at-the-satanic-mental-hospital-ludum-dare-21/ http://blog.megastructure.org/2011/08/escape-imprisonment-at-the-satanic-mental-hospital-ludum-dare-21/#comments Sun, 21 Aug 2011 23:04:28 +0000 http://blog.megastructure.org/?p=488 Ludum Dare 21: “Escape”

There were tons of features I wanted to add, notably the huge sub-plot where the character is actually a mental patient “escaping” their reality by inventing a punching hero. The game was meant to switch back and forth between these two realities.

Visit the Ludum Dare entry page here.

I made everything, but the Wifes donated some voices for the evil nurse.

Thanks for playing, and thanks to all who cheered me on!

Special thanks to Daniel Zoran moral support, and also for really powering through this competition. His entry is most impressive!!!!

]]>
http://blog.megastructure.org/2011/08/escape-imprisonment-at-the-satanic-mental-hospital-ludum-dare-21/feed/ 2
Player Non-Player Characters http://blog.megastructure.org/2011/05/player-non-player-characters/ Sun, 08 May 2011 15:33:23 +0000 http://blog.megastructure.org/?p=444 They stroll the alleyways, sit upon thrones, lurk in dark caves, and ply their wares in every item shop. Non-Player Characters make up a good fraction of the game population. In effect, these representatives are the face of the game world for the player. In contrast to enemies, the main verbs available to these individuals are monologues, dialogs and buying/selling/giving items.

It might be said that NPCs fit into specific typecast roles because that is how they are most useful for the game designer. In a world built out of limited content, there is little room for more than a token representation of “real” individuals, making the generic NPC rather shallow.

 

NPC

NPC - an experiment from January, 2010

Or are they? About a year ago, I made a sketch of a game called “NPC” (you can play it here, if you like – it even has music by Chen and graphics by Daniel!). Taking control of an ordinary peasant child, various adventurers may approach you and ask for a quest in order to gain experience and items. The quest is invariably to find a lost cat.

In this experiment, the twist that I found most intriguing was the multiplicity of “parallel worlds”, such as it were. Multiple adventurers are tasked with finding a lost cat, and each of them supply an identical-looking cat at the end of their quest. At the end of the game, a summary screen proudly displays your feline collection, as provided by adventuring heroes, the “player characters”.

 

It's dangerous to go alone! Legend of Zelda, 1986

Legend of Zelda, 1986

One of the most famous NPCs is the Old Man from Legend of Zelda (1986). In the midst of a grassy field, surround by mountains, a small one-room cave is situated. The Old Man, accompanied by his long white beard, red habit and sword have been waiting patiently for you, the player. Framed by eternally-glowing fires, the ritual begins. The magic words are uttered: “It’s dangerous to go alone! Take this.” The Item is offered (sword). Newly armed, the player can continue the quest.

So very late

Old Man is in quite a bind!

In the most recent Ludum Dare 48-hour game development competition, this “ritual” was the chosen theme: “It’s dangerous to go alone! Take this.” Many of the competition entries dealt with this famous Old Man scene, from all sorts of different angles. My take on the concept was to assume control of the Old Man himself, rushing from cave to cave and dispensing both crucial advice and Item against a ticking clock.

From this viewpoint, each cave corresponds to a different player, perhaps even a different game universe. This is because the Old Man, much like other NPCs, can exist in an plane orthogonal to the player. As we have become accustomed, the player can explore a single slice of the multiverse, whereas the Old Man and his various counterparts exist simultaneously in all these different worlds and zones. Furthermore – some NPCs exist in all parallel universe and at all time. Old Man will wait for you, the player, for hundreds of thousands of years, if you make him wait that long.

In fact, he is waiting for you right now.

Even though we take the part of a Non-Player Character, the player is playing, so should they be known as Player Non-Player Characters (PNPCs)?

One of the comments on my Ludum Dare entry (written by DrPetter) was this:

… Would be a lot of fun to see more of these “behind the scenes” games based on NPCs from famous titles. That could be a compo theme in itself, so many silly possibilities :)

Undoubtedly, peeking behind the curtain would provide much fun and entertainment, especially to those who are familiar with the old classic games. However, there are many issues to explore here. Instead of revealing the vacuum behind the façade-like characters populating games, I propose we embrace the mythology of cross-dimensional entities, and perhaps try and enrich their existence instead of empty it. (Does this help us understand the Many-worlds interpretation of quantum mechanics?)

Or, taken a step in the other direction: a single mind (the player) exploring a world of mindless automatons is reminiscent of solipsism. What can we learn from this game model that we can apply here on Earth?

How do these in-game entities change as we add other player characters (multi user games)? How do they change as artificial intelligence is improved?

What are your thoughts?

]]>
The Legend of Old Man – Ludum Dare #20 http://blog.megastructure.org/2011/05/the-legend-of-old-man-ludum-dare-20/ http://blog.megastructure.org/2011/05/the-legend-of-old-man-ludum-dare-20/#comments Sun, 01 May 2011 21:54:12 +0000 http://blog.megastructure.org/?p=423 This is my entry for the 20th Ludum Dare 48-hour game competition. The theme was “It’s dangerous to go alone! Take this.”
Screenshots:

Play The Legend of Old Man after the jump.

 


Play using the arrow keys (you can also jump with X or the spacebar). Type when prompted, and please excuse the terrible dictionary – it’s the best I could do during the short competition.

Here is the game – you might need to click on it to give it focus.

 

 

See original entry page for voting and more details.

Also available: complete source to this project.

The Legend of Old Man was built in Flixel, using the FlashDevelop IDE. Photoshop and GraphicsGale provided drawing tools, and Tiled was the map editor. I used a short Ruby script (included in source) in order to help compile the word list. FL Studio was used for the “music”, and I used Audacity and Increpare’s lovely bfxr for the sound effects.

 

]]>
http://blog.megastructure.org/2011/05/the-legend-of-old-man-ludum-dare-20/feed/ 1
Rocket Research http://blog.megastructure.org/2011/04/rocket-research/ Mon, 18 Apr 2011 09:31:58 +0000 http://blog.megastructure.org/?p=404 Rocket Research is an experiment that became a much larger project than its actual size. It’s too big a game to be given the small scope I gave it, and the idea is too small to warrant expanding the scope.

The concept stems from my experiences studying physics, specifically the schism between the real world and the representation of the real world in theory. As a larger concept, there is much more to explore here, and it may be fuel for projects in the future.

 

Play Rocket Research in your browser

or:

Although not a long game, Rocket Research boasts its own soundtrack, graciously provided by Daniel Zoran.

All sounds were recorded by me from household items (except the Geiger counter; that came from the university lab).

]]>
Mini-LD25 “Worst Game” – Chompre http://blog.megastructure.org/2011/03/mini-ld25-worst-game-chompre/ Mon, 14 Mar 2011 08:26:44 +0000 http://blog.megastructure.org/?p=376 I made a worst game for the 25th Mini-Ludum Dare competition, “The Worst Game I Have Ever Made”.

 

Trying to make something bad seems to relieve one’s self from the stress of making a great game on your first try. The competition is still open (for a few days at least), and I recommend giving it a shot.

Play Chompre here.

edit: BONUS!! Concept artwork!

]]>