Incremental Game Time Format
CJam (snapshot), 41 38 bytes

q~"&lt;&lt;^X^G"{imd\}%W%"wdhms":s.+_{0=}#&gt;&lt;S*


The above uses caret notation, since two of the characters are unprintable.

Thanks to @Sp3000 for golfing off 2 bytes.

Testing

The latest stable release (0.6.5) has a bug that can cause {}# to return Integers instead of Longs. Quite paradoxically, this can be circumvented by casting to integer (i).

To run this with code with the online interpreter, click this permalink or copy the code from this paste.

Alternatively, you can download and build the latest snapshot by executing the following commands:

hg clone http://hg.code.sf.net/p/cjam/code cjam-code
cd cjam-code/
ant


You can create the CJam file like this:

base64 -d &gt; game-time.cjam &lt;&lt;&lt; cX4iPDwYByJ7aW1kXH0lVyUid2RobXMiOnMuK197MD19Iz48Uyo=


How it works

q~        e# Read an evaluate the input.
"&lt;&lt;^X^G"  e# Push the string corresponding to the array [60 60 24 7
{         e# For each character:
  i       e#   Replace it by its code point.
  md      e#   Push divisor and residue of the division by that code point.
  \       e#   Swap their order.
}%
W%        e# Reverse the resulting array.
"wdhms":s e# Push ["w" "d" "h" "m" "s"].
.+        e# Perform vectorized concatenation.
_         e# Push a copy.
{0=}#     e# Find the index of the first pair with positive integer.
&gt;         e# Remove the preceding pairs.
&lt;         e# Truncate to the number of pairs specified in the input.
S*        e# Join, separating by spaces.