Mac issue with ASA

  • #1, by Simon_ASASunday, 26. April 2015, 12:19 10 years ago
    Hi guys,

    this message is just to inform you that there are more issues with the Mac versions of my game. I hope that these informations will help.

    This is what they say at Mac Game Store (macgamestore.com)


    1. We attempted to launch the game on our test mac, OS X 10.9, and it would not launch. Instead it filled the console with:

    4/22/15 12:27:02.616 PM Finder[194]: 8837325: Attempting to SIGCONT to pid #95615 failed, with errno=#3, or the process failed to actually start

    2. We did try running it on a 10.10 mac, and all that was seen was a black window.

    We cannot seem to get the game to run, and as such will not be able to process it further for release.


    There seems to be challenging issues of compatibility on Mac, and I hope you'll find a way to fix them in the next version of Visionaire. Good luck!

    Great Poster

    321 Posts


  • #2, by BigStansSunday, 26. April 2015, 12:58 10 years ago
    Well, it looks like an permission issue with macOS.
    Did you unzip and 're-pack the MacOS Player Zip file on Windows ?
    If you extract and zip the app on windows all *nix permissions are dropped.
    So, make sure you "manipulate" the player on OSX or better directly the "zip" file with 7Zip (drag and drop your vis with ini) in the Resources Directory in the zip.

    Great Poster

    361 Posts

  • #3, by Simon_ASASunday, 26. April 2015, 15:51 10 years ago
    Thank you for your reply BigStans!

    indeed we have unzipped the file on Windows. We were wondering why this Zip file was created...
    The problem is that the Zip version doesn't work on Steam, and most people had to unzip it manually to play the game.

    What should we do?

    Great Poster

    321 Posts

  • #4, by BigStansWednesday, 29. April 2015, 00:40 10 years ago
    Hi,
    you need Mac… but let us try something different wink
    For better understanding…
    The Visionaire Editor generates an platform_player.zip for each platform selected in the editor export menu.
    The editor "manipulates" the player_platform_zip files with the game content.

    Normally, if you need to extract the generated zip files, you need the specific platform.
    Like
    - if you need to extract the generated zip file for linux, you need linux.
    - if you need to extract the generated zip file for MacOS, you need MacOS.
    - if you need to extract the generated zip file for Windows, you need Windows.
    Because all OS (outside windows) have permissions. An Windows extract drop them.

    But now a special kind… 
    You do not need the steam prep tool right? wink
    So, try an Linux VM if you do not have an Mac. This was the cheapest solution. On Linux: Extract the zip, manipulate whatever you need (or add all game files with the .vis and config.ini to the my game.app/Contents/Resources) folder , and upload the mac version and / or Linux version with the Steam Uploader.
    I am sure, that the permissions are right under * nix for *nix. But i never tried this. It's an little trick wink

    And if you want to publish the game on the MacAppStore… Then you really need an Mac ^^ But try Steam with an linux vm

    Great Poster

    361 Posts

  • #5, by Simon_ASAWednesday, 29. April 2015, 10:44 10 years ago
    Ok this is tricky, indeed, but thanks.

    If I understand well: if I send the zip file to a friend who has a Mac, he can extract the files, and we can upload them on Steam, right?
    If the files are extracted on a Mac, we can upload them from a PC? The permissions will still be good?

    If it is not possible this way, then we will try the Linux VM tip.

    What if we extract the Zip from Windows with 7zip? Can it work?

    Great Poster

    321 Posts

  • #6, by afrlmeWednesday, 29. April 2015, 11:36 10 years ago
    It's not a zip file, it just gets recognized by windows as such. It's actually a self containing app file which needs dragging over into the applications folder of a mac.

    Imperator

    7285 Posts

  • #7, by Simon_ASAWednesday, 29. April 2015, 12:07 10 years ago
    I know it's not a zip, it was clear enough in the explanation of BigStans. Let's call it a "Zip" (with quotation marks) and discuss this step by step:

    We export the game for Mac in Visionaire. It builds the "zip" file and next to it a .vis file.

    The "zip" file contains several Mac files, including another .vis file (the same). So the .vis file is given 2 times, and as a result the game is big. 1800MB instead of 900MB.
    This is not a problem, I just want to know if it is normal. Is it normal?

    Now the true problem is in Steam. In Steamworks (https://partner.steamgames.com), when you configure your game package and have to upload it in a depot, you need to tell Steam where the .app file is located. This is for the Steam application to know which program to run on the Mac, after people downloaded the game.

    So we have tried the 2 different following things:

    test 1 - uploading the unmodified "Zip" file, and pointing to this file. Steam doesn't recognize the Zip as a App Mac file, and people cannot download and play the game. We have spent on this a lot of time, and worked with the Steam support, but they always said that the "zip" is not a valid Mac app.

    test 2 - we have extracted the "Zip" file in Windows. It contains a "folder" that is named .app
    We uploaded this unmodified .app folder in the Steam depot, and it worked: Steam could run the game, and some of my friends could play the game without problem.
    However, with this method, it results in some errors for other people, and they cannot play the game (see the first message above).

    I assume that this is due to the permissions as you said above?

    So to make long things short:
    - in Steam we need to upload a .app file. The original (unchanged) "zip" file is not recognized as a .app file by Steam.

    That is why I was asking how we should extract the "Zip" file and keep the permissions.

    Should we create the "zip" file and upload it from a Mac? Will it change anything?
    When I share the "zip" file with my brother (who has a Mac), when he copies it on his Mac, it is still a zip file and he needs to extract it to play. What are we doing wrong?

    Great Poster

    321 Posts

  • #8, by afrlmeWednesday, 29. April 2015, 13:19 10 years ago
    I think David said that it is more ideal to use a windows machine to compile for windows, mac for mac & linux for linux - as for iOS & android, I have no clue.

    I've not actually tested exporting or running a compiled game on mac. Will do so a bit later & see what happens.

    * edit: tested both a mac build compiled on windows & one compiled via mac.

    First the windows build did create a .zip file according to the extension as you said. No idea why. I copied the entire folder onto my external hd & onto a mac. I then copied the folder into the mac applications folder. If you double click the zip file on mac then it automatically extracts the player executable into the folder. I double clicked on the player icon, but it crashed unexpectedly for some reason or other - might be to do with the vs team build I'm using on windows, maybe or might not be - I have no idea.

    Next I tried compiling the game on the mac using the current public mac build (I don't have a team build of it yet, so I'm stuck with all the same bugs as everyone else) & it compiled one lot of everything including the player executable into the output folder instead of a zip archive. I then copied that folder into the mac applications folder & launched the player app & it ran the game correctly.

    So my conclusion is that, as David already mentioned, it seems to be more beneficial to compile the target os on a machine that is using the same os as the target platform.

    P.S: I don't think you need any of the other files but the player app. In mac if you right click it & then select show package contents you can find the resources, executable, config.ini etc & everything else already contained. You can also edit the files inside that way too I believe.

    Imperator

    7285 Posts

  • #9, by BigStansWednesday, 29. April 2015, 20:20 10 years ago
    Do not complicate it smile
    If someone extract an Linux or Mac zip file on Windows, they lost the executable bit.
    Without this no shell script, or executable can run under *nix (*nix stands for Linux / Unix).

    OSX Apps are folders, not files.
    When extracting folders to a file system, that doesn't have executable bit representation this bit are lost.
    Zipping the App from *nix is zipping a folder, including its hidden subfolders / files and permissions or the executable bit.

    Steam needs the extracted app, so you need to upload it from *nix, because the executable bit is lost with an extract on Windows.

    Right, i have an mac, with an Windows VM, Linux VM's, and native OSX.
    If i build the Visionaire binarys i must switch between every os, compile the source with different IDE's and compilers ^^
    It's strange, but the same smile
    If i create the visplayer_linux.zip, i made this under the Linux VM, because i know, that is the only way, what the binary does not lost the executable bit.

    To re-create bis is very easy. The command was chmod +x binary
    (chmod +x) creates this bit -> it stands this file can be executed.

    So, if you need to extract and upload directly .app "folders" for OSX, you need an Linux VM or an Mac… Or an pearPC wink
    Ah and i forgot smile You can rename the "Folder" Visionaire Player.app to everything you want smile
    Or change the icon. I use this software:
    http://iconverticons.com
    to convert the icons for all platforms. Because this was tricky too ^^


    The file you send me does not start manually: ( I try it manually, because i am an *nix user).
    I extracted your zip and then i tried to start it:
    open ./Visionaire\ Player.app ?
    LSOpenURLsWithRole() failed with error -10810 for the file /Users/colossus/Desktop/ASA_R_MacOS/Visionaire Player.app.

    Hm. It was an error and does not start.
    So, now i re-create the executable bit, which was lost:
    chmod +x Visionaire\ Player.app/Contents/MacOS/Visionaire\ Player
    (as you can see here, Visionaire Player.app (you can rename this), but not "Contents/MacOS/Visionaire\ Player"
    and start it again:
    open ./Visionaire\ Player.app

    Voila, it starts smile
    So, i am sure it works with an Linux VM if you need the pure .app Folder for Steam… Or an PearPC…… wink


    EDIT:
    Ah, and if you do not need to extract the native .app folder (NON STEAM), open the visplayer_macos.zip, goto Contents/Resources, drop all vis, folders, config.ini here. And it should start (we do the same without extracting directly with the editor).

    Great Poster

    361 Posts

  • #10, by Simon_ASAWednesday, 29. April 2015, 20:54 10 years ago
    Wow that's amazing explanations! I'll share these infos with Andy (who developped ASA with me) and we should be able to solve the issues now.
    We'll get in touch again if we fail, but we will try not to bother you anymore! Many thanks.

    Great Poster

    321 Posts

  • #11, by BigStansWednesday, 29. April 2015, 21:04 10 years ago
    We're here for support smile
    Better give us an feedback if it works or not razz

    Great Poster

    361 Posts