As we settle back into our rhythm after a few weeks off, I want to briefly reset how we’re working together on Wastelander so everyone is aligned.
Our original plan is still the plan:
We are building one shared game together.
We are intentionally keeping things simple so we can finish something complete and playable.
Each group has a defined role, and those roles matter.
For story, theme, world lore, and narrative direction, the Storytellers are the source of truth. Ideas from other groups are always welcome, but story decisions should come from the Storytellers and then guide the rest of the class — not the other way around.
Project Managers help organize and communicate, but they don’t replace a group’s creative role.
When there’s uncertainty or a new idea, it should come back to the Storytellers (or to me) so we can decide together.
Most importantly: simple is good.
A focused idea we can actually build is better than something ambitious we can’t finish.
The side character that comes up to you is just wandering, looking for scraps or whatever? And comes across you, sees you unprotected, and gives you a spare gas mask. He brings you to the Underground.
Details for artists
Collectables: mushrooms (poisonous and non-poisonous), banana peels, and shards to build/open portal
Need to confirm, still scraps as a collectable?
The NPC in the intro (friendly trash creature) gives the main player a gas mask.
Details for sound designers:
Mumbly sound for dialog
Crunching noise for the trash npc good guy, in intro.
Notes for storytellers:
Some recent ideas from outside the storyteller team suggest expanding the underground areas to include dangerous zones or combat encounters. Before we move forward, I need clarification from the Storytellers.
Our original pitch established:
The surface as the primary danger zone with trash monsters.
The underground as a refuge protected by lantern mushrooms.
If the direction of the story is changing, please confirm clearly and intentionally that this is the new route you want the game to take.
Story direction decisions must come from the Storyteller team. Other teams can offer feedback, but they do not determine narrative shifts.
Please discuss and confirm the intended direction so the rest of the class can build accordingly.
Mushroom (regular)
Main Character
Character (maybe enchantress?)
Poison Mushroom
Canvas Size & Scale
Most character sprites, items, and props should be created on a 32 × 32 pixel canvas.
This keeps everything consistent with the rest of the game’s pixel art.
Exceptions (these can be larger):
Buildings
Large structures
Large characters or bosses
Tilesets (which should be built from 32 × 32 tiles)
If you’re unsure whether something should be 32 × 32 or larger, ask before exporting.
File Format & Background
Please export artwork as:
PNG or Sprite sheet
Transparent background (no white or colored background)
Naming Matters
Please give your files clear, descriptive names so we know, feel free to include your name:
what the asset is
where it belongs
Examples:
player_idle_32x32.png
trash_beast_basic.png
mushroom_noah.png
underground_tileset.png
Need to decide: Remember this section in our artist lesson last trimester. Storytellers should help with direction here, open world/exploration usually top down, multiple levels, usually platformer but could also be open world.
Thank you to everyone who submitted (or tried to!), I did not receive a sound or two from students I helped to submit, so I will troubleshoot with you in class.
Notes:
File Format
Please submit audio as:
.wav (preferred)
or .mp3
Other formats will not be usable in the game.
If you’re unsure how to export audio correctly, ask — that’s totally fine.
Original or License-Free Only
All audio must be original or clearly royalty-free / license-free/ an open source license format.
If a clip includes repeated words like “sample,” “preview,” or watermarks, we can’t use it.
If you used a sound from an open-source option, note what the license is and attribution requirements.
Naming Matters Here Too
Use names that explain the sound’s purpose:
Examples:
intro_theme_loop.wav
pickup_item.wav
trash_beast_attack.wav
underground_ambience.wav
The Developer team has been learning the ins and outs of the Godot Engine IDE — from understanding scenes (the visual structure of the game) to scripts (the logic that makes everything work). We’ve been exploring how parent and child nodes relate to one another, how scenes can be instanced inside other scenes, and how this mirrors principles found in object-oriented programming.
The team has chosen to focus next on improving player movement. Because several students in the class primarily use tablets during class time, we need to ensure whatever solution we build works across devices. That means thinking intentionally about cross-platform design from the start.
A Note About Development
One of the most important (and sometimes frustrating) parts of being a developer is constantly learning new things.
I have experience with several programming languages from both academic and professional settings, but GDScript and the Godot Engine are newer tools for me. I am learning alongside you. That means I won’t always have answers immediately — and that’s completely normal.
Even experienced engineers with decades of experience regularly look up documentation, search GitHub, read Stack Overflow threads, or watch tutorials. Development isn’t about knowing everything. It’s about knowing how to find answers, test solutions, and iterate.
That process of curiosity, research, troubleshooting, and refinement is what real development looks like.
1. Click-to-Move + Keyboard (4 or 8 Directions)
Keep existing tap/click movement.
Add WASD / arrow keys.
Decide between:
4-direction movement (up/down/left/right)
8-direction movement (includes diagonals)
Pros:
Works on laptops and tablets.
Flexible and accessible.
Builds on what we already have.
2. Platformer Controls
Left / Right movement
Jump mechanic
On-screen buttons for tablet users
Keyboard controls for laptops
Pros:
Clear control style.
Works well with level-based design.
Consideration:
Changes overall game structure significantly.
3. On-Screen Joystick
Add a virtual joystick for movement.
Keep keyboard support for laptops.
Tap-to-move may be optional or removed.
Pros:
Tablet-friendly.
Modern mobile feel.
Consideration:
Adds UI complexity.
Requires careful input handling.
4. Screen-by-Screen (Room-Based) Camera
The camera stays fixed within a defined area.
When the player crosses a boundary, the camera snaps to the next section.
Similar to classic Zelda-style games.
Pros:
Clear level structure.
Easier to manage design and collisions.
Retro feel.
Can improve performance.
Alternative:
Keep smooth follow camera (current behavior).
This camera behavior can be added on top of any movement style above.
Right now, the player moves using click-to-move:
When you click somewhere, the player walks there.
When they arrive, they stop.
We are adding keyboard movement on top of that.
If a keyboard key (WASD or arrows) is pressed → the player moves immediately in that direction.
When keyboard input is active → click-to-move is temporarily ignored.
If no keyboard key is pressed → the player follows the last clicked destination.
If neither keyboard nor click is active → the player stands still.
In simple terms:
Keyboard wins.
If no keyboard → follow click.
If neither → stop.
This allows the game to work on laptops, tablets, and web builds.
Open the Player scene and edit:
res://scripts/actors/player.gd
Open:
Project → Project Settings → Input Map
Add these actions:
move_up
move_down
move_left
move_right
Bind Keys:
move_up → W and Up Arrow
move_down → S and Down Arrow
move_left → A and Left Arrow
move_right → D and Right Arrow
Add name where it says add new option then press +Add
Press the + button next to the trash can on the right, then add the corresponding key.
Should look like the below screen before changing code.