AzizBgBoss/TerrariaDS

GitHub: AzizBgBoss/TerrariaDS

Stars: 33 | Forks: 1

### Disclaimer This project is not affiliated with Re-Logic or Terraria in any way. It is a fan-made project and is not intended for commercial use. All assets used in this project are use for educational and entertainment purposes only. If you're a party of Re-Logic and owner of any assets used in this project and want them removed, please contact me. ### Notes: ## Installation: You can either compile the game yourself (for nightly releases) or check for stable releases in the Releases page. Please check the Tested devices part before starting. ### Tested devices: | System | Functionality | Cons | Notes | |----------------------------------|---------------------------|-----------------------|-------------------------------------------------------------------------------------------------------------| | Nintendo DSi (XL) (TM++) | Excellent | None | Make sure to set launcher as Default | | Nintendo 3DS (New) (XL) (TM++) | Excellent | None | Should work fine as long as you're using TW++ since it basically becomes a DSi at that point. Also you can just play Terraria 3DS lol.| | Flashcarts (DS/DS Lite/DSi) | Not tested yet | Not tested yet | You should probably patch the .nds rom with the proper DLDI patch depending on your flashcart type (e.g., R4) | | NO$GBA (Windows Emulator) | Medium | No ability to save + Choppy sound | The emulator doesn't have DLDI support. | | desMuMe (Windows Emulator) | Non-functional | Game doesn't even start | | | melonDS (Windows Emulator) | Non-functional | No nitroFS | The emulator *has* DLDI support but it doesn't work with this game, maybe they'll fix it in a future update. But for some reason NitroFS won't work with melonDS. | | melonDS (Special fork) | Excellent | None | This is a fork of the original melonDS with NitroFS and FAT support added. You can find it [here](https://github.com/AzizBgBoss/TerrariaDS/raw/refs/heads/main/extras/melonDS.exe). I got it somewhere from the DS(i) Mode Customization! Discord server. Don't worry, it shouldn't contain any malware. But as soon as I find the original link, I'll put it here. | *More platforms will be tested soon.* ## Download the latest version (QR code scannable with DSi Downloader) ![QR](https://static.pigsec.cn/wp-content/uploads/repos/2026/06/6aea0f6010174533.png) ## Gameplay: - A: Jump - Left/Right: Move - Up/Down: Zoom in/out - X/Y: Switch items - R: Open inventory - Start: Pause menu - A+B+Y+X: Debug menu - Tap/Hold a block: Interact with/break the block (with the appropriate item of course) ## Changelog and Features Don't get your hopes really up, but with time, I'm sure the game will feel much more like terraria. ### Version 0.2 (In progress, releasing soon): - Ability to save character data and world data independently. - Add swinging animation. - Add particles (for example when breaking blocks). - Show health as hearts. - Add more music and intros. - Add more sound effects. ***(done: I didn't really add that much)*** - Fix touch misalignment when close to world edges at 2x scale. ***(can't do it: I don't know why, prolly got something to do with bgSetCenter, if you're close to the edges just keep the scale 1x)*** - Add chests. ***(done: limited to 32 chests for now)*** - Add more tools. ***(done: Iron and Gold pickaxes, axes, hammers, and long swords, and a wooden hammer lol)*** - Implement dynamic crafting recipes (based on nearby stations). ***(done)*** - Add crafting stations. ***(done for now: Workbench, Furnace, Anvil)*** - Probably converting all tile handling data to a struct (even special tiles). ***(done: this is great news, now I can add a huge variety of special tiles with the same function easily)*** - Add more crafting recipes. ***(done: now implemented pages)*** - Add more biomes. ***(done: desert, snow)*** - Implement entity spawning based on biome and layer ***(done: it was a bit complicated, but now entities spawn based on time, biome, and layer (surface/underground))*** - Better and more efficient world generation. ***(done: it's a bit faster now)*** - Add currency. ***(done)*** - Add X axis velocity ***(done: this allowed to implement knockback and fix some collision bugs)*** - Probably add a bit more entities. ***(done for now: Eyes, Slimes, Bunny, Zombies)*** - Organize my messy code and split it to many files, won't change anything but will make it easier to add features. ***(done)*** - Support for maps with more height (limit is 64 for now, that means chunking should happen in both X and Y axes). ***(done, worlds come in 4 sizes, with backwards compatibility with v0.1 maps)*** - Move all assets back to ROM since my dumbass a year ago thought moving everything to NitroFS will free up RAM but it's already `const` so no need... ***(done: it's now even neater than before)*** - Fix misaligned sprites when zooming in/out ***(done: yeah I still don't understand why this happens, if you can please help me with it. But I just added more math to counter the offset)*** ## Planned Features for the future: - Use more pointers for cleaner code. - Add ability to change button mappings (since many DS'es (including mine) have malfunctioning shoulder buttons because of dust accumulation under them over the years). - Add crimson/corruption. - Add improved lighting. - Multiplayer support (based on my experience, this will be a fucking nightmare). - Skins (or changeable player styles). - Add mana and magic items. - Add bosses. - Unique content for the DS version to make it stand out a bit. - Extra content and features for the DSi. - Maybe migrate to BlocksDS for better performance and more features (it shouldn't be that hard I think). Again, I'm open to suggestions and contributions, so if you have any ideas or want to help, feel free to open a pull request or an issue. ## Compile it yourself To compile this project, you need to have devkitPro installed. You can find instructions on how to install it on the [devkitPro website](https://devkitpro.org/wiki/Getting_Started) (Note: devkitPro NDS compilation only works on Windows as far as I know, or x86_64 architectures in general). Once you have devkitPro installed, you can clone this repository by running: Then, navigate to the project directory: For good measure, clean the place first: make clean Now, you can compile the project by running: make (Note: if you're not using the Msys2 shell, you may need to define the `DEVKITPRO` environment variable to point to your devkitPro installation directory, e.g. `export DEVKITPRO=/mnt/c/devkitPro` and `export DEVKITARM=/mnt/c/devkitPro/devkitARM`) ## Screenshots ![Screenshot 1](https://raw.githubusercontent.com/AzizBgBoss/TerrariaDS/main/media/screenshot%20(1).png) ![Screenshot 2](https://raw.githubusercontent.com/AzizBgBoss/TerrariaDS/main/media/screenshot%20(2).png) ![Screenshot 3](https://raw.githubusercontent.com/AzizBgBoss/TerrariaDS/main/media/screenshot%20(3).png) ![Screenshot 4](https://raw.githubusercontent.com/AzizBgBoss/TerrariaDS/main/media/screenshot%20(4).png) ![Screenshot 5](https://raw.githubusercontent.com/AzizBgBoss/TerrariaDS/main/media/screenshot%20(5).png) ![Screenshot 6](https://raw.githubusercontent.com/AzizBgBoss/TerrariaDS/main/media/screenshot%20(6).png)
标签:客户端加密