-----------------------------⚠️Disclaimer-------------------------- SCRATCH'S CLOUD SERVERS ARE DOWN! PLEASE USE TURBOWARP!!!! TurboWarp doesn't store DATA so it won't work ------------------------------------------------------------------------- Link: https://turbowarp.org/1119076769?interpolate&hqpen&clones=Infinity -------------------------------------------------------------------------
------------------------------------------------------------------------- There is no need for backend connections to Scratch APIs to retrieve or calculate the viewer count of a project. Instead, the viewer count can be effectively represented through the use of Cloud Lists. This method offers a streamlined, efficient way to track how many people have interacted with a project without relying on external API calls or complicated server-side logic. Here’s how it works in practice: When a user joins the project by clicking the green flag, their username is automatically added to a Cloud List. Once their username is added, the project dynamically displays the total number of unique users that have been added to the list. This provides a simple yet functional way of determining how many different people have interacted with the project at any given time. While this approach is relatively straightforward, it is important to clarify that there are certain nuances and potential limitations. One key limitation is that my current implementation only tracks the number of *distinct* users who have interacted with the project, meaning it counts unique visitors. This differs significantly from how Scratch typically tracks viewer counts. On Scratch, the viewer count is based on the number of green flag clicks per page refresh. Essentially, if you click the green flag repeatedly without refreshing the page, the viewer count will only increase by one—because Scratch considers it a single "view" from one user. On the other hand, if you refresh the page and click the green flag again, the system counts that as a separate view, resulting in a higher view count. This process can be repeated as long as the page is refreshed and the green flag is clicked each time, adding to the view count incrementally. It’s worth noting that this is the traditional method of counting views that Scratch uses, but my system does not follow this exact model. Instead, my system focuses on counting distinct users, regardless of how many times they may click the green flag or refresh the page. If a user interacts with the project multiple times—such as clicking the green flag repeatedly or refreshing the page—the view count will not increase after the initial addition to the list. This is due to the fact that the Cloud List is designed to track unique users, not the frequency of their interactions. As such, if a single user clicks the green flag multiple times or refreshes the page, the viewer count will remain the same. Although this method works effectively for tracking unique users, it may not capture the full range of interactions in the same way Scratch's view counting system does. Some users may prefer a system that counts every click or refresh as a new view, similar to how Scratch traditionally tracks views. Given this, I am considering developing an alternative version of the viewer count system that would mirror Scratch's approach by tracking each individual click or refresh as a separate viewer event. However, at this time, the current system is designed to count only distinct users based on their first interaction with the project. This design may be sufficient for many use cases, but I understand that it may not fully replicate the Scratch viewer counting experience for those who prefer that model. I am exploring the possibility of releasing an updated version of the system that would offer this functionality, but for now, this is the approach that I’ve implemented. Ultimately, the current solution offers a simple and effective way to track unique user interactions, without the need for backend connections or complex calculations. It may not provide the same detailed view counts as Scratch’s traditional system, but it serves as an easy and lightweight alternative for tracking engagement with the project. -------------Future Projects with These Concepts----------- I may use this to combine some other engines I have made to detect stuff to make the number of Hearts and Likes the project has. So far, remixes are out of my view/possibility of making. ------------------------------------------------------------------------- Code: Music: LEMMiNO - Cipher -------------------------------------------------------------------------