Skip to content

Releases: AttorneyOnline/AO2-Client

2.9 Release Candidate 4

26 Feb 18:15
9691fb7
Compare
Choose a tag to compare
Pre-release

This should be the final testing round for 2.9.0. Once this round is done, 2.9.0 will be released, and any subsequent fixes will be released as patches.

Some other miscellaneous things to keep in mind:

  • The automated release pipeline is mostly broken right now, so the staging manifests of the launcher are not being updated right now, and packaging is being performed manually. ETA for a fix is unknown.
  • There is a new and improved™ vanilla in the works, so please stay tuned for that.

What's New

  • Fonts will automatically load from base/fonts and its subdirectories at start time
  • Add option for disabling stickers
  • Reworked custom position dropdown

Breaking Changes

  • Stickers will no longer load DRO-style. In DRO, the sticker image is an image located in the character folder named as the character's showname. This is no longer supported. Instead, you must place your sticker in a directory named sticker inside the appropriate misc or theme folder, and the sticker image must be named after the folder name of the character instead of the showname.
  • Judge button (WT/CE) animations are now prefixed with _bubble
  • Hardcoded stylesheets have been moved into the theme stylesheets. If your theme has no need to override these stylesheets, you should remove the stylesheet files from your theme.

Fixes from RC3

  • Fix background not resizing on "Reload Theme"
  • Fix objections prematurely adjusting chatbox
  • Fix testimony indicator only appearing once
  • Fix "Disable Custom Chat" setting not being honored when setting chatbox size and position
  • Fix stickers not respecting the custom chatbox setting
  • Fix speedlines never being unhidden
  • Prevent static preanimations from "playing"
  • Fix chat arrow being frozen
  • Fix screenshake edge cases
  • Fix crash when playing in a pre-2.6 server
  • Fix "stop music on objection" not stopping the music for everyone

2.9 Release Candidate 3

14 Feb 04:49
5fd3ed0
Compare
Choose a tag to compare
Pre-release

Yet another round of testing. There will probably be a few more rounds of testing based on the number of changes we've done to the core engine.

What's New

  • Restore Defaults and Reload Theme button added to settings screen
  • Animated UI buttons (can be disabled in settings)
  • New packet ST#{subtheme}#{force_reload}#% that allows server to suggest a subtheme and reload theme automatically (if player has the subtheme set to "server")
  • ~stop.mp3 and the "stop" category are now hidden. To stop music, right click the music list and hit "Stop Music," or use the "Stop Music w/ Category" setting to bring back the ability to double-click categories to "play" them.
  • Allow server to specify custom WT/CE name in packet (SFX name and animation filename are exactly the name provided)
  • Allow server to hide the testimony indicator by using RT#testimony1#1

Subthemes

You can add a folder inside of a theme that can replace anything inside the existing theme. Subthemes are prioritized over your current theme and work like a third layer of inheritance, so the first layer is default theme, second layer is current theme and the last layer is the subtheme. You can manually force your subtheme using the settings screen, set it to "default" to stop subthemes from changing, or "server" to allow the server to suggest which subtheme to use (meaning you can have themes for day/night cycles, different interfaces between investigation/trial segments, etc.)

For example, the fallback order for courtroom_design.ini will be as follows:

  • theme/subtheme/courtroom_design.ini
  • theme/courtroom_design.ini
  • default_theme/courtroom_design.ini

Note that subthemes will never fall back to any subthemes belonging to the default theme.

Theme reparenting

You can specify a new default theme for themes, so instead of falling back to the theme called default, you can fall back to any theme of your choice. To do this, add a default_theme= value in courtroom_design.ini. Note that it is not recursive, so if the default theme you selected has a default_theme= value as well, it won't fall back a second time, nor will it fall back to default.

Breaking Changes

  • The shouts option in char.ini is deprecated; use chat instead.

