NEX provides ways to simultaneously interact both with server features and client devices. Therefore, using NEX for application development requires keeping both development and usage considerations in mind.
This section describes the workflows for developing applications that use NEX.
When using NEX for application development, be aware of the following six major development phases.
- Planning
- Development and Debugging
- Lotcheck
- Go Live
- Releasing Patches
- Localization
Planning
The planning phase involves assessing whether using NEX will allow you to achieve your vision for the application as well as how, specifically, to use NEX in doing so. In this phase, there will not yet be a dedicated game server for your title. However, during this phase you will have access to the sample demo server. The sample demos included in the NEX package connect to this sample demo server. Use the sample demo server to test out the various NEX features and confirm that those features will be suitable for your application.
Other developers also have access to the sample demo server. Do not upload confidential information regarding your title to the sample demo server or use the sample demo server in a manner that may inconvenience the other developers. The following list contains other important information to consider.
- Do not upload proprietary title information to the data store. Do not upload screenshots.
- Do not store title-specific information in the shared ranking data, etc.
- Do not specify the same matchmaking game mode used in the sample demos.
- Do not repeatedly call API functions at a frequency that significantly exceeds the API access frequency limitations established in the guidelines.
- Do not delete data that is not yours.
- Do not use the sample demo server during actual application development.
However, feel free to use the NEX sample programs as is as much as you would like.
Development and Debugging
The development and debugging phase begins when application planning is complete and you have a better understanding on how you will be using NEX in your title. During this phase, you will no longer use the sample demo server. Instead, you will use a dedicated game server prepared for your title.
To gain access to a dedicated game server, you must submit a NEX usage application on OMAS. For information about applying for use of NEX, contact Nintendo.
When you apply to use NEX, you will need to describe how you will be using the NEX features in your application. Nintendo can still provide a game server even if the low-level details are not yet in place. You may apply to use NEX while you are still working through those details. In this case, however, you should update your NEX usage application when the details become more clear. Consider that if your NEX usage application is not in order, technical support and Lotcheck may proceed less smoothly than they would otherwise.
Once a game server has been configured, you can check your game server ID and access key on OMAS. Use this information to connect to the dedicated game server for your title.
Other titles will not be able to access your dedicated game server until specifically configured to be able to do so. However, there is not a dedicated physical server for each title, rather, virtual servers are run in parallel on the same box. Continue to avoid implementation of features that might cause excessively high server loads.
The following list contains other important information to consider.
- Do not repeatedly call NEX API functions at a frequency that significantly exceeds the API call frequency limitations established in the guidelines.
Note: During testing, it is acceptable to simulate high server loads for a short period of time (several minutes at most).
To use a different version of the NEX library, the version configured on the game server must be updated in advance. Change the NEX version on your application for use of NEX on OMAS, and Nintendo will update your game server after approval. Game servers are updated within 3 business days of approval.
Lotcheck
A game server for use during the Lotcheck process must be configured before the Lotcheck phase can begin. Before a server for Lotcheck can be configured, your title must have proceeded to the In Development/Ready for Lotcheck phase on OMAS.
Go Live
Once Lotcheck is complete, a production game server will be configured. Once a production game server has been configured, you can connect to it any point. Configuration of the game server is not related to the title's official launch date. You can connect to the game server prior to launch as well. Be careful when implementing features that will not work correctly until after the official launch date.
Releasing Patches
Before releasing a patch, check whether the unpatched version of the ROM can still communicate properly with the game server. If not, the game server must be configured so that the unpatched ROM can no longer connect to it. To do this, select Yes for the Network Access Restriction When Unpatched and Restart NEX Server When Patch Is Released items when submitting the application for the patch on OMAS.
If the NEX version needs to be updated when the patch is released, the version of NEX on the game server must also be updated. In this case, the game server must also be configured so that the unpatched version of the ROM can no longer connect to it.
Localization
If you release a localized version of an existing file, the localized version should use the same game server unless you have a specific reason to do otherwise. To separate matchmaking results, data store data, or ranking data by region, use separate categories and game modes for each region. The game server itself cannot be configured to have separate partitions for each region.
When releasing a patch for a localized version of an application, be careful about communication compatibility with the game server as well as the NEX version. The game server is shared for all regions, so patches that break communication compatibility must be released in all regions at the same time. If you are considering such a scheme, consult in advance with the person who will be in charge of releasing patches and make sure that this will be possible. Patches must also be released at the same time for all regions to change the NEX version on the game server.