Click here to read the previous dev blog (#7) - Border Raids and Naval Battles
This is a very short dev blog that showcases a CampaignWar feature that I find quite cool and believe will assist the command and control element of battles: commander mode. This gives a player designated as a "commander" the ability to observe the battlefield of a provincial attack from a birds-eye view, like so:
I can move between the chunks by tapping WASD. Notice how the chunks are coloured green. This indicates that they are friendly - enemies do not control them. Enemy-controlled chunks are coloured red, while chunks that are under attack by allies and enemies are coloured lime and pink respectively.
In commander mode, all players will appear to glow for me. This makes it easier for me to distinguish between allies (who glow green) and enemies (who glow red).
I can also highlight blocks for friendly players by left-clicking them. This spawns a temporary, fake beacon that only they can see, and sends them a notification alerting them of this fact.
It is probable that entering commander mode will be restricted to certain locations, e.g. FOBs and Barracks buildings.
Of course, I am passive while in commander mode. I cannot use it to attack others, nor enter it while in combat. I also can't use it to travel or breach defenses. In this respect, it is not dissimilar to Movecraft periscopes.
Let me know in the replies if you have any suggestions or comments about this feature!
Click here to read the previous dev blog (#6) - Province Attributes
Welcome to the seventh experimental plugin development blog, where I discuss a suite of custom plugins being developed for our rather secret gamemode, provisionally called "CampaignWar" (CW). Today, we discuss the latest plugin in this line, Border Raids and Naval Battles. These are partly based on assaults on Nations, so I recommend familiarising yourself with them before reading on.
Border raids can be thought of as a variant of the PvP assaults on Nations. There are, however, significant differences. Chief among them is where raids take place: in provinces that border enemy provinces, rather than preset regions.
When a nation begins a border raid on a neighbouring enemy province, capture points will generate inside it. One will generate where the attacker began the raid from. The others will generate in random locations; they may even generate inside the province's town.
Here you can see capture points flags: one to the left of me (highlighted), and another to my right (in the river).
The capture points are highlighted by beacons and a particle border that outlines the cap zone. Stand inside the cap zone to capture the point. The beacon and particles will change colour depending on who controls the point. For example, if it is red, that means the enemy controls it.
If you get lost, you can right-click a compass. The compass will point towards a cap point; the action bar will tell you the point's name and relative distance. Keep right-clicking to cycle through the cap points.
Since capture points can generate inside the province's town, the town becomes vulnerable to PvP and explosions just as it does during a war, and attackers can place ladders and scaffolding inside it. But, of course, any damage is rolled back after the raid concludes.
Another difference between Nations assaults and PvP raids is that kills do not contribute points - only capping does - and Movecraft can participate. The idea is for raids to be strategic more so than contests of pure PvP.
As for travelling to raids, this is where TownyBuildings comes in. You can build a War Camp building and assign it to an allied nation to let them deploy to your town if it is under attack. It also works for wars, not just raids.
Recall that there are two types of provinces: land and ocean. Ocean provinces are fought over in naval battles. You can think of each ocean province being a Nations Movecraft assault region, although the "assault" mechanics are obviously different as we shall see.
You can attack an ocean province if you control an adjacent province. This can be either a land province (e.g. a coastal town in your nation) or another ocean province that you have captured. Control of ocean provinces is important during wars, as they enable you to begin attacks on adjacent enemy land provinces.
A nation captured the ocean province through a naval battle, hence it being shaded.
When a naval battle begins, a maximum of three capture points will generate in the attacked ocean province and its adjacent ocean provinces (regardless of who controls these). Capture the cap points using ships to earn points. Using multiple ships will speed up the capture process as each ship contributes capture progress - albeit up to a limit, so that a few ships are sufficient to achieve the maximum rate of capture progress.
The flags represent cap points; the circles denote their cap zones. In reality, they will be wider.
The boundary of each cap zone is helpfully marked by a particle border, which is again coloured depending on its status.
Here, the cap zone and beacon is green because our side controls their associated cap point. Again, remember that the cap zone on the actual server will be wider than what is shown.
Like enemy kills in border raids, sinking enemy ships will not earn you points — but it is still helpful. Sinking enemy ships inside the cap zone will gain you cap progress. But it also works the other way: if the enemy sinks one of your ships inside the cap zone, you will lose cap progress.
Of all the dev blogs posted so far, this is the one most liable to major change before or after release. There are still many details that need to be worked out, such as the exact rewards from these modes of conflict and when they should take place (the latter will likely involve vulnerability windows). Unfortunately, starting a new job has significantly slowed down my progress on this - as well as the server in general - but I hope to get back on track sooner rather than later. Feel free to leave a reply if you have any questions, comments or concerns.
Click here to read the previous dev blog (#5) - Seasons and Weather
Welcome to the sixth experimental plugin development blog, where I discuss a suite of custom plugins being developed for their own gamemode, provisionally called the "CampaignWar (CW) gamemode". Today, we discuss the latest plugin in this line, Province Attributes, and cover some changes to TownyBuildings.
As mentioned in the first dev blog, the map for this gamemode is divided into provinces, each of which can have at most one town.
Attributes are modifiers to a province that can affect:
- the efficiency and output of buildings from TownyBuildings,
- crop growth and death rates,
- and the yield from block drops
Let's take a look at one:
The "Rich Coal Veins" attribute increases the drops from coal ore and the efficiency of Coal Mine buildings within the province. It is a permanent attribute, meaning it will remain with the province forever. Attributes can also be townbound, regenerating if the town inside the province is deleted, and seasonal, lasting only for a season.
Seasonal attributes like these have a chance to generate at the beginning of every season and expire when that season ends.
The types of biomes present inside a province influences which attributes are generated for it. For example, a province that consists mostly of cold biomes could expect a greater chance of generating attributes that increase coal output, while a province that consists primarily of arid biomes should expect fewer seasonal attributes that increase crop output.
Nations can set an economic policy, which is an attribute that applies to all of the provinces that it has settled.
Much has changed with TownyBuildings since the previous dev blog. Here is a summary of the changes:
Here is a building that illustrates these changes well: the Tavern. The Tavern consumes Brewery drinks to increase the happiness of workers that live in houses within 100 blocks by 5%. This is an example of intangible output.
If we look at one of these houses, we see the Tavern boosting its happiness:
Happiness determines how efficient the workers that live in the house are. For example, if all of the workers in a Coal Mine come from a house with 150% happiness, the mine will operate at 150% efficiency (assuming no other factors are affecting its efficiency).
The happiness of a house can fall if you undersupply it with items. For example, if a house requires 4 bread and 4 steak daily but you only supply the bread, then its base happiness will be 50%, as only 50% of the house's needs are being met.
Winters are no longer just a display of white grass and leaves - snow will also appear where appropriate! This snow is client-sided (it doesn't actually exist on the server), meaning it won't obstruct Movecraft vehicles or disrupt the dynamic map.
And that’s all for this post! If you have any thoughts, feedback or concerns, feel free to reply.
Click here to read the previous dev blog (#4) - CampaignWar Ultimatums and War Declarations
Welcome to the fifth experimental plugin development blog, where I discuss a suite of custom plugins being developed for their own gamemode, provisionally called the "CampaignWar (CW) gamemode". Today, we discuss the latest plugin in this line: Seasons.
Seasons have been one of the most requested additions to CCNet. Over 11 suggestions have been made calling for their implementation over the years, but I have refrained from adding them owing to the poor performance of public plugins, which is impossible to fix due to them also being closed-source. By writing our own plugin, we avoid this.
Before we talk about what Seasons can do, let's briefly mention what it can't do. Since performance is paramount, the plugin only makes visual changes to the world; snow will not accumulate and water will not freeze where it normally does not. But perhaps this is a good thing -- if you have played with seasons mods, you may be familiar with the jarring sight of snow and ice still being present in long-unloaded chunks, which we avoid with this approach.
There are two seasonal cycles: temperate (spring, summer, autumn and winter) and tropical (dry and monsoon). The majority of biomes follow the temperate cycle, while warmer biomes such as savannas and deserts follow the tropical cycle.
Each season is divided into three sub-seasons: early, middle and late. Temperate sub-seasons may last either one or two days (the exact length is still to be determined); tropical sub-seasons last twice this length. As the sub-seasons progress, the colours of grass and foliage change. So too does temperature - and by winter, it can appear to snow in biomes where it normally rains.
Spring begins with blossoms that transform the leaves pink, peaking in mid-spring before losing their colour in the final third of the season. Pink petal blocks spawn below these leaves if they decay. The colour of grass transitions to a more lush hue, almost reaching its summer colours by the season's end.
Biomes maintain their typical appearance through most of summer. Mid-summer thunderstorms are accompanied by hail in warmer biomes. By late summer, the leaves begin to hint at the onset of autumn.
During autumn, the leaves and foliage change colour dramatically as they wilt. Spiders spawn more frequently, and it can appear to snow in cooler biomes towards the end of the season.
In winter, temperatures drop to such an extent that snowfall can be experienced in the majority of biomes. In biomes where snow accumulates, it will accumulate to greater depths. Skeletons will often spawn as strays and breezes occassionally spawn on the surface, with this occurring most frequently during mid-winter. Thunderstorms in colder biomes result in hazardous blizzards, which slowly freeze players exposed to the sky.
The dry season is characterised by a yellow tint present on foliage and grass, and the absence of rainfall - even in jungles. In deserts and mesas, thunderstorms can generate sandstorms that limit the visibility of all those exposed to the sky.
As one might expect, the wet season (or monsoon) is typified by rainfall - rainfall that is so widespread that it falls in savannas and even deserts. The grass and foliage responds accordingly, becoming lush in colour. Bogged will replace some skeleton spawns, and cave spiders can spawn on the surface. Hail will fall during thunderstorms.
Hail falls during thunderstorms in the wet season and summer. Though hailstones may look similar to snowballs, this is deceptive - for while snowballs are harmless, hailstones can damage you.
The thunderstorms of winter lead to blizzard conditions in colder biomes. Exposure to the sky will limit your visibility and mobility, as well as inflict freezing damage. As in vanilla, wearing leather boots will ward off the freezing damage.
Though largely harmless, the desert sandstorms of the dry season will limit the visibility of players caught up in them.
The growth rate of crops is affected by seasons. However, the exact crops that can grow in a season still depends on the biome's climate classification, as it does on Nations. As an example, below is how the seasonal growing cycle in boreal climates (e.g. taigas) might look like. Of course, the usual caveats apply - even this table is incomplete, liable to change, etc.
Spring | Summer | Autumn | Winter |
---|---|---|---|
Sweet Berry Bush | Wheat | Sweet Berry Bush | Sweet Berry Bush |
Beetroot | Potato | Beetroot | |
Pumpkin | Carrot | Pumpkin | |
Onion | Sweet Berry Bush | ||
Garlic | Beetroot | ||
Pumpkin | |||
Strawberry | |||
Blackberry | |||
Raspberry | |||
Onion | |||
Garlic |
Across all climates, a limited number of crops can be farmed during winter (and to some degree, the tropical dry season). Autumn and winter coincide with the tropical wet season, while the tropical dry season coincides with spring and summer, allowing for trade between towns in different climates.