ruffle-rs / ruffle-rs.github.io Goto Github PK
View Code? Open in Web Editor NEWRuffle web page
Home Page: https://ruffle.rs
Ruffle web page
Home Page: https://ruffle.rs
Clicking "Select File" opens up the system file select sheet, as expected. However all SWF files are greyed out and thus not selectable. Through some empirical test, it looks like to me that Safari is not allowing input elements type="file"
with attribute accept=".swf,.spl"
. I've also tried application/x-shockwave-flash
and itβs not accepted either. However if I select "Request mobile site" in the Safari UI, then I can select any file, not just SWF and SPL, which is exactly what happens on iOS, where mobile version is the default. Can you confirm?
Right now, the demo is only accessible from the top of the main page. As a fundamental part of the Ruffle website, it might be better to also include it in the header for easier access.
I created a very basic website using Jekyll and GitHub pages at https://github.com/ruffle-rs/ruffle-rs.github.io, with a domain at https://ruffle.rs. It would be fantastic if someone better than myself at web design could make this pretty!
See the ruffle-rs.github.io repo for more info.
To reproduce:
Probably caused by #232.
Tested in both Firefox and Chrome.
There is a game, http://www.detrave.net/nblume/perfect-pitch/perfect-pitch.swf , that works perfectly when uploaded to https://ruffle.rs/demo/ as a local SWF. It may be a good idea to include it in the pre-set menu of demos and games ("Sample SWF") on the right hand side of the header.
Just jotting down some ideas for ways the main Ruffle logo animation on the front page could be improved IMHO.
I think if either the Ruffle application (.wasm from CDN) or the logo SWF took too long, or completely failed, to download; or if there was a panic, the canvas could be replaced entirely with an animated GIF or (perhaps better) a static image of the logo.
And as for the logo SWF itself, after all the letters were completely consumed by a couple clicks, perhaps the float-in animation could start again after a short while, not just on the next click, so it doesn't stay empty indefinitely.
I was wondering if you could implement RSS feed for the blog.
For some odd reason, when the mute switch is on, Safari does not play sound when reproduced through Web Audio, though it does when reproduced through HTML. Looks like there are workarounds to enable audio playback even when muted, if you can consider this something worth addressing.
We can use an issue to keep track of things to talk about in progress reports. Feel free to post about interesting developments and newly functioning content we may want to mention.
New contributors:
New implemented APIs: (TODO add more)
XML.getBytesLoaded()
XML.getBytesTotal()
decodeURI
decodeURIComponent
Transform.pixelBounds
It'd be handy to create a GitHub or Circle-CI hook to auto-update the demo page with the latest version whenever there is a tagged release of the emulator on GitHub.
For particular APIs (such as GestureEvent
and Date
), the percentage on the Compatibility page for ActionScript 3 does not match with the tree graph.
Best guess is for whatever reason, the percentages on the website are rounded up no matter what (Date
converts to ~99.05%, and thus should have no reason to bump up to 100%).
In AS2 getUrl() will pass variables within the current function (scope) as POST/HTTP variables.
It would normally work directly off a button such as .on(release) or for events such as .onPress() or .onRelease().
With the current version of Ruffle this seems to only work directly off a button using ie. .on(release) but fails to pass the POST/HTTP variables when used in an event handler.
This AS function getUrl() is a bit unique because it doesn't require passing the variables directly into the function arguments as an object. It automatically gathers the object contents from the variables defined in the current function/scope.
I've attached 2 examples in a zip.. eastereggslots works properly because it uses .on(release) directly off the button like an onload would do in a HTML tag to invoke an event.
However if it's being used in an event handler such as .onPress() or .onRelease() it does not gather the local scope variables as object contents to pass them as POST/HTTP variables. The example with the failure is in the bopeep swf file.
bopeep.swf -> scripts -> frame10 -> approx. line 583 -> gameOverPost.btnSubmit.onPress()
eastereggslots.swf -> scripts -> DEFINEBUTTON2(105) -> .on(release)
file: example-swf-files.zip
Are there any plans to make https://ruffle.rs multilingual?
On the main screen, there are 3 buttons to jump quickly to various parts of the page
there really should be 4, as the wiki is a common thing people may go looking for
in fact, the same page already has a link to the wiki, but is really small and not prominent for some reason.
The wiki should be properly linked and displayed for developers and users alike.
I recently found out that you need to support ActionScript 3 to play ssf2. I was wondering if ruffles supported ActionScript 3 yet?
Many users have been getting the wrong idea from them and it may be a good idea to remove them outright or replace them.
https://ruffle.rs/#usage:~:text=Installing%20the%20browser%20extension could do with the safari info from here https://github.com/ruffle-rs/ruffle/wiki/Using-Ruffle#safari
This is highly subjective, but I think it would be nice if the main landing page would be entirely visible without scrolling on a 1080p display, in a maximized window, including any title/status/tool/task/panel bars, etc.
I think, for this, it would have to be just a little bit shorter, like ~900px tall, instead of the current ~960.
Tweaking some margins and paddings and spacings and sizes here and there should probably get us there easily.
I am not a designer though.
The blog could use some love from someone with design/SASS/jekyll skills.
Just some issues that jump out to my unsophisticated programmer eye:
the list of sponsors could do with some alt tags specifically :)
https://www.ruffle.rs does not redirect to https://ruffle.rs.
It seems like the www version is missing an SSL certificate. The DNS entries are present and look correct, so I suppose this is just something with the CNAME file on Github?
GitHub has a nice bar graph showing the Ruffle repo's commit history: https://github.com/ruffle-rs/ruffle/graphs/commit-activity
In my opinion, this bar graph more accurately reflects the project progress and activity than the AVM1 and AVM2 progress bars. It shows that things are consistently being accomplished every week as code is committed.
I'd like to see a version of this bar graph along the bottom of the "Compatibility" section of the Ruffle website. Hopefully it can be nicely styled, similarly to the progress bars (but the bars would be vertical, not horizontal).
The data can be requested straight from GitHub's API using this URL: https://api.github.com/repos/ruffle-rs/ruffle/stats/commit_activity
In that data, the "week" value is a Unix epoch giving the start date of the week, and "total" is the number of commits during that week.
On smaller widths they're pretty small.
The Ruffle logo (SWF) that is embedded on the front-page (https://ruffle.rs) isn't displayed correctly on Safari on macOS.
On Firefox, the website looks like this (which is probably how it's intended):
However, on Safari, the website looks like this:
The logo seems to be way too small, and as a result there is a huge amount of blank space. The animation itself works correctly though.
Additionally, when loading the website in Safari, it looks like this:
As you see, there is a text (Backup all saves (download all sols)) with a horizontal line for a short amount of time before the logo is loaded and the animation is starting.
https://ruffle.rs/blog/ was the main page of the blog in the previous version of the site, but now it's a 404 page. I couldn't find a way to create an index.html
redirect with output: "export"
enabled in nextConfig. I tried creating an index.tsx
file in the blog
folder, using exportPathMap, and using a redirects() function, but none of these seem to work with our setup. Most people say to just add trailingSlash: true
to the nextConfig, but I'm not sure if that would break other previously-working URLs on the site.
A big part of Ruffle's success is from a perfect-storm of other crates from the Rust community. We could do a spotlight on some of our big dependencies that were key for us getting off the ground.
Ruffle's GitHub Sponsors page references the old Ruffle logo.png file from the site, which previously existed at https://ruffle.rs/assets/logo.png. But the site now uses an SVG file for the logo instead, and the PNG file was deleted in #62. So instead of the Ruffle logo, only a text link is displayed.
Chrome 87. Can also reproduce in Chrome's developer tools' responsive mode and device emulation.
In the main page, the "demo" option is not centered in the page. This is very noticeable because a there's a downward-pointing arrow right below it that is centered.
"demo" seems to not be centered because the distance between "read more", "demo", and "discord" was kept consistent instead. "read more" and "discord" are at consistent distances from the edges of the screen, so they shouldn't be moved.
In my opinion the page would look nicer if "demo" was perfectly centered on the page rather than between the other two items on its line.
My apologies if this is the wrong place
i think these might help: https://github.com/sindresorhus/new-github-issue-url
https://docs.github.com/en/free-pro-team@latest/github/managing-your-work-on-github/about-automation-for-issues-and-pull-requests-with-query-parameters
:)
A declarative, efficient, and flexible JavaScript library for building user interfaces.
π Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. πππ
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google β€οΈ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.