Lucky's Puzzle Carnival

Lucky’s Puzzle Carnival is currently in alpha testing. Visit http://www.orbitalcows.com/lpc/lpctest.php to download the alpha version either for Windows or for Mac OS X.

Lucky’s Puzzle Carnival is a package of 3 relatively simple puzzle games. Color Mix is about mixing colors to get 3 in a row. Memory Search is sort of a cross between Concentration and Battleship. Unmix is a row/column swapping game that’s hard to explain exactly.

Programmingwise, the game is done except for adding a Hint button for each game and figuring what exactly the “par” moves/times for each level should be. The music and sound effects are done. The art is significantly behind due to circumstances beyond our control. (It used to be that the programming was behind the art, but that’s changed.)

I figured this would be a good place to post a game written in Java even though the art isn’t done yet.

You can comment about the game either at the above link or on this thread.

For Linux users, follow these steps:

  • download the Mac version
  • unzip it
  • go to the directory where you have unzipped it
  • enter “mv art/interface/buyframebackground.jpg art/interface/buyFrameBackground.jpg”
  • enter “java -jar carnival.jar”

It works fine here. Write once, run everywhere ;D
Don’t forget LINUX USERS

I want to create a Linux version, but I don’t have a computer running Linux. Maybe I can set up an installation of Ubuntu on my external flash drive. I won’t have time for a while, but I’ll get to it eventually.

In the next build (alpha 5), you won’t need the “mv art/interface/buyframebackground.jpg art/interface/buyFrameBackground.jpg” step. I’ve already corrected the case in the code; it just isn’t uploaded yet.

Thank you for testing it. I wasn’t sure whether anyone saw my post or not because the forum was down the day after I posted.

Ok, I’m going to ask a stupid question here…

What directory do I need to write save files to on Linux? On Windows, it’s System.getProperty(“user.home”) + “/Application Data/” + myFolderPath. On Mac OS X, it’s System.getProperty(“user.home”) + “/Library/Application Support/” + myFolderPath.

Right now, the Linux version will just write to whatever the working directory is.

I used to have a book about Linux. It would have told me exactly where to put the save files. Unfortunately, it is missing. It must be one of the books I had to throw away when I moved to my new apartment.

Is there anything else I should do to make the Linux version more user friendly?

I’m going to set my computer to download Ubuntu while I’m at work. I might get it installed next week, but there are other things I need to do.

You can write in the home directory if you have enough right to do it.

Don’t use properties. Use java.util.prefs.Preferences. It is guarunteed to go into a backing store with no permission problems. In Windows that is the registry.

Right now, I suspect that the file gets written to the working directory, which should be the directory Lucky’s Puzzle Carnival is installed in.

I just wanted to know if there was some standard directory to put save files in like for Windows and Mac OS X.

I’m trying to store a file, not registry data.

On Linux, application specific data/configuration is stored in user’s home as hidden directory (which starts with dot) and lower-case without any delimiters (or with dash when necessary). So, use this for your game:


System.getProperty("user.home") + "/.luckypuzzlecarnival"

Thank you. I will make that change in the beta 2 build (yep, the alphas are over).

Even so, I have no way to test it with Linux. I tried to install Ubuntu Linux to an external flash drive, but the installer doesn’t seem able to find the flash drive. I don’t want to install it on my laptop and risk my existing Windows XP installation.

I just don’t have a computer I’m willing to risk right now. I could run it off of a Live CD, but it doesn’t seem worth getting a Live CD unless someone actually wanted to buy the game for Linux. As it is, I think I’ll just include gouessej’s instructions and hope anyone who uses Linux can figure out how to run a Java program.

You can install Linux as a guest under VirtualBox (http://www.virtualbox.org/) running on a Windows, MacOS, or Solaris (Intel) host machine. It’s free and doesn’t require a processor with virtualisation extensions.

I’m downloading Virtual Box now. I will take a look at it when I get a chance.

Thanks for all your help.