Archive for October, 2010

Local Storage And How To Use It On Websites

Smashing-magazine-advertisement in Local Storage And How To Use It On WebsitesSpacer in Local Storage And How To Use It On Websites
 in Local Storage And How To Use It On Websites  in Local Storage And How To Use It On Websites  in Local Storage And How To Use It On Websites

Storing information locally on a user’s computer is a powerful strategy for a developer who is creating something for the Web. In this article, we’ll look at how easy it is to store information on a computer to read later and explain what you can use that for.

[Offtopic: by the way, did you know that there is a Smashing eBook Series? Book #2 is Successful Freelancing for Web Designers, 260 pages for just $9,90.]

Adding State To The Web: The “Why� Of Local Storage

The main problem with HTTP as the main transport layer of the Web is that it is stateless. This means that when you use an application and then close it, its state will be reset the next time you open it. If you close an application on your desktop and re-open it, its most recent state is restored.

This is why, as a developer, you need to store the state of your interface somewhere. Normally, this is done server-side, and you would check the user name to know which state to revert to. But what if you don’t want to force people to sign up?

This is where local storage comes in. You would keep a key on the user’s computer and read it out when the user returns.

C Is For Cookie. Is That Good Enough For Me?

The classic way to do this is by using a cookie. A cookie is a text file hosted on the user’s computer and connected to the domain that your website runs on. You can store information in them, read them out and delete them. Cookies have a few limitations though:

  • They add to the load of every document accessed on the domain.
  • They allow up to only 4 KB of data storage.
  • Because cookies have been used to spy on people’s surfing behavior, security-conscious people and companies turn them off or request to be asked every time whether a cookie should be set.

To work around the issue of local storage — with cookies being a rather dated solution to the problem — the WHATWG and W3C came up with a few local storage specs, which were originally a part of HTML5 but then put aside because HTML5 was already big enough.

Using Local Storage In HTML5-Capable Browsers

Using local storage in modern browsers is ridiculously easy. All you have to do is modify the localStorage object in JavaScript. You can do that directly or (and this is probably cleaner) use the setItem() and getItem() method:

localStorage.setItem('favoriteflavor','vanilla');

If you read out the favoriteflavor key, you will get back “vanilla”:

var taste = localStorage.getItem('favoriteflavor');
// -> "vanilla"

To remove the item, you can use — can you guess? — the removeItem() method:

localStorage.removeItem('favoriteflavor');
var taste = localStorage.getItem('favoriteflavor');
// -> null

That’s it! You can also use sessionStorage instead of localStorage if you want the data to be maintained only until the browser window closes.

Working Around The “Strings Only” Issue

One annoying shortcoming of local storage is that you can only store strings in the different keys. This means that when you have an object, it will not be stored the right way.

You can see this when you try the following code:

var car = {};
car.wheels = 4;
car.doors = 2;
car.sound = 'vroom';
car.name = 'Lightning McQueen';
console.log( car );
localStorage.setItem( 'car', car );
console.log( localStorage.getItem( 'car' ) );

Trying this out in the console shows that the data is stored as [object Object] and not the real object information:

Console-e1285930679229 in Local Storage And How To Use It On Websites

You can work around this by using the native JSON.stringify() and JSON.parse() methods:

var car = {};
car.wheels = 4;
car.doors = 2;
car.sound = 'vroom';
car.name = 'Lightning McQueen';
console.log( car );
localStorage.setItem( 'car', JSON.stringify(car) );
console.log( JSON.parse( localStorage.getItem( 'car' ) ) );

Console2-e1285930703974 in Local Storage And How To Use It On Websites

Where To Find Local Storage Data And How To Remove It

During development, you might sometimes get stuck and wonder what is going on. Of course, you can always access the data using the right methods, but sometimes you just want to clear the plate. In Opera, you can do this by going to Preferences → Advanced → Storage, where you will see which domains have local data and how much:

Storage-opera in Local Storage And How To Use It On Websites
Large view

Doing this in Chrome is a bit more problematic, which is why we made a screencast:

Mozilla has no menu access so far, but will in future. For now, you can go to the Firebug console and delete storage manually easily enough.

So, that’s how you use local storage. But what can you use it for?

Use Case #1: Local Storage Of Web Service Data

One of the first uses for local storage that I discovered was caching data from the Web when it takes a long time to get it. My World Info entry for the Event Apart 10K challenge shows what I mean by that.

When you call the demo the first time, you have to wait up to 20 seconds to load the names and geographical locations of all the countries in the world from the Yahoo GeoPlanet Web service. If you call the demo a second time, there is no waiting whatsoever because — you guessed it — I’ve cached it on your computer using local storage.

The following code (which uses jQuery) provides the main functionality for this. If local storage is supported and there is a key called thewholefrigginworld, then call the render() method, which displays the information. Otherwise, show a loading message and make the call to the Geo API using getJSON(). Once the data has loaded, store it in thewholefrigginworld and call render() with the same data:

if(localStorage && localStorage.getItem('thewholefrigginworld')){
  render(JSON.parse(localStorage.getItem('thewholefrigginworld')));
} else {
  $('#list').html('

'+loading+' '); var query = 'select centroid,woeid,name,boundingBox'+ ' from geo.places.children(0)'+ ' where parent_woeid=1 and placetype="country"'+ ' | sort(field="name")'; var YQL = 'http://query.yahooapis.com/v1/public/yql?q='+ encodeURIComponent(query)+'&diagnostics=false&format=json'; $.getJSON(YQL,function(data){ if(localStorage){ localStorage.setItem('thewholefrigginworld',JSON.stringify(data)); } render(data); }); }

You can see the difference in loading times in the following screencast:

The code for the world info is available on GitHub.

This can be extremely powerful. If a Web service allows you only a certain number of calls per hour but the data doesn’t change all that often, you could store the information in local storage and thus keep users from using up your quota. A photo badge, for example, could pull new images every six hours, rather than every minute.

This is very common when using Web services server-side. Local caching keeps you from being banned from services, and it also means that when a call to the API fails for some reason, you will still have information to display.

getJSON() in jQuery is especially egregious in accessing services and breaking their cache, as explained in this blog post from the YQL team. Because the request to the service using getJSON() creates a unique URL every time, the service does not deliver its cached version but rather fully accesses the system and databases every time you read data from it. This is not efficient, which is why you should cache locally and use ajax() instead.

Use Case #2: Maintaining The State Of An Interface The Simple Way

Another use case is to store the state of interfaces. This could be as crude as storing the entire HTML or as clever as maintaining an object with the state of all of your widgets. One instance where I am using local storage to cache the HTML of an interface is the Yahoo Firehose research interface (source on GitHub):

The code is very simple — using YUI3 and a test for local storage around the local storage call:

YUI().use('node', function(Y) {
  if(('localStorage' in window) && window['localStorage'] !== null){
    var key = 'lastyahoofirehose';
  
    localStorage.setItem(key,Y.one('form').get('innerHTML'));
  
  if(key in localStorage){
      Y.one('#mainform').set('innerHTML',localStorage.getItem(key));
      Y.one('#hd').append('

Notice: We restored your last search for you - not live data'); } } });

You don’t need YUI at all; it only makes it easier. The logic to generically cache interfaces in local storage is always the same: check if a “Submit” button has been activated (in PHP, Python, Ruby or whatever) and, if so, store the innerHTML of the entire form; otherwise, just read from local storage and override the innerHTML of the form.

The Dark Side Of Local Storage

Of course, any powerful technology comes with the danger of people abusing it for darker purposes. Samy, the man behind the “Samy is my hero” MySpace worm, recently released a rather scary demo called Evercookie, which shows how to exploit all kind of techniques, including local storage, to store information of a user on their computer even when cookies are turned off. This code could be used in all kinds of ways, and to date there is no way around it.

Research like this shows that we need to look at HTML5′s features and add-ons from a security perspective very soon to make sure that people can’t record user actions and information without the user’s knowledge. An opt-in for local storage, much like you have to opt in to share your geographic location, might be in order; but from a UX perspective this is considered clunky and intrusive. Got any good ideas?

(al)


© Christian Heilmann for Smashing Magazine, 2010. | Permalink | Post a comment | Add to del.icio.us | Digg this | Stumble on StumbleUpon! | Tweet it! | Submit to Reddit | Forum Smashing Magazine
Post tags: , , , ,


8 Useful Interface Design Techniques for Mobile Devices

You can be the best web designer in the industry, but if you do not know how to properly lay things out and create a great interface for mobile devices, you will fail in such a task. With that said, designing for mobile devices is quite different from designing for mainstream devices such as your PC as screen sizes and resolutions play a big part in how much space you can utilize, and how it performs.

Therefore, we cover eight useful interface design techniques for mobile devices that will help you get started on your quest for designing for mobile platforms.

Layout, Layout, Layout

The layout of the design is what sums it up for accessibility, usability, and overall readability for users on mobile devices. First and foremost, the design needs to be flexible across the mobile devices as all screen sizes and resolutions vary greatly between each and every mobile device.

What that means is, the content needs to scale in size as the screen size and resolution increases or decreases depending upon each device. The layout needs to be touch and key capable for users with touch screens, and for users without them. To go into more depth, let us dive into each of these aspects individually.

Order and Size

These are two major keys to a good user interface for mobile devices. When we mention order, this is referring to the order or sequence in which each element within design is laid out. For example, the order of buttons, text boxes, links, etc. This is actually very important for many mobile platforms for the way they react with your design. Therefore, assure the order of the elements within the design or layout are ordered in the way intended for use, and skip out on the fancy ordering techniques you may have for web design on mainstream platforms.

The size of content is also a big deal for many mobile platforms. Make sure the links and buttons are of fair size for those who have touch screen devices as each person’s finger varies in size, a good-sized button will help make it easier for all of your users to navigate about. You need to remember that the small link sizes or button sizes you make for normal website designs for mice and keyboards is a lot different than actually using your finger or a keypad to navigate around, so assure to cope for the differences.

Hierarchy of Importance

On a mobile device, screen space is a limited resource and thus you need to use it wisely. With that said, you need to eliminate clutter as much as possible, and one way to do this is to set your content in hierarchy format. Set content apart by playing around with the font size, weight, color, and the likes. You want the content to speak for itself rather than describe it before it runs. By doing so, you are eliminating unneeded elements and clutter from the layout and or design and increasing on needed space and using the space for quality content.

Lightweight

You need to remember that when users are visiting your website from a mobile device, they are visiting the website to view the content, and not the fancy layout you may have put together for non-mobile devices. Therefore, you need to eliminate all the unneeded fancies and stick to a lightweight layout that clearly presents content in an organized fashion.To put it into perspective, imagine yourself in a hurry trying to load a website and run to a meeting.

As the website is loading all sorts of fancies need to load, you need to scroll through a long header, and the likes. When you are in a hurry to obtain information before dashing to a meeting, you do not care for these fancies, you just want the information you were looking for. Similarly, users who visit websites on mobile devices are also after the content, and not the fancies you may surround it by.

Important Content

Your website can consist of a whole genre of goodies; however, before bringing everything to the mobile platform via the web, you need to eliminate some of this content, to make the website load quicker. Therefore, only port over essentials that make up your website and what your users are mainly visiting your website for.

Offer a Simple Navigation

Many mobile devices and platforms do not offer a browser with too many navigational features such as a back button. Therefore it is a good idea to offer these essentials in a simplistic form within your website’s mobile version for easier navigation, but do not over do it as it can slow down the loading time significantly, and effect vital screen space.

Do Not Use Tables

Do not use tables for your mobile website designs as the main structure for your design. They often do not look or work very well with many mobile platforms. Therefore, the best option to getting your website’s mobile version working and looking well across many mobile platforms is to utilize the basics of CSS to get the design styled.

Platform Detections

One great way to making the most out of your website’s mobile version is to detect different platforms and offer different versions of the website for them. For example, the iPhone platform is very flexible in terms of design capabilities that you can provide versus other platforms.

Therefore, if you want to make the most out of different platforms for your users, detecting their platforms and providing different content and capabilities for them is a great idea. Additionally, this also helps make your fallback mobile website version a lot simpler with less content to assure it can work on older mobile devices or platforms as well.

Overall, you need to understand the mobile devices limitations before being able to create and develop around them. This helps greatly to better understand the mobile platform and how your website’s mobile version may appear across these multiple platforms. You can also test your website’s mobile version or versions using simulators and or emulators sometimes provided by the platform developers.


Three Cool and Fresh Design Tools

In today’s news round-up we have a small, yet cool, selection of useful tools, apps and resources for web designers. First up, we have a wonderfully useful jQuery plugin Quovolver) for displaying quotes in a stylish way, next up we have a small, yet very handy app for generating a grid (Gridulator) and finally a fun time-killing bookmarklet that can destroy everything on a web page.

Quovolver – a simple jQuery plugin for revolving quotes

Quovolver - a simple jQuery plugin for revolving quotes

Quovolver is a simple extension for jQuery that takes a group of quotes and displays them on your page in an elegant way.
Quovolver – a simple jQuery plugin for revolving quotes

Gridulator – Make pixel grids, lickety-split

Gridulator - Make pixel grids, lickety-split

Tell Gridulator your layout width and the number of columns you want, and it’ll spit back all the possible grids that have nice, round integers. Just the thing for pixel-based design folk. There are inline previews, courtesy of the canvas element, and when you’re all set Gridulator can crank out full-size PNGs for you, ready for use in your CSS, Photoshop docs, or what have you.
Gridulator – Make pixel grids, lickety-split

Hello, want to kill some time?

Hello, want to kill some time?

Hello, want to kill some time?

By Paul Andrew (Speckyboyand speckyboy@twitter).


The Big Web Show #22

The Big Web Show #22:

I had the pleasure of being a live guest on The Big Web Show with Jeffrey Zeldman and Dan Benjamin yesterday. Had a great time talking about Dribbble, Cork’d, my upcoming CSS3 book for A Book Apart and more. The video and audio are posted now.


Retro Video/DOS Games For The Weekend

Smashing-magazine-advertisement in Retro Video/DOS Games For The WeekendSpacer in Retro Video/DOS Games For The Weekend
 in Retro Video/DOS Games For The Weekend  in Retro Video/DOS Games For The Weekend  in Retro Video/DOS Games For The Weekend

We thought we’d do something a bit different for the weekend, because not everybody is actually working during the weekend. And even if we do, we deserve a break from time to time. For just this occasion, we have poured across the four corners of the Web and amassed a collection of retro games to help you make the absolute most of your break time this weekend… and possibly any break time you take from this day forth.

Now you’re ready to take some time off and unplug, let’s stroll down memory lane, the gaming way. Focusing on the days of the old DOS-based games, we sourced some emulators so that you could revisit your old favorites once again without having to downgrade your machine. So flex some willpower (or kiss your weekend goodbye) and dive into the deep end of this DOS-day throwback to get your ROM on.

[Offtopic: by the way, did you already get your copy of the Smashing Book?]

Game Showcase

Prince of Persia
Prince of Persia is a 2-D platformer with run and jump game play. Your hero must avoid deadly traps, solve some simple puzzles and engage in sword fights with guards. As the hero, you have an infinite number of lives, but you have to restart the level every time you die, and you must complete the game within an hour. The very fluid animation of your character is especially noteworthy. The game is still available for free downloading.

Persia in Retro Video/DOS Games For The Weekend

Lemmings
Your task is to rescue lemmings across 120 levels of fast-paced puzzles. The creatures simply walk blindly through the world in the hope of reaching safety at the end of the level. Unfortunately, these levels include steep drops, gaps in the ground, barriers and rivers, among other hazards. You can play Lemmings online.

Lemmings1 in Retro Video/DOS Games For The Weekend

CD-Man
Pac-Man, an arcade classic, takes a new form in this colorful clone. CD-Man features five different worlds to complete, each with nicely drawn graphics in high-res EGA mode, and a new character, The Snoofer, who was not available in version 1.5 (in which you had only your old pal to play with).

Cdman in Retro Video/DOS Games For The Weekend

Goody
In Goody, you are a thief with a mission to break into a Spanish bank. For your mission, you’ll need appropriate tools, such as a torch and pincers. On your way to the bank, you must avoid policemen, gorillas, kung-fu experts, women sweepers and paper airplanes… that is to say, the typical problems any thief would face.

Goody in Retro Video/DOS Games For The Weekend

Prehistorik 2
In this game, the hero must use his club to crush animal enemies, many of which then release bonus items you can collect. Unlike in the original game, the character now no longer needs to feed his clan, so there is no minimum food target. Other bonus items are located around the levels, and even more can be found using your club creatively and adventurously.

Prehistorik2 in Retro Video/DOS Games For The Weekend

SimCity
SimCity sets you up as mayor of a new municipality, with the responsibility of building and maintaining a space where citizens can live and work in and be happy. The first task is to put in place essentials, such as housing, transportation links, schools, factories and shops. You have 50 types to choose from, with homes of various standards and businesses of various types; you’ll have to consider which site is appropriate for each purpose. Some power sources pollute; others don’t but are more expensive. Taxes must be raised to ensure income, and then portions of them must be allocated to public services such as policing and roads. Earthquakes, floods and fires are all emergency situations you must deal with to minimize damage.

Simcity1 in Retro Video/DOS Games For The Weekend

Maniac Mansion: Day of the Tentacle (DOTT)
The Edison mansion has always been a creepy old house at the edge of town. There have been rumors of strange experiments and odd creatures living amongst the Edison family. There is even a story that a meteorite once crashed near the home nearly 20 years ago. More immediately, a girl named Sandy has gone missing from the local high school, and her boyfriend, Dave, swears that he saw Dr. Fred abduct her. Dave knows he cannot do this alone and will need help from two other students if he has any hope of infiltrating the mansion and rescuing Sandy.

Dd in Retro Video/DOS Games For The Weekend

The Secret of Monkey Island
The Secret of Monkey Island is an adventure game that uses the command verb-based SCUMM interface first introduced in Maniac Mansion. You construct commands for your character, Guybrush, by clicking on the appropriate verb and then clicking on the inventory item or object in the room you want to interact with. It is the first LucasArts’ adventure game in which getting irrevocably stuck or dying is impossible. The branching dialogue system, in which you choose one of the available responses while talking to people, allows you to speak to characters in different ways, without fear of making a wrong choice. There are plenty of inventory-based puzzles to solve and even “insult sword fighting,” in which Guybrush has to prove that his wit is as sharp as his sword!

Monkeyisland in Retro Video/DOS Games For The Weekend

Pac-Man
The player controls Pac-Man through a maze, eating pac-dots. When all dots are eaten, Pac-Man moves to the next stage. Between some stages, one of three intermission animations plays. Four enemies (Blinky, Pinky, Inky and Clyde) roam the maze, trying to catch Pac-Man. You have three lives when you start, and if an enemy touches Pac-Man, a life is lost. When all lives are lost, the game ends. Here is one of many places you can play Pac-man online

Pacman in Retro Video/DOS Games For The Weekend

Digger
Digger is an arcade game that combines elements of the popular arcade games Dig Dug and Mr. Do!. Players control the titular Digger, who can tunnel through dirt with ease. The goal of each level is to gather up all of the gems. However, Nobbins and Hobbins are also lurking on the levels: Nobbins are fairly slow but can transform into Hobbins, which are much quicker. The enemies can chase Digger only through the tunnels he creates; they cannot dig through dirt themselves.

Digger in Retro Video/DOS Games For The Weekend

Leisure Suit Larry
Larry, the game’s protagonist, is a short, tacky, balding, leisure suit-wearing kinda guy who’s constantly searching for his next score. His combination of stupidity and brashness tends to get him into trouble. The object of the game is to get out of trouble in traditional adventure fashion, finding and manipulating objects as you thread your way through the story line.

Leisuresuitlarry in Retro Video/DOS Games For The Weekend

Loom
Loom is an adventure game from LucasFilm. What sets Loom apart from other adventure games (notably those released by Sierra) is its unique interface: you do not carry items around but rather manipulate existing items through spells. The spells are cast by playing magical notes on a special distaff. Loom also features three difficultly levels, differentiated by their interface: the standard level features the distaff at the bottom of the screen, but the notes aren’t written, whereas the expert level doesn’t show the distaff and you have to replay the spells by ear.

Loom1 in Retro Video/DOS Games For The Weekend

Soko-Ban
In this classic game, you must move crates to make a path to the exit. But this game goes beyond the simple premise and toughens the challenge on each level. By the final levels, you must plan 40 steps in advance.

Sokoban in Retro Video/DOS Games For The Weekend

Duke Nukem II
Duke Nukem II is a platform game featuring the famous muscled hero Duke Nukem. While giving an interview on TV, he is captured by the evil Rigelatins, who intend to use his brain to conquer Earth. Duke easily escapes his prison cell and now must make his way through four episodes, each consisting of an assortment of levels, with varying graphic design. On his way, Duke has to make his way through many obstacles and destroy enemies, both Rigelatin forces and apparent local wildlife. Initially, Duke has a weak laser rifle, but he can find a flamethrower (which allows you to launch yourself by shooting down), a rocket launcher and a far more powerful laser cannon. Unfortunately, the stronger the weapon, the less ammo it can hold. The game is available as a free download.

Dukenukem2 in Retro Video/DOS Games For The Weekend

Micro Machines 2
As with its predecessor, in this second game in the Micro Machines series, you’re behind the steering wheel of an extremely small car. You race around on interesting surfaces, like tables and tree houses.

Micromachines2 in Retro Video/DOS Games For The Weekend

Golden Axe
Golden Axe puts you in the shoes of one of three heroes, each with their own reason to try to overthrow the evil rule of Death-Adder. The evil ruler, along with his forces of darkness, kidnapped and imprisoned the king and his daughter and stole the legendary Golden Axe. This is a horizontal fighting game in which, as one of the three characters (a warrior, dwarf or amazon), you bash everything that stands between you and Death Adder himself.

Goldenaxe in Retro Video/DOS Games For The Weekend

Commander Keen
Billy “Commander Keen” Blaze, an eight-year-old genius, has flown to Mars in his Bean-with-Bacon Megarocket, built from common household objects. But while Keen was exploring Mars, the alien Vorticons stole vital parts of his ship and hid them in Martian cities. Keen must now find the stolen parts if he wants to return to Earth.

Commanderkeen in Retro Video/DOS Games For The Weekend

Wolfenstein 3D
Inspired by the top-down infiltration game Castle Wolfenstein, this innovative episodic FPS puts you in the boots of B.J. Blazkowicz, allied spy. There are six episodes: the first distributed as shareware, the second and third available upon registration, and the final three (set before the events in the first episode) available in the “Nocturnal Missions” pack. However, they don’t need to be played in sequence to be enjoyed!

Wolf3d1 in Retro Video/DOS Games For The Weekend

Chicago 90
Chicago 90 is an action game in which you can be a gangster or a policeman. As a gangster, you’re on the run from the police. As a cop, your mission is to catch the gangster. You can choose from three difficulty levels as your skills grow.

Chicago90 in Retro Video/DOS Games For The Weekend

Sid Meier’s Civilization
Civilization has the longest sweep of any strategy game of its time. You are leader of a nation. You begin in the Stone Age and complete the game in the 21st century (unless your civilization is destroyed by then). Your goal is to become the world’s dominant civilization, either by wiping out everyone else or by being the first to send a spaceship to Alpha Centauri.

Civilization in Retro Video/DOS Games For The Weekend

Doom / Doom II
In this sequel to the original Doom, you play the same hero, the last remaining space marine. After single-handedly saving Mars from demonic threat, you return to Earth, only to find that the demons have already invaded it and killed all of its inhabitants or turned them into demons. Your task is to kill all the demons and save the Earth.

Doom2 in Retro Video/DOS Games For The Weekend

F1
F1 is the official Formula One racing game. Two modes of play are available, Arcade and Grand Prix. In both modes, you complete a certain number of laps (4, 8 or 12) and select the circuit to race on. The circuits are in San Marino, France, Britain, Germany, Italy, Portugal, Japan and Australia.

F1 in Retro Video/DOS Games For The Weekend

Mortal Kombat
Mortal Kombat is a side-scrolling one-on-one fighting game that allows players to perform a variety of punches, kicks and special moves to defeat their opponent. When an opponent is about to lose a second round, the vanquisher can perform a finishing move, called a “fatality.” Each fighter has a unique fatality, by which they graphically kill the loser in a blood-soaked finale.

Mortalkombat1 in Retro Video/DOS Games For The Weekend

Summer Challenge
Five events are on offer in this Olympics-style sports game. You can choose your nationality and then play the games individually or as part of a tournament. The events are hurdles, triple jump, skeet shooting, diving and fencing. Each event’s control system involves rotating the joystick and firing at the right moment. Fencing is viewed isometrically, and skeet shooting has a 3-D view positioned behind the competitor, which is typical of the unusual approaches taken to the events here; the creators opted not to fill the game with 10 or more generic by-the-numbers offerings.

Summerchallenge1 in Retro Video/DOS Games For The Weekend

Test Drive 3: The Passion
Drive exotic cars while fleeing police in the sequel to the popular Test Drive series. New features included a true 3-D engine, a selection of music on the radio, police evasion, instant replay, digitized dashboard and interiors and larger, more diverse driving environments, with multiple routes.

Testdrive3 in Retro Video/DOS Games For The Weekend

Warcraft
By playing the humans or the orcs in this saga, two separate story lines emerge, with 12 scenarios per side unfolding the tale of the battle for Azeroth. Players must mine gold and chop wood to construct buildings and create new units. From swords to sorcery, you explore all the elements of classic fantasy. Rich forests, dark dungeons and bubbling swamps await the stalwart troops amassed to fight for dominance. You can command many unique armies and creatures, including knights, archers, clerics, warlocks, daemons, elementals and necromancers, who are able to raise the dead.

Warcraft1 in Retro Video/DOS Games For The Weekend

Dune II
Dune II is often considered the first mainstream modern real-time strategy game, and it established many conventions of the genre. Though set in Frank Herbert’s famous Dune universe, the game is only loosely connected to the plots of the books and films. Controlling one of the three houses, the player must fight a number of battles against the other houses. In the early levels, the goal is simply to earn a certain number of credits, while in later missions, you have to destroy all enemies.

Dune2 in Retro Video/DOS Games For The Weekend

Gravedigger
You are a gravedigger named Samuel, and you’ve heard of the famed Loodam Crypts and all the riches they contain. This game is a top-down action and puzzle adventure in which your goal is to collect as many jewels as possible, while avoiding monsters and traps, and then search for the exit. You have a shovel with which to kill weak enemies and find strong ones as the game progresses. Most levels have a puzzle whose solution requires setting combinations of switches in the correct order and finding keys.

Gravedigger in Retro Video/DOS Games For The Weekend

Worms
Worms is a turn-based strategy game. It features up to four teams of four worms, each team aiming to destroy the others on a generated terrain. Each worm has 100 hit points and dies when the hit points fall to 0. Upon death, the worm explodes, causing damage to everyone around.

Worms in Retro Video/DOS Games For The Weekend

Incredible Machine
Incredible Machine is a puzzle game in which the player has to assemble a Rube Goldberg-type contraption to solve a simple puzzle. The game consists of a series of puzzles, each with a clear objective, such as “put the baseball in the basket” or “turn on the fan.” To solve them, you are given a number of parts—such as balls, girders, rope, balloons, seesaws, cats and monkeys—and your job is to arrange and connect them on the playing field so that, upon clicking the “Start puzzle” button, the whole contraption activates and achieves the objective. Test your puzzle-solving skills with the free download.

Incrediblemachine in Retro Video/DOS Games For The Weekend

Stunts
One of the classic 3-D car-racing simulations, offering a variety of cars and opponents to choose from. The game features unusual stunt objects, including loops, corkscrews and jumps. You can watch your race in instant replay from different camera angles. A track editor is included as well.

Stunts in Retro Video/DOS Games For The Weekend

Karateka
The evil Akuma has destroyed your homeland, killed many of your friends and kidnapped Princess Mariko. Fortunately, you are skilled in martial arts, so your inevitable quest to reach Akuma’s palace has a hope of success.

Karateka in Retro Video/DOS Games For The Weekend

The Settlers II: Veni, Vidi, Vici
This is the sequel to the well-known Settlers game. You start your settlement with only one main building. To construct other buildings, you must find a source of stones and wood. So, you begin building little roads along which your men can transport all the different goods. You can choose from over 30 different professions for your men and from many different building types. Of course, other settlers are in the area, too, so war is unavoidable.

Settlers2 in Retro Video/DOS Games For The Weekend

Mario Brothers
You control Mario, who has to flip turtles coming out from two pipes at the top of the screen. The goal is to defeat the turtles and score points by flipping them from underneath, not jumping on them. All game play is on a single screen—no scrolling levels like in regular Mario games.

Mario in Retro Video/DOS Games For The Weekend

Quake
An enemy with the codename Quake, believed to be from another dimension, is using teleporter gates to invade Earth. You take the role of an anonymous soldier who arrives at your base only to find that Quake has overrun it and killed everyone. Somewhere on the base must be a teleporter to Quake’s realm. Your mission is clear: take the fight to the enemy, overcoming countless hordes of monsters, and exact revenge.

Quake1 in Retro Video/DOS Games For The Weekend

King’s Bounty and King’s Bounty 2
As a knight, paladin, barbarian or sorceress, you must amass an army of creatures to take on the local baddies and search for the Sceptre of Order. This is a turn-based game with a time limit that decreases the higher you go in skill level. Depending on your allegiance, you start with one set of creatures, although the king will not mind whether you’re his knight or barbarian. A game contains four maps, each with mean creatures to control and meaner opponents to fight. Acquiring these maps early allows you to find and buy more mean creatures, in turn helping you to easily conquer previous maps.

Kgbounty in Retro Video/DOS Games For The Weekend

Wing Commander
Wing Commander is a space-combat simulator interspersed with shipboard dialogue. On board the ship, you can save and load the game, visit the bar to get the latest gossip or go to the next mission briefing and 3-D space-combat mission.

Wingcommander in Retro Video/DOS Games For The Weekend

Hocus Pocus
Hocus Pocus is an action platform game. Controlling the young magician, you run, jump and climb through levels populated by various types of monsters. Hocus encounters many magic potions on the way, some of which restore health and others that grant special powers, such as super-jumps, which let you access new areas, and laser shots, which make for better attacks.

Hocuspocus in Retro Video/DOS Games For The Weekend

Supaplex
Supaplex is a puzzle game reminiscent of Boulder Dash. You make your way through levels by finding the exits, while collecting Infotrons and avoiding the killer Zonks.

Supaplex in Retro Video/DOS Games For The Weekend

Grand Theft Auto
In Grand Theft Auto, you take the role of a small-time criminal trying to make it big with the mob. Stealing cars, running jobs for gangsters and behaving generally anti-social is your path to success.

Grandtheftauto in Retro Video/DOS Games For The Weekend

Brix
Brix is a nearly exact clone of the Taito game Puzznic. You are presented with an array of pieces, which you can move horizontally, and when two or more of the same type touch, they disappear. The idea is to do that to every pair of bricks painted with the same geometrical shape… and fast, ’cause time runs out quickly. When you have an odd number of a particular piece, remove them by having them make simultaneous contact.

Brix in Retro Video/DOS Games For The Weekend

Color Lines
This is the original Russian version of Lines. It is a turn-based board game. On each turn, three randomly colored balls fall on random squares of a 9×9 grid. Your mission is to reposition the balls (moving them one per turn) to form lines consisting of five or more balls of the same color. The lines can be arranged vertically, horizontally or diagonally. Each full line you build immediately disappears, giving you points. There is basically no end to the game, but your first objective is to surpass the 3000 points scored by the “king.” Once you surpass him, he loses the throne and you become the new king. But the game continues ad infinitum. You lose when the entire board is filled with balls. You can play the game online, too.

Colorlines in Retro Video/DOS Games For The Weekend

Emulators

Before you can run these old ROMs and get the gaming underway, you need to load an emulator onto your machine. So, grab one of the several we have selected for you here, and let the games begin!

  • DOSBox
    A good choice of emulator because of its availability in multiple languages and the variety of operating systems it works on.
  • Boxer
    The emulator of choice for those running Macs. It comes with some games to get you started.
  • DOSEMU
    The emulator that most Linux users opt for. If you’re one of them, you might want to start here.

Galleries of ROMs

Today is officially game day, so scroll through the galleries we have amassed for you and lose yourself in all of the retro goodness. But take note: if you are on break, then we here at Smashing take no responsibility whatsoever if you get carried away and don’t get back to work on time. Not that we expect anything of the sort…

  • Best Old Games
    A great source of downloadable blasts from the past.
  • Keepers of the Forgotten Games
    A German website with a few emulator links and quite a large selection of games.
  • RGB Classic Games
    A website loaded with a lot of old freeware games and shareware demos.
  • DOS Games Archive
    Just that: a large archive of 275 free downloadable games, including shareware, freeware and more.
  • DOS Museum
    Actually a non-profit website dedicated to preserving vintage DOS games and applications.
  • Dope DOS Roms
    Another hub loaded with thousands of different ROMs.
  • Replacement Docs
    A great place to find manuals for the games you’ve download.

What’s your favourite DOS/Video game?

What game did you like most when you were playing on DOS? Let us know in the comments to this post!

(al)


© Angie Bowen for Smashing Magazine, 2010. | Permalink | Post a comment | Add to del.icio.us | Digg this | Stumble on StumbleUpon! | Tweet it! | Submit to Reddit | Forum Smashing Magazine
Post tags:


  •   
  • Copyright © 1996-2010 BlogmyQuery - BMQ. All rights reserved.
    iDream theme by Templates Next | Powered by WordPress