- StripData count is now dword
- Added chars for bitmap and bitmap2 name
- ibm and ibm2 are now words
acrunch max structure was updated in commit 33420b0970728fde92292c525e588cfbdffd7373
Preferences have keys as defined in ht.h. These keys can be used to read/write preferences. Preferences are saved in a .json on the disk.
This is much easier to work with than the old presences binary structures as it doesn’t require preference versioning.
In 1dceae4cf0ea47df5ee8ab24ae2fde2644527c43 the in-game mute option was
ignored. This has been undone because players requested a mute sound
button added to options.
Clients can receive chats while in lobby state by having the shell form
present a HtMessageBox with the chat and the player is it from. This
feature was designed to be used with the moderator whisper command.
If the client is connected to multiplayer when the app is backgrounded,
that connection will be closed. If the app is reopened, a message will
be presented with the user informing them of the disconnection. Single
player games will be paused when entering background and resumed when
entering foreground.
Create the main thread via host rather than being a global variable in
base; this way, no base threads are created before the host runs main()
because that can cause issues on some platforms.
- Dictation reliable raises the handleAudioInterrupt notification, so that
is used for disabling / enabling audio
- Siri sometimes doesn't raise the handleAudioInterrupt notification, so
rely on applicationDidBecomeActive / applicationWillResignActive.
- Trial and error showed it is best to destroy and re-create the OS audio
objects when audio is disabled / enabled.