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 Archiving blog.megastructure.org http://blog.megastructure.org/2018/12/archiving-blog-megastructure-org/ http://blog.megastructure.org/2018/12/archiving-blog-megastructure-org/#respond Sun, 23 Dec 2018 15:54:33 +0000 http://blog.megastructure.org/?p=844 It’s been really fun to follow my thoughts and various projects over the years with this blog-like apparatus. But I haven’t been extremely active in this area for a while, so I’m moving it to a static archive on Neocities.org.

Thanks for visiting and taking an interest. I will try to keep these links alive for a while yet, so they don’t simply disappear off the face of the internet.

]]>
http://blog.megastructure.org/2018/12/archiving-blog-megastructure-org/feed/ 0
Kicking the tires http://blog.megastructure.org/2014/10/kicking-the-tires/ Sun, 19 Oct 2014 19:19:45 +0000 http://blog.megastructure.org/?p=833 It’s true that we’re probably not here, we do not exist, we are simply experiencing a memory or a dream, and there’s nothing but our own personal sensory impulses to back anything up. Furthermore, what if there’s nobody else at all, and this entire elaborate illusion is nothing more than a product of my [your] own imagination?

There’s no way to prove anything at all, but there’s a degree of confidence we can restore by experiencing things that “couldn’t possibly be” products of our imaginations. One way is by “going out”, and seeking “evidence” of external creation: faraway lands, miracles, relationships, religion, nature, serendipity, luck, magic, fantasy, coincidence.

Another way is looking in: delving into specialized fields and exploring their complexity. If something is unknowable to a human mind, it must not be a product of a human mind. As we discover more and more of a discipline or a theory, we learn how much more there is left unknown.

I think that at a subconscious level, we yearn towards these two extremes in everything we do, in order to convince ourselves that this is real. And by seeking and learning about these phenomena, to root ourselves therein and feign some level of control, meager as it may be, over our destiny and our environment.

]]>
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.

]]>
The creative veil http://blog.megastructure.org/2013/06/the-creative-veil/ Sat, 08 Jun 2013 15:41:22 +0000 http://blog.megastructure.org/?p=765 A while ago, I watched a video where a pleasant man explained how humans tend to increase their abilities until they are “good enough” in any given field, afterwards they tend to stop improving. He called this the “OK Plateau”. One of the suggested methods to conquer this plateau is to try and appreciate the work of those better than you with a critical and studious interest.

I don’t mean to imply that I have conquered my numerous OK Plateaus, but long before I watched the video, I’ve seen the work of others this way. I will often find myself peering through a window into the creative effort necessary to produce a given work. For instance, when watching a movie, the way the camera moves makes me think of the crew behind the equipment, affecting how the scene is captured. Sometimes I’ll take it a step further and try to imagine what the director was thinking.

It’s not a look “behind the scenes”, it’s more of a limited intuition into the technical creative process.

A good example of seeing nearly all the way through is with most of today’s comedians. Even the “shocking” ones aren’t too opaque. Being a comedian is, like a good illustrator, more about observing the world in a certain way. You go through life with certain filters in place (this appears to take a conscious effort), and you methodically record all of your thoughts. Add a few showmanship flairs, and you can make a pretty good comic routine. Yes, this is an exaggeration or an oversimplification. But it helps emphasize the ability of a small subset of humorous creatives to bring something truly special and new to the table. For example, Leon Arnott’s twitter writing is special, because most of the time I can’t even get a glimpse of the underlying process. His work is behind a creative veil, so to speak.

Here are some other examples of works that I’ve experienced recently, or have stood out in my mind, that demonstrate this creative veil:

  • The Haruhi Suzumiya anime — especially the “Endless Eight” episodes, which defy my every ability to discern how they were conceived and produced
  • Most of David Lynch’s work
  • The film Enter the Void
  • droqen’s Starseed Pilgrim, which remains a consistent yet impenetrable fortress of creativity, despite my long hours and diagrams
  • Phillip K. Dick novels
  • Music by Akufen — I know HOW he made it, I just don’t know HOW he made it
  • The MyZaza video — no matter how short it is or how many times I watch it, I still can’t figure out how it was made, or why. I hope I never find out.

I most recently experienced this veil with Liz Ryerson‘s latest endeavors.

SCRAPS

