{"service":"HALOWERK gamingwerk","version":"1.0.0","currency":"USDC","network":"eip155:8453","network_name":"Base Mainnet","recipient":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E","payment_header":"PAYMENT-SIGNATURE","endpoints":[{"method":"POST","path":"/v1/npc-dialogue-gen","url":"https://gaming.halowerk.com/v1/npc-dialogue-gen","tool":"gamingwerk_npc_dialogue_gen","price_usdc":0.003,"price_model":"per_call","summary":"Composes a reproducible NPC dialogue beat from structured facts, intent, and tone.","description":"Selects and fills a small declared dialogue template using a caller-supplied seed, NPC name, intent, tone, and facts. It produces a reproducible writing prompt, not model-generated prose, lore verification, localization, or a complete conversation system.","input_schema":{"type":"object","required":["seed","npc_name","player_name","intent","tone","facts"],"additionalProperties":false,"properties":{"seed":{"type":"string","minLength":1,"maxLength":256,"description":"Stable seed used only for deterministic template selection."},"npc_name":{"type":"string","minLength":1,"maxLength":128},"player_name":{"type":"string","minLength":1,"maxLength":128},"intent":{"type":"string","enum":["greet","warn","offer_quest","trade","refuse"]},"tone":{"type":"string","enum":["warm","formal","wary","urgent","dry"]},"facts":{"type":"array","minItems":1,"maxItems":20,"items":{"type":"string","minLength":1,"maxLength":512,"description":"A fact that may be surfaced verbatim."}}}},"needs_history":false,"payment_required":true},{"method":"POST","path":"/v1/asset-procedural","url":"https://gaming.halowerk.com/v1/asset-procedural","tool":"gamingwerk_asset_procedural","price_usdc":0.003,"price_model":"per_call","summary":"Creates a reproducible parametric specification for a simple game asset.","description":"Maps a seed and asset category to declared silhouette, material, palette, symmetry, and detail parameters. The result is a machine-readable design specification only; it does not render geometry, textures, animation, or production-ready art.","input_schema":{"type":"object","required":["seed","asset_type","complexity"],"additionalProperties":false,"properties":{"seed":{"type":"string","minLength":1,"maxLength":256},"asset_type":{"type":"string","enum":["prop","vehicle","creature","building","weapon"]},"complexity":{"type":"integer","minimum":1,"maximum":10},"palette":{"type":"array","minItems":1,"maxItems":8,"uniqueItems":true,"items":{"type":"string","pattern":"^#[0-9a-fA-F]{6}$"}}}},"needs_history":false,"payment_required":true},{"method":"POST","path":"/v1/economy-sink-sim","url":"https://gaming.halowerk.com/v1/economy-sink-sim","tool":"gamingwerk_economy_sink_sim","price_usdc":0.004,"price_model":"per_call","summary":"Simulates a game-currency supply under declared daily sources and sinks.","description":"Iterates a deterministic daily stock-flow model with a fixed source, fixed sinks, and percentage-of-current-supply sinks. It clamps supply at zero and reports each day; it does not model player adaptation, market prices, distribution, or causal behavior.","input_schema":{"type":"object","required":["starting_supply","days","daily_source","sinks"],"additionalProperties":false,"properties":{"starting_supply":{"type":"number","minimum":0,"maximum":1000000000000000000},"days":{"type":"integer","minimum":1,"maximum":365},"daily_source":{"type":"number","minimum":0,"maximum":1000000000000000},"source_daily_growth_percent":{"type":"number","minimum":-100,"maximum":1000},"sinks":{"type":"array","minItems":1,"maxItems":100,"items":{"type":"object","required":["sink_id","fixed_daily_amount","daily_supply_percent"],"additionalProperties":false,"properties":{"sink_id":{"type":"string","minLength":1,"maxLength":128},"fixed_daily_amount":{"type":"number","minimum":0,"maximum":1000000000000000},"daily_supply_percent":{"type":"number","minimum":0,"maximum":100}}}}}},"needs_history":false,"payment_required":true},{"method":"POST","path":"/v1/matchmaking-mmr","url":"https://gaming.halowerk.com/v1/matchmaking-mmr","tool":"gamingwerk_matchmaking_mmr","price_usdc":0.003,"price_model":"per_call","summary":"Forms reproducible two-player matches under rating-gap and latency limits.","description":"Enumerates feasible player pairs, ranks them by rating gap then worst latency, and greedily selects disjoint pairs. This is a transparent local pairing heuristic, not globally optimal team balancing, skill inference, anti-smurfing, or a live queue service.","input_schema":{"type":"object","required":["players","max_rating_gap","max_latency_ms"],"additionalProperties":false,"properties":{"players":{"type":"array","minItems":2,"maxItems":500,"items":{"type":"object","required":["player_id","rating","rating_uncertainty","latency_ms"],"additionalProperties":false,"properties":{"player_id":{"type":"string","minLength":1,"maxLength":128},"rating":{"type":"number","minimum":0,"maximum":10000},"rating_uncertainty":{"type":"number","minimum":0,"maximum":5000},"latency_ms":{"type":"number","minimum":0,"maximum":100000}}}},"max_rating_gap":{"type":"number","minimum":0,"maximum":10000},"max_latency_ms":{"type":"number","minimum":0,"maximum":100000}}},"needs_history":false,"payment_required":true},{"method":"POST","path":"/v1/anti-cheat-scan","url":"https://gaming.halowerk.com/v1/anti-cheat-scan","tool":"gamingwerk_anti_cheat_scan","price_usdc":0.004,"price_model":"per_call","summary":"Screens gameplay telemetry for explicit impossible or extreme measurements.","description":"Evaluates caller-supplied telemetry samples against declared reaction-time, actions-per-second, movement-speed, and impossible-event rules. Flags are review signals only; the service does not identify software, inspect a device, establish intent, or justify an automatic ban.","input_schema":{"type":"object","required":["samples","minimum_human_reaction_ms","maximum_actions_per_second","speed_tolerance_percent","review_rule_count"],"additionalProperties":false,"properties":{"samples":{"type":"array","minItems":1,"maxItems":50000,"items":{"type":"object","required":["sample_id","reaction_ms","actions_per_second","observed_speed","permitted_speed","impossible_event"],"additionalProperties":false,"properties":{"sample_id":{"type":"string","minLength":1,"maxLength":128},"reaction_ms":{"type":"number","minimum":0,"maximum":600000},"actions_per_second":{"type":"number","minimum":0,"maximum":10000},"observed_speed":{"type":"number","minimum":0,"maximum":1000000000},"permitted_speed":{"type":"number","minimum":0,"maximum":1000000000},"impossible_event":{"type":"boolean"}}}},"minimum_human_reaction_ms":{"type":"number","minimum":0,"maximum":1000},"maximum_actions_per_second":{"type":"number","minimum":0,"maximum":10000},"speed_tolerance_percent":{"type":"number","minimum":0,"maximum":1000},"review_rule_count":{"type":"integer","minimum":1,"maximum":4}}},"needs_history":false,"payment_required":true},{"method":"POST","path":"/v1/nft-metadata-mutate","url":"https://gaming.halowerk.com/v1/nft-metadata-mutate","tool":"gamingwerk_nft_metadata_mutate","price_usdc":0.003,"price_model":"per_call","summary":"Applies a reproducible patch to structured asset metadata and hashes the result.","description":"Applies ordered set/remove attribute and set name/description operations to caller-supplied metadata, then hashes canonical output. It does not mint, sign, upload, mutate an on-chain token, preserve media, or verify ownership.","input_schema":{"type":"object","required":["asset_id","metadata","operations"],"additionalProperties":false,"properties":{"asset_id":{"type":"string","minLength":1,"maxLength":256},"metadata":{"type":"object","required":["name","description","attributes"],"additionalProperties":false,"properties":{"name":{"type":"string","minLength":1,"maxLength":256},"description":{"type":"string","minLength":0,"maxLength":4096},"attributes":{"type":"array","maxItems":1000,"items":{"type":"object","required":["key","value"],"additionalProperties":false,"properties":{"key":{"type":"string","minLength":1,"maxLength":128},"value":{"type":["string","number","boolean","null"]}}}}}},"operations":{"type":"array","minItems":1,"maxItems":1000,"items":{"type":"object","required":["op"],"additionalProperties":false,"properties":{"op":{"type":"string","enum":["set_attribute","remove_attribute","set_name","set_description"]},"key":{"type":"string","minLength":1,"maxLength":128},"value":{"type":["string","number","boolean","null"]}}}}}},"needs_history":false,"payment_required":true},{"method":"POST","path":"/v1/gacha-rng-verify","url":"https://gaming.halowerk.com/v1/gacha-rng-verify","tool":"gamingwerk_gacha_rng_verify","price_usdc":0.004,"price_model":"per_call","summary":"Compares supplied gacha outcomes with declared probabilities using a chi-square test.","description":"Counts supplied outcomes, computes Pearson’s chi-square statistic, and estimates an upper-tail p-value with the Wilson-Hilferty normal approximation. It tests aggregate frequencies only; it cannot prove draw independence, seed fairness, code integrity, or manipulation, especially when expected counts are small.","input_schema":{"type":"object","required":["outcomes","draws"],"additionalProperties":false,"properties":{"outcomes":{"type":"array","minItems":2,"maxItems":100,"items":{"type":"object","required":["outcome","probability"],"additionalProperties":false,"properties":{"outcome":{"type":"string","minLength":1,"maxLength":128},"probability":{"type":"number","minimum":1e-9,"maximum":1}}}},"draws":{"type":"array","minItems":10,"maxItems":100000,"items":{"type":"string","minLength":1,"maxLength":128}},"alpha":{"type":"number","minimum":0.000001,"maximum":0.5}}},"needs_history":false,"payment_required":true},{"method":"POST","path":"/v1/quest-generation","url":"https://gaming.halowerk.com/v1/quest-generation","tool":"gamingwerk_quest_generation","price_usdc":0.003,"price_model":"per_call","summary":"Builds a reproducible structured quest outline from theme and constraints.","description":"Selects objective framing, complication, and reward language from declared templates using a caller seed. It returns a bounded quest outline, not model-authored narrative, encounter balancing, unique lore, scripting, or playable content.","input_schema":{"type":"object","required":["seed","theme","location","target","difficulty","reward_unit","reward_base"],"additionalProperties":false,"properties":{"seed":{"type":"string","minLength":1,"maxLength":256},"theme":{"type":"string","minLength":1,"maxLength":128},"location":{"type":"string","minLength":1,"maxLength":128},"target":{"type":"string","minLength":1,"maxLength":128},"difficulty":{"type":"integer","minimum":1,"maximum":10},"reward_unit":{"type":"string","minLength":1,"maxLength":64},"reward_base":{"type":"number","minimum":0,"maximum":1000000000000}}},"needs_history":false,"payment_required":true},{"method":"POST","path":"/v1/cross-game-bridge","url":"https://gaming.halowerk.com/v1/cross-game-bridge","tool":"gamingwerk_cross_game_bridge","price_usdc":0.004,"price_model":"per_call","summary":"Maps bounded asset attributes between game schemas using explicit caller rules.","description":"Applies caller-supplied rename and numeric scale/offset rules to scalar attributes, optionally retaining unmapped fields, then hashes the canonical mapped payload. It does not transfer ownership, call a chain, validate either game, preserve semantics, or authorize asset use.","input_schema":{"type":"object","required":["source_game","target_game","asset_id","attributes","mappings","retain_unmapped"],"additionalProperties":false,"properties":{"source_game":{"type":"string","minLength":1,"maxLength":128},"target_game":{"type":"string","minLength":1,"maxLength":128},"asset_id":{"type":"string","minLength":1,"maxLength":256},"attributes":{"type":"array","maxItems":1000,"items":{"type":"object","required":["key","value"],"additionalProperties":false,"properties":{"key":{"type":"string","minLength":1,"maxLength":128},"value":{"type":["string","number","boolean","null"]}}}},"mappings":{"type":"array","maxItems":1000,"items":{"type":"object","required":["source_key","target_key"],"additionalProperties":false,"properties":{"source_key":{"type":"string","minLength":1,"maxLength":128},"target_key":{"type":"string","minLength":1,"maxLength":128},"numeric_scale":{"type":"number","minimum":-1000000000,"maximum":1000000000},"numeric_offset":{"type":"number","minimum":-1000000000000,"maximum":1000000000000}}}},"retain_unmapped":{"type":"boolean"}}},"needs_history":false,"payment_required":true},{"method":"POST","path":"/v1/player-churn-risk","url":"https://gaming.halowerk.com/v1/player-churn-risk","tool":"gamingwerk_player_churn_risk","price_usdc":0.003,"price_model":"per_call","summary":"Scores a supplied aggregate engagement profile with a transparent churn-risk heuristic.","description":"Applies fixed coefficients to recency, session trend, playtime, support tickets, and recent purchases. It is an untrained scenario score, not an individualized prediction, psychological profile, causal model, or recommendation for manipulative retention.","input_schema":{"type":"object","required":["player_id","days_since_last_session","sessions_last_30_days","sessions_previous_30_days","average_session_minutes","support_tickets_last_30_days","purchases_last_90_days"],"additionalProperties":false,"properties":{"player_id":{"type":"string","minLength":1,"maxLength":128},"days_since_last_session":{"type":"number","minimum":0,"maximum":3650},"sessions_last_30_days":{"type":"integer","minimum":0,"maximum":10000},"sessions_previous_30_days":{"type":"integer","minimum":0,"maximum":10000},"average_session_minutes":{"type":"number","minimum":0,"maximum":1440},"support_tickets_last_30_days":{"type":"integer","minimum":0,"maximum":1000},"purchases_last_90_days":{"type":"integer","minimum":0,"maximum":10000}}},"needs_history":false,"payment_required":true}],"updated_at":"2026-08-31T21:58:41.349Z"}