Files
open-wc/docs/CLIENT_FEATURES.md

6.8 KiB
Raw Permalink Blame History

Карта функций клиента WoW 3.3.5a

Назначение

Это coverage map, а не обещание реализовать всё одновременно. Для каждой строки в будущем ведутся статусы Not started, Research, Prototype, Playable, Compatible, Verified и ссылки на issue/spec/tests.

Platform и данные

  • MPQ archive chain, locale и patch precedence.
  • BLP, DBC, DB2 при расширении профиля, WDT/WDL/ADT, M2/SKIN, WMO, animation, particles, ribbons, cameras.
  • Cache/versioning, import diagnostics, missing/corrupt asset policy.
  • Typed DBC access: maps, areas, races, classes, characters, items, creatures, spells, talents, factions, sounds, liquids, lights, maps and taxi.
  • Settings, keybindings, locale, screenshots, logs, crash recovery и accessibility options.

World presentation

  • Terrain layers, alpha maps, holes, normals, LOD и distant terrain.
  • WMO groups, doodads, portals/rooms, indoor/outdoor state и collision.
  • M2 static/animated models, attachments, billboards, particles, ribbons и material combiners.
  • MH2O/MCLQ water, ocean, lava, slime и shore/depth behavior.
  • Sky, day/night, fog, zone lighting, weather и selective shadows.
  • World streaming, preload/retention, occlusion, render budgets и deterministic checkpoints.

Character presentation

  • Race/gender/body customization и character creation preview.
  • Skin/hair/face/facial hair/geosets.
  • Equipment textures, component models, enchant visuals, sheathe/unsheathe и attachments.
  • Animation selection, blending, emotes, combat, cast, death, swim, fly, mount и vehicle.
  • Creature display/model data, NPC equipment, pets, guardians и shapeshift.

Connection и world synchronization

  • SRP authentication, realm list, world auth, reconnect и disconnect reasons.
  • Encrypted framing, compressed packets, opcode dispatch и packet tracing.
  • Character enum/create/delete/rename/login/logout.
  • Packed GUIDs, update fields, create/update/out-of-range/destroy.
  • Movement flags, heartbeat, jump/fall/swim/fly, transports, knockback и spline movement.
  • Server time, tutorial flags, account data и feature capability detection.
  • Warden handshake/module compatibility для явно поддерживаемых test/private server profiles с sandbox и без ориентации на official servers.

Player и camera

  • Remappable actions вместо hardcoded keys.
  • Walk/run/backpedal/strafe/jump/fall/swim/fly и autorun.
  • Click-to-move как отдельная опциональная policy.
  • Camera orbit, zoom, collision, first-person limit и follow policies.
  • Client prediction, server correction, transport-relative movement и latency telemetry.
  • Selection, interaction range, facing и line-of-sight feedback.

Combat, spells и progression

  • Auto attack, attack stop, combat state, damage/heal/miss/immune feedback.
  • Spellbook, ranks, cast/channel, interruption, cooldown, global cooldown, range и resources.
  • Auras, stacks, durations, dispels, proc presentation и diminishing returns display.
  • Death, ghost, corpse, resurrection, durability и repair.
  • XP, level, rested XP, reputation, honor, arena и achievements.
  • Talents, glyphs, skills, professions, recipes и training.

Items и economy

  • Bags, bank, keyring, equipment, ammo, currencies и item cooldowns.
  • Loot, roll, master loot, disenchant и bind confirmations.
  • Vendors, buyback, repair, trainer и gossip services.
  • Trade, mail, auction house, guild bank и item links/tooltips.
  • Enchanting, sockets/gems, random properties и item sets.

Quests и world activities

  • Availability, accept, abandon, track, progress, complete и reward choice.
  • Kill, collect, interact, explore, escort, timed, reputation и spell objectives.
  • Chains, prerequisites, exclusivity, repeatable/daily/weekly и phased conditions.
  • Gossip/dialogue, scripted events, gameobjects, transports и taxi.
  • World map, minimap, exploration, POI, quest indicators и instance maps.

Groups, social и PvP

  • Party, raid, roles, ready check, raid targets и loot rules.
  • Friends, ignore, who, guild, channels, whispers и chat moderation feedback.
  • Duels, PvP flags, battlegrounds, arenas, scores, queues и resurrection flow.
  • LFG/Dungeon Finder, proposal, teleport, vote kick и rewards.

Instances и cinematics

  • Dungeon/raid entry, difficulty, lockouts, encounter states и reset.
  • Doors, triggers, boss frames, instance messages и saved state presentation.
  • Vehicles, multi-passenger seats и possession UI.
  • Cinematics, camera sequences, movies, loading screens и transitions.

UI, Lua и addons

  • Login, legal/realm/character creation/selection/loading screens.
  • HUD: unit frames, target/focus, action bars, buffs, cast bars, bags, quest tracking, chat и combat text.
  • FrameXML: templates, inheritance, anchors, strata, layers, scripts и events.
  • Lua 5.1-compatible API surface, secure boundaries, SavedVariables и addon lifecycle.
  • Заменяемый Lua 5.1.1 backend; rilua и PUC-Rio проходят единый WoW-specific compatibility corpus до выбора production VM.
  • Widgets: Frame, Button, CheckButton, EditBox, Slider, StatusBar, ScrollFrame, Tooltip, Cooldown, Model, Texture, FontString, Minimap.
  • Macro conditionals, keybindings, slash commands, localization и UI scaling.

Audio

  • Zone/day/night music и crossfade.
  • Ambience, weather и indoor/outdoor transitions.
  • Positional world sounds, spell/combat/footstep/foley/voice и UI sounds.
  • Cache/streaming, device selection, category volumes и mute-on-focus policy.

Authoring coverage

  • Terrain sculpt/paint/holes/liquids и tile lifecycle.
  • M2/WMO placement, transforms, unique IDs и doodad sets.
  • Creature/gameobject templates, spawns, groups, paths и equipment.
  • Quests, gossip, conditions, loot, vendors, trainers и localization.
  • Zones, areas, graveyards, teleports, taxi, triggers и phase rules.
  • Dungeon packages, encounters, doors, bosses, scripts и validation.
  • Navigation authoring: walkability overlay, reachability, patrol/escort validation, off-mesh links и dynamic doors; optional recast-rs backend.
  • Import, diff, package, SQL/change-set generation, dev deployment и playtest.

Требование к расширяемости

Каждая функция должна быть модифицируема заменой data/config, policy или adapter до изменения core-кода. Если это невозможно, extension point и причина ограничения документируются. Пользовательские override-пакеты имеют явный приоритет, зависимости и совместимость; молчаливое изменение оригинальных данных запрещено.