Fixes from RC2

  • Fix additive text being duplicated (again)
  • Fix instant text (}}}) not being instant
  • Fix new desk mods (2-5) not working properly
  • Fix crash if emote list size is set to 0, 0
  • Fix focus not being set back to IC box if "remove position" button is clicked
  • Fix judge buttons not interrupting itself when clicked twice during playback
  • Fix themed buttons displaying with both image and text instead of image only
  • Fix some character selection screen elements not being affected by theme reload
  • Refactor internal asset resolver
  • Fix showname width by calculating font metrics only after showname font is set
  • Fix slight hitch in continuous playback when transitioning from talking to idle and the sprite did not change
  • Fix animated backgrounds with continuous animation enabled
  • Fix broken chatbox themes
  • Fix viewport freezes
    • Fix viewport freezing if neither character asset nor placeholder are found
    • Fix PNG objections freezing the viewport

Download

Download from "Assets" below. If you didn't download RC2 previously, make sure to download and extract the new vanilla (2021.02).

2.9 Release Candidate 2

02 Feb 21:27
097220f
Compare
Choose a tag to compare
Pre-release

Final round of testing before 2.9.

Note that things will start slowing down after the 2.9 release (and alas, things have already begun to slow down).

We also decided to drop official Mac support due to the cost of signing and liability. Feel free to submit an unofficial build if you'd like.

