Monday, October 25, 2010

October Horror Season 2: Day 18

This night's movie was "Se7en" starring Morgan Freeman, Brad Pitt, and Kevin Spacey.



I first saw this movie several years ago at the recommendation of a friend of mine in High School.  At that point I hadn't really conceived of a good movie that ran at a rather slow pace and used horrible, depraved crimes as something other than "AHA!" shocking gross-outs.  Se7en presents these murders so matter-of-factly, even while its characters wretch on screen.  To a degree I think the evenness of the treatment between routine police work and investigating mutilated corpses with deadly sins written in blood does the film a disservice, dramatically.  On the other hand I can see it might be trying to make the point about the tediousness of work and the horrifying banality the killer sees in every day life.  This was also one of the first movies I'd seen with Brad Pitt in it, and back when I originally saw it I was surprised to learn he was a very good actor.

While it's more a really tense drama with a few shockingly gross scenes than a thriller of any sort, it's still a really well done movie.

Tomorrow will have been "High Tension"

Sunday, October 17, 2010

October Horror Season 2: Day 17

Day 3 of Serial Killer week's feature presentation is "From Hell".  This 2001 film was directed by the Hughes Brothers (previously known for Menace II Society and Dead Presidents) and based on the Alan Moore graphic novel.



Now, I confess I've seen this movie before, and it is one of my favorite movies.  I don't know if it's Top 10, but I've always really enjoyed it.  It seemed to be something that was artistic and stylish but still accessible a violent, so I felt I could enjoy it without feeling like a brute who just loves bloody movies.  I think the assessment still holds up, but after repeated views and thinking about this after some slight "Film Schooling" by my better half, it's probably not as high art as I originally thought.

In fact, part of the reason I probably noticed the filming style was how heavy handed the use of angle and colored lighting was in the first act of the film.  Later on, they seemed to film more using natural white light and enhancing certain elements with color.  From what I understand from the DVD commentary the film was shot mostly chronologically, so it could've just been the brothers getting used to directing a movie like this, or perhaps some additional budget being allocated to allow them to film on locations instead of sound stages.  Either way, after the funeral scene the quality of the lighting improves significantly.  Also, while I really enjoyed the graphic novel style angles and contrasts in the early movie, I will admit that the later style feels a lot more natural while still maintaining some signatures (like the shot of Jack walking up the ladder shot from underneath the carriage).

Aside from the shaky start cinematography-wise, there really isn't much playing against this film because it's still very well directed and very well written.  The cast includes Johnny Depp, Robbie Coltrane, and Ian Holm, so the acting is all very good.  Even the lesser known actors and actresses playing the Masons and the Whitechapel hookers are very good.  In fact, the worst casting choice was probably Heather Graham.

This almost hedges out Feast as my favorite movie of the month so far, but I still love the prodigious amount of unapologetic gore Feast pumps out.  If I was trying to seem higher class than that, though, I'd put From Hell up front.  Definitely see it if you haven't.

Tomorrow night was supposed to be High Tension, but due to already having the DVD and needing to catch up, we watched Se7en.

Saturday, October 16, 2010

October Horror Season 2: Day 16

For serial killers day 2 we watched "Horsemen" from 2009, starring Dennis Quaid.



For a movie written by the man behind "Doom" and "The Expendables" and directed by someone who primarily does concert videos, this is surprisingly competent.  Unfortunately as a good thriller it falls flat.  The direction and the editing is jumpy and often confusing.  The writing isn't horrible but it's not too impressive either.  They seemed like they wanted to take the Pseudo-biblical overtones of "Se7en" and mix in a touching father/son reconciliation story, what they ended up with was a mess.  Don't get me wrong, the movie was sick and disturbed, which helped as a payoff but it couldn't save it.  There was no investment in the characters, especially not the victims since they barely even mentioned most of their names.

And the ending twist of Crying Emo kid Apocalypse was just sad.

Thorough disappointment, since "Se7en" already exists and does the same sort of thing so much better.  As much as I enjoy visiting Dennis Quaidia and President Dennis Quaid, I can't recommend this either.

Stay tuned for "From Hell".

Friday, October 15, 2010

October Horror Season 2: Day 15

(Please note:  This and the next several days will be back-dated to appear on their correct day while I play catch up.  I was not able to watch for several days due to unforeseable circumstances.)

Day 15 kicks off Serious Serial Killer week with 2007's "Zodiac" which stars Robert Downey Jr and Jake Gyllenhaal among other big names.  Really an A-list cast.



Directed by David Fincher the film is just about guaranteed to be incredibly well constructed.  While I'm sure there's limitless possibility for film-nerding on this one, for a layman it just really didn't seem out of the ordinary.  It was good, no doubt, but I couldn't really interest myself in the shots unless something was actually happening in them.  With a film that clocks in at ~2.6 hours, holding attention is really important.

A good job is done here and I didn't really find myself wandering away from the movie for too long.  The only thing I could really hold against it is that in certain places they did a lot of time skipping, so you'd see "2 weeks later", and then maybe 35 seconds of film, and then a fade and "3 weeks later".  I'm told they did this to stay accurate to the actual time line of the case as laid out in the book, but it's really distracting when it happens so quickly.  If you've ever seen the Sphere adaptation, they stuck the actual chapter names from the book as transitions between sequences and it really cut up and ruined the action.

Aside from that, Downey Jr is always a pleasure to watch, even Jake isn't bad playing the doe-eyed cartoonist.  He fails a little as the serious journalist later, though.

Definitely not bad, but I wouldn't really do a recommend on this.  I guess maybe since I'm too young to remember the Zodiac news coverage, if it had been my time I might be a little more interested in it.

Tomorrow serial killers week continues with "Horsemen"

Thursday, October 14, 2010

October Horror Season 2: Day 14

Monsters week is over after tonight's viewing of 2005's "Feast" starring Balthazar Getty, Henry Rollins, and Jason Mewes.



I wasn't too sure what to expect here since it was a pretty random looking Netflix recommendation, but I knew things were going to turn out well about 2 minutes into the film when each character was introduced with a still frame write up that included snarky "Fun Facts" and "Life Expectancy".

