Useful Bard Queries and Help (DS Development Edition)

Can AI help the homebrew community? YES!!!

Talk about any games you have, and disscus any tips, secrets, or unlockables you might have!
Post Reply
User avatar
Artisan
Verified


RPG Character: Floride The Hedgehog
Moderator
Moderator
Full Member
Full Member
Posts: 221
Joined: January 5th, 2022, 14:44
2
Has thanked: 11 times
Been thanked: 1239 times
Gender:
    Windows 10 Edge

Formula 1 WebTip
Formula 1 points : 100
25. Place
(1 of 20 races tipped so far)
United States of America

Partners, and Forum Memberships

Milestones

Special

Contests

Nintendo 3DS Central

Useful Bard Queries and Help (DS Development Edition)

#7619

Unread post by Artisan »

[/list] These are just a few searches I like pasted here that can help you with your Nintendo DS game development. Games may vary by creator and design. I'm in red and Bard is in Blue.

How do I make 3D low poly models for Nintendo DS games?

Here are the steps on how to make 3D low poly models for Nintendo DS games:
  1. Choose a software. There are many different 3D modeling software programs that you can use to create low poly models, such as Blender, SelfCAD, and Autodesk Maya. Blender is a free and open-source software that is a good option for beginners.
  • Start with a simple model. When you are first starting out, it is a good idea to start with a simple model, such as a cube or a sphere. This will help you to learn the basics of 3D modeling and how to create low poly models.
  • Use the Decimate modifier. The Decimate modifier is a powerful tool that can be used to quickly reduce the number of polygons in a model. This is a great way to create low poly models for Nintendo DS games, which have limited graphical resources.
  • Add detail where needed. Even though you are creating a low poly model, you still want to add some detail to make it look realistic. This can be done by adding sharp edges, vertices, and faces.
  • Export the model. Once you are happy with your model, you can export it in a format that can be used by Nintendo DS game engines.

Here are some additional tips for making 3D low poly models for Nintendo DS games:

  • Use a grid to help you keep your models aligned.
  • Use reference images to help you create accurate models.
  • Be mindful of the polygon budget. Nintendo DS games have a limited polygon budget, so you need to be careful not to add too many polygons to your models.
  • Use smooth shading to make your models look smoother and add textures to your models to add more detail.

I hope this helps!


What file format to export works the best?

The best file format to export for Nintendo DS games is the .obj format. This format is supported by most 3D modeling software programs and game engines. It is also a relatively lightweight format, which is important for Nintendo DS games, which have limited memory.

Here are some other file formats that you can use to export 3D low poly models for Nintendo DS games:

  • .fbx: This format is also supported by most 3D modeling software programs and game engines. It is a bit more complex than the .obj format, but it can also store more data, which can be useful for more complex models.
  • .3DS: This format is a proprietary format developed by Autodesk. It is not as widely supported as the .obj or .fbx formats, but it can be a good option if you are using Autodesk software.
  • .glTF: This is a newer file format that is becoming increasingly popular. It is supported by a wide range of 3D modeling software programs and game engines. It is also a lightweight format, which is important for Nintendo DS games.


Ultimately, the best file format to export for Nintendo DS games depends on your specific needs. If you are looking for a lightweight format that is widely supported, then the .obj format is a good option. If you need a format that can store more data, then the .fbx format is a good choice. And if you are using Autodesk software, then the .3DS format is a good option.


How does the Nintendo DS read OBJ files?

The Nintendo DS does not natively support the OBJ file format. OBJ files are a text-based format that can be slow and inefficient to load on the DS. Instead, most Nintendo DS game engines use a custom format that is optimized for the DS's hardware and memory limitations.

If you want to use OBJ files in your Nintendo DS game, you will need to convert them to a custom format that can be read by your game engine. There are a number of tools available that can do this conversion for you.

Once your OBJ files have been converted, they can be loaded into your game engine and used to create 3D models. The game engine will then manage the memory and loading of the models, so you do not need to worry about that.