Fixes from RC1

  • Fix some tooltip issues
  • Add option to display overlay effects over/under chatbox (see #424)
  • Fix continuous playback not working; make continuous playback configurable to prevent lag and disabled by default
  • Proper fix for music fading (had caused a regression causing music fading not to work at all)
  • Fix looping effects not looping
  • Fix "now playing" widget not stretching properly
  • Update Russian translation
  • Use friendly title for "now playing" widget when playing from a URL

What's New

  • Make text crawl speed configurable
  • Add GitHub Actions CI (thanks @skyedeving)
  • Changed position dropdown behavior to work as an override that persists across characters; use "X" button to clear the override

Install

  1. Download the binaries for your version
  2. Download and extract new vanilla (2021.02) via CDN
  3. Add your content as usual

2.9 Release Candidate 1

28 Jan 21:05
0bb8574
Compare
Choose a tag to compare
Pre-release

This is a preliminary changelog for 2.9.

What's New

Major

  • Countdown timer
  • Stickers: character portraits overlaid on the chat box
  • List view of characters with categories
  • (c) animations: postanimation that allows transitioning from talking back to idle. An old planned AO1 feature.
  • Queued messaging: in-character chat is queued with a minimum delay between messages, so all chat can be viewed asynchronously without chaos or interruptions
  • Basic demo recording and playback
  • Desk mods 2-5 (see #353)
  • Revamped blips: blips are now more faithful to the AA games

Minor

  • Added scaling overrides for character and effect INIs (can now force sharp or smooth scaling)
  • Added stretching overrides for character and effect INIs (can now force stretching/squashing to fill viewport)
  • Added ability to override anything in misc/ with a theme-level misc/ folder
  • Added "Nothing" option to SFX dropdown
  • Added theme option to customize the indentation and animation of the music list
  • UI elements are now elided when they are too long
  • List additional background positions based on a design.ini in the background's folder (see #352)
  • Added shouts to the IC log, as well as an ability to describe custom shouts (see #356)
  • Added BB packet that displays a dialog with a user-defined message
  • Added three-second reading delay for all dialogs
  • Added support for HTTP audio sources
  • Added Y-offset for pairing
  • Added "Stop Music" button (may not work if server does not have ~stop.mp3)
  • Added "[MISSING]" to missing songs in "Now Playing" bar
  • Added support for alpha masking to image widgets (useful for UI)
  • Added support for non-PNG static emotes (see #276)

Changes

  • Moved user-defined SFX and iniswap lists from character folders to the root base folder
  • Allow button autogenerator to generate both on and off variants of buttons when either one is missing
  • Changed log filenames to a more standard/sortable format
  • Changed name of "No Interrupt" checkbox to "Immediate"
  • Deprecated INI option gender and renamed to blips
  • Changed "Play Random Song" behavior to only play expanded categories
  • Separated IC log colors from chatbox colors (see #323)
  • Removed "What's This" button from title bar
  • Disabled maximizing and resizing of windows
  • Removed FantaCrypt

Fixes

  • Optimized animation playback by keeping looped frames in memory
  • Fixed music fading being audible when volume is 0
  • Fixed Enter accidentally blankposting if pushed too quickly by adding a configurable chat rate limit
  • Fixed music and objection being stuck on muted after spectating
  • Fixed crash when area list and ARUP areas don't match up in length
  • Fixed crash when no server is selected in the lobby
  • Fixed some minor memory leaks
  • Fixed APNG emotes not animating if they have a .png extension
  • Fixed case docs not importing correctly when they have a hash sign
  • Fixed "APNG loaded" in About screen
  • Fixed incorrect timestamps when toggling showname/refreshing IC log
  • Fixed case docs importing in the wrong order
  • Fixed SFX being cut off by other sounds by adding more channels
  • Fixed SFX tooltip typo
  • Fixed shouts forcing preanimation when "Pre" is unchecked
  • Fixed buggy double-click in lobby
  • Fixed evidence displaying twice with non-interrupting preanims
  • Fixed shout sounds not falling back to the default theme when the current theme lacks them
  • Fixed iniswap "X" button disappearing after reloading theme
  • Fixed button autogenerator failing if the source image is indexed

2.8.5 not-so-hot fix

29 Aug 22:23
090e824
Compare
Choose a tag to compare

Fixes

  • Fix upward log scrolling down instead of up
  • Only reinitialize audio on device change

What's New

  • Allow .webp for static emotes

(Note: the downloads below contain only the executable and must be applied over 2.8.5)

2.8.5

22 Aug 01:33
2c6a690
Compare
Choose a tag to compare

This is the awaited patch release for 2.8, fixing various exploits and introducing some quality-of-life fixes. Linux support was also fixed in this release.

Expect a major slowdown after 2.8.6.

What's New

  • Improvements to blankposting (#256)
    • Doubleposting is no longer prevented by the client; this is done serverside instead.
  • Added more options for the IC chat log (#259)
  • Added ability to change audio device without restarting game (#257)

Changes

  • Translation updates (Portuguese, Russian, Spanish)

Fixes

  • Fixed IC freezing from too many } modifiers (#243)
  • Fixed Music Display button disappearing under specific conditions (#191)
  • Fixed custom chatbox colors not working (#194)
  • Fixed crash on DRO servers
  • Fixed client using the current character colors on other people's messages
  • Fixed slowdown related to area updates (#241)
  • Fixed custom realization sounds not working (#234)
  • Fixed bold text not working in themes (#227)
  • Fixed IC freezing due to preanims used with zoom effect (#169)
  • Fixed names in IC chat log being inconsistently shown in specific cases involving iniswaps and shownames (#247)
  • Fixed Linux release being incompatible with some LTS distros (#242)
  • Fixed screenshake not working with blankposting
  • Fixed text disappearing from IC log under certain circumstances (#221)
  • Fixed audio on Linux (#263)

(thanks to @scatterflower for changelog)

Prosecution Fever

31 Jul 22:36
ec1c95b
Compare
Choose a tag to compare

2.8 includes some of the most comprehensive set of changes ever made to AO, thanks to a merge with the Killing Fever Online (@Crystalwarrior) and Attorney Online Vidya forks (@Iamgoofball).

What's New

Platform

  • Added experimental Mac support

Lobby UI

  • Settings menu now available in lobby
  • Servers are now searchable and sortable by name
  • Double-click to join a server

Courtroom UI

  • Changed music list to a hierarchical tree view
  • You can now play as multiple characters with the same client. Simply type in your character in the drop-down adjacent to the emote selected, and the emote list will adjust to the selected character. Press X to remove the character from the list.
  • Added color to IC log
  • Added "now playing" widget with marquee scrolling text
  • Added explanatory tooltips for all buttons
  • Added ability to select custom sound to play for emote
  • Color drop-down now modifies only color of selected text in the IC input bar
  • Added support for emote and evidence buttons of nonstandard sizes
  • Added context menus to SFX, character swap, and effect dropdowns to open INIs and respective folders for editing
  • Log goes downward by default (for real this time)
  • Added tooltips for character names in character selection
  • Character select screen no longer mutes music

Core

  • Added full support for animated PNG (.apng) and WebP (.webp) images
  • Added ability to append more text to your last IC message
  • Text no longer tries to wrap itself while talking
  • Added proper spectate support

Effects

  • Added emote modifier 4 for zoom with preanimation
  • Added overlay/effect animation system
  • Added support for custom objections of any name
    • Right click the "Custom" interjection button to see all custom interjections
  • Reimplemented flashing and screen shake as effects
  • Added support for frame-specific effects
  • Added additional inline markup for IC effects (all of which can be escaped with a backslash):
    • \s - screen shake
    • \f - flash
    • \n - newline
    • ~~ - center text
    • ~> - align right
    • <> - justify text
  • Added ability to customize speed lines
  • [Time] section is no longer required for character INIs; all preanimations are played once from start to finish by default

Backgrounds

  • Added support for background overlays
  • Animated backgrounds no longer restart themselves if the background doesn't have to change on next character message
  • Added support for other background positions beyond the predefined list
  • On supported servers, the correct background will be displayed immediately upon join

Chatbox

  • Added support for special chatboxes and interjections
  • Chatbox now shows an arrow when chat is idle
  • chatblank, chat, chatmed and chatbig images in the theme folder are finally used now based on the length of the showname

Audio

  • Added full support for Ogg Opus (.opus) audio
  • Added support for crossfades (right-click a track to see options)
  • Added support for seamless A-B loops in tracks
  • Added support for looping SFX
  • Added "Play Random Song" feature
  • Added base/sounds/blips/ folder as a search path for blips
  • Interjections can now stop music (configured by client)

Evidence

  • Evidence list is now split between local and global lists
  • Added ability to save and load evidence items from file
  • Evidence updates are now instant

Theming

  • Qt CSS is now fully exposed and customizable
  • Custom fonts and font sizes are now configurable by INI
    • Font antialiasing can be disabled for sharp bitmap fonts (such as Igiari)

System

Breaking Changes

  • All of your themes are probably very, very broken
    • If you try to load an old theme, your game will likely freeze due to undefined behavior laying out the evidence display.
  • Changed chat blip rate to 60 ms
    • (Supposedly, it is more faithful to the games, though I am sure that some of you will have trouble adjusting to it...)
  • }}} now displays text instantly
  • Assets that are smaller than the viewport are centered to screen and letterboxed
    • Nearest-neighbor filtering is only applied if the scaling factor is >= 2
  • Dropped support for AO1 desk filenames (bancodefensa, bancoacusacion, estrado)
  • Backgrounds no longer fall back on the default background
    • However, if a position background is missing, it falls back to wit position
  • Removed /rainbow among other cursed clientside commands
  • Messages with a char ID of -1 are now considered system messages
  • Changed HDID generator to improve cross-platform reliability

Vanilla

  • Fixed various character emotes/emote names
  • Fixed typos on music names
  • Some meme music may be gone. :( It'll be back soon.

Server

  • Because inline color syntax is fully customizable by the client, it's no longer possible to protect red text as an admin-only color. Please use the /lm command to speak in an official manner.

Fixes

  • Evidence should be less broken now
  • Fixed URLs in server descriptions not being clickable
  • Fixed macOS clients not getting a proper HDID
  • Fixed area and music list not clearing on server music updates
  • Fixed classic PNG sprites (e.g. VNO-style characters; those lacking (a)/(b) prefixes) not being loaded correctly
  • Fixed hardcoded duration in WT/CE/G/NG animations
  • Fixed hardcoded position of Witness Testimony indicator so it's not hardcoded to be always present on /pos wit
  • Fixed position not updating as forced by server
  • Fixed multibyte Unicode characters creating unknown characters as they print out
  • Fixed theme reloading breaking background sizing

Separate changelogs were made during the KFO development process. Though an effort was made to only include fixes of bugs from previous releases, some changelog items may be internal and not relevant.

KFO Client 2.8.0

  • Improve performance for switching characters and reloading theme
  • Fix reload_theme not reloading the evidence and emote button lists
  • Fix objections hiding the current character instead of overlaying the objection animation on top of the character (Franziska whip anim now actually hits characters, woooo!)
  • Fix mod "guard" button being a confusing mess - here's an explanation: when you do a successful /login, pressing the "guard" button will prevent the client window from flashing and making a sound when receiving modcalls.
  • Fix time=0 argument being required for character preanimations to work
  • Fix evidence appear animation being inconsistent with all other animations in AO2 and not scaling to theme properly
  • Fix an obscure issue where if the chat box is inside the viewport you would be unable to interact with it in any way (as in scroll up/down if the message is too long)
  • Fix an issue with pairing characters that could potentially overlay them on top of the chat box in some obscure cases
  • Fix lobby descriptions not parsing links for servers
  • Fix a message of ()()()() spamming idle/talking animations (instead it just does the idle animation until you feed it an actual non-blue symbol)

KFO Client 2.8.0.1

  • Prevent characters from being incorrectly resized if a different-scaled character speaks
  • Fix re-selecting your character breaking you
  • Fix selecting inaccessible characters breaking you
  • Fix background displaying itself even though the server didn't send us our supposed correct pos for it
  • Improve music/area fetching from server
  • Fix a possible segfault with emote lists if emote list size is bad
  • Hide casing button if server doesn't support casing
  • Fix the pos dropdown not actually caring if you selected jur and sea pos.
  • Fix the pos dropdown sending like a million packets when scrolled through and lagging the client
  • Fix character select screen letting you choose characters that the server doesn't want us to be

KFO Client 2.8.0.2

  • Fix music volume being weird due to m_volume being shared by ambience and music at the same time
  • Fix current charmovie breaking offsets
  • Fix the chat message hardcoding max colors to 8 (when it should be max_colors)
  • Fix /save_case iterating from last to first instead of first to last

KFO Client 2.8.0.3

  • Fix ~~{{ thing
  • Chat messages are now properly hidden when reload theme is pressed
  • Incorrectly sized sprites will no longer bug out
  • Fix missing unicode support for messages
  • Fix an issue with music looping
  • Fix some edge cases where the AOChar qlabel is moved around in weird ways (reload theme still puts qlabel at 0,0 without centering)
  • Fix a full message of speed 0 not properly displaying itself

KFO Client 2.8.0.4

No bug fixes relevant to 2.6.

KFO Client 2.8.0.5

  • Fix a crash with emote lists if emote list size is inadequate
  • Fix chat/ooc/name inputs having background (preventing themes from setting up their own)

KFO Client 2.8.1

  • Fix a bug where user would be unable to speak if the BG changed when someone else was speaking

KFO Client 2.8.2

  • Fixed the annoying crash that would end your life if there was a '.' anywhere in your filepath.
  • Fix a bug with area lists not working properly on other servers

KFO Client 2.8.3

  • Optimize the search for areas and music (previously, area search also searched for music in the background, causing lag with huge music lists)

2.8 release candidate

28 Jun 23:05
Compare
Choose a tag to compare
2.8 release candidate Pre-release
Pre-release

For testing only. See #160 for release status and https://hackmd.io/@oldmud0/H1fharK2L for draft of release notes.

Reunion

28 Jul 03:04
131792d
Compare
Choose a tag to compare

As the AO2 client reaches a turning point in its lifecycle, development has returned - at least for the time being.

New developers have arrived: @likeawindrammer, who revealed a serious bug in the client code; @cents02; and @vintprox. Other old faces are @Pyraqq, who is still too timid to make any changes; @stonedDiscord, who decided to take up some bug fixes for webAO; and @OmniTroid, who still pops in and out for random changes.

After months of disuse, the launcher will finally be placed on the website with this release.

A full refactoring of AO is underway - see the ui-files branch for progress.

Changes

  • Fixed a security vulnerability; see GHSA-7fpc-9xpq-pxq7
  • Fonts can now be customized with the theme - simply use widget_font = font_name
  • Linux builds no longer require BASS
  • Fixed relative path bug with evidence
  • Discord is now an optional dependency for building AO

fix

04 Jan 04:36
Compare
Choose a tag to compare
fix

What's New in 2.6.1

  • Added macOS support

Fixes

  • The base path is now determined from the executable's location instead of the working directory (for convenience)
  • Custom shownames is now true by default
  • Fixed blank server list when client is unexpectedly disconnected
  • Fixed various theme issues:
    • Fixed emotes list overflowing its allotted space
    • Fixed misplaced emote scroll buttons
    • Fixed areas with "looking for players" status being completely black
    • Added missing case announcement button
  • Fixed judge buttons not appearing
  • Fixed crash when disconnected from master server during play
  • Fixed being unable to use inline colours with the rainbow color selected
  • Fixed a bug where realization may play twice
  • Fixed a bug where sound effects overlap with each other
  • Fixed ban reason not displaying on join attempt
  • Fixed APNG preanimations not being found