The whole movie is set in a dive bar in the boonies of some undefined country where a bunch of sad losers gather more out of habit than interest.  Suddenly "Hero" bursts in and warns of a monster attack, and promptly dies.  He is replaced by his girlfriend, "Heroine", who's life expectancy is given as something along the lines of "Better than the last hero's, we hope."  The movie is well aware all its characters are really caricatures, but instead of becoming self-parody it just refuses to care.  The "So what?" swagger really carries the audience through what always turns out to be the most boring part of any "survival" monster movie:  The group's internal strife as characters fight for dominance or personal escape. There's all the requisite back stabbing and accidental death you should expect, but it just slides past so smoothly.  All too often it feels like movies in this genre hit a point and have to slam on the breaks so they can have some good "human" drama before resuming the pointless killing, in Feast it makes sense.

Also like Slither last night it plays itself just amusing enough by its own ridiculousness to avoid having to make jokes at its expense.  However the blood and disgusting gore is turned up several points, which makes it slightly difficult to watch in parts...but how often does a movie actually make you need to turn away from the screen because it's too gross?  At this point even Saw movies are so hilarious you just kindof watch them and go "Oh, well lookie here.  This character needs to remove that other character's sphincter with this rusty scalpel and carry at least 12 pounds of fecal matter and intestines to this rusty bucket without spilling anything on the electrified wire before the timer runs out and the pear of anguish surgically inserted into their chest cavity expands.  Yawn."  (Also, Saw producers:  You are not allowed to steal my idea, if this shows up in a Saw or Hostel sequence I'm coming after you.)

In short, it was so good I'm actually planning on getting the 2nd and 3rd movies to see what kind of dive the series took.  Knocks Slither out as best movie of the month thus far.

Tomorrow Dramatic Serial Killer movies starts with "Zodiac".

Wednesday, October 13, 2010

October Horror Season 2: Day 13

On Tuesday the 13th we watched Slither starring Nathan Fillion.



Slither is part of a new batch of monster movies with the old-school "small town horror" aesthetic but modern production values, and it was a hell of a lot of fun.

It managed to maintain a certain air of light-hearted fun without actually being funny, the situation and the way everything was put together was just so weirdly amusing on its own the movie didn't feel the need to force some more jokes.  Plus it was absolutely disgusting, especially at the end during the final transformation of the Grant/Alien/Monster/Zombie thing.  Again, not so over-the-top like Dead Alive was.  The monster was also worthy of note since they never really went so far as to define what it was, where it was from (except SPACE), what it wanted to do, or even really how it worked.  So whatever they decided they needed the monster to be capable of, it suddenly was.  But they didn't abuse the mechanic too much so you were never sitting there going "Oh.  Yeah, of course it does THAT now too!  The hell, movie?"

This is probably the best movie of the month so far since it was really fun to watch and well paced but also bloody and gross without becoming ridiculous.

Monster week ends tomorrow with Feast.

Tuesday, October 12, 2010

October Horror Season 2: Day 12

Day 12's movie was the Wolfman (2010) starring Anthony Hopkins and Benecio Del Toro.



I didn't read many reviews of the movie, but I did see it reviewed by Escapist's resident film geek Movie Bob and he gave it a fairly lukewarm reaction.  His complaints stemmed mostly from the meandering nature of the movie which had been rewritten and redirected so many times it suffered from a sort of schizophrenia.

On my watch through I couldn't really see the jumpy nature, but I did notice a few things felt a little tacked together.  The first half of the movie was pretty dull, to be totally honest, I know it was trying to build some kind of tension but I couldn't stop making jokes about Hugo Weaving wandering around calling everyone in town Mr. Anderson.  All of a sudden, immediately following the attack on Benecio's Lawrence Talbot, it took a sharp turn for the AWESOME.  Out of nowhere there were creepy shots of some deranged kid, talking statues, jarring flashbacks, and VERY well done gore.  It got bloody real fast and then sprinted across the finish line.  I got a little confused about exactly what happened towards the very end when they started killing off named characters, but it didn't matter because it was still fun.

Definitely a recommend, even if the first half was a little on the snoozery side it pays off by the end.

Tomorrow:  Slither.

Monday, October 11, 2010

October Horror Season 2: Day 11

For monster week day 3 we watched 1997's Mimic starring Mira Sorvino and Josh Brolin.



I wasn't sure what I was getting into here.  I remember seeing the preview when I was younger but didn't really think much of it, it looked like a fairly boring standard movie.  I didn't realize at the time what Guillermo del Toro was capable of it.

The movie was well paced, well written with good characters, and well shot for being - by virtue of its time - dark all the time.  Although, the exposition seemed a little forced at times.  The creature design was nicely creepy, and well split between CGI and models.  I was really, genuinely impressed with a seriously entertaining movie with good portions of creepy, action, and gross coming out of the premise "6 foot tall killer cockroaches".  I might even go so far as to check out the sequels, but everything about their creatives teams are different so they might not play nearly as well.

Tomorrow it looks like we'll finally get our netflix DVD so the movie of the night will be Wolfman.

Sunday, October 10, 2010

October Horror Season 2: Day 10

The Host is this year's first non-English movie, also I believe the first foreign film.



Normally I tend to shy away from foreign films, most of this is because I really like my movies to be in a language I understand...this restricts me to English language movies and French children's film for ages 0-5 years.  Every so often I make an exception, last year's Dead Snow (Norwegian) was phenomenal.  Although I still found having to read subtitles distracting, I couldn't help but admire the sheer size of director Tommy Wirkola's sack:  Filming bloody zombie Nazis in broad daylight against a snow-covered mountain.