It began with her newly released collection of music & sound, Scraps. I hesitate to call it “experimental”, because the pieces sound so directed and purposeful. They may be disparate snippets, but there’s a strong coherence between them, definitely alluding to something grander that is utterly invisible to me. There is nothing random or thrown together, it all seems to serve something, something that, for me, is inaccessible. And I think that’s why I like it so much.

One of her blogs, l0stw0rlds, is of a similar texture. These images of hyper-obscure games, alluding to entire worlds that no longer exist, is crushingly wonderful. I don’t recognize nearly any of these places, and yet I’m instantly drawn into a nostalgic mood. And like her music, I can’t understand how these were made, or what thoughts stood behind them. Why do they strike me so?

Finally, her game Problem Attic which I have been playing in ~30 minute slices, and not yet completed. Its grain is quite thick, and the player is met with formidable impedance. The challenge of progression goes beyond the glitchy controls, relentless “enemies”, and strict goals — the entire game exists in a different plane, where the rules change often, seemingly trying to reject the player’s intrusion into this space. I perform actions in the game in order to get to the next level, but I cannot be sure if my actions are positive or negative. Am I breaking out of a prison? Am I the jailer? Am I reliving an endless Sisyphean struggle against a system I cannot comprehend? There aren’t any names for the sections, and players refer to them as the “first” and “second” parts, etc., which tells me that people don’t feel comfortable describing what they see in the game, which makes me feel that I am not alone in my inability to discern what is going on here.

These uncertainties are, again, due to my failure to see into the creative process from outside. This is what keeps me coming back, session after session, to throw myself against the jagged wall of Problem Attic. If I ever do finish the game, it won’t be because I “understood” it or “figured it out”. I will have completed just one stage of a process of understanding that may never be completed.

But ultimately, I hope I never find out. I want to continue interacting with this world, with my imperfect knowledge of it, and never crack the code. I’m glad Liz herself does not endorse any particular interpretation of the game.

It’s interesting to note that Liz spoke much about her troubles with the Stencyl game engine via Twitter, and therefore I have actually been exposed to a substantial amount of the inner workings of the game (from a technical standpoint). And yet, I still don’t feel I know how it was made.

In conclusion, the world is very large, and my experience of it is negligible. Mainstream media is authored by ≲1% of the creators, and represents ≳99% of the content that is visible by default. Untold fortunes exist outside of this narrow field of view. When it comes to revealing things to your audience, less is more. Go outside your experience to find wonderful things.

PS. Anna Anthropy recently wrote about the lost art of 90s web design, which strikes a similar chord.

]]>
The Kfar-Saba Indies: local game development http://blog.megastructure.org/2013/01/the-kfar-saba-indies-local-game-development/ Thu, 17 Jan 2013 07:57:41 +0000 http://blog.megastructure.org/?p=716 I don’t see myself as a Man of the Big World. But thanks to the internet, and Twitter in particular, I can soak up a lot of different world experiences without leaving my house. Why does anyone need to actually meetup physically anymore? Can’t we do everything digitally online?

This narrative has sustained me for a very long time. It took a trip to GDC last year to discover how incomplete a picture it draws. Everything changes when meeting face-to-face with like-minded people. The energies I witnessed there, with impromptu folk games, ideas thrown in every direction, and general excitement, were unparalleled.

Yes, there is a local scene in Israel. The GameIS people are wonderful and gracious. Meetings usually have an agenda (a lecture by someone from the “industry”, a screening of Indie Game: The Movie, Hackathons, etc.), and are generally large “events”. Events that give a feeling of hit-or-miss: if you didn’t show up, you didn’t go to The Big Event! You must not be serious.

And these are necessary as well. I’m glad we have a strong community, rife with technical and artistic proficiency. I’m glad we have multiple Global Game Jam locations, and a yearly Unconference that lets anyone speak their mind. And yet, something is missing.

A local meetup group. For anyone who wants to make games, no matter what their level of involvement or experience. Instead of making gigantic events, a low-profile, consistently-recurring meetup is the way to do it. Grassroots, get people who really want to be involved, and spread via word of mouth. This doesn’t mean reinventing the wheel: there are tens of these groups around the world. You meet every week or two. Learn from each other, share ideas, and get feedback from what you’ve made.

And thus, the Kfar-Saba Indies were born.

If you’re in the greater Kfar-Saba area, come join us every other Thursday, for a relaxed game-making meetup! We have an official Facebook group as well.

