over 3 years ago - ACE-Tiggs - Direct link

Summary

Design can create packages of “rules” via the CampaignConfigurator tab in the Campaign Data table. These Campaign Rules drive the specifics of a particular campaign. Design wants to leverage these to influence the metagame and keep the game fun and fresh.

This document outlines several tech requests for new rule types.

After each tech request section, some specific use cases for the new campaign rules are listed. These could be used alone or combined with other rules. 

These campaign modifiers are messaged on the Enter Campaign UI screen in a section called Campaign Rules & Restrictions. This doc concludes with some requests for UI and Art support for this initiative.

New Tech Requests

Location Adjectives and Global Adjectives

There are a large number of systems that can be driven by or react to the presence of adjectives. Having the ability to apply these to parcels and/or globally will give us a large amount of flexibility. Out of all the Tech Requests in this document, these are the most important as they open up a wide swath of functionality we can leverage.

Zone Adjective Rule Type

The Campaign Configurator should allow us to apply location and/or global adjectives as discussed below. At the end of the day we want to be able to do these two things:

  • Apply adjectives globally to the entire campaign, e.g. every player gets XYZ adjectives
  • Apply adjectives to specific areas (via location adjectives)

Below is an example of what the data for this may look like. It is essentially just a rule name linked to a location adjective foreign key. We should be able to specify the number of these per rule.

R-ASNkCmrjl5eEX31ip88Qg9ap5SnzKdLhqqLG1E

Potential Use Cases

  • Apply the effects of a particular discipline to every character. This doesn’t take a discipline slot and is a free bonus.
    • Archer World: Everyone starts with Archery, Bow Slot, Ammo Slot. All players have ranged attacks.
    • True Sight: Everyone starts with Head Up. All players detect stealth.
    • Quick and Brutal: Everyone starts with Glass Cannon, Pound of Flesh, and Last Resort. Players deal and take more damage generally. They also cause more damage at low and high health. It’s a DPS fiesta in a fine china shop.
  • Stat effects:
    • Critalicious: +35% Crit and Heal crit chance. Tons of crits.
    • Flatlander: -100% crit chance. Even guaranteed crits may not crit.
    • Famine: -2000 Max Health for all players.
    • Crafting Dangerously: +20 Assembly and Experimentation when on Outpost, Castle and Keep parcels.
    • Superior Masonry: Wall health is doubled.
  • New Unique Passive Effects
    • Berserker: Players don’t immediately die at 1 HP. Instead, they enter a Berserker mode for 15 seconds during which time they cannot be healed and after which they die. They can fight and act normally during that time.
    • Corpse Blossom: When players die they cause AOE damage to friendlies and an AOE heal to enemies.
    • Vampirism: Players can become a Vampire who is more powerful at night. At night gain life steal, max health, perception, and damage bonus.
    • Vampire Hunter: Gain a single target Stake power and AOE Holy Water power which do high damage versus Vampires only. You cannot be a Vampire.
    • Elemental Form: Players can turn into one of three elementals with unique elemental combat packages.
    • Quickening: Players get a full heal, resource restore, and a damage/healing buff when they behead an enemy.
    • Gaea Connection: Gain randomly applied stacking combat buffs from harvesting. For example Health, crit chance, crit damage, and damage bonus. Characters become extremely powerful if they can harvest for a long period of time.
  • New Equipment Slots
    • Trinket: All players get a new “trinket” slot which can equip a no-export activatable item that can have any ability effect/passive (such as the ones above or any other). We could leverage the quest system to start players with a quest to earn the trinket for that campaign for example or use many other methods to allow access to the special trinket.

Guild Members Allowed and Alliance Cap Sizes 

We want to address super guilds/alliances who monopolize and crush the smaller ones. To address this we’d like the ability to restrict a few different aspects of guilds/alliance player campaigns/zone concurrency. The changes mainly deal with how many guild players are in the Campaign “right now” as opposed to a max potentially defined by inactive and less active players.

Guild level Changes:

Cap total Guild Members Allowed at the Campaign level!

  • Campaign Limit Value - This value defines the total number of people from a single guild who can concurrently be in a campaign at a time.
  • Defined in a campaign configurator rule. (Dregs rulesets only)
  • Once the limit is reached no more players from that guild are allowed to log into the Campaign, until a player from that guild logs out. 
    • This should leverage the current world queue system using the number of players currently logged in as a filter on top of it.
      • This means messaging can be added to the existing queue popup, about the guild having too many players logged into the current campaign.

Alliance level Changes:

Alliance Cap -  How this currently works:
This value is hardcoded in a template (set at campaign creation time in the OPs tool) that defines the max size of an alliance (currently 500). A guild's “size” is based on the total number of players fetched from the web. (if the web says your guild has 200 people in it, that is the value used for the guild) The sum of all the guild’s players never exceeds the Alliance Cap template value (or the guild going over the limit is kicked from the Alliance).

What we would like Changed:

  • The “size” of a guild as counted in the Alliance is based on the number of guild accounts that enter the Campaign.
  • This allows the same account to not count multiple times against the guild. (people don’t like being charged multiple times)
    • For example, I have 2 characters on my account I locked to this Campaign, since they are on the same account, my guild's contribution to the Alliance Cap is 1.
      • If the same account has characters in multiple guilds, then both guilds are charged 1.
  • Guild “size” is also capped at the max guild concurrency value.