This year we watched The Host.  It was dubbed, which removed the subtitle annoyance, although it would've been nice for the Korean text on television to have been translated.  I really enjoyed the movie, mostly because the monster was beyond amazing.  Released in 2006, it has better integrated CG than any American film I've seen since then.  Michael Bay could take a lesson.  Also, despite the monster itself not looking too scary at all it was pretty frightening when it appeared because of the way it moved.  I thought this aspect was enhanced by the film's general lack of shaky cam.  Again, Michael Bay could take a lesson; so could J.J. Abrams.  When the thing was on the screen you were forced to pay attention to it.  What hampered the movie, in my opinion were the random attempts at slap-stick comedy.  It would have been better served playing completely straight faced.

All in all this is one of the better creature features I've seen, even if it did have some WTF moments and clocked a little on the long side.  The death of the monster was excellently well played, although they had mentioned something towards the beginning of the movie I wish they would have delivered on.  Definitely worth watching.

Tomorrow, if we get it, will be Wolfman.  Otherwise, tomorrow will be Mimic.

Saturday, October 9, 2010

October Horror Season 2: Day 9

For day 2 of Monster week we've been forced to substitute "Wolfman" with 1972's "ZaAT", as presented by Mystery Science Theater 3000.



There's not much to be said about this.  While last night's bad costumes and action were reminiscent of classic Kirk-era Star Trek, this had more in common with bad 50's/60's monsters:  The lumbering, emotionless, man in a bad rubberized suit.  Half the time I thought the actor was literally drunk and stumbling through the set.  The narration was pure corn and the plot made almost no sense.  I really am thankful that scifi and horror have grown past this as genres.  Also, the MST3K crew's jokes and associated skits were pretty funny as usual and definitely kept my interest over the hour and a half of ZaAT's run time.

Since there is no mail delivered on Sunday, tomorrow will be "The Host", an import from Korea.

Friday, October 8, 2010

October Horror Season 2: Day 8

Monster week begins with 1982's "Swamp Thing" directed by Wes Craven.



Now, I had watched the 1990's TV series as a child and was told this was a horror movie so I expected a campy genre piece trying to play it serious.  What I got was actually a pretty good precursor to the show.  What I didn't get was a horror movie.

The story was surprisingly engaging for early 80's "Science Gone Wrong" cheese, and the cheese factor was actually quit low.  They didn't play too much beyond what they were able to do, and thankfully didn't even TRY to explain the science...that shit just worked.  The swamp thing suit was actually pretty good, era considered; and there were very few points where the though that this was a dude in a green painted wet suit really got in the way.  Arcane's post-formula form was pretty retarded looking, though.  No real save there, it looked like a retarded man-bear-pig fighting swamp thing with a broadsword.

Aside from the bright 80's camp of the whole thing, there's really nothing to set it up as a bad movie, actually it's a decent old style action flick.  For my money the best swamp thing is still the 1990's live action TV show.  Both movies, and the series are available streaming on hulu.

Day 9's movie will be:  Wolfman, unless the DVD doesn't come in time...in which case we'll watch "Zaat" with Mystery Science Theater 3000.

Thursday, October 7, 2010

October Horror Season 2: Day 7

Vampire week concludes with 1987's "The Lost Boys" starring Kiefer Sutherland and the Coreys.



I was looking forward to this one because when I was but a wee lad I took a "College For Kids" course about horror movies and monsters taught by a Professor R. Cane.  It was pretty neutered by necessity, since you can't really show the full gamut of gore to a class of pre-pubescent boys; however, The Lost Boys was tame enough and apparently "classic" enough for a few scenes to make the cut.  So based on my limited preview of it and the implication that it somehow inspired vampire movie lore, I was pretty excited to finally see it.

After having watched it, I do not find myself disappointed.  It's not the groundbreaking film I may have thought it was when I was younger, if I had seen it then I probably would've been disappointed.  I've since developed a more even perspective and had brought down my expectations, and at that level it was actually pretty good.  I enjoyed watching it and thought the vampires were pretty imaginative.  They actually looked like they may have played a large part in influencing the Buffy The Vampire Slayer vampires, more so the series than the movie.  Also, considering that last night I watched Dracula 3000 which have vampires in coffins in space 1000 years in the future, I really enjoyed that the Lost Boys vampires didn't sleep in coffins.  Actually, they had funky mutated bat feet that let them hang from the ceiling of their cave, which would've looked supremely creepy at first if it had not been for Bill S. Preston, Esquire's weird-ass mullet.  The vampire action aspects were all very well done, although the kill scene at the end where blood shoots from all the plumbing in the house was beginning to remind me of Peter Jackson's Dead Alive.

The movie suffered, actually, because of its vampire hunters.  The entire comic shop hunter plot was made of pure cheese but played so straight by Corey Feldman it almost hurt.  The odd "Oh yeah, we probably ought to include a romance" aspects of it also brought things down.  I did enjoy the fake-out twist at the end, despite living in a post-Shyamalan world.  I would enjoy a version of the film with this stuff taken out and focusing purely on a divorced mother with 2 teenage sons moving to an unfamiliar town that just happens to be teeming with vampires to live with her father.

Tomorrow we begin Monster week with "Swamp Thing"

October Horror Season 2: Day 6

For vampire week day 6, we watched Dracula 3000 starring Casper Van Dien and ...wait for it... Coolio.



You know you're in for a great movie when Coolio's on the cast.  I mean, let's look at this guy's filmography for just a second:  Pterodactyl, Gang Warz, China Strike Force, Shriek If You Know What I Did Last Friday the Thirteenth, The Convent (which is funny as all hell, by the way), ... OH DEAR GOD HE WAS IN BATMAN & ROBIN!  Batman & Robin!!! BAT NIPPLES! BAT CREDIT CARD!!!!
Anyway, so you know if it's got Coolio, it'll be a hilariously amusing train wreck.

Moving on.  The plot of Dracula 3000 is that Count Orlock somehow either escaped Earth and camped out in a planetary system that just so happened to be named the Carpathian System.  That or all vampires are aliens.  Anyway, planet Carpathia dies out so he hops a galactic transport ship that just so happened to be named the Demeter at Transylvania Station and books passage to Earth.  Not too long into the voyage he gets hungry and starts taking out the crew, turning them all into vampires.  The captain tries to blow the ship up but gets stopped by Orlock.  Fast forward 50 years, the lesser vampires have turned to sand and Casper Van Dien's Abraham Van Helsing arrives on the scene to salvage the ship.  I explained this so I could make the point that this is not a subtle film.  Also, there is a crew member named Mina.  About as subtle as a kick in the teeth.

