Coconote
AI notes
AI voice & video notes
Export note
Try for free
Recreating Super Mario World in Godot
Jul 8, 2024
Recreating Super Mario World in Godot
Introduction
Presenter: Wye
Goal: Recreate Super Mario World from scratch in the Godot engine
Motivation: Familiarity and investment in Super Mario World
Experience: Background in ROM hacking Super Mario World
Project Setup
Start with creating a project folder in Godot
Chose to begin by building a level instead of title screen or file select
Node structure: Every element in Godot is a node, level built as a 2D node with a TileMap node attached
Leveraged Mario hacking experience to create tileset
Creating Tiles and Level
Utilized existing tilesets and personal level editor experience
Process: Built a dummy level, took a screenshot to create the tileset
Collision creation for each tile, tedious but essential
Added a camera node and script for navigation
Adding Mario (Player Character)
Added CharacterBody2D node for Mario
Initial graphics: Basic sprite sheet for Mario
Animation: Used AnimatedSprite2D for basic animations (idle, walk, run, jump, etc.)
Player physics: Needed to match original Mario World physics
Understanding Speed and Physics
SNES speed: Measured in subpixels per frame (1 pixel = 16 subpixels)
Godot speed: Measured in pixels per second, using delta time to maintain consistency
Adjusted Mario’s maximum speeds (walk, run, P speed)
Implemented acceleration to match original game feel
Tested and iterated to get it as close to the original as possible
Noted intricacies in Mario's physics from original game
Jump Mechanics
Basic logic: Upwards movement on jump, downward acceleration by gravity
Adjusted gravity while holding jump button for higher jumps
Implemented spin jump
Handling slopes: Different types (gradual to very steep) and their physics
Advanced Player Physics
Walking on slopes, adjusting speed and acceleration
Slide mechanics on slopes, different behavior based on slope steepness
Detailed explorations of Mario's behavior in various states
Further Developments
Future improvements: Water physics, climbing, flying, Yoshi, powerups
Background creation: Used parallax layers and TileMap node for backgrounds
Added sound effects for actions like jumping
Conclusion
Reflects on learnings and progress made
Plans for next steps: Adding coins, powerups, blocks, and enemies
Encourages viewer engagement and ends on a lighthearted note
đź“„
Full transcript