Lemmings CSS Animation

(markblah.github.io)

410 points | by MarkBlah 2 days ago ago

78 comments

  • rfarley04 2 days ago 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

    • TimTheTinker a day ago ago

      There's a modern macOS port of Lemmings here I've been playing for a few weeks (and several other classic 68k Macintosh game ports): https://roytinker.com/68k-ports/

      • frizlab a day ago ago
        • TimTheTinker a day ago ago

          I tried that, but it seems buggy and large (2.06 GB!) compared to the 68k-ports version (about 1.5 MB)

          • frizlab a day ago ago

            > And then here comes Erik Veland with a port of... well, all of them. The original game. The semi-sequel games. The three different holiday games. Preview support for the two full sequels. And six thousand fan levels.

            The size probably comes from that.

    • TacticalCoder 2 days ago 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!

      • detritus a day ago ago

        One of the best features of the Amiga (and perhaps Atari ST?) was the two player version. A mouse in each of the joystick sockets, each player starts from opposing ends of the map in a splitscreen view, having to get to the other and obviously not interfering with the opposition's efforts. Ahem.

        An evil game. Such fun. I wish they'd expanded on it more...

    • MarkBlah 2 days ago 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

    • SanjayMehta 2 days ago 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.

    • shevy-java 2 days ago ago

      Agreed - but what is shown on the webpage here, is not really lemmings.

  • Waterluvian 2 days ago 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.

    • tomcam 2 days ago ago

      https://ablakey.ca/

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

    • diginova 2 days ago ago

      the base plates lighting up showing history of where the robot travelled is a fun detail

  • cs02rm0 2 days ago ago

    I recently put lemmings into some clinic management software I've been working on as a software egg.

    https://postimg.cc/gxvZHbgG

    • tosti a day ago ago

      That's beautiful! I hope it doesn't measure and chart the patients ^-^

  • noufalibrahim 2 days ago 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.

  • ggsp 2 days ago ago

    Cute :) It has a couple of zoom bugs on mobile, something like

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

    should fix them!

    • xtracto a day ago ago

      You can make the lemmings jump on mobile by scrolling down and up as a fast movement. Like catapulting/pushing them up

    • MarkBlah 2 days ago ago

      Oh awesome thank you, I will add this in

      • tosti a day ago ago

        Cool! Have you also tried setting maximum display size in accessibility settings on android? I lost most of them at the stairs and the rest fell into the walls. Is that supposed to happen? None reached the bottom. That said, this is pretty cool.

  • pwagland 2 days ago 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.

    • WorldMaker a day ago ago

      Page response might be smoother in both if the script switched from `setInterval` to `requestAnimationFrame`.

  • OuterVale 2 days ago 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.

  • grumbel 2 days ago 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 2 days ago ago

      Haha that’s cool, need to hunt sheep.exe

    • jcattle 2 days ago ago

      Just a note for you: Nothing at all shows up for someone who has prefers reduced motion on.

    • em-bee a day ago ago

      when i opened this thread my first thought was that i want pingus characters, not lemmings.

      it's also awesome that you took over maintenance of xpenguins since you are the original creator the characters.

      way to go!

  • tniemi 2 days ago ago
  • piratebroadcast a day ago ago

    Okay, this reminds me of an game from a similar time period where there would be these two tanks firing at each other from across the screen, one at a time. Does anybody remember that and what it was called?

  • dieselgate 5 hours ago ago

    This is awesome thanks for sharing

  • bradley13 a day ago ago

    Cute. However, the fact that this is possible shows how ridiculously out of control CSS is. It is supposed to control appearance, and that does not entail being Turing complete.

  • patwolf 2 days ago ago

    I remember having Lemmings and messing with the animation sprites from the game--I don't recall if they were saved in a bmp format or if it required a tool to extract. I'd try to recolor their hair or change their outfits pixel by pixel, but there were a lot of animations and a lot of frames. I always wanted to use them to build a Tetris/Lemmings hybrid game (the two games with the best music), but never got around to it.

  • freshteapot 2 days ago 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.

  • MisterMunchkin 2 days ago 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

  • Hunterson a day ago ago

    Awesome, brings back memories of playing lemmings on my Amiga in the early 90s

  • adamddev1 2 days ago ago

    Nothing good comes from vib...

    Ok, this is awesome.

  • fschuett 2 days ago ago

    Reminds me of a similar game I had as a kid (Dweebs 2: The New Breed).

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

  • felipeerias 2 days ago 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.

    • dspillett 2 days ago 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.

    • 9dev 2 days ago 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.

  • alana314 2 days ago ago

    This is fantastic.

  • VorticonCmdr 2 days ago 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

  • MarkBlah 2 days ago ago

    A tribute to Psygnosis, just for fun

    • msephton 2 days ago ago

      Psygnosis were the publisher, DMA Design were the developers (you might know them from their other big game: Grand Theft Auto)

  • richardfey 2 days ago ago

    Funny how they keep hopping on a toggling horizontal scrollbar there at the bottom.

  • WhyIsItAlwaysHN 2 days ago ago

    Thank you for making this. It was really fun and a really pleasant start to my day.

  • rob74 2 days ago 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 2 days ago ago

      They are...

  • hoppp 2 days ago ago

    On android they fall down along the side all the way to the bottom

  • nilail 2 days ago ago

    Super funny idea ! But it does not follow the scroll down on Safari

  • swiftcoder 2 days ago ago

    I love that they can also walk on the text headings

  • allexsendev 2 days ago 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 2 days ago ago

      The tick rate isn’t high so should be able to have thousands

      • allexsendev 2 days ago 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.

  • ckx 2 days ago ago

    Really fun to play around with! Good job!

  • int32max a day ago ago

    we should make the web more fun and interactive like this

  • cheapcheerful 2 days ago ago

    Awesome. Loved the originals.

  • ForHackernews a day ago ago

    Seems like a good place to drag this one out: DHTML Lemmings from 2004(!) https://jezsoft.co.uk/online/lemm2/index.html

  • TheRealPomax a day ago ago

    Lemmings JS + CSS Animation

  • ForgotMyUUID 2 days ago ago

    So cute!

  • shevy-java 2 days ago 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.

  • jdw64 2 days ago ago

    Oh, this game brings back memories

  • manif00ld 2 days ago ago

    this made my day

  • metchio 2 days ago ago

    this is awesome

  • memming 2 days ago ago

    Now that's what I'm talking about.

  • monkeydust 2 days ago ago

    Is there anyway to get the classic version of Lemmings (on Amiga/PC) playable on the Switch?