Using the ADDIE Model for “Stop the Logger” Scratch Game Development
Avi Megiddo
April 2 – 9, 2023
OVERVIEW
This document is a whitepaper/documentation for Stop the Logger! This game was created using the ADDIE model for instructional design.
Stop the Logger is a game designed to raise awareness about deforestation in a fun and interactive way. The objective is to catch loggers by clicking on them before they cut down all the trees in the forest. Players must act quickly and strategically to protect the growing forest, earn points, and achieve victory by catching a set number of loggers. The game provides a dynamic challenge while offering an engaging platform to reflect on environmental conservation.
The game was inspired by a button script from years ago and the birds outside my window. The trees in the game are from PNGTree.com and PNGWing.com, and the code randomly chooses one, “plants” it in a random location on the screen, and grows every second with a bit of accounting for upward and outward growth, but not downward.
I was inspired initially by the button script from years ago, where it moved away from the mouse pointer as you tried to click it. This inspired me to create a “catchable” button in Scratch, which I used in the development of the game. After thinking about what makes sense to “catch” and still be educational, I came up with catching a tree logger, or “arresting” the logger.
I found an animated gif of a logger/lumberjack on Dribbble.com, by searching for synonyms of logger/lumberjack/tree logger and ‘gif’, and used a web-based tool to make all the gif images have a transparent background. Importing them as a new sprite took one click, and that was the basis for the game.
I was also inspired by the birds outside my window while creating the functions, and used bird call sounds from ZapSplat.com to reward the player after 10 trees were alive. Additionally, a student’s project inspired me to use the number 20 for a “winning amount” of loggers to catch.
Design:
In terms of design, I made the “caught” version of the logger by taking an image from the logger gif, and copy+paste+flip horizontally to make the arms look like they were handcuffed. I also created handcuffs in Google Drawings and finalized the design of the handcuffed tree logger using the Scratch costume editor. When the user successfully clicks on the logger, I decided to show a funny utterance instead of educational content to reward the user. I used my resizing concept to make the logger shrink as he rose to the top of the screen to join his other caught logger friends.
The trees were also made using the ‘clone’ feature in Scratch, and some of the hard challenges included managing the clones, creating actions upon starting as a clone, deleting at the right time, and stopping other scripts in a sprite upon certain actions/states of the game, such as trees equalling zero and 20 loggers being caught.
Development:
To develop the game, iteration was key. I revisited the code for 30 minutes to 2-hour sessions, adding features, debugging, iterating over the project, upgrading, and saving to the computer stable backup versions, about 10 times.
A random tree is chosen every second, with a random location on the screen, size adjusted based on position, and growing every second with a bit of accounting for upward and outward growth, but not downward. I used the size of the tree to make trees smaller or larger, depending on how high their randomly chosen y-values are, using the formula (180 – y-position) times some coefficient.
A recent iteration/upgrade was to how the trees fall when they die. Initially, I just rotated a tree 90 degrees when the logger touches it, but the upgrade involves repeating 10 rotations of 9, and a random choice of clockwise / counterclockwise rotation. Further, the tree moves down as it rotates, to simulate rotation from the root, not the middle.
Implementation:
During implementation, I continued to test the game and made adjustments as needed. I added scoring functionality, where the player earns one point for each logger caught and loses one point for each tree lost. I also used the stamp tool as a way to delete each caught logger clone. I made the game more challenging by having the trees grow faster and adding more loggers to catch over time.
Evaluation:
In terms of evaluation, I tested the game with several individuals to get feedback on the gameplay and design. Based on the feedback, I made further adjustments to the game to improve the user experience. Overall, the game has been well received and has provided an engaging way to learn about deforestation.
MILESTONES
Getting the button to move away from the cursor at a custom speed, based on a custom distance.
Finding and importing the logger .gif
Dynamic sizing based on height.
Creating the “caught” logger.
Tree growth and death upgrades.
Changing frequency and speed of logger based on # of catches.
I have developed a script-enabled Google Slides application for teachers to create and manage seating charts in Google Slides. Creating dynamic, balanced student groups is an essential part of classroom management. Whether you’re grouping students for projects, discussions, or activities, organizing them efficiently can take up valuable teaching time. The Classroom Groups Manager automates this process, providing you with an easy way to create groups, assign seats, and avoid problematic pairings. With just a few clicks, you can creating seating charts, swap students, change groupings and manage groups based on your needs.
This tool leverages Google Apps Script to turn Google Slides into a versatile group creator and random student selector. It’s designed with teachers in mind and offers several features that make classroom management more streamlined and engaging.
Classroom Groups Manager (“the Application”) is committed to protecting the privacy of its users. This Privacy Policy outlines how your data is collected, used, and protected when using the Application.
1. Data We Collect
The Application may collect the following data:
User-Provided Data: Information such as student names input by users to facilitate seating chart creation and group management. This data is stored only within your Google Sheets and is not transmitted to external servers.
Usage Data: Basic analytics, such as error reports or performance metrics, may be collected to improve the Application. This data is anonymized and aggregated.
2. How We Use Your Data
Your data is used solely for:
Organizing seating charts and student groups within your Google Slides.
Enhancing the functionality and user experience of the Application.
We do not share, sell, or disclose your data to third parties.
3. Data Storage
All user-provided data remains in your Google Drive environment and is never stored or accessed by external servers.
4. Permissions
The Application requests permissions only as necessary to function:
Google Slides & Drive Access: To read, edit, and update slides for seating charts and groups.
Google Script Execution: To perform automated processes like group creation or chart updates.
5. Your Rights
You retain ownership of all data entered into the Application.
You may revoke the Application’s permissions at any time through your Google Account settings.
6. Security
We use Google’s secure platform and APIs, ensuring your data remains safe within the Google ecosystem.
7. Updates to This Policy
This Privacy Policy may be updated periodically. Continued use of the Application signifies acceptance of the latest policy.
Contact Us
If you have any questions, please contact me at megiddo at gmail.com
Terms of Service
Effective Date: January 5, 2025
These Terms of Service (“Terms”) govern your use of Classroom Groups Manager (“the Application”). By installing or using the Application, you agree to these Terms.
1. Application Overview
Classroom Groups Manager is a Google Slides add-on designed for teachers to create and manage dynamic seating charts and student groups.
2. License
You are granted a non-exclusive, non-transferable license to use the Application for personal or educational purposes, subject to these Terms.
3. Acceptable Use
You agree to:
Use the Application for its intended purpose.
Not reverse engineer, copy, or redistribute the Application.
4. Limitations of Liability
The Application is provided “as is,” without warranty of any kind. We are not liable for:
Any loss or damage resulting from the use or inability to use the Application.
Errors or inaccuracies in group or seating chart outputs.
5. Termination
We reserve the right to terminate your access to the Application if you violate these Terms.
6. Modifications
We may update these Terms periodically. Continued use of the Application signifies acceptance of the updated Terms.
7. Governing Law
These Terms are governed by and construed in accordance with the laws of [Your Jurisdiction].
Contact Us
For questions about these Terms, please email megiddo at gmail dot com
1. Create Random Student Groups
Teachers can generate random pairs, groups of 3, 4, or 5 students, or even custom groups centered around selected students. Whether forming small teams for a project or organizing students for discussion, this tool provides the flexibility to create groups that fit your classroom structure.
2. Bad Pairings and Wildcards
Certain students may not work well together. The Classroom Groups Manager allows you to save these bad pairings, ensuring they are not grouped together. Additionally, the tool prevents bad pairs from becoming the “odd one out” (wildcard) in groupings where the total number of students does not divide evenly into groups.
If a wildcard needs to be created, the system intelligently chooses someone not involved in a bad pairing and allows them to join a group of their choice. Currently, this feature is not active in circle arrangements or groupings around selected students, but works perfectly for fixed desk or standard group arrangements.
3. Random Student Selector
The random student selector ensures all students have an equal chance to participate. It randomly selects a student, highlights their name in fluorescent green, enlarges their desk/rectangle, and keeps track of the last selected student. This ensures more inclusive and balanced class participation, and that no student is called on repeatedly in succession.
4. Visual Group Layouts
The tool visually organizes groups directly onto the Google Slides canvas, providing an instant view of your classroom seating or group assignments. It places students into rectangles, which can be customized to fit your class’s layout. With drag-and-drop functionality, you can adjust the layout on the fly, enabling real-time flexibility.
5. Grouping Around Selected Students
This feature allows you to assign certain students to specific groups (e.g., group leaders or students needing extra support), while the remaining students are evenly distributed among them. This ensures balanced group dynamics and gives teachers strategic control over group composition.
6. Arrange Students in a Circle
For certain classroom activities, like group discussions or icebreakers, you may prefer students to sit in a circle. The tool supports a circle arrangement feature, which automatically spaces students evenly in a circular layout, while
taking bad pairings into account to avoid conflicts within groups.
7. Assign Names to Fixed Desks Without Rearranging
The Assign Names to Desks feature respects the current layout and orientation of desks that a teacher has manually arranged on the slide. Whether desks are rotated, repositioned, or grouped in non-traditional ways (such as bean bags, couches, or different seating zones), this feature simply assigns student names to the desks as they are.
This ensures that teachers can maintain their customized classroom environment, allowing for exact positioning based on various learning areas or furniture setups. Unlike other group creation functions that rearrange desks into grids or circles, this feature keeps your specific arrangement intact and focuses only on assigning names.
How to Use the Classroom Groups Manager Tool
Step 1: Add Your Students
You can input student names into the tool’s sidebar in multiple formats:
Space-separated: “Ashley Catherine Derek Liz Milo Oliver Raysen Alexandra”
A combination of both: “Ashley, Catherine Derek, Liz Milo Oliver Raysen, Alexandra”
Step 2: Create Groups
After entering your students’ names, select the group size (e.g., groups of 4) or assign specific students as group leaders. The tool will automatically balance the groups, taking into account any bad pairings you have saved. You can also group students around selected individuals, perfect for strategic group formations.
Step 3: Make a Duplicate Slide for Each Class
For teachers managing multiple classes or needing to create new group configurations over time, duplicating a slide is essential. This ensures that previous groupings are preserved, allowing you to experiment with new arrangements without losing the original layout.
Here’s how to duplicate a slide in Google Slides:
Select the Slide: In the left sidebar of Google Slides (where all the slides are listed), find the slide that contains the groups or seating arrangement you want to duplicate.
Right-Click the Slide: Right-click on the slide you wish to copy. A drop-down menu will appear.
Click “Duplicate Slide”: From the drop-down menu, select Duplicate Slide. This will create an exact copy of the slide, which you can now modify as needed.
Rename the Slide: Double-click the slide name (usually visible in the notes area or in the sidebar) and rename it according to the class or activity you’re working on (e.g., “Block 2: Science Project Groups”).
By duplicating slides, you can create different group configurations for different classes or activities, while keeping a history of past groupings. This is particularly helpful if you want to revisit a previous arrangement or quickly switch between different layouts for various lessons. It also ensures that you don’t lose the initial setup when experimenting with new configurations.
Practical Applications for Teachers
The tool isn’t just for group formation. Here are a few other ways it can be useful in your classrooms:
Differentiating Instruction: Assign stronger students as group leaders, ensuring every group has a capable peer for guidance.
Avoiding Conflicts: Use the bad pairings feature to avoid putting certain students together, preventing disruptions or conflicts during group work.
Creating Varied Groupings: Over time, you can create different configurations by duplicating slides, saving past groupings, and re-using them to keep things fresh.
Using the “Add Class Name/Label” Feature
Labeling your slides is important for keeping track of different groupings or activities over time. You can easily add class names or labels to your slides to, for example, “Block 2: Science Project Groups”
By duplicating slides and applying unique labels, you can save past groupings for future reference. This means you can easily switch between different configurations and ensure students experience varied group dynamics over time.
The Classroom Groups Manager is designed to offer flexibility in how teachers manage student groups. Here are just a few ways the tool can be used:
Differentiate Instruction: Assign strong students as group leaders, ensuring each group has guidance from a capable peer.
Avoid Problematic Pairings: Use the bad pairings feature to avoid placing certain students together, allowing you to prevent known conflicts in group work.
Create Varied Groupings: Over time, you can create different group configurations and save past groupings by duplicating slides. This ensures good variation and prevents the same students from working together repeatedly.
Manually Adjusting Text for Long Names
Although the tool resizes text automatically based on name length, some longer names may require manual text fitting. To make sure the text fits properly within shapes, you can set the text padding to zero:
Select the shape containing the student’s name.
Open the Format Options panel.
Scroll to Text Fitting and set the left, right, top, and bottom padding to zero:
This ensures that even long names fit within the allotted space. Note that as of this writing, the Google Apps Script API does not allow programmatically changing the text fitting/text padding.
New Look!
If you read this far, this is what the sidebar now looks like (color coded), and with toast notifications (less user clicks requried).
Conclusion
The Classroom Groups Manager simplifies the complex task of managing classroom groups. Whether you’re creating groups for discussions, seating arrangements, or projects, this tool provides the flexibility and control needed to organize your class efficiently. With features like bad pairings, random student selection, and grouping around key students, it saves valuable time while hopefully fostering more dynamic and effective student collaboration.
Try it in your classroom and see how it transforms the way you manage student groups!
I’ve developed an interactive scoring rubric + comment bank for MYP.
I made it to streamline MYP assessment; rubric-based grading and commenting, with task-specific clarifications.
Assessing MYP units requires juggling a number of documents; the rubric, the student’s work, a comment bank perhaps, and the software used to record/communicate the grade.
This tool utilizes Google Sheets + Google Apps Script.
With it, you can:
+ Add rubric comments and custom comments
+ Check boxes to aggregate comments
+ Share, email comments, score PDF
This improves my workflow mainly by aggregating the comments based on checkboxes made in the rubric.
Please have a look at the demo video:
Here is what you can expect when trying to run functions or after clicking on buttons:
1. Authorization Request: When you run the script, you will encounter an authorization request. This is a standard procedure for the script to access specific data within your Google account.
2. Clicking ‘Advanced’: During authorization, you will need to click on ‘Advanced’ to review and understand the script’s permissions.
3. Allowing the Script to Run: You might see a warning about the script being unverified. Rest assured, this is not indicative of any malicious activity. Simply select the option to allow the script to run. It’s important to note that this grants the script permission to read and modify the contents of cells in the sheet, which is necessary for it to perform the requested actions.
I hope you find this tool to be a useful game-changer. Here’s to taking tournament management to the next level! Please enjoy these interactive MYP Smart Rubric. Play on!
Privacy Policy for MYP Rubric Share– This is a requirement in order to get verified by Google.
Terms of Service – This is a requirement in order to get verified by Google.
1. Agreement to Terms
By using this MYP Rubric Share Google Sheet Template application, you agree to abide by these Terms of Service. If you disagree with any part of the terms, then you may not access the application.
2. Changes to Terms
I reserve the right, at my sole discretion, to modify or replace these Terms at any time.
3. Use of the Application
You are responsible for any activity that occurs through your use of the application. You agree not to distribute any part of the application without my explicit permission.
4. Ownership
The application, including the associated MYP Rubric Share Google Sheet Template and Apps Script code, is owned by me. You are granted a limited, non-exclusive, non-transferable license to use the application for its intended purpose.
5. Limitation of Liability
In no event shall I, nor my partners, agents, suppliers, or affiliates, be accountable for any indirect, incidental, special, consequential or punitive damages, including without limitation, loss of profits, data, use, goodwill, or other intangible losses, resulting from your use of the application.
6. Contact Information
If you have any questions about these Terms, please contact me at megiddo at gmail.com.