OK, that means it’s not an issue with the zip file. My second best guess is that it’s caused by all the old, deprecated im.Crop() operations in chara.rpy.
TL;DR: there’s no actual infinite loop — just a lot of computationally expensive operations happening at once. The browser gets no response, panics, and throws a “possible infinite loop” error.
This is something I could fix relatively easily, so even though we’re just six days from the rewrite release, I decided to upload a quick fix. I only had time to do a very, very quick check (basically launched it and saw that it works). Let me know if it works — in which case, yikes! First bug report closed!
If it doesn’t… well, the good news is that the rewrite is coming out in a week (actually less than that, since the clock just ticked past midnight here). I hope you’ll be willing to bear with me and give the new version a try when it’s out!