From d50050b262d142eed8b61f58738884687f52440e Mon Sep 17 00:00:00 2001 From: Osmium Sorcerer Date: Mon, 16 Mar 2026 15:48:24 +0000 Subject: Delete obsolete and unused packets The following packets are unused and have no reason to have handlers: - CI: character information, unused and handled by SC. - EI: evidence information, unused and handled by LE. - EM: area and music information, handled by SM, and obsoleted by dedicated FA and FM. - MM: clientside toggle of whether a client is allowed to change music. The handler doesn't even do anything beyond acknowledging its existence. - RMC: plays a music track with an offset. Unused in practice, not present in AO2 Client. - ackMS: sent by the server to acknowledge an IC message, a relic from AO1. --- webAO/packets/handlers/handleCI.ts | 22 --------------------- webAO/packets/handlers/handleEI.ts | 26 ------------------------ webAO/packets/handlers/handleEM.ts | 37 ----------------------------------- webAO/packets/handlers/handleMM.ts | 7 ------- webAO/packets/handlers/handleRMC.ts | 24 ----------------------- webAO/packets/handlers/handleackMS.ts | 8 -------- 6 files changed, 124 deletions(-) delete mode 100644 webAO/packets/handlers/handleCI.ts delete mode 100644 webAO/packets/handlers/handleEI.ts delete mode 100644 webAO/packets/handlers/handleEM.ts delete mode 100644 webAO/packets/handlers/handleMM.ts delete mode 100644 webAO/packets/handlers/handleRMC.ts delete mode 100644 webAO/packets/handlers/handleackMS.ts (limited to 'webAO/packets/handlers') diff --git a/webAO/packets/handlers/handleCI.ts b/webAO/packets/handlers/handleCI.ts deleted file mode 100644 index c0cbd84..0000000 --- a/webAO/packets/handlers/handleCI.ts +++ /dev/null @@ -1,22 +0,0 @@ -import { client } from "../../client"; -import { handleCharacterInfo } from "../../client/handleCharacterInfo"; -/** - * Handles incoming character information, bundling multiple characters - * per packet. - * CI#0#Phoenix&description&&&&#Miles ... - * @param {Array} args packet arguments - */ -export const handleCI = (args: string[]) => { - // Loop through the 10 characters that were sent - document.getElementById("client_loadingtext")!.innerHTML = - `Loading Character ${args[1]}/${client.char_list_length}`; - for (let i = 2; i <= args.length - 2; i++) { - if (i % 2 === 0) { - const chargs = args[i].split("&"); - const charid = Number(args[i - 1]); - setTimeout(() => handleCharacterInfo(chargs, charid), 500); - } - } - // Request the next pack - client.sender.sendServer(`AN#${Number(args[1]) / 10 + 1}#%`); -}; diff --git a/webAO/packets/handlers/handleEI.ts b/webAO/packets/handlers/handleEI.ts deleted file mode 100644 index 3d15766..0000000 --- a/webAO/packets/handlers/handleEI.ts +++ /dev/null @@ -1,26 +0,0 @@ -import { client } from "../../client"; -import { AO_HOST } from "../../client/aoHost"; -import { prepChat } from "../../encoding"; - -/** - * Handles incoming evidence information, containing only one evidence - * item per packet. - * - * EI#id#name&description&type&image&##% - * - * @param {Array} args packet arguments - */ -export const handleEI = (args: string[]) => { - document.getElementById("client_loadingtext")!.innerHTML = - `Loading Evidence ${args[1]}/${client.evidence_list_length}`; - const evidenceID = Number(args[1]); - const arg = args[2].split("&"); - client.evidences[evidenceID] = { - name: prepChat(arg[0]), - desc: prepChat(arg[1]), - filename: arg[3], - icon: `${AO_HOST}evidence/${encodeURI(arg[3].toLowerCase())}`, - }; - - client.sender.sendServer("AE" + (evidenceID + 1) + "#%"); -}; diff --git a/webAO/packets/handlers/handleEM.ts b/webAO/packets/handlers/handleEM.ts deleted file mode 100644 index b3947dd..0000000 --- a/webAO/packets/handlers/handleEM.ts +++ /dev/null @@ -1,37 +0,0 @@ -import { client } from "../../client"; -import { addTrack } from "../../client/addTrack"; -import { createArea } from "../../client/createArea"; -import { fix_last_area } from "../../client/fixLastArea"; -import { isAudio } from "../../client/isAudio"; - -/** - * Handles incoming music information, containing multiple entries - * per packet. - * @param {Array} args packet arguments - */ -export const handleEM = (args: string[]) => { - document.getElementById("client_loadingtext")!.innerHTML = "Loading Music"; - if (args[1] === "0") { - client.resetMusicList(); - client.resetAreaList(); - client.musics_time = false; - } - - for (let i = 2; i < args.length - 1; i++) { - if (i % 2 === 0) { - const trackname = args[i]; - const trackindex = Number(args[i - 1]); - if (client.musics_time) { - addTrack(trackname); - } else if (isAudio(trackname)) { - client.musics_time = true; - fix_last_area(); - addTrack(trackname); - } else { - createArea(trackindex, trackname); - } - } - } - // get the next batch of tracks - client.sender.sendServer(`AM#${Number(args[1]) / 10 + 1}#%`); -}; diff --git a/webAO/packets/handlers/handleMM.ts b/webAO/packets/handlers/handleMM.ts deleted file mode 100644 index 2542ab1..0000000 --- a/webAO/packets/handlers/handleMM.ts +++ /dev/null @@ -1,7 +0,0 @@ -/** - * Handles the "MusicMode" packet - * @param {Array} args packet arguments - */ -export const handleMM = (_args: string[]) => { - // It's unused nowadays, as preventing people from changing the music is now serverside -}; diff --git a/webAO/packets/handlers/handleRMC.ts b/webAO/packets/handlers/handleRMC.ts deleted file mode 100644 index 0cc6aa7..0000000 --- a/webAO/packets/handlers/handleRMC.ts +++ /dev/null @@ -1,24 +0,0 @@ -import { client } from "../../client"; -// TODO BUG: -// this.viewport.music is an array. Therefore you must access elements -/** - * Handles a music change to an arbitrary resource, with an offset in seconds. - * @param {Array} args packet arguments - */ -export const handleRMC = (args: string[]) => { - client.viewport.music.pause(); - const { music } = client.viewport; - // Music offset + drift from song loading - music.totime = args[1]; - music.offset = new Date().getTime() / 1000; - music.addEventListener( - "loadedmetadata", - () => { - music.currentTime += parseFloat( - music.totime + (new Date().getTime() / 1000 - music.offset), - ).toFixed(3); - music.play().catch(() => {}); - }, - false, - ); -}; diff --git a/webAO/packets/handlers/handleackMS.ts b/webAO/packets/handlers/handleackMS.ts deleted file mode 100644 index 2bb7460..0000000 --- a/webAO/packets/handlers/handleackMS.ts +++ /dev/null @@ -1,8 +0,0 @@ -import { resetICParams } from "../../client/resetICParams"; - -/** - * server got our message - */ -export const handleackMS = () => { - resetICParams(); -}; -- cgit