Darktale's Territory Warfare

Forge your faction, build powerful cities, and conquer your enemies. Customize faction ranks, place unique structures that buff your cities, and dominate the world through an immersive siege system designed for total territory control.

image

Darktale's Territory Warfare ⚔️

Overview

This plugin provides a unique gameplay addition to the Vanilla experince of Hytale that provides ongoing experiences. The plugin contains 3 systems: Faction Management, City Building, and Territorial Warfare (Sieges).

Core Systems

Faction Management

Factions are the core in all the other systems, so in order for us to give the player the maximum freedom of making their factions the way the like it, we have dedicated the implementation to revolve around customization

What we offer

The Custom Factions UI gives you access to multiple different management tabs:

Faction Finder, where you see all the factions and settle diplomacy image My Faction, where you manage your faction details image

Rank Customizations

image image and many more management tabs…

City Building

City creation is possible once you create or join a faction. In cities you can set various permissions for your members. Allies are able to interact with doors and beds (no benches or chests), and PvP is enabled


That's not all! Inside cities you are able to create Structures, which are unique prefab buildings that give various buffs to your city and members

Creating a City

To create a city you need to craft a Bindstone with 10 Building Modules, which can be crafted from the Structure's Workbench, a pocket craftable bench

image

The Bindstone then needs to be placed in unclaimed territory

Map Preview when bindstone is placed image BindstoneClaim UI image Claimed City in Map image

Creating Structures in Cities

Once you have your first city built, you are able to place structures inside them using the Structure Builder Tool

Builder Tool with it's Legend image Structure List UI image image Once you select a structure, you are in build mode (Fake Creative), where you can preview the prefab, similar to Builder Tool's Paste Prefab Feature. image Once Placed, you can right click on the structure to view it's information image Note: some structures give you access to bonus chunks that you can use to expand your territory in the bindstone page image

Territory Warfare (Sieges)

Sieges act as the closing loop of this plugin, where it gives the players the possibility to claim other faction's cities. The reasons for this can be: valuable structures, important POIs nearby, as well as for the fun of it!

Unlocking Sieges

To begin your area of conquering, you first need to construct a siege workshop, which gives you access to a custom siege workbench

Siege Workbench inside the Siege Workshop Structure image

Inside the workbench, you have access to Siege Weapons, Ammo, Blocks and Siege Modules

Bomb Ammo, The basic version that can be used in cannons, or thrown. image

Facts: The Tracked Explosion

Since the whole point of territory warfare is to have as many attacker factions battling it out with one another to conquer the city, it was necessary to track the damages each do. However a challenge occured when we had to work with Explosion, since as of now explosions cant be tracked to the player, so we had to make these custom bomb explode interactions that would require us to calculate the radius of the explosion and see if structures got hit or not (explosion trigger global DamageBlockEvent so we didnt have data to manipulate on that phase).

Another problem we had was the various different paricipants that needed to do different damages based on who is shooting, what and where. The way we tacked it was by wrapping the projectileconfig so we could modify the block and entity damages. But since you can only change one damage modifier (EntityDamage), we had to come up with a sneaky solution of triggering explosion twice but with different values (one where entity damage is disabled, and the other block damage is disabled) whenever we had different damage values.

First of many upcoming siege weapons, The Cannon image

The Cannon

I wanted to put some time to show the how the Cannon has been created. It is an NPC which can be interacted and mounted on, and all interactions play around the NPC system (animations, attack, states). It was a fun twist I manage to do to utilize what Hytale has offered and test the limits of what we can do with it.

The counterpart of the Bindstone that can be used to initiate sieges on enemy factions, The Siegestone image The defensive block that is placeable only during sieges, that is tougher than normal blocks and dissapears after the siege ends, The Reinforced Wall image The core ingredient in Siege Weaponry, The Siege Module image

Initiating Sieges

To initiate siege on your opponents, you have to place a siegestone within 20 chunks of the city that you plan to attack. Once in place you are shown in the UI the list of nearby enemy cities, as well as their cost to siege (derived by the building cost of all their structures)

Initiate Siege UI image Once you initiate the Siege for your faction, you must join it to be considered an attacker image Once you join a siege the most recent participation out of all the active sieges you are participating in, will be shown in the HUD, as well as the HP of your Siegestone/Bindstone image

Siege Phase: Preparing


This phase acts like the setting up before the big fight. During this phase you can toughen up your defenses with the Reinforced Walls, as well as setup siege weapons for attacking

Reinforced Walls are most effective when placed during preparing phase. image

In addition to preparing your defensive, this phase should be used to also scout for the attacker siegestone's because during preparing phase, siegestone chunks are invisible to everyone beside the faction members

The marker is shown only to faction members image

Structure and Block damage is reduced during this phase, however damage to players is not, so this is an ideal time to weaken attacker/defenders

Siege Phase: Active

This phase acts unlocks siegestone location's and enables objective damage (Siegestone/Bindstone)

Location of siegestone's is now highlighted image

During this phase attackers/defenders do full damage to structures/players, while non-participants do reduced damage


When player's are within 5 chunk distance of the objective, the health of the objective will be visible in the HUD

If multiple objectives are in range, they all will be listed on the right side image

Whoever destroys their objective first, wins the siege. If none do by the time the siege ends, the defenders will be declared the winners.

However if attackers win, if the city is within claiming range, it will be auto-claimed and owned by them

Siege War tab during an active siege image

Siege Phase: End

This phase acts concludes the siege, and determines the winner. Once the winner is determined, the wager will be distributed to their war balance. If defenders win, they get all the wagers that the attacker placed for the siege, if the attackers win they earn 50% of their wager back

War Balance displayed (Currently it's Void Essence, but will be changed to gold) which can be retrieved with command /faction claim-wager image

In Conclusion

This is a project that I've been working for almost 3 months now, and it has been an incredible journey of learning Hytale as a product, as well as testing it's capabilities, This system is one of many integrated systems that I plan to implement in Darktale, which is a full-loot PvP server with lots of potential

Disclaimers

Because I have made the plugin to use a centralized database that is shared accross multiple regional servers for cross-server interactions, providing it as a standalone plugin is difficult. So during the time the Mod Contest is up, I plan to roll the feature out in a public test server (ip: eu.darktale.org:6520) so I can get your guys opinion. If this make's my plugin not proper for the mod contest it's understandable, I'm grateful for the oppertunities I got

Credits

The builders behind the structure prefabs: The Architect and FallenFae


The modeler behind the Vault,Siegestone and Bindstone models: aSoulTaken


The idea guy and tester: Kotic


The developer and modeler of the rest of the models: AmTekken (Me :P)

The Darktale's Territory Warfare Team

profile avatar
  • 1
    Projects
  • 51
    Downloads