Loot Spawn Manager
About Loot Spawn Manager
Technical Game Designer | 8 Weeks | Solo
As part of my university assignment I had to create or re-create an existing feature or a tool based on a reference game. I have decided to choose DayZ and investigated its Central Loot Economy. The result was the creation of a Loot Spawn Manager in UE5 which is a tool for developers to distribute loot based on different categories and tags.
Reference Game Analysis

Before jumping into engine my task was to thoroughly analyze existing open world spawn systems and Central Loot Economy from DayZ in particular.


The research focused not only on the details of the system and its parameters but also the gameplay and play experience that this system allows for and encourages. I was able to share this research with the community and got positive feedback.


From my research, I was able to determine all the parameters that DayZ uses to determine what items need to be spawned and where. My next step would be to start the implementation following a similar approach.

Engine Research

As part of the assignment I was to experiment with Unreal's toolset to the optimal approach to the implementation. This led me from learning and using arrays to data tables and then to the in-built Gameplay Tag Manager system.


I have decided to use Unreal's Gameplay Tag Manager as a data base to store tags and parameters for the system to use when sorting items.

Implementation

The implementation consisted of setting up the GameplayTag Manager, item data base where each item gets its tag assigned, and the Loot Manager blueprint which sorts the items and places them in the correct locations on the map.


I have created a small top-down level to illustrate the main purpose of the tool which is to have items spawn based on their assigned location, rarity, or any other parameter.

Modularity

The project was set up in a way to allow quick addition of items, tags or categories of tags. I have created a HowTo document and a short tutorial video to explain how the system works and how it can be modified.

Project Conclusion & Reflection
As a developer, learning to experiment with various solutions (such as adopting a data table structure) showed me the importance of adaptability in game development. Embracing a flexible mindset allowed for quicker problem-solving and more efficient development. The ability to iterate on solutions even if it meant overhauling a project became a valuable skill to me.

My first solution rarely was the desired solution. Technically, I could’ve continued with any approach but I decided most were not modular enough, so I ended up using a data table and a GameplayTag Manager. This approach simplified the development a lot and allowed for an easier access to tags.

I have done extensive research on various parameters and variables that the CLE from DayZ uses but I did not find the actual logic behind choosing an item for spawning from any official sources. I ended up implementing a simple script that would choose everything at random order but would still spawn items in the correct locations.



This site was made on Tilda — a website builder that helps to create a website without any code
Create a website