Anyway, the movie has next to no budget and it shows.  But the cinematography is decent enough that the cheap sets pull off a convincing backdrop.  For what it is it's pretty well-written and well-produced, even the acting is decent enough.  There's no real drama, so basic emoting is more than enough to carry the jokes.  All in all, I can't think of a reason not to watch this.  It's not scary, so if you're expecting a movie that's funny because it's bad this isn't it.  But it is a well done spoof, not Mel Brooks caliber or anything, but obvious and funny.  And compared to last night's unholy haul, a nice short breeze.

Tuesday, October 5, 2010

October Horror Season 2: Day 5

Vampire week Day 5:  1979's 'Salem's Lot, apparently short for "Jerusalem's Lot"...which makes it lose a lot of its title appeal.



Even the trailer is really long...

Anyway, the main thing this movie has playing against it is that it's 3 freaking hours long.  So is the 2004 remake.  This has mostly to do with the fact that these weren't movies, but actually TV Mini series.  Either way, way too long to watch in a single sitting.

Salem's Lot had a several very creepy scenes playing in its favor, it just was forced to space those out to a point where they became something wonderful and amazing when they showed up because it meant a break from the monotony of the late 70's drama.  I know it has a reputation as a vampire classic but I don't see it.  Usually a horror classic has something really good, but this couldn't save itself from its own pacing.

If someone were to make an "I've got shit to do with my day" fan-edit of the movie, distilling it to relevant plots and creepy vampire scenes, it would be a great 70's vampire flick.  As it stands, Salem's Lot is an example of a slow burn done wrong.  For reference, "Let The Right One In" is a slow burn done right.

Unfortunately I can't recommend this movie in its original form.  It's worth watching if you have no problems fast-forwarding the slow bits, but to sit and view in its 3 hour entirety just doesn't pay off enough.

The next movie will be: Dracula 3000.  This should be funny.

Monday, October 4, 2010

October Horror Season 2: Day 4

Tonight's film was Dracula: Dead and Loving it starring Leslie Nielsen, Mel Brooks, and Amy Yasbeck.



I think Mel Brooks is a funny man, this movie made me lawl.  Also, heaving Victorian bosoms.

In all seriousness though, the best thing about Mel Brooks movies is the style and humor still hold up even after over a decade.  The man knows his craft.

Tomorrow we will be watching:  Salem's Lot

Sunday, October 3, 2010

October Horror Season 2: Day 3

Week 1, day 3's movie was Interview with the Vampire starring Tom Cruise and Brad Pitt.



Also appearing were Kirsten Dunst, Antonio Banderas, and Christian Slater.  Needless to say this is a movie about Beautiful People, and pre-Twilight beautiful vampires can mean only one thing: Anne Rice.

The premise of the story is that Tom Cruise is Lestat and fucking LOVES being a vampire, so he makes Brad Pitt a vampire.  Brad is less than thrilled with the idea of killing people to live and spends the rest of the movie whining.  The whole story is actually told in flashbacks as Pitt is giving an interview to Christian Slater.  Kirsten is turned by Tom after Brad feeds on her in an angsty stroll through an outbreak of the plague.  She freaking loves being a vampire too, for about 30 years and then the fact she will never grow boobs gets to her and she tries to kill Tom.  Angst, confusion, angst, plot twist, fire, angst, more fire, some fire, and then angst.  And another plot twist.

The movie was far more entertaining the first time I saw it, since this time around I knew the major milestones and the detail they added just made it feel slow.  The movie doesn't really do anything creative with vampire lore, and there isn't so much a story as a series of events.  It's not really a horror movie, but look at who wrote it.  It's a decently well presented drama that just happens to have vampires in it.  Not really my kind of movie, but I enjoyed it well enough.  The way the story is told is intriguing enough to pull you through the boring moments.

Tomorrow's movie will be:  Dracula, Dead and Loving it.
This might not merit a review, since all I would be able to say is "I think Mel Brooks is a funny man, this movie made me lawl.  Also, heaving Victorian bosoms."

October Horror Season 2: Day 2

Month Day 2 and Vampire week Day 2's movie is Let Me In, directed by Matt Reeves of Cloverfield fame.



Let Me In is actually a remake of the 2008 Swedish film "Let the right one in", which was itself based on the 2004 book of the same name.

The premise of Let Me In is that Abby, a vampire in the form of a 12 year old girl moves in next door to Owen, an awkward boy who is bullied constantly.  They become friends, and after leaving a trail of death and blood, run off together.

It's hard to discuss Let Me In without comparing it to Let the Right One In, but I'd like to avoid that.  Let Me In I think suffers from the tenants of modern American film it adopts.  Namely, teal/orange digital color shifting and lens flare.  I noticed the lens flare early on but not as much towards the end.  The fact that everyone was freaking orange bothered me the whole time.  The movie didn't shy away from gore or blood, putting it front and center without apology whenever it could sensibly get away with, which was really only 3-4 times.  I really liked it.  Owen and Abby were pretty creepy, but not too much that you couldn't feel sorry for them.

Overall Let Me In is far more accessible than its Swedish original.  Both movies are great in their own right, and seeing Let the Right One In before Let Me In is well worth it, since where Let Me In does vary from its source material it gives a nice tip of the hat.  Watching both adds a bit of depth to what is the shallower of the two.  Although even alone Let Me In is very well done and picks up the action just often enough and just long enough to keep you interested in what is effectively a slow horror-drama.

Tomorrow will be "Interview with the Vampire".

Friday, October 1, 2010

October Horror Season 2: Day 1

Once again October is upon us and it is my favorite holiday season.  Just as last year myself and my other will be watching one movie each day of the month, broken into 4 week long categories. These are:  Vampires, Monsters, Serious serial killers, and Ghosts.  As an exercise in blogging discipline I will try to include a small review for each one.