If you’re interested in doing the same, listen to what Andy Moore has to say about it:

 

]]>
Nostalgia: Late 90s http://blog.megastructure.org/2012/09/nostalgia-late-90s/ Wed, 19 Sep 2012 20:35:19 +0000 http://blog.megastructure.org/?p=706 I recently rediscovered George Buckenham’s amazing Games We Have Known and Loved, where he collects concise recordings of people talking about their favorite moments in games. It’s remarkable how so many different people can experience the same game in such different ways.

Listening to some of the accounts reminded me of a game that I really enjoyed, Star Wars Jedi Knight: Dark Forces II. I was in high school, and it must have been either 1999 or 2000. A friend from my class lent me a precious CD, holding a number of games that were … less than legitimate. This was before broadband internet was widespread, meaning the original game, which spanned (I believe) two whole CDs, had been stripped of its full-motion video cut-scenes and CD-quality music and compressed into a single .ZIP file.

Around that time, my parents had taken me to a Pat Metheny concert, when his trio visited Israel on tour. On the way out of the auditorium, we bought his album, Trio 99->00, which I still love today. This CD was in my computer’s optical drive a lot during this period, so while playing Jedi Knight, the familiar orchestral Star Wars background music was replaced with a modern American jazz trio. As I would explore the industrial factories and extra-terrestrial valleys, I might be accompanied by A Lot of Livin’ To Do or Capricorn.

There was a lot of mystery in the game, because I didn’t have those full-motion video cut-scenes to help tell me what was going on or what my objective was. I also used cheat codes because I was a huge sissy. Despite Jedi Knight being a first-person shooter, there was a third-person mode for when the light saber was used, in order to aid combat. I would use third-person as much as possible, because it was fun to control this character jumping around, waving a light saber. This resulted in me wandering around an empty level, looking for something to trigger the next level, listening to cool jazz and brandishing a light saber.

It’s hard to explain how calm and peaceful it was. To be sure, I was trying to get out of the level and move on to the next one. But the exploration had a special feel to it. Maybe some of this magic is rediscovered today in games like Proteus. And I think the Megastructure and its endless chambers may bring back other aspects.

EDIT: A video to help relive the experience!

]]>
Retrospective: B.Sc. Edition http://blog.megastructure.org/2012/07/retrospective-b-sc-edition/ Sat, 07 Jul 2012 12:15:54 +0000 http://blog.megastructure.org/?p=684 Note: this is a Very Long Post.

About a year ago, I finished the last semester of my Physics degree at Tel Aviv University. A few scary exams and written projects later, and I had completed my requirements. Two days ago, they announced a Higgs-like particle observed at the LHC. Yesterday, I received notice that my university user is about to expire. And so I feel the time has come for me to write a little about my own experiences. (Also inspired by a friend, turning 26, who wrote a few words to mark the occasion.)

For many people, and for me especially, a university degree is a voluntary act. My reasons had nothing to do with finding a job or getting “ahead”, because I had already been a professional programmer. Extremely confident with my capabilities, I chose Physics because it drew me more than any other exact science. I also thought it might help with “breaking into” the games “industry”. Because of my high matriculation grades, the thought of failure was quite far from my mind. I didn’t even take the first semester seriously, remaining to work part-time at my job (hastily remedied by second semester, when I quit). I also hesitantly add that while I was not pressured into higher learning, my family’s culture surrounded me with a sense that it is The Right Thing to Do. At the very least, people close to me who I respect greatly also have backgrounds in physics.

Israelis begin university relatively late in life due to mandatory military service. I started even later still (at 25), making me among the oldest studying for their bachelor’s. Being older didn’t make it much easier. I certainly wasn’t any smarter than my classmates, some of whom are shining examples of the brightest minds I have had the pleasure of meeting. This was, eventually, a great experience for me, and a step outside of being surrounded by programmer types all day long. There were programmers in our group, but plenty of others had different backgrounds and had been steeped in various professional (and non-professional) cultures.

Physics, science, and thought

When studying physics with others, one begins to notice two types of thought.

  • The intuitive: An intuitive physics student will study a problem by “feeling” for the answer. For this student, equations and formulae may be more of a chore or a hindrance than a tool, something to be left for the engineers to work out later. Qualitative answers are always better than quantitative ones, and theories become more of an abstract, cloud-like entity in their minds, rather than a concrete set of relations.
  • The methodological: This student has organized his or her previously-learned knowledge in a thoughtful manner. This organization may be either inside the student’s mind, or held in an external structure (like meticulously-taken notes and photocopies of all important material). In either case, when solving a problem, this student starts with the known values and carefully works their way towards a solution, walking from node to node of their organized network of information.