Zone Limit Value - Limits the total number of people from a single alliance/faction who can concurrently be in a zone at a time.

  • Defined in a configurator rule based on zone type. (Dregs + Shadow rulesets)
    • Ie adventure zones get one value, keep siege zones get another value. (Zone type is already defined based on zone adjectives)
  • Once the limit is reached no more players from that alliance/faction are allowed to log into that zone, until a player from that alliance/faction leaves the zone.
    • This should leverage the current zone queues with a filter on top of it.
      • This means messaging can be added to the existing queue popup, about the alliance/faction having too many players logged into the current zone.
      • If a player in an alliance/faction attempts to log into a “full zone” from the lobby and the zone is full, they should be given an option to instead log into their Temple zone.

 

Allowed Races

We’d like the ability to restrict what types of races are allowed to be created or imported into the game. The data could be represented similarly to the adjectiveDefinitions table with rows corresponding to every race with a boolean indicating whether the race is allowed.

3sS2SDDytdk2XoIxoGdz2CMyu6upgWzkkJsosf6D

Potential Use Cases

  • Elf World: Only Elves allowed. Players must be Wood Elf, High Elf, Fae, or Half Elf.
  • Monster Mash: Only Monstrous races allowed. Players must be Minotaur, Centaur, Guinecean, and Elken.
  • Oh the Humanity: Players must be Human, Half Elf, or Half Giant.

Monster Template Alias

A monster template alias allows us to swap one monster template with another. The data could have columns for a group name, before template, and after template. A group is specified in the campaign configurator and all templates in that group are swapped.

Potential Use Cases

This will allow us to easily amp up or modify certain classes of NPCs and do so from the campaign configurator. Since we’re choosing what is swapped and what is not, rather than automated, this preserves any quest or special NPCs. Here are some ways we could use this.

  • Wartribe Boss Rush: All minion ranked Wartribes NPCs are now elites. All elites NPCs are now bosses. All bosses are now raid bosses.
  • Spider Infestation: Wolves, cats, and aurochs are replaced with spiders.
  • Holiday Town: Swap out neutral NPCs with versions in holiday themed clothing.
  • Gryphon Power: All Gryphons are bosses, group bosses, or raid bosses.

Loot Multiplier/Adder

Things along the lines of “Double Loot Weekend” are go-to promotions that MMO teams leverage strategically. We need a sane way of doing this. Currently doing this requires duplicating thousands of rows in multiple tabs, which is the opposite of that.

It seems the most straightforward way of doing this is to allow us to apply a mod to the num_rolls column of the “Goody Chest” tab in the “Item Data - Goody Chest” google sheet. We should have support to do both a scalar, which acts as a multiplier to that number, or an adder that just adds the value.

The data can be represented by the name, type of modifier (scalar, adder), and value.

Ajuh2cbhiFmusqmOsVvVBNZkcs75ObleJfcpnV9B

Potential Use Cases

  • Double Loot: Double the rolls on all loot!
  • Loot Boost: One additional roll on all types of loot!

Modified XP

Double XP falls into the same category as the double loot as a tasty treat to include from time to time.

This tech would modify XP granted from killing NPCs, sacrificing items, and crafting items (if possible). The XP for killing NPCs and sacrifice comes from a single place in data. This tech might apply a scalar to both of those.

It’s desirable to also include crafting XP in this package but crafting XP is heavily derived so there isn’t a single good place to apply a scalar from the design data side. The XP calculations for crafting XP are fairly complicated so this would need to be applied as a final scalar somewhere in code.

Sacrifice XP is from the “sacrifice_value” column in the Item Templates tab of the Item Data google sheet. Monster XP comes from the “xp_value” column in monsterTemplateStatGroupsData tab of the NPC Data google sheet.

96JvC-OC6-qi_bshNYmOlFfWh_HeTko8UqQsrtlD

Potential Use Cases

  • Level Land: Double experience awards for NPC kills, sacrificing items, and crafting!
  • No Noobs: No experience is awarded NPC kills, sacrificing items, and crafting!

UI Support

On the Enter Campaign UI, we show a Campaign Rules & Restrictions box with icons indicating the types of modifiers being used during that Campaign. This is shown below.

8b0xV_ZjOUhCqsKWma2cpoZoRoJjA8BfQCdlC3en

 

We’d like to request some new icons to help message new types of mechanics. Here are the new rule types or mechanics being proposed that could use new icons.

  • Bonus Discipline
  • Unique Mechanic
  • Stat Adjustment
  • Special Equipment
  • Race Restrictions
  • Guild/Alliance Size Restrictions
  • NPC Modifications
  • Bonus Loot Drops
  • Experience Modifiers

UI Functionality

If you hover over an icon it will give you a blurb indicating what the modifier does. A major improvement would be to allow the player to do something along the lines of “Hold CTRL for all details” similar to what can be done with power descriptions for example. This should offer an exploded sort of view that gives something like a bulleted list of every campaign modifier.

xYn-SdKDyZfjIAo6tD9cJEwz0wuVC-f_mp9xpPQR

bSjsC3pGoDRlWVI4CyH25PUxu5a_z6GJ6QfAR4uP

v7eVnLD9PMblBJiBM3GwVjVZMxuB8ppPmhHGRAj8