Created: 2008-12-08 02:05
Updated: 2018-11-29 07:32




UPDATE 8/3/09: YAY LAN!!!!! I like even more where this is going. I could use some LAN testers for both bug testing and balancing purposes, but that requires multiple DSs, so maybe that will happen at parties and stuff.

Now that school (and thus APs) are over I've had more time to work, even though I've been busy this summer.

Now I want to work on character creation, but that needs help. Any volunteers? -- Spartan97

UPDATE 1/31/09: I really like how far I've gotten with this, and I'm nearing the point where I can use lot of help (character creation). But, junior year has finally kicked in and I don't have enough free time to work often on this project. I don't plan to be doing much on this until after APs (Mid-May), but come end of year and over the summer I hope to progress this to the point where a few in-person instructional sessions will allow for faster production and let the game to hit beta-testing status.

Sorry for how poorly worded that was; it's late and it's hard to put what I'm trying to say into words. -- Spartan97

NOTE: Just in case anyone actually reads this, you can safely ignore the above message. Although Spartan97 CLAIMS he is not going to have time to work on this, he actually will. And he'll probably decide to spend some of it on this project. Even if he doesn't, I might. So we can and probably will keep having updates even before APs are over. -ComputerDruid


  1. Go to the PALib website and download/install the latest version of PAlib. This is a pain, but necessary
  2. read up and learn as much about PAlib as you can. Otherwise this whole project will be completely over your head; it's different from most CS projects


  • /SSBDS/data/
    • all the .raw files (sound FX) are stored here. They are then converted into and loaded as .h files.
  • /SSBDS/source/
    • all of the source code for the project
    • The code itself should be pretty well commented, but for more information try looking at the PAlib examples, wiki, etc.
    • gfx/
      • Just the graphics files that are included by main.cpp (in .c form)
      • Modifying this is slightly more difficult, but see the palib examples and wiki if you want to try to learn
    • main.cpp: Contains the main game logic, game types, and initialization
    • circle.cpp: represents a circle, usually part of a hitbox
    • display.cpp
    • effect.cpp: a visual effect that will stay on the screen for a period of time
    • fighter.cpp: the base class for the characters
      • Implements many of the character functions, along with the AI and input
    • Characters:
      • ike.cpp: Ike, a swordsman from fire emblem
      • kirby.cpp: Kirby, a fluffy pufffball
      • mario.cpp: Mario, our favorite plumber (unless you like a different plumber)
      • mewtwo.cpp: Mewtwo, the powerful psychic pokemon that is the result of genetic experimentation
      • sandbag.cpp: Sandbag, a simple dummy character for use in training mode
    • global.cpp: implements generic functions that are useful throughout the code
    • hitbox.cpp: represents a hitbox
    • knockback.cpp
    • projectiles.cpp: represents a flying/falling/other disconnected-from-player attack
    • scoreboard.cpp: draws? and keeps track of deaths/kills/SDs
    • stage.cpp: represents a stage. This is extended by various other stages
    • stages.cpp: the code and data for the various stages
    • computerserver/
      • Contains a computer server to host DS's that I made. It isn't used anymore, but I included it nevertheless.
      • a GUI I made to create hitboxes for characters... slightly outdated; don't worry about it for now.
  • /SSBDS/includes/
    • contains the definitions for the classes that are implemented (see above list)
  • /SSBDS/SSBDS_Files/
    • External files that are loaded by the ROM
    • must be loaded onto your flashcard along with the ROM
    • sprites/
      • .bin files for character sprites; very large files (I'm working on cutting them down but it involves editing the main.cpp, too)
    • gifs/
      • gif files loaded to be screen backgrounds
    • music/
      • mp3 files for background music
    • hitboxes/
      • variables for hitboxes of characters (txt files)
  • /SSBDS/Makefile
    • the file containing build instructions. Set up PAlib, then CD into the /SSBDS directory and type "make" to compile the ROM.
    • the ROM file... pretty simple. Just load this onto your flashcard if you just want to play the game.
    • You also need to load /SSBDS_Files into the root of your flashcard

Everything else is just framework for the makefile or not used; don't worry about the other files unless you really know what you're doing and how to use them.

Cookies help us deliver our services. By using our services, you agree to our use of cookies Learn more