YAProxy/config.cpp
smthspec 89f42a04b0 Initial commit: YAProxy house-proxy interaction framework (1.29)
Self-contained framework for attaching user actions to furniture proxies inside
house models. Detection via geometry-LOD selection scan (works on DayZ 1.29);
resolved proxy name + world position synced to server via ActionData. No
entities used for detection.

- modded House: geometry-LOD proxy position/name maps (client-side)
- YAProxyActionBase: cursor->proxy matching + sync + subclass hooks
- YAProxyActionData: client->server proxy target sync
- YAProxyDebug: validation action + per-house scan logging (DEBUG flag)

Credit: Zenarchist (ZenProxyFramework) and ShowMeInfoV2.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-19 09:45:23 +03:00

60 lines
1.5 KiB
C++

// ============================================================================
// @YAProxy - a lightweight DayZ house-proxy interaction framework (1.29+)
// ----------------------------------------------------------------------------
// Lets dependent mods attach user actions to furniture PROXIES baked into
// house p3d models (sinks, fridges, cabinets, ...), which are not separate
// entities. Detection uses the building's geometry-LOD selections; the
// targeted proxy's name + world position are synced to the server via the
// action's ActionData.
//
// Credit: technique adapted from Zenarchist's ZenProxyFramework (action API /
// position sync) and the ShowMeInfoV2 mod (geometry-LOD proxy enumeration that
// works on DayZ 1.29).
// ============================================================================
class CfgPatches
{
class YAProxy
{
units[] = {};
weapons[] = {};
requiredVersion = 0.1;
requiredAddons[] =
{
"DZ_Data",
"DZ_Scripts"
};
};
};
class CfgMods
{
class YAProxy
{
dir = "YAProxy";
picture = "";
action = "";
hideName = 1;
hidePicture = 1;
name = "YAProxy";
credits = "drasikas; technique from Zenarchist (ZenProxyFramework) & ShowMeInfoV2";
author = "drasikas";
authorID = "0";
version = "1.0";
extra = 0;
type = "mod";
dependencies[] = { "Game", "World" };
class defs
{
class gameScriptModule
{
value = "";
files[] = { "YAProxy/scripts/3_Game" };
};
class worldScriptModule
{
value = "";
files[] = { "YAProxy/scripts/4_World" };
};
};
};
};