Lemmings CSS Animation
262 points by MarkBlah 9 hours ago | 52 comments
  • MarkBlah 9 hours ago |
    A tribute to Psygnosis, just for fun
    • msephton 3 hours ago |
      Psygnosis were the publisher, DMA Design were the developers (you might know them from their other big game: Grand Theft Auto)
  • Waterluvian 8 hours ago |
    That’s pretty sweet.

    I did something on my site recently like that where you can click a hexagon and it turns into a robot and starts SLAM mapping the page, navigating around text elements carefully.

    Were you initially surprised by how easy it was to get exact block size of individual characters and not just entire dom elements? That’s the part I thought was going to be the most difficult.

    • diginova 7 hours ago |
      the base plates lighting up showing history of where the robot travelled is a fun detail
    • tomcam 7 hours ago |
      https://ablakey.ca/

      Nice! Your site is impressive and your achievements even more so.

  • alana314 7 hours ago |
    This is fantastic.
  • ggsp 7 hours ago |
    Cute :) It has a couple of zoom bugs on mobile, something like

    html { overflow-x: clip; touch-action: manipulation; }

    should fix them!

    • MarkBlah 7 hours ago |
      Oh awesome thank you, I will add this in
  • cheapcheerful 7 hours ago |
    Awesome. Loved the originals.
  • noufalibrahim 7 hours ago |
    I don't know if I'm remembering this correctly but there used to be a site called html5lemmings (or something similar) where you could play a few levels of the game. This was before modern web applications and things were still mostly server side rendered with minimal javascript. The demo was quite impressive. I don't know if it's still there. Couldn't find it with a quick search.
  • memming 7 hours ago |
    Now that's what I'm talking about.
  • OuterVale 6 hours ago |
    I enjoy putting the lemming in the margin on the bottom of the viewport at the left or right side then scrolling down such that the lemming plummets. Then, scrolling up, I can make it bounce up as if it is on a trampoline. Very funny.
  • nilail 6 hours ago |
    Super funny idea ! But it does not follow the scroll down on Safari
  • felipeerias 6 hours ago |
    Love it!

    It is unfortunate that the scenery is positioned in such a way that lemmings end up falling by the side all the way to the bottom of the screen.

    Perhaps it would look better if you removed the padding from <body> and added more pits to the scenery.

    • 9dev 6 hours ago |
      Right, I thought the same. Construct it such that a Lemming falling down from the top will have to clear every level to the bottom instead of just falling past all of them.
    • dspillett 2 hours ago |
      As the first paragraph says (“Drag one to carry it”) you can move them around to put them on/in the parts that you want to test their interactions with.

      Other than respawning them as you scroll around, so one starts in an appropriate place as a test comes into view, and resetting them automatically, perhaps on a timer, there probably isn't a better way to properly show it off than that.

  • grumbel 6 hours ago |
    I vibe-ported xpenguins[1] to Web[2] recently, can be used as bookmarklet and let run on any website. No original Lemmings in that one however, only the knockoff penguins.

    [1] http://xpenguins.seul.org/ and updated at https://github.com/Grumbel/xpenguins-ng

    [2] https://xpenguins-web.github.io/

    • MarkBlah 6 hours ago |
      Haha that’s cool, need to hunt sheep.exe
    • jcattle 5 hours ago |
      Just a note for you: Nothing at all shows up for someone who has prefers reduced motion on.
  • swiftcoder 5 hours ago |
    I love that they can also walk on the text headings
  • WhyIsItAlwaysHN 5 hours ago |
    Thank you for making this. It was really fun and a really pleasant start to my day.
  • rob74 5 hours ago |
    Cute, but it would look nicer if the walkers were... you know, actually walking? Ok, might be hard to do with CSS to be fair, I don't know enough about CSS animation to judge that.

    EDIT: works in Chrome and Firefox, doesn't work in Edge (on Linux - yeah, I know almost nobody uses that) for some reason...

    • filcuk 5 hours ago |
      They are...
  • richardfey 5 hours ago |
    Funny how they keep hopping on a toggling horizontal scrollbar there at the bottom.
  • rfarley04 5 hours ago |
    I played this game for dozens of hours with my dad growing up and seeing and playing with these animations is one of those times when nostalgia is so overwhelming and unexpected that I feel physically dizzy. If the animation had the sounds of lemmings dying when they fell from too high[1] I might have been hospitalized. Good work.

    [1] https://www.youtube.com/watch?v=F_RmG9WB4BE

    • MarkBlah 5 hours ago |
      Haha yea I pulled the sprites from the original game, I was thinking the same, an umbrella or die, it’d be a good way to artificially increase web analytics, maybe a message bubble
    • shevy-java 3 hours ago |
      Agreed - but what is shown on the webpage here, is not really lemmings.
      • MarkBlah 2 hours ago |
        Duh
    • SanjayMehta 3 hours ago |
      I played this for dozens of hours with my dad yelling helpfully over my shoulder. I still have the floppy in storage, but with no drive to read it.
    • TacticalCoder 2 hours ago |
      > ... is one of those times when nostalgia is so overwhelming

      1991, Psygnosis (of course), Commodore Amiga (double of course!): my little brother was 9 y/o at the time and we were teenagers and we'd play Lemmings like crazy on our Amiga.

      My little brother couldn't speak english yes but he'd imitate the "oh, nooooo" sentence Lemmings you'd "suicide" would make.

      More than three decades later my brother is still nicknamed "Lem" after "Lemmings" and that's how we call him. And about two decades ago, he gave his consulting company a name sounding like "Lemmings" (spelling slightly different). He's still "Lem" and he still has got that company.

      Oh noooooooo!

  • allexsendev 5 hours ago |
    mad impressive imo, spawned like 50+ ppl and still running smooth (although must say I have a monster rig).

    And I overenjoyed throwing lil marios around

    • MarkBlah 4 hours ago |
      The tick rate isn’t high so should be able to have thousands
      • allexsendev 4 hours ago |
        Could be, yeah, didn't look deep into it. Just speaking from my experience with the flashy websites doing impressive demos usually starting to lag fairly soon.
  • freshteapot 5 hours ago |
    Took me a moment to realise I could pick them up and place them, on things and in things.

    Thank you for bringing this to life.

  • jdw64 4 hours ago |
    Oh, this game brings back memories
  • adamddev1 4 hours ago |
    Nothing good comes from vib...

    Ok, this is awesome.

  • MisterMunchkin 4 hours ago |
    This sent me on a lemmings hunt and I found someone porting all of the lemmings games and community levels to Mac - https://github.com/ErikVeland/Lemmings
  • VorticonCmdr 4 hours ago |
    love it. I did build a html-in-canvas version (https://github.com/VorticonCmdr/lemmings) for fun and I love how creative other people get
  • ckx 4 hours ago |
    Really fun to play around with! Good job!
  • shevy-java 3 hours ago |
    That kind of misses what made Lemmings fun though.

    Without digging and building stairs and parachutes, it is only Lemmings in name, not in spirit. Also, exploding lemmings - this can probably be done via CSS animations.

  • cs02rm0 3 hours ago |
    I recently put lemmings into some clinic management software I've been working on as a software egg.

    https://postimg.cc/gxvZHbgG

  • tniemi 3 hours ago |
  • ForgotMyUUID 2 hours ago |
    So cute!
  • metchio 2 hours ago |
    this is awesome
  • monkeydust 2 hours ago |
    Is there anyway to get the classic version of Lemmings (on Amiga/PC) playable on the Switch?
  • manif00ld 2 hours ago |
    this made my day
  • pwagland an hour ago |
    Interesting experiments and differences between the browsers.

    Using the test: (async () => { const sleep = (ms) => new Promise((r) => setTimeout(r, ms)); for (let i = 0; i < 200; i++) { __walker.add(); await sleep(10); } })();

    From the JavaScript console, on both Chrome and Safari.

    The animation is _way_ smoother on Chrome, but scrolling on that page becomes really painful.

    Safari, on the other hand, uses a lot more CPU to do the animation, and the FP of that animation drops dramatically as you change the number of lemmings from 10 -> 50 -> 100 -> 200. However scrolling the page remains smooth the entire time.

  • hoppp 21 minutes ago |
    On android they fall down along the side all the way to the bottom
  • fschuett 11 minutes ago |
    Reminds me of a similar game I had as a kid (Dweebs 2: The New Breed).

    https://www.youtube.com/watch?v=82cqmq6quXI