Week 1 is Vampires and movie 1 is Fright Night, the 1985 classic vampire camp flick starring Roddy MacDowel as Peter Vincent.



At first glance the camp seemed almost overwhelming, but behind it was a movie that was just smart enough to rise above itself.  The special effects, while ridiculous, were quite good for the age; especially Evil's wolf->human transformation sequence.  MacDowel was pretty fun to watch, as well as his obviously powdered hair.  If I thought about the movie too much, I'd find finer character points to be disappointed with.  However, it's really one of those rare movies that knows exactly what it is and doesn't try to portray itself above that.  Really fun, definitely recommend watching it to anyone.  Also, if you keep in mind that the actor who plays "Evil", eventually went on to do a lot of gay porn throughout the 1990's, a lot of the jokes are a lot funnier.

Tuesday, August 31, 2010

Experiments in HTML5: Recreating Boomshine

My first exposure to the HTML5 drawing canvas was during work on my final project for a class at RIT called Web Client Side programming.  Back then, Firefox 3 was the most recent version, and only supported a subset of the specified canvas features.  Also, the spec was in a far less evolved state than it is now.  Anyway, at the time I was less than impressed with canvas and HTML5.  When Apple fired up everyone against Flash a few months ago HTML5's canvas took front page and everyone start playing with it.  I decided to give it another shot and started playing around myself.

Now, the thing to understand going to canvas from an environment like Flash or even 2D drawing with Java is that there is nothing done for you.  If you want buffers, or mouse events, or object hit detection...you have to do it all yourself.  I thought this sort of thing was going to be very difficult, that my solution would be of so poor quality it would never work well, or that it would just get too annoying.

After doing a little toying around with drawing little animations like Sine curves, and a fun wiggling tentacle mass (which I might publish here later, since it was actually quite fun getting in touch with my high school trigonometry brain), I decided to take on a larger project.  This would involve all sorts of mouse events and hit detection, basically everything I'd need in the future to do anything beyond an HTML5 toy.  One thing I know I have a tendency to do when working on my projects is spend a long time questioning a lot of mundane details, so I decided to preempt myself and work on something that's already had all the finer points worked out.  Since I was going to be doing a game I decided to think about what was fun enough to motivate me, simple enough that I could do it in a few hours, but still looked good.  The first game I thought of that met all those criteria was Boomshine, by Danny Miller (www.K2xL.com).

So I started sometime on Thursday and setup the basic template I'd need to fill in:  The canvas, floating dots, screens with a play button, a way to store levels, etc. And started working.  After setting up the main animation loop and drawing a bunch of dots, I went to go get in touch with the part of my brain that still remembered Trigonometry.

If you're not a developer, or not interested in the technical aspects of the development of the port please skip the next section.  Non technical content resumes at the bold heading.

***BEGIN SKIPPING***

With no source, I basically had to look at the game and engineer a technical description how it worked.  Essentially providing myself with an informal specifications document.

The major aspects I picked up from looking critical at the game, and the basic technique to implement them are below
  • Pseudo-randomly colored dots of constant size displayed on the play area.  There are too few instances of dark or ugly colors in the game for their selection to be truly random.
    •   I will need a palette of colors to choose randomly from.  A simple 2 dimensional array of hex codes should suffice.
  • These dots will bounce within the play area traveling in random directions at variable speeds.  There is a small amount of variance of the speed of dots traveling in the same direction, so speed is variable around an average.
    • Using a base number add a random percentage of a possible increase to it during object construction.  Also use Math.random() to find an angle between 0 and 360 and convert it to radians.  Using that angle and the speed, I can use Sine and Cosine to determine the x and y speeds to send the dot along the right line.  This works because the x and y speeds are the opposite and adjacent sides of the right triangle formed with the speed as the hypotenuse.  TRIG!
  • The bounce off the wall is done from the center of the dots, and does not slow down the dot.
    • This is simple edge detection, check if the x or y position has over stepped the bounds of the box and then reverse the appropriate axis.
  • There are 12 levels in the game, each level increases the total number of dots, and the amount of dots a player must explode to reach their goal.
    • An array of javascript objects will do this fine, I can then set total and goal properties.
  • The game keeps a running score of the number of dots exploded.
    • Global variable.
  • The player is allowed to click once per level on the play area to add a single exploding dot at the position on the board.
    • If I start the per level dots exploded counter at -1, I can allow the click event to create the initial exploding dot if that value is -1 and count that dot as explosion 0.
  • The dots explode to a certain radius on a non-linear time scale, expanding faster initially than immediately before their maximum size.  They will then shrink faster than they expanded.
    • (max radius-current radius)/max radius gives me an inverse percentage of the maximum, if I multiply that by a constant and force it to the ceiling, then multiply it again by an expansion constant I can get large numbers at low current radii and smaller ones when I'm closer to the maximum.  It's not a true logarithmic or exponential scale, but it doesn't really need to be to be convincing.  I then hold for a given number of frames and multiply the expansion constant by -2, now it will shrink along the same curve but faster.
  • Any regular dot hit by an exploding dot will immediately stop moving and become an exploding dot.  This is the "chain reaction" mechanism that defines the gameplay.
    • Each time I move a dot I can iterate a global list of dots and look for any that are exploding.  For each exploding dot I can compare the distance between the centers of the two to the sum of the radii.  If the sum is smaller than the distance, this dot has hit an exploding dot and needs to start exploding itself.
  • When all exploding dots have vanished, the level is over and the player has either met the goal or not.
    • During the main animation loop that steps each dot, since I'm already iterating the dots, I can see if any of them are exploding.  If the per level exploded count is not -1 and nothing is currently exploding, the level is done.
  • During a level, if the number of exploded dots meets the goal, the player is informed by the background color of the play area becoming lighter.
    • The background's color is broken down into RGB integer values and compared to the target color's RGB values.  The duration is divided by the framerate to compute the number of intervals to step.  The difference between the two RGB values is divided by the number of intervals to determine how far to step each interval.  A function can recursively call setTimeout to call itself only the number of times it needs to in order to change to the target color.
  • When the level ends the play area background fades back to normal if applicable and the level screen is displayed for either the current level or the next level.
    • Same as above.  The recursive function can be setup to accept a callback function to call when it's done using setTimeout to recurse.
  • The game displays up to 3 rectangular buttons on a non-play screen, these buttons will need to respond to mouse over and click events.
    • This was very difficult.  I ended up doing something similar to the dots where I created Button objects and a global controller to manage them.  The global controller attached a single click and mousemove event to the canvas.  During each event handler it would compute the x and y of the mouse within the canvas, then iterate the Button objects it was managing with those coordinates and see if those coordinates are over the Button.  I setup this Button object with a fake "addEventListener" function so I could attach my own events to the custom buttons, the controller calls these events if the hit detection matches.  For a rectangular shape the hit detection uses the isPointInPath() function after tracing a path around the edges using x, y, width, and height.  Later I expanded this to handle the speaker icon used for muting the background music.  The hit detection for that works differently since it's not a geometric shape.  I use an in-memory canvas to draw the image then the ImageData API to examine the pixel at the mouse's x and y.  If the pixel's RGB values match what I had drawn, the mouse is over the shape.

