Friday, November 29, 2013
Stuffinged. I mean stuffed.
Turkey day is fun. Recovering from the mashed potatoes.
Have some quick spot-the-difference games to help wake your brain back up:
5 Differences
6 Differences
4 Differences
Tuesday, November 26, 2013
Positive Feedback Loops
I'm going to go a little left field with this article,
starting with a principle of game design and applying it out to websites.
Positive feedback loops sound, well, positive, but they are
actually something to avoid in games.
Positive feedback is when a player receives a reward of some sort for
completing a challenge, which makes the game a little easier. On the surface, positive feedback sounds like
common sense: of course you should be
rewarded for doing a good job. Lots of
games are entirely designed around positive feedback. Leveling up in an RPG, or getting bigger,
badder, better weapons in a shooter. But
in these instances, the positive feedback is also tempered with negative
feedback: the game becomes harder, with bigger bad guys, and more of them. This prevents the positive feedback from
becoming a positive feedback loop.
An unchecked positive feedback loop would make the game
easier for players who clearly are already successful. Grinding, in essence, is using positive feedback
loops to get ahead and gain rewards for completing the same easy challenges
over and over. Playing the same easy
race to come in first and get the same prize money over and over is the racing
game equivalent of grinding. Often, a
racing game will only give you the money the first time you beat it, and
subsequent times do not yield any prize money.
This gives positive feedback for doing a good job without creating a
loop.
There are other rewards that can be given that, by their
nature, require no check or balance.
Beating a boss and getting a cutscene for a reward in no way makes the
game easier, but it is still a welcome relief to the player. Achievements (as much as I hate them) also
provide positive feedback without creating a loop--as long as the achievement
is a trophy or medal or visual effect, and another bonus is not included with
it.
I think by now most game designers understand the concept of
positive feedback loops, and how to avoid them.
Sometimes they sneak in, because designers are trying to give
less-than-stellar players a leg up, while accidentally giving positive feedback
loops to great players. This aspect
still has some kinks to work out, but overall I don't see many games with
horrendous positive feedback loops.
To me, the bigger issue is applying this knowledge out into
other areas. Positive feedback loops do
need to be avoided, and there are quite a few websites that mess these up.
Let's take YouTube as an example. Suggestions are oftentimes part of horrible
positive feedback loop. For instance,
once, a number of months ago, I watched an episode of Nostalgia Critic or
something related to it on YouTube. I
normally watch Nostalgia Critic on thatguywiththeglasses.com, which is their
official site, and they host their videos through blip.tv, so the only way
YouTube should know I like Nostalgia Critic is through the instance. Several months later, half of my suggestions
are still Nostalgia Critic episodes.
The other half of my suggestions are music videos, because I
occasionally look up music through YouTube.
All of my subscriptions are science-based shows, like
SciShow and MinutePhysics, so all of my suggested channels are science-based
channels, or channels that hover around the VLog brothers (Hank Green is the
host of SciShow).
These guys are awesome, but I don't need to worship them, YouTube. |
So I get three kinds of suggestions, but all are based on
things which I already am satisfied with.
When I want to listen to a piece of music, I search for it. When I want to watch a science-based video, I
check my subscriptions. And I never want
to watch Nostalgia Critic on YouTube anyway, I go to their appropriate site for
that.
What I would like
from YouTube suggestions is new content.
Since Google (owners of YouTube) is a trend-finding machine, they
probably can see an overlap between viewers of science-based shows and other
types of shows. Maybe 25% of science
show viewers also like political shows, for instance. I may not like political shows, but there is
a decent chance I will.
Instead, I'm stuck in a positive feedback loop with Youtube
content. I've proven to them I like
three types of shows, so my reward is more of the same. And if I watch those, I get rewarded with
more of the same, and more of the same, and it never ends, keeping me in a
loop, rather than expanding my horizons.
YouTube suggested you look at this same picture again. |
A great example of using positive feedback, however, is
Pandora. Pandora is a music service that
offers you new music to go with what you already like. So when I type in a band name and create a
new station, I'm sometimes given that band, but I am also given other bands
that have similar sounds, or are even only tangentially related. When I give positive feedback about a song I
like on the station, it uses that information to expand my horizons even
further. Instead of assuming I'm liking
the song because it's by a particular artist, it deconstructs the song and then
asks me to listen to music with a few similar parts.
So it uses positive feedback to challenge my music tastes.
It never gives me something ridiculously out there that is over my head,
but it slowly introduces new sounds for me to get used to and learn to enjoy
(or gives me new music I already enjoy but never knew I did).
The only thing I don't quite get about Pandora is that is seems to think Red Hot Chili Peppers goes with everything. |
When a game has a positive feedback loop, it makes the game
boring. When a website has a positive
feedback loop, it insulates the user from challenge, whether it's challenging
tastes, or viewpoint, and creates an echo chamber, which can become dangerous. Heck, this expands to everything: Mitt Romney thought he could not possibly
lose the last US presidential election. He was stuck in
a positive feedback loop and became insulated from alternative voices, so his worldview was not challenged.
But I digress.
I found it rather weird that Google wants to give "personal"
results, both in the search engine, and in YouTube comments now (and possibly
other places I don't know about).
Personal results seem to be a positive feedback loop that does nothing
but damage the experience for the user.
Google/YouTube is just one example of many, of course. Website designers, social media designers,
etc. need to watch out for positive feedback loops just as much as game
designers do. Perhaps even more so. Because a positive feedback loop in a game
only ruins one game. A positive feedback
loop in other aspects of life can ruin a mind.
Friday, November 22, 2013
Dev Log: Horror Text Adventure #30
Not the most visually stunning game, but a screenshot every once in a while is still nice. |
Fixed a bug where the player tried examining something that
did not exist and it led to a runtime crash.
This was because when checking the player's inventory for that item, if
there was nothing in the player's inventory, the items were simply set to null,
so they had no type. So it was trying to
check a type when the variable did not even exist. Easy fix, but error checking sure makes code
longer.
Speaking of examining, the player can now type "look at
<item>" and "look <item>" in addition to
"examine <item>". Bonus
side effect: dictionary function now looks cleaner because huge examine code is
moved to a new function. Similarly, the
player can say "take <item>" and "pick up
<item>".
The player can also type slightly shortened commands for
movement, so instead of "go west", they can also type "go
w". I know that old text adventures
had very simple commands like just "w" to go west, but just for the
moment I don't want it to be so simple, because I wouldn't want a player to
accidentally move to a new room when they are trying to do something else. So the player has a variety of ways to move,
by saying "go", "head", or "move" as the first
word, and then a direction or abbreviation of the direction as a second word,
so four characters is, I think, short enough for now. I think it's tough enough to come up with all
possible English variations without getting into abbreviations. Yay language.
The player can now "chat". That is, if they type "/c" and then
a message, their message appears in the chatbox. Of course, this is not exactly hooked up to
the internet yet, so chatting simply displays in your own chatbox and doesn't
go out to the world. But the code that's
in place will be replaced (or perhaps added to) once I start with the
multiplayer (which will come much later).
I improved player system messages relating to input, by
saying exactly what the dictionary didn't understand. So if you type "go wesr" (misspelling
"west") it will tell you it didn't understand "wesr" rather
than giving a generic "I don't understand this" message. One bug about this, however, is a conflict
between number of words in the command and the keywords. So you can say "pick up blah" and
you'll get "I don't understand 'blah'," which is what I want, but if
you say "pick blah" you'll get "I don't understand 'pick',"
which makes no sense. I'm pretty sure
I'll need to overhaul the way the dictionary works at some point.
Also fixed room descriptions so now items in the room are
broadly defined ("There is a bed here.") upon entering the room, and
longer descriptions ("The pillowcase has bloodstains.") are reserved
for examining the item. (That's how I
discovered the bug in the first paragraph above).
Also threw in a couple more description sentences to
test. Now the player may get a varying
number of description sentences. Works
ok for now, but still needs cleanup (and probably a cleaner way of making them
altogether).
Lastly, you can quit by typing "/quit" instead of
just clicking the X in the corner. Still
example commands to create, but five down, three to go is a nice place to be.
I like productive days.
Tuesday, November 19, 2013
Dev Log: Horror Text Adventure #29
Barriers work properly now.
If there is no room nearby, it makes a wall (same as before). If there is a room nearby, but there are no
barriers in that room, then the current room makes a barrier (randomly). If there is a room nearby with a barrier
already set up, the rooms are connected by that barrier. I believe it's set up by pointer (I hope),
rather than duplicating the type.
Also implemented windows fully (as fully as any other
barrier type, that is), so now the player can go through a window to get to the
next room. It's identical to a door at
the moment. I'm pretty sure I can find a
better way to put the barrier descriptions in.
Right now it's copy-pasting almost identical code a ton of times,
varying for direction. Hopefully I'll
figure that out before the 18 if statements balloon into 300.
Also a little code cleanup.
Sometimes I wonder what I was thinking when I have a five line block of
code with a variable definition and an if statement that can simply be reduced
to one return statement.
Friday, November 15, 2013
Physical Fitness Friday
That is to say, for me. Lots of yard work today, and more all weekend and some next weekend, I suspect. So no post today because it hurts my fingers just to type even this much. We'll see what I can accomplish for Tuesday. Sorries!
*This has been a friendly PSA reminding you to get at least 15 minutes of exercise daily.
*This has been a friendly PSA reminding you to get at least 15 minutes of exercise daily.
Tuesday, November 12, 2013
Dev Log: Horror Text Adventure #28
Doors exist slightly more properly now. At least, any given direction with a room in
that direction either has a passage or a closed door. If it's a passage, you see what's nearby; if
there's a door, it just tells you that there's a door (so we assume it's
closed, basically). Doors don't lock
yet, which is good because I haven't programmed keys yet.
But the barriers are bugged.
I get no compile or runtime errors, but sometimes there's a door on one
side, and an open passage on the other.
This is something I never noticed, because passages and walls were
clearly defined by whether there was an adjacent room. But now I see I messed something up, in that
barriers are not between rooms and don't connect right, but rather a property
of rooms. I thought I had made them
pointers, but I guess adjacent rooms don't actually point to the same barrier. This will be a fun bug to figure out, since
there are a few places it could be, and nothing is immediately obvious. Yay logic errors!
I may have to redo the barriers from scratch and rethink the
system if I can't ferret out the error.
Friday, November 8, 2013
Dev Log: Horror Text Adventure #27
Items that are containers can now only hold a limited,
predefined number of other items. Again,
I expect to change this and eventually come up with sizes or something, but for
now it's a quick hack that at least puts a little bit of the functionality in
there, so I'll know to go back and change it later, when I realize I can put a
bed inside a bed, or something.
For now, upon creation of each item, there is a vector for
other items, and that vector has a set length.
So for a dresser, for instance, it's set to four, so there can only be
four or less items in the dresser. At
present, no items start in the containers, and the player can't discard items
in any fashion, so containers aren't precisely interactive.
Tuesday, November 5, 2013
Manhunter: New York and Manhunter: San Francisco (Forgotten Diamonds)
Back in the adventure game days, Sierra On-Line was one of
the top dogs in PC gaming. Lucas Arts
was a major competitor, but Sierra had franchises that were hard to
topple. If a game had the word
"quest" in the title, it was a Sierra hallmark: King's Quest, Space
Quest, Police Quest, and Quest for Glory (formerly Hero's Quest, but changed to
avoid confusion with the board game HeroQuest) were among their best-sellers. They also had cult favorites like Leisure
Suit Larry, and the awesomely bad Phantasmagoria FMV games.
Bad acting, bad bluescreen, bad puzzles, bad CGI... sign me up! |
There were a few series, however, that didn't get far off the
ground, because Sierra wanted to concentrate on sequelizing their biggest
sellers, so some of the most intriguing games got forgotten. Among them was the Manhunter series, a pair
of sci-fi/horror adventures.
Phantasmagoria becomes a cult classic, and this gets left in the dust? There is no justice in the world. |
In the far-off future year of 2004, Earth has been invaded
by an alien race of giant flying eyeballs called Orbs, and humanity has been
enslaved. All humans are required to
wear same-looking robes, and remain completely silent at all times. Chips are implanted in their necks for easy
tracking.
You are a Manhunter, and your task is to solve crimes being
committed by a resistance group. You get
a laptop to help you, and you must investigate crime scenes and try to figure
out the identity of murderers and terrorists.
The problem is that the GPS trackers in people's necks only track
bodies, but don't give IDs, so you can watch logs and track individuals, but
you can't tell who they are without some detective work.
Something something political joke. |
And although you start off working for the Orbs, you soon
become embroiled in a deeper mystery that reverses your allegiance and forces
you to commit crimes yourself, unraveling new strands that show even more
horrifying evildoings of the Orbs (as if just enslaving the human race wasn't bad
enough).
Thrown in the mix are a variety of minigames to keep you on
your toes. These are generally quick reflex
games, like one where you must throw knives between a man's fingers, to stealth
games, like sneaking through a warehouse and avoiding robot guards. The minigames generally can have their
difficulty settings changed, so if you find one too hard, you aren't stuck.
Hint: Always put this one on Easy mode. |
Even if you lose these, or die in any other nasty way, it
wasn't a big deal like in most of Sierra's other games of the time. In King's Quest, for instance, you had to
save your game every couple of minutes so you could load if you died. In the Manhunter games, you were brought back
to a point shortly before your death automatically, so saving was only to quit
and come back later. Unfortunately, like
other Sierra games of its day, you could get stuck being a dead man walking, so
strategically placing a few saves is still a necessity. This is one of the only flaws in the games,
though by today's standards, it's quite a big one.
Excusing the arcade-style minigames, most of the game is
searching for clues and trying to put together different signals and
symbols. Since you can't talk (and
neither can anyone else), you either have to communicate by writing, vague hand
signals, or showing important objects off to gain the trust of suspects,
witnesses, and others in the resistance.
Keep a pad of paper handy and take a lot of notes.
Every word of this confused me as a kid. |
Though the Manhunter games keep you in suspense, and can be
pretty creepy and frightening at times, there are plenty of light-hearted
moments to relieve the tension, as well, usually by way of Warner
Brothers-esque slapstick. My favorite
funny bits, however, are very dark and very subtle bits of text. In those cases, the jokes are some serious
implications and raise the stakes when you understand them. Though I won't give an example so as not to
ruin anything, I will say that if you catch the jokes, you'll be laughing your
head off and your heart will be pounding in fear at the same time.
This, however, is not a funny bit. This bit will make you cry. No, seriously. |
The puzzle-solving can be quite devious, and require a fair
bit of out-of-the-box thinking, though nothing as ridiculous or unfair as some
other of Sierra's games, so rarely will you get stuck for too long, as long as
you understand what you're looking at.
Oftentimes a shift in perspective is all you need.
It may have taken me slightly more than four years to figure out how to get past this screen. I am ashamed. |
Although they are not numbered, Manhunter: New
York is the first game, and Manhunter: San
Francisco is the second, picking up moments after New York ends. A third Manhunter game was meant to be set in
London, but it
was cancelled in favor of continuing other Sierra franchises. The Manhunter games did not sell as well as
King's Quest or Space Quest, so they were dropped. It's sad, really, because they were extremely
original, spooky, funny, and stick with you for a long time. I've had more than one dream inspired by
these games.
Look for them on abandonware sites, and you can probably
find them. It also helps if you have a
beepy-boopy internal speaker for the sound.
Surprisingly good music, too!
Also, this is the least gory crime scene you will see. Be prepared for lots of blood. |
Friday, November 1, 2013
Dev Log: Horror Text Adventure #26
The player now has a limited inventory of two items. Previously, the player's inventory vector
could be expanded indefinitely each time they picked up a new item. I may mess with it later so a player can wear
pants with pockets, or a backpack which lets them carry more, though I'd want
it to be realistic in terms of the size of things (no sticking sleds in your
pocket). At the moment there are items
which can hold items, like dressers, and they can currently hold an infinite
number of items, so that'll need to be fixed too later.
That's all I did this week.
Halloween is a fun holiday.
Subscribe to:
Posts (Atom)