935: CJ Made A Sega Game In 2025
· Summarized
Key takeaways
- CJ successfully created a Sega Genesis game during Hack Week, showcasing the blend of nostalgia and modern coding practices.
- Using tools like SGDK makes it accessible to develop retro games with higher-level programming languages while compiling down to lower-level assembly.
- The importance of level design and how modern tools like LDTK and Tiled aid in creating complex game mechanics and graphics.
- Challenges in retro game development include memory management, debugging, and graphics limitations.
- CJ intends to expand his project by creating an online emulator version and exploring hardware connectivity features.
Summary
The Journey of Creating a Sega Game
In this episode, CJ shares his adventure of developing a custom Sega Genesis game during Hack Week at Century. He discusses the motivations behind choosing to create a game for a retro console and his experiences with retro gaming from childhood. The conversation dives into the nostalgia of gaming with the Sega Genesis versus other consoles like Nintendo's SNES, highlighting the unique culture of Sega as the 'edgy' console of its time.
Technical Aspects and Development Tools
CJ elaborates on the technical journey of coding for the Sega Genesis. He uses the Sega development kit (SGDK), which allows him to write C code that gets compiled into assembly language for the Sega's Motorola 68000 processor. The discussion includes the use of emulators, the process of compiling and running the game, and exploring how to load images, assets, and sounds into the game. CJ mentions how he grappled with memory management, image formats, and color limitations on the console.
Level Design and Game Mechanics
The podcast dives deep into game design mechanics, as CJ discusses how he implemented level design using tools like LDTK and Tiled. He explains creating different layers for collision, backgrounds, and collectibles, emphasizing the challenges he faced with debugging and optimizing graphics. CJ expresses his excitement about the modern advancements in level creation tools, which enable a smoother workflow for game development. He also highlights the creative aspect of designing unique levels and gameplay.
Exploring Challenges and Learning Opportunities
Throughout the episode, CJ shares various challenges faced during the development process, including graphics issues and memory limitations. He finds solutions and learns about how early games were made under similar constraints. The playful banter between CJ and co-hosts Scott and Wes showcases the fun of learning through projects while encouraging listeners to be curious about retro game development and its evolution.
Future Aspirations and Community Engagement
CJ expresses his ambition to continue developing his game, including plans to create an online version to share with others. He discusses his desire to achieve a connection between his retro games and modern gameplay experiences, and the potential of adding connectivity features. The episode wraps up with CJ's reflections on his journey and the importance of community in retro gaming development.
Sponsors
- Super Cartridge · Super Cartridge by Sega is a tool that allows you to load your custom games in a functional format to play on original hardware.
- Flashkit Programmer MD · Flashkit Programmer MD is a versatile programmer for developing and flashing ROMs directly onto cartridges.
Show notes
CJ takes us behind the scenes of Hackweek to share how he built a custom Sega Genesis game from scratch, complete with assembly code, level loading, and retro hardware tricks. From SGDK to parallax faking, this episode is a deep dive into old-school game dev with a modern twist.
Show Notes
00:00 Welcome to Syntax!
00:44 Why a Sega game?
Sega Genesis.
Sega Master System.
MKBHD Retro Tech: Sega.
06:55 What is it running on?
07:49 Working with assembly code.
10:11 Sega Genesis Development Kit.
Stephane-D GitHub.
10:54 Awesome Megadrive.
12:02 Booting on an emulator.
13:07 Gens and KMod.
15:54 Compiling stage.
17:44 Genesis Code VS Code Extension.
18:22 Images and Assets.
19:46 Loading images with bitmap.
23:50 Megacat Studios.
25:21 Z index?
Faking Parallax.
27:34 Specific code examples.
27:51 Platformer Engine.
30:01 Platformer Sample Game.
30:44 LDTK (Level Designer Toolkit).
33:13 Tiled Collision mapping.
37:42 What about debugging?
39:37 Loading in levels.
RetroGameMechanicsExplained.
Sega Mega-CD Development Unit.
43:56 Challenges with graphics.
49:56 Adding music.
Super Cartridge.
Flahskit Programmer MD.
Flashkit Cart MD.
Hit us up on Socials!
Syntax: X Instagram Tiktok LinkedIn Threads
Wes: X Instagram Tiktok LinkedIn Threads
Scott: X Instagram Tiktok LinkedIn Threads
Randy: X Instagram YouTube Threads
Follow this show on AudioBrevity and new episodes get summarized for you. Create a free account