***STOP SKIPPING***


When I had enough of these requirements met, I emailed the original author of Boomshine, Danny Miller.  Danny has blogged about the frustration caused by unauthorized clones of his game, and how these clones hurt his reputation whether they are attributed or not.  I wanted partially to share my work with another developer, but also to show him I had a working port and wanted his approval to publish the game as an academic exercise.  Danny was an excellent fellow and responded to me within a very short time.  He was supportive of the port, and offered to not only cross post my writeup of the development onto his website but also to host the port alongside the original Boomshine.

I'll throw an update here whenever that happens.  For now, the port is only available at http://174.143.146.203/html5/boomshine/

Update (7/2/2013): The port has moved for reasons referenced here, the game is now available at: http://192.95.11.89/html5/boomshine/

Friday, June 4, 2010

Ok, finally: An end to my misadventures with AT&T.

I had previously written about an unfortunate turn of events which resulted from my canceling my AT&T service, namely AT&T refusing to address my lack of cell service and then charging me a termination fee when I left them.

When I had written that article in December of 2009 I thought I was over and done with AT&T.  I hadn't been contacted in quite some time, and I no longer had an account on the site.  It turns out that I was mistaken, AT&T was still pursuing my bank account with a burning rage...they just weren't bothering to let me know I had not been forgiven.

I had also made several timeline errors in that post, which I'll try to rectify here.

December, 2008:  Left Verizon and got an AT&T account and an iPhone.
- Several months of bad reception and misadventure later -

June, 2009: I move from Rochester to just outside of Boston, Massachusetts.  I now have no reception unless I walk outside.  The Palm Pre is released on June 6th, and I buy it.  I cancel AT&T because they've told me I'm not getting reception anytime soon.

July, 2009:  I speak to a rep regarding the cancellation fee on the 21st.  I am told that I should pay them, they're totally justified and deserve my money.  This person and this person's immediate supervisor are incredibly rude.  I am told that my complaint will be forwarded to arbitration or somesuch to investigate whether or not I should be allowed to leave without an early termination fee.

- Several months of no contact. -

December, 2009:  I read the article regarding AT&T's poor quality being mocked on SNL and go to check my account, only to find it's not there.  I think I'm free and write a triumphant blog post.

- Several more months of no contact. -

May, 2010:  I get a letter from a collection agency dated April 30th.  It took a few days to get to me since I moved and forwarded my mail.  Since I no longer had an AT&T account I couldn't update my address in their system when I moved.
This letter is a bill for close to $400 on behalf of AT&T.  I call them to complain, and get this bill reduced to $150.  I file a complaint with the Better Business Bureau since AT&T was nothing but rude, unjustified on the termination fee, and sent me to collections without telling me.
The next day I'm called by the collection agency who tells me I need to pay the $150 immediately or else they will charge me $30 more, so I can't even get off the phone and call AT&T again.  I pay them now or pay them more later.  While I'm on the phone with this company they let slip they're the 2nd agency to have received my account.  This is important.  In the 11 months since I last had any contact with AT&T they have hired not 1 but 2 collection agencies, the first of which didn't even try to contact me.  I didn't get a call, letter, email, carrier pigeon...nothing.  All they did was report my outstanding debt to the credit agencies.  Thanks for the black mark, guys.  I now have to watch my credit report like a hawk just to make sure that the debt eventually gets marked as paid and removed.  This absolutely sucks.

As a final little note, since AT&T is again in the news apologizing for almost sending the lawyers after a guy who emailed the CEO.  I called AT&T one last time after I settled with the collection agency and attempted to get someone to apologize for the gross mishandling, rudeness, and lack of communication over the past year.  They refused.  I could not get any formal apology beyond the scripted "I'm so sorry, sir." from the reps. Eventually I got silly.  I tried to get ANYTHING with an AT&T logo on it that said "We're sorry".  Didn't even ask for context, I wanted a stick note, or paper with some letterhead.  I even tried asking for a drawing of a sad face, not even words.  This wouldn't mean anything, it wouldn't be a public statement of anything, but it would make me feel a hell of a lot better.  They still refused.  I'm just a 24 year old kid, AT&T won't say they're sorry to me.  But this guy somehow got the public eye involved and now they're all apologetic.  I hate PR.

Thursday, March 25, 2010

How-to (Part 2): Full read/write access to ReiserFS in Windows 7

A few years ago I did a good bit of hacking and wrote this article: How-to: Full read/write access to ReiserFS in Windows Server 2008 x64

This St. Patrick's day I was at a bar with a friend of mine from my old Community College days and we were discussion virtualization software.  Yes.  I am that nerdy.  I was bemoaning my usual complaint that VMWare Server 1.x, which I used in the original article since it supported raw disk access, takes an absurdly long time to start a VM on Windows Server 2008, and also Windows 7 (presumably Windows Vista as well).  This startup time is on the order of 6-8 minutes during which the entire system is hung and unusable.  He was curious why I didn't use something like VirtualBox.  I had been under the impression that VirtualBox didn't do this since it wasn't in the GUI or listed as a feature.  However, I was wrong.