Here are some of the steps on how to convert OBJ files to a custom format for Nintendo DS games:

  1. Choose a conversion tool. There are a number of different tools available that can convert OBJ files to a custom format for Nintendo DS games. Some popular options include DevKitPro's OBJ2NDS, NGLOBJ, and Obj2DS.
  • Export your OBJ files. Once you have chosen a conversion tool, you need to export your OBJ files from your 3D modeling software. Make sure to export the files in a format that is supported by the conversion tool.
  • Convert your OBJ files. Run the conversion tool and select the OBJ files that you want to convert. The tool will then convert the files to a custom format that can be read by your game engine.
  • Import the converted files into your game engine. Once the files have been converted, you can import them into your game engine. The game engine will then manage the memory and loading of the models, so you do not need to worry about that.

I hope this helps!


How do I go about making a cloud game server for the Nintendo DS?

Making a cloud game server for the Nintendo DS is a complex and challenging project. It would require a lot of technical expertise and resources. Here are the basic steps involved:

Set up a cloud infrastructure. This would require renting or buying servers that are powerful enough to run the game and handle multiple connections. The servers would need to be located in different parts of the world to provide good latency for players in different regions.
Develop the game server software. This would involve reverse engineering the Nintendo DS network protocol and writing code that can emulate it. The game server software would also need to handle things like matchmaking, player authentication, and game state synchronization.
Test the game server software. This would involve testing it with a large number of players to make sure it is stable and can handle the load.
Deploy the game server software to the cloud. This would involve configuring the servers and installing the game server software.
Promote the cloud game server. This would involve creating a website and social media presence to let people know about the cloud game server.
It is important to note that this is just a basic overview of the process. There are many other factors to consider, such as licensing, security, and maintenance. If you are serious about making a cloud game server for the Nintendo DS, you should consult with a technical expert to get more specific advice.

Here are some additional resources that you may find helpful:

Kaeru WFC: https://kaeru.world/projects/wfc: A project that provides cloud-based multiplayer for Nintendo DS games.
Unity Cloud Game Server Hosting: https://unity.com/products/game-server-hosting: A service that provides cloud game server hosting for Unity games.
Amazon GameLift: https://aws.amazon.com/gamelift/: A service that provides cloud game server hosting for a variety of game engines.
Google Cloud Platform Game Servers: https://cloud.google.com/game-servers/: A service that provides cloud game server hosting for a variety of game engines.


What is Nintendo DS network protocol?

The Nintendo DS network protocol is a proprietary protocol used by the Nintendo DS to communicate with other Nintendo DS systems and with the Nintendo Wi-Fi Connection service. It is based on the IEEE 802.11b standard, but it also includes some proprietary extensions.

The Nintendo DS network protocol is used for a variety of purposes, including:

Online multiplayer gaming: The Nintendo DS network protocol can be used to connect two or more Nintendo DS systems together for online multiplayer gaming.
Downloading game content: The Nintendo DS network protocol can be used to download game updates, DLC, and other content from the Nintendo Wi-Fi Connection service.
Chatting: The Nintendo DS network protocol can be used to chat with other Nintendo DS users over the Nintendo Wi-Fi Connection service.
The Nintendo DS network protocol is a relatively simple protocol, but it is designed to be efficient and reliable. It is used by a variety of Nintendo DS games, including Mario Kart DS, Pokémon Diamond and Pearl, and Animal Crossing: Wild World.

Here are some of the features of the Nintendo DS network protocol:

It is based on the IEEE 802.11b standard: This means that the Nintendo DS network protocol is compatible with most wireless routers.
It includes some proprietary extensions: These extensions allow the Nintendo DS network protocol to handle things like online multiplayer gaming and chat.
It is relatively simple: This makes it easy for developers to implement in their games.
It is efficient and reliable: This ensures that players have a good experience when playing online games or downloading content.
The Nintendo DS network protocol is a valuable tool for developers who want to create games that can be played online. It is also a great way for players to connect with each other and chat.


What coding languages are used for Nintendo DS and its protocol?

