载入中...
搜索中...
未找到
Domain-neutral, deterministic settlement pipeline. 更多...
#include "common/Export.h"#include "common/Result.h"#include "common/Identity.h"#include "common/Snapshot.h"#include "common/SubjectRef.h"#include "common/Time.h"#include "common/Value.h"#include "game_event/GameEvent.h"#include <cstddef>#include <cstdint>#include <functional>#include <optional>#include <span>#include <string>#include <string_view>#include <vector>类 | |
| struct | eve::settlement::SettlementRandomDecision |
| Caller-owned deterministic random decision recorded for replay and verification. 更多... | |
| struct | eve::settlement::SettlementChainContext |
| Bounded trigger-chain metadata carried by an owning settlement request. 更多... | |
| struct | eve::settlement::SettlementRequest |
| Domain-neutral input to one settlement operation. 更多... | |
| struct | eve::settlement::SettlementStageResult |
| Explanation emitted for one executed stage. 更多... | |
| struct | eve::settlement::SettlementResult |
| Complete observable outcome of one successful settlement. 更多... | |
| struct | eve::settlement::SettlementBatchItemResult |
| Indexed owning outcome for one independently committed settlement item. 更多... | |
| class | eve::settlement::PreparedApply |
| Prepared domain mutation used to make settlement application atomic. 更多... | |
| class | eve::settlement::SettlementContext |
| Mutable calculation frame visible to policy and custom stage code. 更多... | |
| class | eve::settlement::ISettlementPolicy |
| Domain-owned policy hooks used by the common settlement pipeline. 更多... | |
| class | eve::settlement::SettlementPipeline |
| Deterministically ordered, composable settlement pipeline. 更多... | |
命名空间 | |
| namespace | eve |
| Build metadata (engine git commit, build time, third-party version). | |
| namespace | eve::settlement |
枚举 | |
| enum class | eve::settlement::StageKind : std::uint8_t { eve::settlement::Validate , eve::settlement::Decision , eve::settlement::SourceModifiers , eve::settlement::TargetMitigation , eve::settlement::ArmorShield , eve::settlement::Clamp , eve::settlement::Apply , eve::settlement::Trigger , eve::settlement::Event } |
| Kind of ordered calculation stage in a settlement pipeline. 更多... | |
| enum class | eve::settlement::SettlementDisposition : std::uint8_t { eve::settlement::Applied , eve::settlement::NoOp , eve::settlement::Immune , eve::settlement::Resisted , eve::settlement::PartiallyApplied , eve::settlement::Blocked , eve::settlement::InvalidTarget } |
| Semantic outcome of a completed settlement, distinct from its numeric amount. 更多... | |
| enum class | eve::settlement::SettlementTraceLevel : std::uint8_t { eve::settlement::Off , eve::settlement::Summary , eve::settlement::Full } |
| Amount of stage explanation retained by one settlement request. 更多... | |
函数 | |
| const char * | eve::settlement::settlementDispositionName (SettlementDisposition disposition) noexcept |
| Return the stable lowercase spelling of a settlement disposition. | |
| const char * | eve::settlement::stageKindName (StageKind kind) noexcept |
| Return the stable lowercase spelling of a stage kind. | |
| eve::Result< void > | eve::settlement::validateSettlementRequest (const SettlementRequest &request) |
| Validate the canonical semantic invariants of a settlement request. | |
| EVENGINE_API_FOUNDATION eve::Result< std::string > | eve::settlement::settlementResultCanonicalJson (const SettlementResult &result) |
| Serialize the stable semantic fields of a settlement result as canonical JSON. | |
| EVENGINE_API_FOUNDATION eve::Result< eve::ContentId > | eve::settlement::settlementResultDigest (const SettlementResult &result, const eve::SnapshotHashProvider &hashProvider) |
| Hash the canonical semantic representation of a settlement result. | |
| EVENGINE_API_FOUNDATION eve::Result< std::vector< std::string > > | eve::settlement::verifySettlementResult (const SettlementResult &expected, const SettlementResult &actual) |
| Compare two settlement results and report stable field paths that differ. | |
| EVENGINE_API_FOUNDATION eve::Result< std::string > | eve::settlement::createSettlementReplayRecord (const SettlementRequest &request, eve::ContentId ruleDigest, const SettlementResult &result, const eve::SnapshotHashProvider &hashProvider) |
| Serialize one replayable request with its rule and expected-result identities. | |
| EVENGINE_API_FOUNDATION eve::Result< SettlementRequest > | eve::settlement::settlementReplayRequest (std::string_view recordJson) |
| Decode the request from a strict version-1 replay record. | |
| EVENGINE_API_FOUNDATION eve::Result< std::vector< std::string > > | eve::settlement::verifySettlementReplayRecord (std::string_view recordJson, eve::ContentId ruleDigest, const SettlementResult &actual, const eve::SnapshotHashProvider &hashProvider) |
| Verify current rules and outcome against a strict replay record. | |
详细描述
Domain-neutral, deterministic settlement pipeline.
Settlement owns the calculation protocol, not health, armor, shields or any other gameplay state. A policy adapter reads its domain state, stages a candidate mutation, and commits that candidate only after every stage has succeeded. RPG, Vehicle, Card and Weapon therefore remain independent domain roots while sharing one result and event contract.
在文件 Settlement.h 中定义.