My enlightened friend shared with me this manual page. So I finally had some options, it seemed.  It took a few hours of poking but I finally got everything working with VirtualBox and it is absolutely wonderful.

So here is how I did it on Windows 7:
  1. Install VirtualBox as normal.
  2. I copied the .vmdk files I'd used to set this up with VMWare.  If you don't have these files to copy then create a new VM in VirtualBox of the appropriate flavor of linux and do the installation as per the original article.
    1. You will need to support ReiserFS and Samba, make sure your setup includes these.
    2. Create the new .vmdk as per the linked page from the VirtualBox.  You can find the drive # by populating volume properties from the device manager.
  3. In order for the raw disk access to work under Windows 7 you will need to set the compatibility options on C:\Program Files\Sun\VirtualBox\VirtualBox.exe to run it as administrator.
  4. Link the new vmdk first to VirtualBox with the Virtual Media Manager, open the VMM and click "Add" to add the vmdk(s)
  5. Create a new virtual machine of the appropriate flavor of linux. If you copied files from a VMWare installation you will need to add a SATA bus to the VM's storage configuration and add the vmdk's to that controller.  If you installed from scratch in VirtualBox don't do this now, it will only complicate your life.
At this point you should have everything installed and be able to boot your VM, and share your files back to Windows.  The only problem with this is that VirtualBox is geared more to run as a consumer level virtualizer.  If you close the window the machine starts in, the machine will be forced to shut down.  This means that you would need to keep a window open, wasting space in your taskbar, just to access your files.  Fortunately, there's a way around that as well.

  1. Set the options on C:\Program Files\Sun\VirtualBox\VBoxHeadless.exe to run as administrator.
  2. Create a new text file on your desktop, name it "Start VM.vbs"
  3. In the file, paste:



    Set WshShell = CreateObject("WScript.Shell")
    WshShell.Run chr(34) & "C:\Program Files\Sun\VirtualBox\VBoxHeadless.exe" & chr(34) & " --startvm VBoxReiser", 0
    Set WshShell = Nothing
  4. Replace VBoxReiser with the name of the VM you created above
  5. Save this file
This is why you need to set VBoxHeadless to run as administrator.  You will be prompted to allow the program to run as admin, but then you will see no further windows.  Your VM will be running in the background without.  Since you've started this headlessly you will not be able to use the standard GUI to shut down the VM later, so you will need to create another VBS or BAT file, executing:
 
VBoxManage controlvm VMNAME acpipowerbutton

