userbinator 13 days ago

    Full installation of Windows 95 - ~64MB
    sol.exe - 167KB

    jre-9.0.4_windows-x64_bin.exe - 96.6MB (compressed)
    Solitaire.jar - 463KB
It seems that even a VM containing all of Windows 95 would be smaller than a JRE and this version of Solitaire.
  • samuell 13 days ago

    Not to complain too much on a praise worthy effort, but it would have been so nice if this was coded in FreePascal with Lazarus. Then we would have tiny native binaries for all the desktop platforms, which would feel even more native.

  • qingcharles 13 days ago

    I saw a launcher in Task Manager today using 96MB of RAM. Its only job is to launch another app.

    For a couple of years I programmed on a device where ALL the apps combined had to total less than 8KB.

    • lionkor 13 days ago

      Can we explain what this memory does? Is it just abstractions ontop of abstractions etc?

      • qingcharles 13 days ago

        The app simply has an image and a button that says "OPEN" on it, which launches the other app.

        I'm guessing it is Electron or something and underneath it is loading an entire web browser engine to display the image and the button.

  • rpigab 13 days ago

    That's right, but we have to remember it's not really useful to optimize for binary size or RAM usage for a software that does not need multiple instances on servers, it's an end user app that you only need one of.

    I think Java is a nice choice for a Solitaire game. If you're looking for efficiency, take a look at my command-line Solitaire that you can play in Gitlab pages or in a terminal : https://gitlab.com/rpigab/solitaire-cli

    It's written in Rust so by design, it should be blazingly fast wink wink. Well there are many ways to shrink the binary, I didn't try to yet, the WebAssembly part too is way bigger that it would need to, but still, it's smaller and there's less colors, shapes and animations to display.

    • trallnag 13 days ago

      Instead you end up with 20 Java microservices each taking up a gig of memory

    • tjoff 13 days ago

      ... that sentiment is how we ended up requiring 1GB of ram for sending text...

      • VelesDude 13 days ago

        A slight tangent but it is kind of mind melting that smartphones now do need a minimum of 1GB just to send an SMS. I mean look at any Nokia phone form the 90's and none of them probably had more than 1MB of RAM, many way below that. Yes there is a lot of quality of life and security features but the bloat is real.

      • rpigab 13 days ago

        Is that true or just hyperbole? On what system?

        I love working towards making systems as efficient as possible, but in real life, engineer hours are limited and compromises exist.

        Also, if this is quantitative, we could make the same argument with 1MB, and 1KB, and less. Sending text doesn't require RAM at all, it requires carrier pigeons.

  • qwerty456127 13 days ago

    Nevertheless it's just such a delightful gulp of fresh air to open the repo of a GUI app and see it's not in JavaScript :-) An Electron instance with the same would probably take even more memory, wouldn't it?

    • wolletd 13 days ago

      I recently build some internal app with Qt. Unfortunately, building Qt apps on Windows is somewhat complex.

      Also I didn't find a way to install Qt on Windows without later receiving E-Mails from Trolltech (or The Qt Company, nowadays) trying to sell Qt to me.

      • qwerty456127 12 days ago

        > Also I didn't find a way to install Qt on Windows

        pip install pyqt5-tools gets you everything incl the designer :-)

        It may fail building though.

  • ktosobcy 13 days ago

    Developer should have used jlink to get smaller distribution package, alas it would still be bigger.

    OTOH - I wonder what the size of native binary would be

  • pjmlp 13 days ago

    That is because they haven't bothered to use jlink.

    Shipping JRE isn't a thing since Java 9, other than for folks stuck in old Java ways.

  • throwawayyy9237 13 days ago

    Imagine an Adobe version of this. 64Gb at least.

39Wc 13 days ago

Seems the entire game engine is missing from the source code, instead it comes bundled with a jar file in the classpath called "mead.jar".

I wonder why the author thought that was a good idea. I was actually looking forward to studying the game engine itself.

  • LeFantome 13 days ago

    Unless he took steps to obscure it. you still have the source code. Java is trivial to decompile.

    • 39Wc 5 days ago

      Why not release the source code as an open source project then, and add a proper maven dependency instead of bundling a jar file?

bitwize 13 days ago

Microsoft has added premium subscriptions to modern Windows Solitaire, because it's 2024 and God has forsaken us. So this is a welcome project.

  • appstorelottery 13 days ago

    At first I thought you were joking; however a quick search reveals that indeed God has forsaken us.

    https://microsoftcasualgames.zendesk.com/hc/en-us/articles/1...

    The OS is now "free" and Solitaire is now paid product? Is this the pure definition of irony?

    OP: You've done a wonderful job with this!

    • wiktor-k 13 days ago

      I had to use Windows machine to test an app recently and the amount of ads and other annoyances there is just mindblowing. I wanted to show Solitaire to my kids but it's so ad-ridden it's painful to play.

      I'm strongly considering just reformatting the drive and putting Linux in there.

    • ctippett 13 days ago

      All credit goes to the original creator, I just posted the link :-)

    • bitwize 13 days ago

      Consider Windows a live-service, free-to-play OS.

  • AndrewDavis 13 days ago

    I carry those old games from old windows installs. They won't run "natively" on modern windows, however someone ported a subset of WINE, winevdm, to windows called otvdm.

    I was playing Chips Challenge yesterday!

    https://github.com/otya128/winevdm

  • LeFantome 13 days ago

    $2 a month for solitaire?!?!

leighleighleigh 13 days ago

