- Joined
- Jun 10, 2015
- Messages
- 54
- Reaction score
- 100
- Points
- 0
As mentioned in my thread on having a reason to raid, I'm losing people I've invited to MassiveCraft because they see no reason to raid. This thread is my proposal for a plugin, to which I am giving the working name MassiveRaid.
This proposal is meant to be a straw man, which can be thorough beaten, abused, or set fire to without me being offended in the slightest. I hope you'll give feedback, correct me where I might have strayed, and show your support of the overall concept (if indeed you do support it) by sharing it with like-minded people and by giving this post a Like.
Goal
Create a gameplay experience that:
1. Gives players a reason to raid, an in-game benefit they can receive from doing so to help offset the obvious risks.
2. Gives players a reason to fear being raided, thus encouraging mutual defense pacts, hiring protection, or surrendering when appropriate.
3. Constrains the damage that a raided faction receives to the point that raided factions won't be driven from the server.
Overview
The MassiveRaid plugin identifies when a player (raiding faction) enters a chunk claimed by a faction to which they are enemied (defending faction). If at least one member of the defending faction is online, a SetRaid event is triggered, which captures who is raiding whom along with the time the raid started and the number of defenders online. A broadcast is also sent (e.g. "Afrovia is raiding SteelOath at <chunk coordinates>!", configurable to be sent to just the involved factions, the involved factions and their allies, or the entire server). Lastly, the /dynmap show setting is applied to all members of the raiding faction (configurable), so they can be seen on dynmap.
The SetRaid event only occurs if no similar raid flag was previously set (i.e. if this is the start of the raid).
Every five (configurable) minutes the server checks the location of all online members of the raiding faction. If any of them remains in a chunk claimed by the defending faction, the raid flag remains set. Otherwise the raid flag is unset and the raid is over. The raiders have been driven off or have otherwise given up.
Twenty minutes (configurable) into the raid, the raiding faction receives RaidLoot (configurable, see below) from the defending faction. After RaidLoot is paid, the server checks if the defending faction still has members online and is above its MinBalance (configurable, see below). If no defending members are online, or if the defending faction's bank balance is below MinBalance, then the raid is over and the raid flag is unset. Otherwise, the raid flag is reset and every twenty minutes (configurable) the raiding faction again receives RaidLoot.
RaidLoot
This is the amount that the defending faction has transferred from its bank account into the raiding faction's bank account every time RaidLoot is collected. It is equal to 10r (configurable) for each online member of the defending faction at the time the raid began. During the time that a raid flag is set, the defending faction cannot withdraw money from its bank account.
MinBalance
To minimize the chance of factions being unduly harmed by raiding, e.g. reaching a zero balance and thus having all their chunks unclaimed, a raid cannot begin unless they have at least 3 (configurable) days of taxes in their account. Furthermore, RaidLoot will not remove money that would cause their account to fall below MinBalance.
Considerations
A defending faction that simply has all of its members log off will end up paying one instance of RaidLoot, at which point the raid is over.
A defending faction could engage allies or pay mercenary factions to help sweep the raiding faction from its claimed chunks.
A defending faction could counter-raid, thus forcing the raiding faction to divert resources to their own defenses in order to avoid paying their own RaidLoot.
A defending faction could surrender, choosing to pay a single lump sum to avoid ongoing payments of RaidLoot.
Factions could choose to retain less than 3 days of taxes in their faction bank to avoid being a raid target. However, doing so obviously entails the risk of failing to pay their taxes and having all chunks unclaimed. They might also become the subject of derision from other factions.
Factions with sprawling claims might need to build a gate network in order to be able to successfully defend themselves if they are the target of a multi-front attack. This seems both realistic and encourages the development of meaningful gate networks, while discouraging random and/or isolated claims.
Declaring a faction an enemy while in one of their claimed chunks may not trigger the SetRaid event until the current chunk is left. This is similar to how if you have /f map on, it doesn't update if you claim a chunk until the current chunk is left. This is a minor nuance and generally shouldn't really impact gameplay.
Other Considerations
A /f money baltop command, which returns the balances of the top factions (similar to how /baltop itself works with other economy plugins) would give factions that keep their bank balance high a way to "win" by being at the top of the list, strutting their stuff.
Conclusion
I am certain that if MassiveCraft implemented a plugin such as what is described above, it would attract and keep more players. I also believe it would increase the level of engagement of existing players, especially around forming active mutual defense pacts.
This proposal is meant to be a straw man, which can be thorough beaten, abused, or set fire to without me being offended in the slightest. I hope you'll give feedback, correct me where I might have strayed, and show your support of the overall concept (if indeed you do support it) by sharing it with like-minded people and by giving this post a Like.
Goal
Create a gameplay experience that:
1. Gives players a reason to raid, an in-game benefit they can receive from doing so to help offset the obvious risks.
2. Gives players a reason to fear being raided, thus encouraging mutual defense pacts, hiring protection, or surrendering when appropriate.
3. Constrains the damage that a raided faction receives to the point that raided factions won't be driven from the server.
Overview
The MassiveRaid plugin identifies when a player (raiding faction) enters a chunk claimed by a faction to which they are enemied (defending faction). If at least one member of the defending faction is online, a SetRaid event is triggered, which captures who is raiding whom along with the time the raid started and the number of defenders online. A broadcast is also sent (e.g. "Afrovia is raiding SteelOath at <chunk coordinates>!", configurable to be sent to just the involved factions, the involved factions and their allies, or the entire server). Lastly, the /dynmap show setting is applied to all members of the raiding faction (configurable), so they can be seen on dynmap.
The SetRaid event only occurs if no similar raid flag was previously set (i.e. if this is the start of the raid).
Every five (configurable) minutes the server checks the location of all online members of the raiding faction. If any of them remains in a chunk claimed by the defending faction, the raid flag remains set. Otherwise the raid flag is unset and the raid is over. The raiders have been driven off or have otherwise given up.
Twenty minutes (configurable) into the raid, the raiding faction receives RaidLoot (configurable, see below) from the defending faction. After RaidLoot is paid, the server checks if the defending faction still has members online and is above its MinBalance (configurable, see below). If no defending members are online, or if the defending faction's bank balance is below MinBalance, then the raid is over and the raid flag is unset. Otherwise, the raid flag is reset and every twenty minutes (configurable) the raiding faction again receives RaidLoot.
RaidLoot
This is the amount that the defending faction has transferred from its bank account into the raiding faction's bank account every time RaidLoot is collected. It is equal to 10r (configurable) for each online member of the defending faction at the time the raid began. During the time that a raid flag is set, the defending faction cannot withdraw money from its bank account.
MinBalance
To minimize the chance of factions being unduly harmed by raiding, e.g. reaching a zero balance and thus having all their chunks unclaimed, a raid cannot begin unless they have at least 3 (configurable) days of taxes in their account. Furthermore, RaidLoot will not remove money that would cause their account to fall below MinBalance.
Considerations
A defending faction that simply has all of its members log off will end up paying one instance of RaidLoot, at which point the raid is over.
A defending faction could engage allies or pay mercenary factions to help sweep the raiding faction from its claimed chunks.
A defending faction could counter-raid, thus forcing the raiding faction to divert resources to their own defenses in order to avoid paying their own RaidLoot.
A defending faction could surrender, choosing to pay a single lump sum to avoid ongoing payments of RaidLoot.
Factions could choose to retain less than 3 days of taxes in their faction bank to avoid being a raid target. However, doing so obviously entails the risk of failing to pay their taxes and having all chunks unclaimed. They might also become the subject of derision from other factions.
Factions with sprawling claims might need to build a gate network in order to be able to successfully defend themselves if they are the target of a multi-front attack. This seems both realistic and encourages the development of meaningful gate networks, while discouraging random and/or isolated claims.
Declaring a faction an enemy while in one of their claimed chunks may not trigger the SetRaid event until the current chunk is left. This is similar to how if you have /f map on, it doesn't update if you claim a chunk until the current chunk is left. This is a minor nuance and generally shouldn't really impact gameplay.
Other Considerations
A /f money baltop command, which returns the balances of the top factions (similar to how /baltop itself works with other economy plugins) would give factions that keep their bank balance high a way to "win" by being at the top of the list, strutting their stuff.
Conclusion
I am certain that if MassiveCraft implemented a plugin such as what is described above, it would attract and keep more players. I also believe it would increase the level of engagement of existing players, especially around forming active mutual defense pacts.