Hey, thanks for the report!
I'm pushing a fix now - no app upgrade needed, it's just an underlying component.
Hi there, sorry for the late response.
I've investigated and it looks like lsddev's games are using rar v5, which we don't support at the moment. I've left a note to the developer here: https://itch.io/t/355578/rar-archives-are-discouraged-for-the-itch-app
It seems like at least two (The Sun and The World) of your games currently use .rar archives. As a result, they don't work in https://itch.io/app currently.
Here's what you can do:
Feel free to archive this thread once this is resolved!
You're doing okay! It's a pretty hard game. Here's some advice:
Hope you manage your first win soon :)
I agree the captcha is not ideal, we're looking into other solutions.
Here are tips to avoid it:
A quick workaround: start the tutorial and exit out to the main menu - you don't actually have to complete it for `Play` to unlock.
I made it mandatory because the last time I made a card game for Ludum Dare, *everybody* was confused about the rules. I might change it to "Are you *sure* you want to skip the tutorial?" prompt at some point.
edit: I just made some changes to address that. New game is no longer disabled, but if you click it, it'll recommend you do the tutorial - you can opt to click 'cancel' from there and go straight to a regular game. Hopefully this achieves both goals!
The best way to release a game for the app is to make it self-contained, like you said.
InnoSetup is supported, but not discouraged, see https://itch.io/docs/itch/integrating/compatibility-policy.html
Apps are installed in whatever install location is specified by the user - by default, in `%APPDATA%/itch/apps`, but they can specify another drive, etc.
As for shortcuts, the feature is planned: https://github.com/itchio/itch/issues/864
When folks download directly from the website, they just get a .zip file with your self-contained game inside. We're going to be pushing the app more in the future, we already recommend it in support whenever folks can't figure out how to extract a .zip!
Don't forget to upload with https://itch.io/docs/butler/ for many benefits listed on that page.
Hope this addresses your concerns!
They are cached for 30 min right now:
I wouldn't expect the app to break if a collection disappears though, I'll definitely have to test for that.
downloading a random binary that creates random files in ~ is pretty 1990's
The idea may be old, and yet the execution is definitely modern!
itch-setup is not a self-extracting file, it validates the version folder, comparing it against a signature, healing files that are missing.
For initial install, all files are missing, so it extracts them all (it does so without storing the archive itself on disk - extraction is done on-the-fly, while it's being downloaded). For corrupted installations, it just repairs the files that need to be repaired. For upgrades, it applies optimized patches (the same software is used both for installation and updates).
Also, it's all open-source (see Github repo), and the same codebase runs on Windows, Linux, and macOS - except for the interface, which is native to each OS, of course. On top of that, it allows the app to self-update seamlessly on all three platforms.
I've wrestled with distro-specific packages (and even new, "self-contained", "sandboxed" formats like AppImage, Flatpak, Snap) before, but at that time we don't have the resources to support it. Investing a few months of part-time work on our own unified setup solution is already a small miracle in itself :)
If we end up shipping a Flatpak or Snap, it'll be for itch-setup, which will in turn install the itch app. It's not in my TODO list for the immediate future though!
What that means is that, as of butler v14.3.0, if you push an app bundle directly, it'll push this:
The old behavior is still available under the `--no-auto-wrap` flag:
If you downloaded butler directly, you can run `butler upgrade`. If you installed it via the app, it'll update it automatically.
macOS is a bit peculiar. Applications are in `Foobar.app` folders. There's nothing special about these folders, except they need to have a specific structure (with a `Contents` subfolder, an `Info.plist` file, etc.)
butler lets you upload the contents of a folder as an upload, and then the app installs that into an install location. The problem you're seeing here is that:
Here's how you can work around it right now:
Here's what I'm planning to do to make sure that problem doesn't happen again:
As for ~/.bash_history not already existing on your machine, that's expected behavior if you're on a fresh macOS install / haven't used the command-line there in a while. I think that:
Hopefully that addresses your questions!
First off, please make sure you have the latest version of the app: you can download v25 from here: https://itch.io/app
If that doesn't fix it, can you add more details? Like:
(WebGL games are definitely supposed to work fine in the app.)
Just to prove that I'm not straight up lying, here's a WebGL game running in the app:
v23 kept information about "installed games" in another location, in a different format.
v25 attempts to scan that, and update the information from the itch.io API. If the game can't be found, or the upload is gone - it won't show up in your library again.
I know that's unfortunate, and it's also why v25 stores install information directly in the installed game's folder. That way you can move around your games, reinstall your OS, change computers entirely, and import them afterwards with no problem.
edit: If you navigate to your install location from within the app, and use the "Scan locations for games", button on top you'll:
So itch-setup just checks for client updates which is fine, but what if Butler can't connect on launch? Will it try again when it's needed or will it give an error? Gonna wait a see what it does at the next update so no need to worry about this one for now I guess.
I would expect an "ask questions first, shoot later" Firewall to make the connection attempt "hang" until you've decided what to do with it. If that's what it does, then it should work fine.
If it doesn't, then.. you'll probably see the same thing you would if the API key was revoked or if you used a wrong password, so you'd have to switch back to saved logins and use again. I could maybe implement some retry logic if I knew what error we got when the firewall blocks the connection attempt!
> both butler and itch-setup try to connect
Here's what they both do:
About saved logins: when a log-in fails, the app shows the username/password form, assuming that the API key was revoked (if it was a saved login), or that the username/password was wrong (if it was a username/password login). It copies the username so it gives you a chance to enter the correct password again. However, the saved logins are not lost. You can still click "Saved logins" and see the list:
Re shortcuts in the sidebar: icon versions could work! I've opened an issue to track that: https://github.com/itchio/itch/issues/2126
I'm hesitant to change Downloads/Preferences to open in tabs instead, because I'm not sure what would happen if you disabled tabs then? Technically both of these are implemented as "tab contents", they just don't show an address bar, but that also means you wouldn't be able to navigate away from them without clicking on a shortcut. I'll keep thinking about it.
I'm glad the tray icon works for you now! And it's possible that Windows 7 has different scroll/select behavior. Are you seeing the same in other applications?
but I did notice that you've went back to "version naming" the install folder.
Is this meant to make updates more stable so they don't cause problems like failed overrides or leftover old files or just some way of keeping track of the versioning outside of the .EXE's version meta data or is this just some temporary way of keeping these "Beta tested" versions separated to see if they work properly?
I'm assuming you're talking about this folder:
The goal is indeed to keep versioning info outside of the .exe files. (you can see the source code here)
Another goal is to only switch to a higher version if it runs properly - so we don't accidentally break your app if we release a bad build of butler for example. Or, we don't break your app if your Antivirus decides it doesn't like the new butler release, for example.
You mention that your Antivirus keeps getting in the way after every upgrade (of butler, I'm assuming?) - that's precisely what this system is designed to prevent, so, please open a detailed issue at https://github.com/itchio/itch/issues with exactly what happens. You mention the login failing - what's the error message? Which Antivirus are you using? Does your antivirus pop up a "Scanning.." notification? etc.
Note that v23 was strictly worse in that sense - it always replaced its dependencies' executables without checking that they worked first. So the Antivirus behavior should be equivalent at worst - AV software don't care about paths, they care about file signatures.
(Actually, I'm noticing now you mentioned your "firewall", not your antivirus. The same applies though. I personally think that a firewall blocking all outbound connection attempts is a bit overzealous, but hey, your computer your rules - I think it should be possible in this case to add an exception for the "broth" folder wholesale though. All the same, please open an issue *just for that* with details so we can figure out an action plan)
is there a reason why allowing tabs removes the "shortcuts" at the top? Is it just about not having enough space to keep them all there or does it actually make the code that much simpler?
It's about space, not code:
Also: what would the shortcuts do: always open in a new tab? Then you'd end up with N copies of the Library open. Or should they try to switch to an existing tab if it has the same base url? (itch://library, itch://collections, etc.). Or would they just open in the current tab? Actually, that could work.
I'd be more inclined to short shortcuts while tabs are enabled if tabs were moved to the top of the screen (a-la chrome, firefox etc.). We might want to make the user menu narrower and move the "New version available" to some sort of notification system. tl;dr it's about design, I'll bring it up internally.
My first problem might be something that can't be fixes since it's probably tied to the browser code base that's used(probably Chromium since that's what does this), but I generally scroll pages by holding down my scroll button and just drag it around, but that starts highlighting everything that I'm passing by.
Is there a way to disable this behavior or do we need to just get used to it?
I'm confused, because I'm not seeing the same behavior here! (Win10, Logitech MX Master 2S)
My final problem is again just a personal preference, but when I close the client the only options I have is to shut it down so that I have to start it up again to use or to just keep it minimized on the taskbar. The old client kept running in the background as well, but it "hid itself" in the right side menu like a background process just like Steam.
Is this a limitation of the new system or was it just decided that that's what it should do?
Again, I'm not sure why you're seeing this. The app definitely closes to tray and opens back up immediately for me:
Perhaps it's because they had different folder/file names?
Yes, that would be a known v23 issue: https://github.com/itchio/itch/issues/1244
itch v23 handles properly a chain of builds pushed with butler - old files are cleaned between upgrades, even if the game is shipped in subfolders that include the version number (a strategy we don't recommend, and that makes patching more expensive for no good reason).
However, when switching between uploads (not builds), itch wouldn't clean files from the previous upload that aren't in the new upload - the result is several copies of the game in the install folder, and there's a good chance it would launch an older version rather than the latest.
(If you're wondering how that bug slipped into a stable version of itch: it's a pretty rare scenario. Usually games are shipped without folders-with-version-numbers, which works fine (the newer files replace the older files). Also, usually wharf uploads stay up, and just get updated normally).
I'm happy to report that this won't be an issue anymore as of v25 - all the installing & upgrading logic has been rewritten from scratch, with better testing, and it cleans up in all possible cases. It's also stricter in what it considers an upgrade.
itch v25 is slated for release in the next few weeks, you can already test the beta here if you want: https://fasterthanlime.itch.io/install-kitch - it's at a point where it's usually more stable than v23. You can check out the complete roadmap here: https://github.com/itchio/itch/projects/1
v25 has been in the works for about a year now. I'm really looking forward to leaving v23's bugs behind.
I'll be looking forward to the public status page so that we can know if errors are happening on our end or not before a release, thank you.
I've deployed a status page here for the time being: https://status.itch.ovh/
I've looked up the build history for both projects, and both have a build pushed about a day ago that processed normally. However...
For the non-premium version, I'm seeing a lot of uploads, most of which are set to hidden.
Here's what I think is happening:
I would recommend un-hiding the butler uploads and deleting everything else.
I would also like to apologize for the recent outages to butler's backend - there's been two this week, and we're taking this seriously. We've already improved monitoring internally and fixed some issues that resulted in those outages, and we are planning on rolling out a public status page to give more visibility into the system from the outside.
Does that work for you? https://github.com/itchio/butler/commit/a46969012a3bd3f0ef48ea7d54f9f6750ec1387e
You're right, I doubt passing ITCHIO_GAME_PID would be general enough to be justifiable, and implementing the Presence API ourselves would be a good idea. Feel free to open an issue at https://github.com/itchio/itch/issues