This will shut the VM down, assuming it is responding to ACPI signals.
    Any network configurations you had in VMWare should be relatively simple to set back up in VirtualBox.

    I've been running this for a few days now and it is so much better.  I no longer need to dread rebooting because of the horrifying start times from VMWare.  It was fun to do a nice bit of tech stuff out of work.

    --PXA

    Wednesday, March 10, 2010

    Perverting Common Wisdom (A stock market tale)

    "Perverting common wisdom, Nephew, is the mark of all great conspiracies" - Baron Vladimir Harkonnen (Dune, Frank Herbet)

    It's an accepted premise that to make money you need to spend money. And to spend money you need to have money. So by syllogism, to make money you need to have money. This applies to the stock market quite sensibly, and most people agree that you should start an investment account with $2,000 or else you simply won't be able to make the aggregate gains required to counter commission fees. Aggregate gains is very important, because it is really how you are to play the game correctly. Most stocks will not jump several hundred dollars, or for that matter several dozen dollars, in anything resembling a sensible period of time to hold a stock. Not without some major news coming out of that company.  So you're looking to make a few cents to a few bucks on hundreds of shares.

    But what if you don't have this $2,000 to invest, is it still possible to make money? With, say, $700? If you are careful, subtle, and lucky can you make not-enough into enough?
    To this end I'm starting a new blogspot site:  A Stock Market Tale
    Hello, Readers. I'd like to play a game.

    First, my rules:
    • I can only use my initial investment of $700, and any money earned from this initial investment
    • As I only have $700 and want to make the absolute most of it, I cannot pay for any service beyond my broker.  Everything I use for my research will have to be free.  No trials either, that's just lamesauce.
    • Every purchase will be my own decision, I will not overtly take tips.  I will be required to justify each decision based on clear and rational criteria.  This isn't to say I might not ask my friends for opinions on things, but I will never ask "What should I buy?" or accept "Hey, you should buy ____, I think it'll go big."
    • Sometimes I will have to stay in cash, but if I haven't made a move in 2 weeks I will declare game over.  Temporarily, at least.
    • If I lose too much I will declare defeat.
    Now your rules: (otherwise known as a disclaimer)
    • I have absolutely no idea what I am doing.  I am in no way implying that I have developed some super secret methods or intuition.  You will not, under any circumstances, consider what I say as any form of advice.  If I write that I am doing something it is in the interest of disclosure.  If you make any decisions based on what I say, that is your own fault and I cannot be held responsible because this is not advice.
    • What I am doing I am doing as my own personal interest.  It is obviously not my job and outside of any profits I make I am not being paid for any of it.  If AdSense on the side of the official blog make any money, it's a plus but it is not the point.
    • I am not doing this as an endorsement of any official broker or any companies I might invest in.  I do not intend to reflect onto my employer or any related entity.  
    • Please understand that I'm just a dude writing about stocks with no formal training or inside information.

    The plan of attack:


    Since I have a limited amount of money to invest I'm going to be looking exclusively at stocks priced at less than $10 a share.  This is the only way I can make a net profit, any higher and I won't make enough aggregated over the number of shares to amount to counter commissions.

    Since I have no news information other than what is freely available, and most of the companies I'll be looking at just don't make news, I will be relying purely on technical analysis to pick my stocks.  I will also be mitigating my risks using stop loss orders to sell my positions if they drop too far past a level based solely upon an analysis of the chart.

    As I buy and sell positions I will sporadically update the new site (A Stock Market Tale) with details of how I'm doing, and also why I'm moving the way I've decided to.  Hopefully it'll be interesting.

    --PXA

    Thursday, February 25, 2010

    Mac's iPad and other related musings, Part 2

    And we're back...
    This was a somewhat less depressing thought I had yesterday morning when I was walking to my morning train.

    I am a huge fan of Palm's WebOS on their 2 new smartphones, the Pre and the Pixi. I've had a Pre since June and despite the fact mine is physically wrecked I still think the OS is great. I hope Palm makes more money so they can use better hardware and QA. But I was thinking about WebOS applications, being written primarily in Javascript and also the new gaming capable APIs which I believe are in Java for direct hardware access. Java is a desktop language...and Yahoo! widgets are written in Javascript. Unfortunately, Yahoo! widgets suck. I haven't really seen anyone using them out in the wild, and of course they're only available on the PC.

    But what if it were possible to use certain WebOS applications AS widgets? The Palm Application Catalog could be extended to the desktop, and you could run the same games and utilities on both. I'd written an application to scrape the mbta_alerts twitter feed and show me if my train was delayed, wouldn't it be cool to have that on my computer and take advantage of the better network connection? This also creates a 2nd distribution channel for developers.

    The way I read it, Apple's trying to put the iPad somewhere between a laptop and a device like the iPod touch. Unfortunately that space is currently occupied by netbooks. For all their shortcomings, they have one major leg up on the iPad: They are a real computer. So if Palm were to create a system which would allow their WebOS apps to run on real computers, they can not only grab desktop space but can also invade that contested area for lightweight applications running on lightweight computers.

    As far as I know, no one's created anything that can run the same applications on a mobile device, on a low-power computer, and on a full desktop. Also, Palm has been pushing the idea of reliance on the "cloud", in WebOS devices information like installed applications, device settings, and contact lists are automatically synchronized to the internet. This capability is already there, wouldn't it be EVEN COOLER if you could log in to this desktop WebOS system and get all your installed applications?

    Garsh, I hope someone at Palm is paying attention 'cause I totally want this now.

    Wednesday, February 24, 2010

    Mac's iPad and other related musings

    MaxiPad. Moving on.
    When I'd heard about Apple's tablet announcement, I thought it was a joke. Everyone wanted a Mac tablet. For YEARS I'd hear about people wanting Mac to finally make a tablet or a netbook computer. What they finally put out was an oversized iPod Touch with an extra chromosome and gimpier than Lt. Dan, and while the usual sections of the computing industry immediately engaged in fellating the device a lot of people were left scratching their heads. It has 3G but is locked to AT&T, it won't multi-task, you can't install your own software on it (App store only), you need an adapter just to get a USB port, it has no camera, no flash support, won't play widescreen video, I'd imagine it has no microphone as well, no video out either. So...what do I use this thing for?

    Anyway, it did get me to thinking, which I guess is good.

    Over the past few years I've been watching as most of the last generation of evil empires try to rescue their public image by adopting transparent processes, on the surface at least. As contrast Apple operates in complete opacity, under a shroud of darkness. Hidden away from the world in his dungeon fortress, Barad-dûr, Sauron -- I mean Steve Jobs -- steers Apple in his single-minded quest for domination. Or something. Honestly, do you know what goes on there, 'cause I don't.


    This leads into my next thought. Over at Defective By Design (The anti-DRM folks who I love dearly), they made up some great posters for the iPad launch.

    This tagline: Your computer is our computer, is a theme I've seen slowly spreading through the industry over the past few years. The players are beginning to realize the surest way to ensure continued profits is to execute control. On the other hand you can also ensure a measure of quality, as Apple demonstrated by the stranglehold they've kept on what hardware their OS will run on. Microsoft plays the side of the coin where they give the customers a measure of freedom, they want to control the industry more than the customers. I'm sure they have aspirations to get there eventually but they're gonna start at the top and work their way down. They've started with the driver signing requirements in Vista and Windows 7. For now you can turn off the verification, but you have to do it on each boot. This is already causing problems for a set of end users and spells certain doom for alternative Windows drivers. It also paves the way for increased hardware costs as manufacturers are forced to submit drivers for approval just so their hardware is compatible with Windows Future-Version. Virtualization software, which often uses system drivers to provide more direct access to system resources and better performance, will be effectively required to ask Microsoft for permission to compete with Microsoft as they product their own virtualization software. This seems like a tremendous conflict of interest. A few years ago Microsoft filed a patent for a method of building DRM control into an OS kernel, I think this is the first step towards that end.

    Apple's interests, it seems, lay in squeezing their consumer base for cash. They've already begun teaching people to expect less capability for the same price. The iPad does less than an iPhone or iPod Touch and costs much more. The MacBook Air was a bad machine, and didn't even have an optical drive but cost more than any other laptop of similar capability. And they've been hiding configuration options on their OS since its inception. And as an amusing aside, one of the reasons cited for rejecting the Google Voice app from the the App Store was that having another phone application on the device might confuse their users. This is probably why all their hardware has rounded corners -- so their users won't hurt themselves by chewing the edges, because they clearly think people are that stupid.
    Their recent patent is for displaying advertisements through the OS. The filing includes a flow chart for how the OS could determine when to play an ad, and it includes checking to see if the user has pre-bought time. That's exactly how it sounds...Apple thinks there is a strong possibility that sometime in the future people will be willing to rent ad-free time on their own computers. The patent also specifies that the OS could disable key features such as the mouse or keyboard except when prompting for interaction to make it impossible to not watch the advertisements. The only way this will work is if people accept the idea that what they have paid for is not theirs. That a computer is similar to the digital tuner box that TV companies will rent you and that your use of the OS is just a service you pay for.

    Wow, I hope neither of these folks get what they want. I like being able to choose things about my computer, and I like the idea that I own it and can beat it into doing what I want provided I'm clever enough.

    More upbeat musing coming soon.