3DS Homebrew Development - Getting Started Guide

  • Thread starter Thread starter NN3DSLLLXB
  • Start date Start date
  • Views Views 9,082
  • Replies Replies 8
  • Likes Likes 7

NN3DSLLLXB

Active Member
Newcomer
Joined
Jan 26, 2025
Messages
28
Reaction score
22
Trophies
0
Age
34
XP
113
Country
United States
So, I've wanted to make my own 3DS games for a while, but getting devkitPro to work has been an absolute pain since there's so little info on this. I finally got it working and found that it's actually really simple. So I made a guide that walks you through every single step to get your first homebrew app running on your 3DS using devkitPro, Windows, and C!

The PDF guide is attached below. Feel free to share it with others, just don't modify it. If you think something should be changed, let me know in the comments!
 

Attachments

Hey! Thanks so much for making this
One thing to note is I'm pretty sure there's a tool in DevKitPro that allows you to wirelessly send your built .3dsx to your 3DS wirelessly.
Post automatically merged:

I went to check yesterday it’s called 3dslink

You load it with hbmenu
In hbmenu, you press Y and then run 3dslink on your computer

https://github.com/devkitPro/3ds-hbmenu?tab=readme-ov-file#netloader
 
Last edited by Andrew222,
This guide is exceptionally helpful! I've been going down a rabbit hole trying to understand docker & CMake to use bannertool, while getting absolutely nowhere until I found this.

Thanks so much for making this without skipping any steps ( even the basics )
 
  • Like
Reactions: RoundOxytocin
The doc is pretty cool, it helped me to got over the path setting pain.

The doc can be extended with the followings:
-sending compliled data to 3ds wireless
-using some tools like bannertool, tex3ds,
-some usefull crossdev tools,
---
 
This guide contains a lot of unnecessary steps, some with negative side effects.

For the record, the official setup guide is here, for all 3 major operating systems: https://devkitpro.org/wiki/Getting_Started

Things that you should not do:
  • set a CTRULIB environment variable - the default devkitPro-provided Makefiles already do this for you, rendering it useless
  • adding devkitARM/bin to PATH - devkitPro explicitly recommends NOT adding anything to PATH except for tools/bin, you should not have the compilers in your PATH
  • adding msys2/bin to PATH - this can override some Windows-provided tools in Command Prompt, causing issues if programs expect the Windows programs and instead get MSYS2's. This is why you should be using MSYS2 and not Command Prompt.
  • clone and build libctru manually - on this own this doesn't do anything unless you install the result, and you should not install it from here unless you have a specific need to use newer commits (otherwise install it with pacman)
 
  • Like
Reactions: NEKOBREAD and Dwad
This is amazing!! Thank you so much!

I'm starting to learn how to programming recently, just because I want to create ports and my own games for my 3Ds!
Have you ever seen how coding in Lua/LÖVE, for the 3Ds, is currently working too??
What are your opinions on it?? :O

I REALLY wanna know which type of language would be more worth learning for only this purpose, at least for a start!

Again, thank you so much for making this!!
 

Site & Scene News

Popular threads in this forum