Homebrew development question...

Discussion in 'NDS - Emulation and Homebrew' started by jrk190, Dec 13, 2011.

  1. jrk190

    jrk190 GBAtemp Advanced Fan

    Jul 5, 2009
    United States
    North Carolina
    Okay, so I want to make an awesome homebrew game, but I have no Idea on how to do so. What is the easiest way to make one?
  2. Schmendrick

    Schmendrick Advanced Member

    Sep 12, 2009
    1: Learn C/C++
    2: Look through libnds examples
    3: Make your own minigames based on what you learned from the examples
    4: Think out your project (since you say it's awesome), design it (graphically and structurally), etc
    5: Write your code

    Also, plenty of other topics like this have been created with more detailed explanations, I suggest using the site's search functionality.
    Good luck!

    Edit: Apparently not as many as I thought.
  3. Foxi4

    Foxi4 On the hunt...

    pip Reporter
    Sep 13, 2009
    Gaming Grotto
    Just my 2 cents. Also...

    6. http://www.cplusplus.com/

    Learn to love this site, it's the best C/C++ refference guide you will find on the web with an awesome search function. You'll find your functions and their definitions along with examples of usage in NO TIME, great time saver.
  4. Schmendrick

    Schmendrick Advanced Member

    Sep 12, 2009
    1: True enough, if you don't feel like getting familiar with actual programming, those apps are the way to go; many good games have been made with them. I suppose I assumed an interest in programming x3

    2: I started out with PAlib too, and it was great (also great-ly bugged). However, when moving over to libnds, I found I pretty much had to start all over, so I'd say if you think you'd ever want to switch over to libnds, it's best just to start with it.
    I haven't used NF's lib (I wrote my own), but if I'm not much mistaken it's MUCH closer to libnds than PAlib ever was, so the same issue wouldn't really apply.

    5: Yes. If you're really serious about your project, I'd even recommend using a subversion management like svn or git (and commit often). You can get free git repositories here: http://www.assembla.com/ (you can get them elsewhere too, but usually they have to be open-source and publically accessible, assembla allows private repositories).

    5.1: Speaking of screwups, be prepared to start all over at least once. You'll have to refactor code here and there based on something new learned or some bug you found that is deeply intwined in your code. Don't let this discourage you. (I've had to rewrite DSLiero at least 3 times because of these exact reasons..)

    6: Additionally, http://libnds.devkitpro.org/index.html will explain most of what you need to know about libnds specific functions. Even with other libs on top, libnds will be the basis, so you can (and likely will) use these functions.