The obvious statement is that to be successful at physics, one needs to have a balance between these two types of thought. The not-quite-so-obvious statement is that if one has to choose between one and the other, the methodological type is far, far more important. (At least for this stage of learning.)

Intuition is extremely important, because only intuition can see beyond the myopia of our rulebooks and theoretical frameworks. However, intuition is also often wrong.

Studying physics typically begins with the most basic of concepts: Newtonian mechanics. While not simple or easy, it is not too challenging to understand that the symbols on the blackboard actually relate to things we experience in our day-to-day. Especially in our age of 2D physics-based games, I doubt anyone could look at a diagram of two weights on an inclined plane without immediately “running the tape forward” in their head. This miracle of human thought is remarkable and wondrous — but to rely on it is a mistake. Professors often talk of “developing your intuition” in each subject, but I think they really mean “understand the material better”. Having a system is worth much more than being able to visualize problems, because physics rapidly gets to a point where visualization is extremely difficult (for example: thermodynamics, special relativity, or quantum mechanics).

While we’re on preconceived notions, I’d like to mention religion and science for a moment. For both Quantum I and II, we had two different professors who were [apparently] extremely observant of the Jewish faith. How can someone hold religion in such a central part of their life, while teaching about quantum mechanics? Does god “play dice”? How does one reconcile these two seemingly opposite notions? This puzzled me for quite a while, and it wasn’t until I read Alan Watts’s The Wisdom of Insecurity (thanks to Wolfgang for recommending it) that I began to understand:

The clash between science and religion has not shown that religion is false and science is true. It has shown that all systems of definition are relative to various purposes and that none of them actually “grasp” reality. And because religion was being misused as a means for actually grasping and possessing the mystery of life a certain measure of “debunking” was highly necessary.

There are religious rituals and moralities and they can form a kind of answer in response to certain questions. Science offers insight into the mechanics of the world, answering entirely different questions. As the quote hints, there are overlapping areas, but for the most part, both of these disciplines entirely fail to bring a complete understanding of all there is to know. This rejection of the absolute struck a chord, and it made studying science easier. It suddenly wasn’t so important to try and find the ultimate abstraction, or the most general solution, because there may not be one. And it seemed possible that a person could pursue both science and religion without living in conflict.

Unexpected turns of events

Before my time at the university, I don’t know if I ever considered the concept of failure. Sure, things went wrong in my daily life, none of which could be termed an absolute failure. But subscribing to a three-year cram of fast-paced studies, graded by an uncaring staff with absolute finality produced a new option of true self-failure. Having to retake courses, having to extend studies beyond the basic six semesters, dropping out entirely — these are all modes of failure that I was suddenly exposed to. Furthermore, my own abilities started being called into question. I left the safe haven of being, in what was my opinion, among the best at my field. Instead of being humbled or spurred to greatness, I started experiencing stress-related health symptoms (which I won’t go into here).

Time has passed since then, and I am much better now. And maybe a little wiser for my troubles.

Pacing of studies

Three years is too short a time for this amount of material. If I have one criticism or suggestion for the university, it would be to shorten the curriculum or add another semester or two. The smartest students got extremely good grades consistently, that much is true. But we are not all geniuses, and I feel that I was always one step behind the material. If I had taken my time (and some students did this purposefully), I would take an extra year to complete my B.Sc. and learn each subject more thoroughly.

The feeling of being behind was emphasized by the way professors and TAs push through the material. There is a constant feeling of “let’s get through this rudimentary subject matter and get to the Real Stuff.” The problem is, even in your Master’s degree, you don’t really get to the Real Stuff. Maybe for your doctorate or post-doc. Good luck!

(Although I suppose this is a symptom of any educational system — constantly “preparing” the student for “real life”, forgetting that Real Life is actually happening right now, no matter where you are in your studies.)

The legacy

Most of my colleagues stayed to begin their Master’s degrees, or to re-take failed courses. I took indefinite leave of higher learning for the time being, turning my attention to creative endeavors such as game programming and drawing.

So what did I get out of my degree?

Everything they say about “new modes of thought” are correct. I can see things a little differently, I can analyze problems from a new viewpoint. I can read technical documents easier. It’s more natural for me to stop and come up with a plan before diving into making or fixing something. Maybe even some improvements to self-discipline.