Hell yes, I just spent half a day theming my Linux box with Chicago95! I've already got Space Cadet pinball from Flatpak, and now I've got Solitaire - nostalgia levels are off the charts right now B-)

  • verve_rat 13 days ago

    I'd like to try this out at some stage. Any tips? Any thing that caught you out?

    • jwrallie 13 days ago

      I also recently tried chicago95, it seems to have some issues with the latest Xfce version, so if you see your notification area icons have squares around them, there is a workaround on the GitHub issues page of the project.

      When I used the workaround, the taskbar lost its 3D border effect, so I recovered that by using a background image that is 1 pixel wide and has the correct colors to have the 3D effect. It’s better if you use something like Xubuntu 22.04 first to see how it should look like without this bug.

ctippett 13 days ago

I came across this project after seeing a mod for the game Balatro [1] that used the artwork from the original Solitaire sourced from this repo.

The README was so wholesome I thought. The developer obviously put a lot of care and attention into creating something they're proud of and hoped others would enjoy. I hope the person who created this notices the influx of attention its now getting and gets a kick out of it.

[1] https://steamcommunity.com/sharedfiles/filedetails/?id=32237...

LeoPanthera 13 days ago

A wonderful preservation effort, but I thought Solitaire originated with Windows 3.1. Are there any significant differences to the Windows 95 version?

  • o11c 13 days ago

    Windows 3.0 according to Wikipedia, which mentions no changes until Windows 2000.

    A little googling shows screenshots, obviously the widgets look a little different but no meaningful differences are apparent at a glance.

    • chungy 13 days ago

      Indeed; Windows 2000 changed the card backgrounds, but it otherwise remained virtually unchanged from 1990 until 2007 when Vista changed it to be Direct3D accelerated and new graphics.

  • matttproud 13 days ago

    Indeed. I never played it on Windows 95, but I spent a lot of time playing it on Windows 3.1 (and probably 3.0). This looks essentially like the Windows 3.x version.

squarefoot 13 days ago

Hijacking the thread to ask if anyone could explain why Aisleriot, an otherwise quite good Linux solitaire game, seems to poorly randomize cards, at least when playing the classic Klondike.

https://wiki.gnome.org/Apps/Aisleriot (no need to run Gnome to play it)

The apparent bug was already reported 4 and 2 years ago on different games.

Dwedit 13 days ago

Does that mean it has the ending animation that plays way too fast? They fixed that in Windows 2000.

  • jamiek88 13 days ago

    Ha! It wasn’t supposed to be like that crazy flinging of cards?!

    Nice to learn trivia about key memories from your youth.

hoyd 13 days ago

Please, redo Hearts from windows 3.11 too. :-)

mrdanielricci 8 days ago

Original Author of the game here.

It was a big surprise for me to see a jump in attention that my Solitaire remake got. Thank you all for taking a look at my repo and I hope that you enjoy playing the game.

Minesweeper was also a lot of fun to remake, interestingly it took around 3-4 months of work to finish that before starting on Solitaire which took a little over a year to complete.

When I was a young boy we had a Windows 95 machine and an Apple Macintosh at my elementary school, where I got introduced to Solitaire, Minesweeper, MS Flight Simulator, The Secret of Monkey Island, Hit the Road Sam and Max, and a bunch of other games and applications.

I thought it would be nice to keep a little bit of that nostalgia around so I tried to remake Minesweeper and Solitaire as close to pixel perfection as I could.

The Solitaire game still has to have the card animation support released which I am in middle of getting done.

A bit of backstory on the mead.jar reference.

I started making tic-tac-toe, checkers, and chess to get more into having a few small projects finished that I can look back and be proud of. While I worked on those three small games, I would reference this other Java project that would be in charge of asset management; I called this project Mead, which is the name of my Dwarf Ret Pally back in my WoW days.

Mead is a code base that has a tile editor that lets you add in images to generate a tile map with simplistic layers, and with code generation support that when referenced from your Java project, would give you access to your tile map through a common interface. Think Tiled for MonoGame, but back in 2012 and with features specific to my games. I will also open source that project for everyone once everything gets upgraded to a more recent JRE.

If you would like to check out my other games as I go along please feel free to follow my progress on GitHub. If you would like to contact me for questions on things that i did in my games please feel free to message me anytime.

And it goes without saying that if ever I can help anyone out from the development side with your projects I will do my best just send me a ping.

Again thank you all for trying out the Solitaire remake.

romwell 13 days ago

I still play the original Win 3.11 Solitaire (same as the Win 95 one, more or less) - which, rather remarkably, still runs on Windows 10.

  • efdee 13 days ago

    Nitpicking but the original is from Windows 3.0 ;-)

addminztrator 13 days ago

So cool! I only started playing solitaire on XP though and it was slightly different

  • accrual 13 days ago

    I enjoyed "speed running" solitaire on XP during my computer classes in school. I kept a .txt files of my scores. Wish I still had it!

mvkel 13 days ago

Why climb Everest? Because it's there.

tcmb 13 days ago

(2019)

juliusdavies 13 days ago

You realize copyright applies to an application’s visual representation, too, right? Copyright isn’t just a code thing.

  • ChickeNES 13 days ago

    You could always have the end user drop in their legally obtained copy of CARDS.DLL from older versions of Windows, and then parse the NE to extract all of the card images...at least, that's what I did when I made a clone of Windows Solitaire :)

  • boomboomsubban 13 days ago

    It seems to have survived on github for about 6 years, so the copyright holders probably aren't bothered.

  • saghm 13 days ago

    Such a disappointing lack of regard for the impact this might have on Windows 95 sales going forward