Toggle menu
Toggle personal menu
Not logged in
Your IP address will be publicly visible if you make any edits.

Attorney Online DS: Difference between revisions

From GameBrew
(Created page with "{{Infobox DS Homebrews |title=Attorney Online DS |image=aonds.png |description=Attorney Online client for the Nintendo DS. |author=Headshotnoby, stonedDiscord, Samevi |lastupdated=2023/12/22 |type=Other Apps |version=1.0 |license=Mixed |download=https://dlhb.gamebrew.org/dshomebrew/aonds.7z |website=https://gbatemp.net/threads/release-attorney-online-ds.644927/ |source=https://github.com/headshot2017/ao-nds }} [https://aceattorneyonline.com/ Attorney Online] (AO for shor...")
 
m (Text replacement - "|download=https://dlhb.gamebrew.org/dshomebrew/" to "|download=https://dlhb.gamebrew.org/dshomebrew2/")
 
(7 intermediate revisions by the same user not shown)
Line 4: Line 4:
|description=Attorney Online client for the Nintendo DS.
|description=Attorney Online client for the Nintendo DS.
|author=Headshotnoby, stonedDiscord, Samevi
|author=Headshotnoby, stonedDiscord, Samevi
|lastupdated=2023/12/22
|lastupdated=2024/06/02
|type=Other Apps
|type=Other Apps
|version=1.0
|version=1.2
|license=Mixed
|license=Mixed
|download=https://dlhb.gamebrew.org/dshomebrew/aonds.7z
|download=https://dlhb.gamebrew.org/dshomebrew2/aonds.7z
|website=https://gbatemp.net/threads/release-attorney-online-ds.644927/
|website=https://gbatemp.net/threads/release-attorney-online-ds.644927/
|source=https://github.com/headshot2017/ao-nds
|source=https://github.com/headshot2017/ao-nds
Line 28: Line 28:
The release comes with the vanilla data so it's recommended to start out by connecting to the AO Official Server.
The release comes with the vanilla data so it's recommended to start out by connecting to the AO Official Server.