I also can appreciate the academic bureaucracies better (something I don’t feel I will ever want to be a part of). What it means to research something, what it means to have to work with professors — even if I didn’t have to do much of either.

Furthermore, there was a strong feeling of knowing less and less the more you know. The close you get to understanding a subject, the more it shows you the true vastness of what lies beyond your knowledge (and human knowledge in general, as well). Similarly, I discovered subjects in physics that I really, really didn’t care for (Solid State physics comes to mind).

That said, I did learn new things. It’s saddening to say, but I’ve already forgotten many of them, though I’m sure that if I had to pick them up again it would be possible (with a lot of hard work, of course). I have a list hanging around of special subjects I grew especially fond of that I’d like to put here:

  • Harmonic analysis: one of the central themes in physics and engineering. Fourier is the simplest kind, but it pops up everywhere. Similar constructs include spherical harmonics and Bessel functions. Harmonic decomposition is beautiful, elegant, and incredibly useful. Learning how to build and use each kind was one of the most satisfying parts of my degree. Also related:
    • Self-adjoint differential operators.
    • Waves in general (linear waves, plane waves, spherical waves ….).
  • Analytical mechanics: one of the most eye-opening courses. An entirely new way to look at problems, all the while paving the way towards more advanced subjects (like quantum physics).
    • The seeming magic of the Lagrangian and Hamiltonian formalisms. Solving unthinkably difficult problems often with the greatest of ease.
    • Principle of stationary action, the quantum-mechanical interpretation, relation to Fermat’s principle of shortest time, Euler-Lagrange, etc., etc., etc….
    • Understanding the Hamiltonian as an operator, specifically the energy operator and the generator of the time-evolution operator (!!!!!!!!!!!).
  • Vector calculus: some of these tools were pretty nice (Stokes, Green, Gradient, Divergence theorems, etc.).
  • Special Relativity: About the least intuitive subject, and one of the most interesting. Extremely hard to really visualize. If you don’t believe me, see this video of a relativistic speed simulation. (General Relativity is even more bizarre, but I didn’t take that course.)
  • Maxwell’s Equations: concise, elegant, and the incredible inspiration for Einstein’s special relativity. There is even a covariant form that turns all four of these into one single equation.
  • Schrodinger’s Equation: Instead of providing deterministic laws of motion, this equation explains how a system is distributed statistically over time and space. Perfectly solvable for only a few special cases, and thus there are tons of approximation methods for “real life” systems. These aren’t much fun, but it helps to show the sheer depth and how much we don’t know about this quantum world.
  • Astrophysics: I really hated this course, yet it (and other lectures I attended) tickled a deep feeling of wonder at the scale of the universe. Dark matter, dark energy, exoplanets and strange objects, and uncountable stars. All sorts of things to discover there. If I were to continue studies, I would probably go in this direction.
  • EDIT — more things I liked!!
    • Complex numbers and contour integrals!! This bit of Cauchy magic is too cool for words.
    • Let’s not forget dimensional analysis and other approximation techniques. This skill might be trivial in some cases, but this is the kind of thing I literally use in the supermarket.

I also took an extra-curricular course in 19th Century Russian Literature, which was excellent. During my last year I used the central library extensively, reading books by Dostoevsky, Hesse, Joyce, Tolstoy, and Watts, among others. I also got pretty good at using Matlab and LyX/LaTeX.

“Academic” stuff I’ve done

]]>
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
80s corporate name and logo http://blog.megastructure.org/2012/04/80s-corporate-name-and-logo/ Wed, 25 Apr 2012 14:34:26 +0000 http://blog.megastructure.org/?p=662 Notch has offered to add names of indie game studios to the world of his upcoming game 0x10c, apparently as fictional hi-tech companies.

Megastructure Industries is already a tongue-in-cheek kind of name. It means to invoke Tsutomu Nihei’s fictional company Toha Heavy Industries, as well as give the feeling of a cyberpunk megacorp, with either millions of employees or a fully robotic staff (or both). We obviously build skyscrapers or planet-sized structures on a daily basis. It’s also a callback to Epic MegaGames, which was originally only a few people (and needed the most grandiose name possible).

I love the aesthetic of that era, where companies would spell out their techno-dream right in their name. Digital Equipment Corporation. US Robotics. Microsoft.

If Megastructure Industries had existed in the 80s, it would probably be called Megastructure Technologies, Incorporated.

I was so excited, I put together a logo that would probably work well as a letterhead for official correspondence:

(SVG version)

It uses the Computer font.

]]>