Lost Path (Ludum Dare 45) Mac OS

broken image


  1. Find Rhythm games for macOS like Friday Night Funkin', Friday Night Funkin' (Ludum Dare Prototype), Audio Runner, A Dance of Fire and Ice, Lo-Fi Room on itch.io, the indie game hosting marketplace.
  2. Find games for macOS tagged Cute like Pico Snail!: Dream Castle, The Deepest Booze, Friday Night Funkin' (Ludum Dare Prototype), A Taste of the Past, Wink GameBoy - Beta 5.5 on itch.io, the indie game hosting marketplace.

A lonely cube lost all of its rainbow colors and have to go through 7 levels to get them back. Enjoy a big color mayhem.

Controls

Ludum Dare 34 Results. See the winners! The fowjl mac os. Real World Gatherings. But I couldn't figure out at all which path I was supposed to take and ended up getting stuck:Mac OS 10.10.

  • WASD - move around (alternate movement with arrow keys)
  • SPACE - to shake and loose your current color

Creators

  • Djamschid Arefi
  • Jens Junker
  • Tobias König
  • Felix Manthe
  • Christian Ruppert

Enjoy!

StatusReleased
PlatformsWindows, macOS, Linux, HTML5
Rating
AuthorYheeky Games
GenrePuzzle
Made withUnity
Tags3D, Colorful, Ludum Dare 45
LinksLudum Dare

Download

Log in with itch.io to leave a comment.

Thanks Card Castle Studio! We already have some plans for future optimizations. The ground texture is one of it :)

We put the control (the player not the camera) in the FixedUpdate to have a bit of jitter because of the color. But we also thought about putting it in the LateUpdate. Thanks for your feedback! :)

Lost Path (ludum Dare 45) Mac Os Update

Great Game overall, well executed concept and puzzles. I did notice some performance issues when their was a huge amount of paint on the ground along with jitters in the camera. To fix these in the future you might want to put a maximum paint sprite count and place the camera's transform in the Late Update.

Lost path (ludum dare 45) mac os pro

Here's how you use PyInstaller and PyGame to create a single-file executable from a project that has a data directory that contains resources like images, fonts, and music.

  1. Get PyInstaller.
    • On Windows, you might also need pywin32 (and possibly MinGW if you don't have Visual Studio).
    • On Mac OS X, you will need XCode's command line tools. To install the Command Line tools, first install XCode from the App Store, then go to Preferences – Downloads and there is an option to download them there.
  2. Modify your code so that whenever you refer to your data directory, you wrap it using the following function:

    An example of usage would be

    This is mostly for convenience – it allows you to access your resources while developing, but then it'll add the right prefix when it's in the deployment environment.

  3. Specify exactly where your fonts are (and include them in the data directory). In other words, don't use font = Font(None, 26). Instead, use something like font = Font(resource_path(os.path.join('data', 'freesansbold.ttf')), 14).
  4. Generate the .spec file.
    • Windows: (You want a single EXE file with your data in it, hence --onefile).
    • Mac OS X: (You want an App bundle with windowed output, hence --windowed).
  5. Modify the .spec file so that you add your data directory (note that these paths are relative paths to your main directory.
    • Windows: Modify the section where it says exe EXE = (pyz, and add on the next line:
    • Mac OS X: Modify the section where it says app = BUNDLE(coll, and add on the next line:
  6. Rebuild your package.
  7. Look for your .exe or your .app bundle in the dist directory.

Phew! That took me a long time – the better part of a few hours to figure out. This post on the PyInstaller list really helped.

So why was I trying to package a Python executable file anyway? Read on…

This weekend, I decided to participate in a 48-hour game design 'competition'. Ludum Dare is a compo that asks you to create a video game from scratch in a 48-hour time period – you have to write your code and create all of your assets in that time period.

This means no reusing graphics, pictures, music, or sound from other projects, for example. You're also not supposed to reuse code either. I decided to participate on the Thursday the day before. Most people use the previous weekend as a 'warmup weekend' to test their tools, get some practice, and so forth. (My entry is located here, by the way).

I'll do a more detailed compo writeup later, but I just want to concentrate on one thing that kept me up for hours after the competition: getting a Windows executable created from a Python project that uses PyGame and a data directory.

I rather enjoy Python as a programming language. The syntax is reasonably concise, the language does a lot of things for you, and it's well-laid out. There's also a lot of good support in the form of third-party libraries. I've been using Python for various things for the past few years (usually small scripts for data extraction and analysis in research).

One thing I had never thought about before was distributing a Python project as an executable package, and while it was on my mind throughout the entire compo, I didn't actually learn the process of creating the package until the last hour of the comp before submission. After you submit your primary platform, Ludum Dare allows you around 48 hours to compile for Windows, since the majority of reviewers use Windows. The dropper experiment mac os.

The ideal submission is a single binary file (an .exe file for Windows) that doesn't have to extract a lot of data, so that it's easy for people to download and run your game.

PyInstaller vs. Py2exe vs. Py2app

Ludum Dare 48

I went on a wild goose chase trying to find out how to make a single executable file out of a Python project that would include all of my data assets. I first tried py2exe and py2app. py2app mostly worked all right, but py2exe was a pretty big mess.

The end story is that PyInstaller is newer and shinier than py2exe, and that you need to secret sauce code that someone out there on the Internet found before I did. PyInstaller basically runs EXE files by extracting the assets into a temporary data file that has a path _MEIPASS in it ((technical details here). Be sure that you check that every file is loaded in through that wrapper. The Tree() TOC syntax was also confusing, but basically, it's the relative path of your data files and it will automatically load all of the files in that directory. Make sure it exists in the EXE portion (Windows) or the APP portion (Mac).

There's a Make/Build cycle in PyInstaller to generate the spec file and build it in a single step as well – I find it easier to do that to generate the spec file and do an initial binary run, then to modify the spec and run PyInstaller again with the spec file as the argument. PyInstaller is pretty smart about rebuilding, and you save a lot of time.

I think in the long run, if you compare py2exe, py2app, and PyInstaller, PyInstaller is the program worth learning. It did have a pretty sharp curve for me – it didn't help that I was trying to do this late at night after a challenging weekend!

If you do wish to use py2app to build your Mac OS X application bundle, then do keep in mind that you need to have a import pygame._view because of some kind of obscure issue.

Anyway, that's all there is to this post for now.

Here's the setup.py I used for py2app.





broken image