=== on melonDS ===
=== On melonDS ===
* Go to Config > Emu settings > DLDI.
* Go to Config > Emu settings > DLDI.
* Tick "Enable DLDI (for homebrew)".
* Tick "Enable DLDI (for homebrew)".
Line 37: Line 37:
* Extract the "data" folder in vanilla-data.7z to the dldi folder.
* Extract the "data" folder in vanilla-data.7z to the dldi folder.
* Put the NDS rom anywhere and run it in melonDS.
* Put the NDS rom anywhere and run it in melonDS.
** [https://melonds.kuribo64.net/board/thread.php?pid=1623 Tutorial] on how to Connect to WFC in MelonDS.


=== on a DS, DSi or 3DS (SD card) ===
=== On a DS, DSi or 3DS (SD card) ===
* Insert the SD or microSD card in your computer.
* Insert the SD or microSD card in your computer.
* Extract the "data" folder in vanilla-data.7z to the root of the SD card.
* Extract the "data" folder in vanilla-data.7z to the root of the SD card.
Line 55: Line 56:


== Changelog ==
== Changelog ==
'''v1.2 2024/06/02'''
Client:
* Fix random crash when interacting with server areas, particularly those that make use of "hubs".
* Performance boost on scrolling through music list, IC and OOC chat logs, and evidence description.
* Chat logs are no longer limited to 100 messages.
* Fix music list not scrolling back to the beginning when using the search function.
* Evidence subdirectories are now loaded into cache on game startup.
* Added certain checks when loading a character's char.ini file to avoid a crash.
* Try to improve RAM management with character emotes and sounds.
** When loading a character emote, the current sound is unloaded from memory first, then the new character image is loaded, and if available, the new sound is loaded afterwards.
** For character images that are LZ77-compressed (those that have stream = 0 on nds.cfg), instead of loading the entirety of the compressed data into memory and decompressing that, it is decompressed through streaming, only taking up 4KB of RAM while doing so (see arm9/source/global.cpp for more info if interested).
* It is now possible to select between all of a character's custom shouts on the "Talk (IC)" screen
* Speed up re-displaying the "Talk (IC)" screen when the keyboard is closed.
* Attempt to speed up scrolling through emotes on "Talk (IC)" screen.
Converter tool:
* Subdirectories on evidence images are now converted.
* Backgrounds with .webp, .gif and .apng formats are now converted.
* Character conversion should now be slightly faster due to using python's built-in multiprocessing library instead of third-party library joblib.
* "Failed to convert" messages will now be logged to a file.
* When converting character emotes, the converter will now try to read the image file's header to determine its' true format (e.g. There could be a .apng file that is actually a gif).
* A character's custom shouts will now be resized to 256x192 if necessary.
* Sounds and blips are converted to 22050 Hz instead of 32000 Hz to save on RAM.
** If you are updating the game, it's recommended to download vanilla-data.7z and install the new sounds.
'''v1.1 2024/02/03'''
*Fix crash when loading the public server list due to a server missing its' description field.
'''v1.0 2023/12/22'''
'''v1.0 2023/12/22'''
* This is the initial release.
* This is the initial release.


Line 82: Line 110:
* GitHub - https://github.com/headshot2017/ao-nds
* GitHub - https://github.com/headshot2017/ao-nds
* GBAtemp - https://gbatemp.net/threads/release-attorney-online-ds.644927/
* GBAtemp - https://gbatemp.net/threads/release-attorney-online-ds.644927/
[[Category:DS%20homebrew%20applications|Category:DS homebrew applications]]
[[Category:Other%20DS%20applications|Category:Other DS applications]]

Latest revision as of 04:16, 16 August 2024

Attorney Online DS
Aonds.png
General
AuthorHeadshotnoby, stonedDiscord, Samevi
TypeOther Apps
Version1.2
LicenseMixed
Last Updated2024/06/02
Links
Download
Website
Source

Attorney Online (AO for short) is an online roleplay chatroom game based on the Ace Attorney universe. Created by FanatSors in 2013, this community has thrived for over a decade.

This is an unofficial port/recreation of the PC client to the Nintendo DS. It also works on DSi and 3DS.

Features

  • Supports playing MP3 files for music. (22050 Hz, 80 kbps).
  • Can connect to AO servers that utilize the WebSocket protocol, as used in the game's web browser version (webAO).
  • Supports custom AO content, including those of sprites of 3DS characters. (Must be converted beforehand using the converter tool).
  • Ace Attorney-like UI, as if you were playing the original DS games.
  • Uses stb_truetype, which renders TTF fonts for the most accurate Ace Attorney text visuals. ("Igiari" font belongs to Caveras.)

Installation

Download the NDS ROM and vanilla-data.7z from the release page.

The release comes with the vanilla data so it's recommended to start out by connecting to the AO Official Server.

On melonDS

  • Go to Config > Emu settings > DLDI.
  • Tick "Enable DLDI (for homebrew)".
  • For SD card image, write "melonDS.img" as the file name.
  • Leave "Read-only SD" disabled.
  • Set image size to whatever you prefer. At least 512 MB is needed to store the vanilla data.
  • Create a new folder in the melonDS folder named "dldi", Enable "Sync SD to folder" and set it to that new folder.
  • Extract the "data" folder in vanilla-data.7z to the dldi folder.
  • Put the NDS rom anywhere and run it in melonDS.
    • Tutorial on how to Connect to WFC in MelonDS.

On a DS, DSi or 3DS (SD card)

  • Insert the SD or microSD card in your computer.
  • Extract the "data" folder in vanilla-data.7z to the root of the SD card.
  • Put the NDS rom anywhere in the SD card.
  • Remove the SD card, put it back on your flashcard/DSi/3DS and run the ROM.
    • If you can't connect to Wi-Fi, check your WFC settings using a retail DS game, or on the system settings. Try using your phone as an unsecured hotspot.

Converter tool

You can use the AO NDS converter tool to bring custom content from the PC version of Attorney Online to AO NDS.

You must have installed Attorney Online on your PC beforehand. The easiest way to install it is by using the AO launcher.

Screenshots

aonds2.png aonds3.png

Changelog

v1.2 2024/06/02

Client:

  • Fix random crash when interacting with server areas, particularly those that make use of "hubs".
  • Performance boost on scrolling through music list, IC and OOC chat logs, and evidence description.
  • Chat logs are no longer limited to 100 messages.
  • Fix music list not scrolling back to the beginning when using the search function.
  • Evidence subdirectories are now loaded into cache on game startup.
  • Added certain checks when loading a character's char.ini file to avoid a crash.
  • Try to improve RAM management with character emotes and sounds.
    • When loading a character emote, the current sound is unloaded from memory first, then the new character image is loaded, and if available, the new sound is loaded afterwards.
    • For character images that are LZ77-compressed (those that have stream = 0 on nds.cfg), instead of loading the entirety of the compressed data into memory and decompressing that, it is decompressed through streaming, only taking up 4KB of RAM while doing so (see arm9/source/global.cpp for more info if interested).
  • It is now possible to select between all of a character's custom shouts on the "Talk (IC)" screen
  • Speed up re-displaying the "Talk (IC)" screen when the keyboard is closed.
  • Attempt to speed up scrolling through emotes on "Talk (IC)" screen.

Converter tool:

  • Subdirectories on evidence images are now converted.
  • Backgrounds with .webp, .gif and .apng formats are now converted.
  • Character conversion should now be slightly faster due to using python's built-in multiprocessing library instead of third-party library joblib.
  • "Failed to convert" messages will now be logged to a file.
  • When converting character emotes, the converter will now try to read the image file's header to determine its' true format (e.g. There could be a .apng file that is actually a gif).
  • A character's custom shouts will now be resized to 256x192 if necessary.
  • Sounds and blips are converted to 22050 Hz instead of 32000 Hz to save on RAM.
    • If you are updating the game, it's recommended to download vanilla-data.7z and install the new sounds.

v1.1 2024/02/03

  • Fix crash when loading the public server list due to a server missing its' description field.

v1.0 2023/12/22

  • This is the initial release.

Credits

  • Made with devkitARM & libnds by Headshotnoby.
  • Additional code by stonedDiscord.
  • UI design by Samevi.

Assets and libraries used:

  • "Igiari" font by Caveras.
  • "AceName" font by unknown (found on webAO).
  • libnds.
  • dswifi.
  • stb_truetype.
    • Using a modified version of stb_truetype that replaces (some, not all) floating point math with fixed-point math, thus providing a speed boost, since the DS doesn't have a FPU.
  • MP3 player from this blogspot site, but with several bug fixes.
  • dr_wav for reading WAV audio files.
  • rapidjson, used when parsing the public server list.
  • mINI for parsing .ini files.
  • mongoose for WebSocket support.
  • utfcpp for UTF8/16/32 strings.

External links

Advertising: