Archived Silverwind Implementation Propossal

This suggestion has been archived / closed and can no longer be voted on.

Proudbucket

Custom title
Joined
Aug 30, 2016
Messages
194
Reaction score
299
Points
233
Location
Mexico
Abstract
This idea suggests a way to implement Silverwind that uses massivecraft's plugin's to produce wartime and peacetime cycles and create wars where factions fight to maintain a territory in Silverwind. The propossal would not require much work to implement and wont require much maintenance by the staff

How Silverwind territories are won
Territories in Silverwind are auctioned in the forum.
Each faction can only have one territory.

When war happens

Wartime and peacetime periods alternate in an unpredictable way.
The length of wartime and peacetime periods is variable but never too short. At least about one hour but it can extend to several hours.

How Silverwind territories are lost

There are some special dates (perhaps once per month?) when there is a "territory war".
On these days there is only one wartime period that starts at a fixed time.
During the territory war factions should show their strength and protect their banner to keep their Silverwind territory.

Each territory has a yard, a non editable area of easy access. On it there is a distinct "banner holder", a massivecraft mob with high hit points and no AI.
If the banner holder gets captured (killed) by someone from another castle the banner holder respawns in the yard of the slayer's territory.
At the end of the wartime period, factions that lack their own "banner holder" have lost their right. Their Silverwind territory will be auctioned.
Players get assigned a random "loyalty" when they enter Silverwind world. They can change their loyalty by clicking on a NPC at Silverwind city.

Implementation is straightforward with resources that the server has.

Wartime-Peacetime cycles
There is already a line (worldsNoPvp) in the faction setup files that allows changing whether PvP is enabled or disabled. Modifying the configuration file changes the PvP status of a world without having to restart the server.

Making a script that modifies a line in the configuration file is trivial. The script can check every certain amount of time (e.g. 53 mins) and chooses with a certain probability to modify or not the configuration file. This would produce "random" pattern of war and peace. Making the script work different on certain dates is not much harder.

Territory war
The mechanism for territory loss can be easily achieved with the quest plugin:
There are a group of quests for each territory.
These quests are repeatable and each of them completes upon killing a specific "banner holder".
Completing a quest makes a banner holder respawn in the yard of the killer.
Upon joining Silverwind's world a player is assigned at random the quests of a territory.
Changing the group of quests that a player has can be done with an NPC in Silverwind city.

The idea provides a way to make war peace cycles with resources that the server has. The proposal also presents a way to make combat relevant in gaining or loosing territories.

The proposal is relatively easy to implement and wont require much maintenance by the staff. Staff activity would mostly restricted to evicting a faction and granting a new faction territory in Silverwind.

The propossal covers only the mechanics of the system. Since Silverwind is also a roleplaying location factions that acquire a territory would probably need a kind of lore application. I think that would be relatively easy to do and I think it is better to discuss the mechanics first.

I think that implementing Silverwind is one of the things that could greatly benefit the server, it could bridge the divide between PvP and RP and unite the players in a common project. Given this I think this proposal merits some attention and discussion.
 
Last edited:
This suggestion has been closed. Votes are no longer accepted.
I kinda like it, but at the same time I like the idea that has RPers andPvPers coming together to share a territory, making it more unifying server-wide, and would give both sides some insight into the other.
 
I would suggest adding perks to holding territory as well. Perhaps every Wartime survived a small amount of money- maybe 500 regals- is added to the factions bank, with small rewards for kills in defense of the Bannerholder as well.

REALLY wistful thinking would be, perhaps having AI defenders that are purchasable as well.
 
This vaguely sounds like a large game of risk.

Well you can only hold one territory in Silverwind and you cannot conquer another territory.
You can, however, make someone lose its Silverwind territory.
Also that only happens during territory wars. Most of the time there is only peacetime-wartime cycles.
 
Well you can only hold one territory in Silverwind and you cannot conquer another territory.
You can, however, make someone lose its Silverwind territory.
Also that only happens during territory wars. Most of the time there is only peacetime-wartime cycles.
I think a system to buff the Bannerholder when players of the controlling faction are offline, IE at night, would need to be done too if multi-day wars are a thing.

Maybe just giving it a buff of health and some AI defenders idk.
 
The issue I see with this is that it would require a plugin. And judging by Massive's track record with this (no offense to tech staff ofc), that could take literally years. I think it would be better to have a more staff-heavy approach. I mean, yeah, it'd be nice to have a plugin, but frankly I don't think that's ever going to happen.
 
...if multi-day wars are a thing.
In the proposal multi-day territory wars are not a thing.
Territory wars are only a period during fixed days.

The issue I see with this is that it would require a plugin.
No it wont.
It uses faction's plugin and quest plugin.
It also uses a script that modifies a file at random times.

And judging by Massive's track record with this (no offense to tech staff ofc), that could take literally years.
Cmon, doing this is trivial.
Here is a silly version of the script needed that I did in a few mins.

Code:
#!/bin/bash

RANGE=2

while :
do
  number=$RANDOM
  let "number %= $RANGE"

  if [ "$number" -eq 1 ]
  then

    echo "changing state to peacetime"
  # Change N for the line number of the option of worldsNoPvp and modiffy the path
  #  sed -i 'Ns/.*/Silverwind/' path_in_server/mstore/factions_mconf/instance.json
    sleep 53m

  else

    echo "changing state to wartime"
  # Change N for the line number of the option of worldsNoPvp and modiffy the path
  #  sed -i 'Ns/.*//' path_in_server/mstore/factions_mconf/instance.json
    sleep 53m

  fi
done
 
Last edited:
How do you plan to interface with factions to govern build perms? Surely you don't actually intend to use a script to modify this.

How do you plan to randomly assign loyalties as stated in the original post? You could use scripts to decide on a loyalty, but that's about it; you couldn't implement any meaningful way on the server without a plugin.

I mean, you /could/ do it all with scripts and quest, but it would be just as difficult/time consuming as making a plugin.

I'm not against the idea in itself, I just think it would be more practical for staff to run it.
 
How do you plan to interface with factions to govern build perms? Surely you don't actually intend to use a script to modify this.
Factions can build, they just cannot claim in the world.
Staff gives territory to the ones that won the auction.
Staff evicts the factions that lost the war.
No script needed for that.

How do you plan to randomly assign loyalties as stated in the original post? You could use scripts to decide on a loyalty, but that's about it; you couldn't implement any meaningful way on the server without a plugin.
No script needed
OnJoinWorld
DoAdvanceRandomChild


I mean, you /could/ do it all with scripts and quest, but it would be just as difficult/time consuming as making a plugin.

I'm not against the idea in itself, I just think it would be more practical for staff to run it.
I made my research before posting.
When I say it is easy to implement is because I thought about the ways to implement it and they are easy and don't require much coding. I'm not saying this is perfect or that I have every step, I'm giving you my opinion as someone that knows a bit about programing and made some research on the topic.
 
When SilverWind becomes a topic grounds for discussion among Direction staff we may refer to this thread along with others for review. Marked as Pending Review.