The Nintendo DS can be programmed in a variety of languages, including C, C++, and assembly language. However, the most common language used for Nintendo DS development is C++. This is because C++ is a powerful and efficient language that is well-suited for game development.

The Nintendo DS network protocol can also be programmed in a variety of languages, including C, C++, and Python. However, the most common language used for Nintendo DS network protocol development is C++. This is because C++ is a powerful and efficient language that is well-suited for network programming.

Here are some of the most popular coding languages used for Nintendo DS development:

C++: C++ is a powerful and efficient language that is well-suited for game development. It is the most common language used for Nintendo DS development.
C: C is a simpler language than C++ but it is still powerful enough for game development. It is sometimes used for Nintendo DS development, especially for homebrew games.
Assembly language: Assembly language is a low-level language that gives developers direct control over the hardware. It is sometimes used for Nintendo DS development, especially for performance-critical code.
Python: Python is a high-level language that is easy to learn and use. It is not as common as C++ or C for Nintendo DS development, but it can be used for some tasks, such as network programming.
Ultimately, the best coding language for Nintendo DS development depends on the specific project. For most projects, C++ is a good choice. However, other languages may be better suited for certain tasks.


A very nice ARM assembly tutorial series and books here:
[youtube]https://www.youtube.com/watch?v=7vz8VRa ... YOn4FkifBi[/youtube]

Can you give me code examples for game state synchronization?

Sure, here are some code examples for game state synchronization:

C++
// This function is called every frame to synchronize the game state between the client and the server.
void synchronizeGameState() {
// Get the latest game state from the server.
GameState serverState = getServerState();

// Compare the server state to the client state.
for (int i = 0; i < MAX_PLAYERS; i++) {
if (serverState.players.id != clientState.players.id) {
// The player's ID has changed, so we need to update the client's state.
clientState.players.id = serverState.players.id;
}

if (serverState.players.position != clientState.players.position) {
// The player's position has changed, so we need to update the client's state.
clientState.players.position = serverState.players.position;
}

if (serverState.players.rotation != clientState.players.rotation) {
// The player's rotation has changed, so we need to update the client's state.
clientState.players[i].rotation = serverState.players[i].rotation;
}
}
}

Use code with caution. Learn more
This code example is for a simple multiplayer game where the only state that needs to be synchronized is the player's ID, position, and rotation. The function synchronizeGameState() is called every frame to get the latest game state from the server and compare it to the client state. If there are any differences, the client state is updated.

Here is another code example for game state synchronization that uses a delta encoding technique to reduce the amount of data that needs to be sent over the network:

C++
// This function is called every frame to synchronize the game state between the client and the server.
void synchronizeGameState() {
// Get the latest game state from the server.
GameState serverState = getServerState();

// Create a delta between the server state and the client state.
GameState deltaState = serverState - clientState;

// Send the delta state to the client.
sendDeltaState(deltaState);

// Apply the delta state to the client state.
clientState += deltaState;
}

Use code with caution. Learn more
This code example uses a delta encoding technique to reduce the amount of data that needs to be sent over the network. The delta state only contains the changes that have been made to the game state since the last synchronization. This can significantly reduce the bandwidth requirements for game state synchronization.

There are many different techniques that can be used for game state synchronization. The best technique to use depends on the specific game and the network conditions.


And this is just the tip of the iceberg. Obviously, the plan is to try development on a flashcard or even save it to my custom firmware New 2DS LL and try to make a game that runs online even if I have a pay a little just for a server later on. Just one of my many project ideas. Hope you can contribute or enjoy!
Last edited by Artisan on August 11th, 2023, 17:06, edited 2 times in total! word count: 2348
:bananadance: The OG really know how to make a sandwich I tell ya w'hut :bananadance: Image
Post Reply

Last 255 Members Who Visited This Topic! Total 25 visits

Sammi (3), flowermom (4), User avatar Artisan (5), User avatar Tiger21822 (5), User avatar Tiger21821 (3), User avatar Tedhaun (2), User avatar Tiger21820 (3)

Return to “General NDS Discussion”

Who is online

Users browsing this forum: No registered users… and 1 guest