Skip to content

feat: Multiple Vendors and Manufacturers #5

@mleem97

Description

@mleem97

Problem Statement

To replicate the real-world challenge in DCIM of finding the best price-to-performance ratio for hardware, a dynamic market system will be integrated. The player will not simply buy from a monotonous global catalog, but rather interact with different vendors selling components from various manufacturers. Dynamic pricing and regular sales events will encourage the player to shop strategically.

Proposed Solution

Vendor & Manufacturer System: * 3 to 4 independent vendors exist in the game.

Items (servers, switches, etc.) are assigned to specific fictional manufacturers.

Inventory & Specialization: Vendors can carry the same inventory or specialize in specific manufacturers/categories (e.g., Vendor A is a premium partner for Manufacturer X).

Dynamic Pricing (Sales Events):

A system generates sales at random intervals (e.g., every X in-game days).

Discounts are applied to individual items, specific manufacturers, or entire categories for a specific vendor.

Sales have a clearly communicated, limited duration.

User Interface (UI): * An intuitive shop interface allows for quick switching between vendors.

Active discounts and the manufacturer of a component are visually distinct and highlighted.

Technical Notes:

Data Structure: Hardware items require metadata for Manufacturer and a BasePrice. The shop logic calculates the final price via CurrentPrice = BasePrice * VendorModifier.

Event System: A timer tracks the sales phases, updates the shop UI, and resets the modifiers once the sale ends.

Scope

"As a player, I want access to 3 to 4 different online stores offering hardware from various manufacturers. These stores should run sales at random intervals so I can compare prices and find the best deals for my data center."

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions