Custom Mob Waves: Stage 2

This has been released for reference purposes only. Superseded by

TODO

Todos:

  • “Draw”-pool mobs
  • Raffle-pool mobs
  • Spawn mobs at specific mob spawn

Post-todos:

  • Mobile UX
  • Check Ease of Use
  • Final Recheck

Backlog

  • Damage flag, automatically calculates appropriate strength

Disclaimer

Mob Definitions aren’t prioritized. And when it is implemented, not many MDefs will be immediately approved. Since they make more impact than maps, they have to be tested for balance. For this reason, the first few MDefs won’t be new or completely reworked


Stage 2


This is the Stage 2 proposal for:


Differences w/Stage 1

This section is for those that read Stage 1. You can skip it and this if you didn’t. This proposal is self-contained, and doesn’t require you to read either Stage 0 or Stage 1


Collections

The Stage 1 proposal uses Collections, but this proposal will use Mob Definitions to prevent ambiguity with other internal terms. It’ll also frequently refer to Mob Definition as MDef


Independence

Stage 2 unties MDefs from maps. Maps can have many associated MDefs, pick from a pool of available MDefs, etc. MDefs meanwhile, have their own names and exist parallel to maps. Whereas Stage 1 ties them to maps rather than giving them names


MDef Grouping

MDefs won’t be grouped


Default MDefs

Maps don’t need default MDefs, or any MDefs at all. See Default MDefs for more information


Mob Entry IDs

Mob Entry IDs are global instead of wave-based, so they’re all unique. For example, if there are 600 mobs in all MDefs, then a new mob will have the ID of 601. If mob entry 601 is deleted, then a new mob is added, then that mob will have the ID of 602


Command Mappings

These don’t have a direct counterpart:

These have been removed:


Mob Mod Mappings

Unfortunately, this section of the Stage 1 proposal is extremely unclear. I didn’t bother to translate this part, read Modify Mob instead


Rounds and Waves

In terms of Rounds and Waves, there are three major differences:

  1. Waves have been completely removed
  2. Configuring the number of waves has also been removed. For now, the number of waves will use same formula as before
  3. Mobs can span multiple rounds

Configuration down to a wave-level is overkill. To make things simpler for everyone, it was removed


Events & Entries

In Stage 1, the activation times were directly in the MDef. However, in Stage 2 this was split into two different types:

  • Events carry the time
  • Entries link MDefs to Maps

This separates three functions but also makes it more versatile. For instance, entries can have their own weight, previously you had to add multiple entries to do that


Terminology & Model


Mob Definition

A Mob Definition is a reusable unit of rounds

Naming Scheme

I recommend using Alphanumeric(A-Z, 0-9) Characters, Hyphens(-), and Underscores(_), to avoid complications

DO NOT use spaces or quotes. Spaces are argument delimiters and make commands much more complicated. Meanwhile quote pairs are literals(delimiters are ignored) and can produce unexpected behavior

Reserved Names

Names that are reserved for future or private use:

For the sake of clarity:

  • Default
  • Rapid
  • Expert
  • Hardcore

Banned Names

Names that are banned and should not be used for reasons mentioned below:

Editors

Unlike maps, MDefs don’t have creators, only editors. Editors can edit the MDef but neither add nor remove others

Public, Non-Public & Publishing

MDef Editors won’t have direct access to the public MDef, since changes instantly go live. Instead, MDEditors have access to a test version that is copied over to the public version once finished and reviewed

Rounds & Waves

“Round” and “wave” are collective terms. That is, several waves are a round, and several mobs are a wave. Consequently, a blank round or wave can’t exist

Mobs is not to be confused with Mob Entries. Mob Entries dictate when mobs spawn, Add Mob, Delete Mob, etc. change Mob Entries, not mobs themselves

There are 2 rules determining how blank rounds are handled:

  1. If there is an existing round before the current one, it uses that(“Previous Rule”)
  2. If there isn’t, then it uses the next existing one(“Next Rule”)

For example:
In a blank MDef, if you define round 12, then rounds 1-11(Next Rule) and rounds 13+(Previous Rule) uses round 12
Then if you define round 16, then rounds 13-15 continues using round 12, but round 17+ uses round 16 instead

Infinity

The last round is infinitely repeated until everyone dies

Mob Entry IDs

A mob entry ID is a number that represents a mob entry. It is returned in Add Mob and must be used in other commands such as Modify Mob


Events

Events have two values: a start date and an end date. Events were preferred over map-specific dates to reduce complexity, rather than defining the date for each MDef, an event can be used instead

Naming Scheme

I recommend using Alphanumeric(A-Z, 0-9) Characters, Hyphens(-), and Underscores(_), to avoid complications

DO NOT use spaces or quotes. Spaces are argument delimiters and make commands much more complicated. Meanwhile quote pairs are literals(delimiters are ignored) and can produce unexpected behavior

Date Considerations

Dates and time checks must be in UTC-12 and not the server’s timezone. This ensures dates have fully passed before an event expires

The dates must be anchored to 1970. In other words, a 365-day year with no leap days. When a time check happens, it is converted to the current year, so leap days aren’t skipped when the start time is set to 02/28 and the end time is set to 03/01

The start time is always set to 00:00:00, and the end time is always set to 23:59:59. This makes one-day events such as Valentine’s Day possible

Adding to Entries

See Event Binding for more information

Deleting Events

When an event is deleted, all associated entries are also deleted


MDef-Map Entries

An MDef-Map Entry ties together maps and MDefs

Event Binding

Entries can be associated with an event. In effect, this achieves limited time MDefs

When an event is active, all entries not associated with an event are deactivated. That is, default MDefs won’t be selected if the Halloween event is active

If several events overlap, then their MDefs will all be in the pool. No event will override or take priority over the others

Weights

Entries have a weight of 1 by default. However, this can be changed to tweak how often an MDef occurs

Weight is how likely that MDef is to be selected. For example: in the Halloween event; we have 2020-Halloween, with a weight of 2; and 2021-Halloween, with a weight of 8. Together they have a weight of 10. 2020-Halloween has a \frac{2}{10} or 20\% to be picked, while 2021-Halloween has a \frac{8}{10} or 80\% chance to be picked

Submodes

Entries can be limited to submodes, such as Rapid, Expert, etc.

Just like events, whenever a submode is active, all default MDefs(for normal mode) are deactivated. Also, they can overlap. When Expert and Rapid is active, both of their MDefs will all be in the pool

Priorities

Unlike Weights, Priorities control groups instead of individual entries. The highest priority level is 255, and the lowest is 0

The game starts at priority 255, then checks if that priority level has anyone usable MDefs. If not, it goes down, until it reaches 0. If there are still no usable MDefs at level 0, it falls back to the Default MDefs

Summary

MDefs are named collections of mobs; events is a named start and end date; and entries ties maps to MDefs to events


Backwards Compatibility

A main goal of this proposal is backwards compatibility. When the feature is added, the only required change should be porting Round Managers to MDefs, and nothing more

For this reason, some systems have been added to help aid it

Default MDefs

Configurable in the config, the game should have a default MDef to fall back on. For our cases this is Default. Additionally, each submode should also have an MDef to fall back on. For our cases this is Rapid

{
  "defaultMDefs": {
    "default": "Default",
    "submodes": {
      "rapid": "Rapid",
      // Hardcore and Expert aren't specified
      // In that case they fall back to Default
    },
  },
}

Commands

Note

All command categories exclusive to ZManagers or MDEditors are also exclusive to Map Builder lobbies. This is to prevent multiple people editing it in different lobbies

Syntax

The syntaxes follow the specification provided by Microsoft:

Although, no prior knowledge is needed, since the syntax is accompanied with examples

Symbols

stands for required, stands for optional, and 🔢 stands for multiple allowed. If you forget what any of them mean you can hover over them(try right now)

What are Flags?

Flags are additional data for a command. Flags start with a Hyphen(-) followed by its name: -type. Then by its value: -type 1. Flags can come in any order, as long as they’re last

Mobile

I don’t recommend editing on mobile but I won’t stop you either. Though, it’ll be a bit harder


MDef

Commands for manipulating MDefs. The base command is /mdef. All of the following are subcommands of /mdef


Create

Creates a new MDef with the specified name

Access

ZManagers

Aliases

  • new
  • create

Syntaxes

  • /mdef new <MDef Name>
    • <MDef Name> a name for the new MDef
    • /mdef new 2020-Default creates a new and blank MDef named 2020-Default

Copy

Overwrites the specified target MDef with the specified origin MDef

:warning: Copying MDefs overwrites the destination MDef and is IRREVERSIBLE

Access

ZManagers

Aliases

  • copy

Syntaxes

  • /mdef copy <Origin MDef Name> <Target MDef Name>
    • <Origin MDef Name> name of the MDef to copy from
    • <Target MDef Name> name of the MDef to copy to
    • /mdef copy 2019-Default 2020-Default copies 2019-Default to 2020-Default

Rename

Renames the specified MDef to the specified name

Access

ZManagers

Aliases

  • rename

Syntaxes

  • /mdef rename <Old MDef Name> <MDef Name>
    • <Old MDef Name> name of the MDef to rename
    • <MDef Name> new name for the MDef
    • /mdef rename 2020-Default 2021-Default renames 2020-Default to 2021-Default

Delete

Deletes the specified MDef

Access

ZManagers

Aliases

  • delete

Syntaxes

  • /mdef delete <MDef Name>
    • <MDef Name> name of the MDef to delete
    • /mdef delete 2014-Default deletes 2014-Default

MDEditor

Commands for managing Editors of an MDef. The base command is /mdeditor. All of the following are subcommands for /mdeditor


Add

Adds editors to the specified MDef

Access

ZManagers

Aliases

  • add

Syntaxes

  • /mdeditor add <MDef Name> <Account Name...>
    • <MDef Name> name of the map to grant access to
    • <Account Name...> name of the account to add
      • :warning: This is space sensitive. To specify an account with spaces in their name(i.e. Josh Space), put quotes around the name "Josh Space"
    • /mdeditor add 2020-Default John allows John to edit 2020-Default
    • /mdeditor add 2020-Default "Josh Space" allows Josh Space to edit 2020-Default

List

Shows the editors of the selected or the specified MDef

Access

ZManagers

Aliases

  • list

Syntaxes

  • /mdeditor list [<MDef Name...>]
    • [<MDef Name...>] if specified, shows the editors of the specified MDefs. Otherwise shows the editors of the selected MDef
      • <MDef Name...> names of the MDefs to look up
    • /mdeditor list shows the editors of the selected MDef
      • [James], [Josh Space], [Jack]
        
    • /mdeditor list 2020-Default shows the editors of 2020-Default
      • [James], [Josh Space], [Jack]
        
    • /mdeditor list 2020-Default 2021-Default shows the editors of 2020-Default
      • 2020-Default: [James], [Josh Space], [Jack]
        2021-Default: [James], [Josh Space]
        

List Maps

Shows the maps the specified editors have access to

Access

ZManagers

Aliases

  • listmaps

Syntaxes

  • /mdeditor listmaps <Account Name...>
    • <Account Name...> the names of the accounts to look up
      • :warning: This is space sensitive. To specify an account with spaces in their name(i.e. Josh Space), put quotes around the name "Josh Space"
    • /mdeditor listmaps James shows the maps James can edit
      • 2020-Default, 2021-Default
        
    • /mdeditor listmaps James "Josh Space" shows the maps James and Josh Space can edit
      • [James]: 2020-Default, 2021-Default
        [Josh Space]: 2020-Default, 2021-Default
        

Remove

Removes editors from the specified MDef

Access

ZManagers

Aliases

  • remove

Syntaxes

  • /mdeditor remove <MDef Name> <Account Name...>
    • <MDef Name> name of the map to remove access from
    • <Account Name...> names of the accounts to remove
      • :warning: This is space sensitive. To specify an account with spaces in their name(i.e. Josh Space), put quotes around the name "Josh Space"
    • /mdeditor remove 2019-Default John denies John from editing 2019-Default
    • /mdeditor remove 2019-Default John "Josh Space" denies John and Josh Space from editing 2019-Default

MDMob

Commands for manipulating mob entries in MDefs. The base command is /mdmob. All of the following are subcommands of /mdmob


Add

Adds a new mob entry to an MDef

Access

ZManagers and MDEditors

Aliases

  • add

Syntaxes

  • /mdmob add <<Count> <Mob Name/ID> <Start Round> <End Round>...>
    • 🔢 <<Count> <Mob Name/ID> <Round>...> the mobs to add and what round to add them
      • <Count> the times to spawn
      • <Mob Name/ID> the name or ID of the mob to add
        • :warning: This is space sensitive. To add a mob with spaces in their name(i.e King Slime), put quotes around the name "King Slime" or use their ID. If a mob’s name has quotes in it, then add a slash(\) before the quote in their name
      • <Start Round> the round the mob starts appearing in
      • <End Round> the round the mob stops appearing in
    • /mdmob add 10 1 1 5 adds 10 Blue Slimes to rounds 1 to 5
    • /mdmob add 1 "King Slime" 10 10 adds 1 King Slime to round 10
    • /mdmob add 10 1 1 5 1 "King Slime" 10 10 adds 10 Blue Slimes to rounds 1 to 5, and 1 King Slime to round 10

Negative IDs

It’s a subtle difference, but you may have noticed some zombies are smaller than others. They are very real and not random. These zombies don’t occupy their own Mob though, instead they have a negative ID. Negative IDs are presets, they aren’t mobs of their own but they’re a preset for a mob. For example, a small zombie has the ID of -26, and -26 is interpreted as “Zombie but small” by the server and client. This isn’t unique to zombies, a few other mobs also have negative IDs. Like hornets for example -17 is big hornet and -16 is small hornet

One more thing to note, these mobs will have to be referenced by their ID because they aren’t unique mobs, but presets of mobs. So “Small Zombie” won’t work, you need to use -26

A full list of them can be found here:


List

Lists the mob entries in an MDef

Access

Everyone

Aliases

  • list

Syntaxes

  • /mdmob list [Page] [-{nt|notable}] [-{nn|noname}]
    • <Page> the page to view. Defaults to 1
    • [-{nt|notable}] if specified, shows the result in a non-table format
    • [-{nn|noname}] if specified, hides the mob name
    • /mdmob list displays the first page of mob entries in the selected MDef
      • Entry ID Rounds Mob ID Mob Name Count Modifications
        1 1-3 3 Zombie 10
        2 1-3 483 Granite Elemental 4
    • /mdmob list -nt displays the first page of mob entries in the selected MDef in a non-table format
      • [ID 5] R1-3 10 Zombie[3]
        
    • /mdmob list -nn displays the first page of mob entries in the selected MDef but skips the mob name
      • Entry ID Rounds Mob ID Count Modifications
        1 1-3 3 10
        2 1-3 483 4
    • /mdmob list -t 2021-Default displays the first page of mob entries in 2021-Default
      • Entry ID Rounds Mob ID Mob Name Count Modifications
        3 1-3 483 Granite Elemental 10

List Mobs

Lists what mobs spawn in a round

Access

Everyone

Aliases

  • listmobs

Syntaxes

  • /mdmob listmobs <Round> [-{nt|notable}] [-{nn|noname}]
    • <Round> round to look up
    • [-{nt|notable}] if specified, shows the result in a non-table format
    • [-{nn|noname}] if specified, hides the mob name
    • /mdmob listmobs 1 displays the mobs in the selected MDef’s round 1
      • Entry ID Rounds Mob ID Mob Name Count Modifications
        1 1-3 3 Zombie 10
        2 1-3 483 Granite Elemental 4
    • /mdmob listmobs 1 -nt displays the mobs in the selected MDef’s round 1 in a non-table format
      • [ID 5] R1-3 10 Zombie[3]
        
    • /mdmob listmobs 1 -nn displays the mobs in the selected MDef’s round 1 but skips the mob name
      • Entry ID Rounds Mob ID Count Modifications
        1 1-3 3 10
        2 1-3 483 4
    • /mdmob list 1 -t 2021-Default displays the mobs in 2021-Default’s round 1
      • Entry ID Rounds Mob ID Mob Name Count Modifications
        3 1-3 483 Granite Elemental 10

Modify

Modifies a mob entry

Access

ZManagers and MDEditors

Aliases

  • mod
  • modify

Syntaxes

  • /mdmob mod <Mob Entry ID> <Modifications...>
    • <Mob Entry ID> entry ID of the mob to modify
    • 🔢 <Modifications...> mods to apply on the mob
    • /mdmob mod 42 -count 10 makes mob entry 42 to spawn 10 times
    • /mdmob mod 42 -type Gastropod -count 10 turns mob entry 42 into a Gastropod and makes it spawn 10 times

Modifications

Type

Changes the type of mobs spawned

  • -type <New Mob ID>
    • /mdmob mod 42 -type 133 makes mob entry 42 into Wandering Eye(s)
    • /mdmob mod 42 -type 1 makes mob entry 42 into Blue Slime(s)
Count

Changes the amount of mobs spawned

  • -count <No. to spawn>
    • /mdmob mod 42 -count 10 makes mob entry 42 spawn 10 times
    • /mdmob mod 42 -count 20 makes mob entry 42 spawn 20 times
Start Round

Changes the mobs’ start round

  • -{sr|startround} <Round>
    • /mdmob mod 42 -sr 10 makes mob entry 42 start spawning at round 10
    • /mdmob mod 42 -sr 12 makes mob entry 42 start spawning at round 15
End Round

Changes the mobs’ end round

  • -{er|endround} <Round>
    • /mdmob 42 -er 12 makes mob entry 42 stop spawning at round 12
    • /mdmob 42 -er 16 makes mob entry 42 stop spawning at round 16
Spawn Type

Changes how mobs spawn. Mobs spawn in waves by default

  • Random: Randomly spawns the mobs
  • Even: Evenly spawns the mobs, any remaining mobs are spawned sequentially. From the first to the last mob spawn
  • Waves: “Count” becomes “Waves”. That is, Count = 10 spawns 10 mobs at each mob spawn
  • -{st|spawntype} {random|even|{wave|waves}}
    • /mdmob mod 42 -st random sets mob entry 42’s spawn type to random
    • /mdmob mod 42 -st even sets mob entry 42’s spawn type to even
    • /mdmob mod 42 -st wave sets mob entry 42’s spawn type to waves
Boss?

Changes how a mob is introduced. If true, the game announces Boss Round! at the beginning of the round the mob spawns in

  • -boss {true|false}
    • /mdmob mod 42 -boss true makes mob entry 42 a boss
HP

Changes the HP a mob spawns with

  • -{hp|health} <Health>
    • /mdmob mod 42 -hp 10 spawn mob entry 42 with 10 hp
    • /mdmob mod 42 -hp 120 spawn mob entry 42 with 120 hp
Strength

Changes mobs’ the strength

  • -{str|strength} <Strength %>
    • /mdmob mod 42 -str 10 makes mob entry 42 10x stronger(Damage and Max HP)
    • /mdmob mod 42 -str 1.5 makes mob entry 42 50% stronger
    • /mdmob mod 42 -str 0.3 makes mob entry 42 70% weaker
Score

Changes mobs’ score reward

  • -score <Score>
    • /mdmob mod 42 -score 20 makes mob entry 42 give 20 points
    • /mdmob mod 42 -score 0 makes mob entry 42 give no points
Score On

Changes how the mobs reward score. Score is rewarded on hit by default

  • Hit: score is rewarded by hitting the mobs
  • Kill: score is rewarded by killing the mobs
  • -scoreon {hit|kill}
    • /mdmob mod 42 -scoreon hit makes mob entry 42 give score on hit
    • /mdmob mod 42 -scoreon kill makes mob entry 42 give score on kill
Share Score

Changes who the mobs reward score to. If true, distributes its score to everyone, otherwise, rewards only the striker. Score is distributed to everyone by default

  • -{shr|share|sharescore} {true|false}
    • /mdmob mod 42 -shr true makes mob entry 42 share its score
Score Change

Changes how the mobs’ score changes

  • Constant: the score rewarded is constant and unchanging
  • Decreasing: the score rewarded decreases with time
  • -{sch|scorechange} {constant|decreasing}
    • /mdmob mod 42 -sch constant makes mob entry 42’s score constant
    • /mdmob mod 42 -sch decreasing makes mob entry 42’s score decreasing

Unmodify

Removes the specified modifications from a mob

Access

ZManagers and MDEditors

Aliases

  • unmod
  • unmodify

Syntaxes

  • /mdmob unmod <Mob Entry IDs...> -all
    • 🔢 <Mob Entry IDs...> mobs to clear of mods
    • /mdmob unmod 42 -all removes all mods from mob entry 42
    • /mdmob unmod 24 42 70 -all removes all mods from mob entries 24, 42 ad 70
  • /mdmob unmod <Mob Entry IDs...> <Flags...>
    • 🔢 <Mob Entry IDs...> mobs to clear of mods
    • 🔢 <Flags...> any modification from Modify Mob except -type and -count
    • /mdmob unmod 42 -hp makes mob entry 42 spawn with normal HP
    • /mdmob unmod 42 -hp -str makes mob entry 42 spawn with normal HP and normal strength
    • /mdmob unmod 60 -score makes mob entry 42 give normal score

Delete

Deletes mobs and/or rounds

Access

ZManagers and MDEditors

Aliases

  • delete

Syntaxes

  • /mdmob delete <Mob Entry IDs...>
    • 🔢 <Mob Entry IDs...> entry IDs of mobs to delete
    • /mdmob delete 20 deletes mob entry 20
    • /mdmob delete 20 21 23 deletes mob entries 20, 21, and 23

MDEvent

Commands for manipulating events. The base command is /mdevent. All of the following are subcommands of /mdevent


Create

Creates an event with the specified start date and end date

Access

ZManagers

Aliases

  • new
  • create

Syntaxes

  • /mdevent new <Event Name> <Start Date> <End Date>
    • <Event Name> a name for the new event
    • <Start Date> the date the event will start on, in the format Month/Day. e.g. 10/2(October 2), 4/30(April 30)
    • <End Date> the date the event will end on, in the format Month/Day. e.g. 12/5(December 5), 5/3(May 3)
    • /mdevent new Halloween 10/30 11/10 creates an event Halloween that lasts from October 30 to November 10

Note

See Date Considerations for more information about dates


List

Lists all events

Access

Everyone

Aliases

  • list

Syntaxes

  • /mdevent list [Page] [-{nt|notable}]
    • [Page] the page to view. Defaults to 1
    • [-{nt|notable}] if specified, uses a non-table format
    • /mdevent list shows page 1 of all events
      • Event Name Start Date End Date
        Halloween 10/30 11/07
        Christmas 12/20 12/25
    • /mdevent list 2 shows page 2 of all events
      • Event Name Start Date End Date
        StPatricksDay 03/17 03/17
        ValentinesDay 02/14 02/14
    • /mdevent list 2 -nt shows page 2 of all events
      • [StPatricksDay] Start: 03/17, End: 03/17
        [ValentinesDay] Start: 02/14, End: 02/14
        

List Active

Lists all active events

Access

Everyone

Aliases

  • lactive
  • listactive

Syntaxes

  • /mdevent lactive [Page] [-{nt|notable}]
    • [Page] the page to view. Defaults to 1
    • [-{nt|notable}] if specified, uses a non-table format
    • /mdevent lactive shows page 1 of all active events
      • Event Name Start Date End Date
        Christmas 12/20 01/01
    • /mdevent lactive 2 shows page 2 of all active events
      • Event Name Start Date End Date
        NewYearsEve 01/01 01/01
    • /mdevent lactive 2 -nt shows page 2 of all events
      • [NewYearsEve] Start: 01/01, End: 01/01
        

Update Time

Updates the time an event is active

Access

ZManagers

Aliases

  • ut
  • updatetime

Syntaxes

  • /mdevent ut <Event Name> <Start Date> <End Date>
    • <Event Name> name of the event to update
    • <Start Date> the date the event will start on, in the format Month/Day. e.g. 10/2(October 2), 4/30(April 30)
    • <End Date> the date the event will end on, in the format Month/Day. e.g. 12/5(December 5), 5/3(May 3)
    • /mdevent ut Halloween 11/1 11/14 updates the event Halloween to instead last from November 1 to November 14

Note

See Date Considerations for more information about dates


Delete

Deletes an event with the specified name

Access

ZManagers

Aliases

  • delete

Syntaxes

  • /mdevent delete <Event Name>
    • <Event Name> name of the event to delete
    • /mdevent delete Halloween deletes the Halloween event

Note

See Deleting Events for more information about deleting events


MDEntry

Commands for manipulating MDef-Map entries. The base command is /mdentry. All of the following are subcommands of /mdentry


Set

Creates or updates(if it exists) an MDef-Map entry

Access

ZManagers

Aliases

  • set

Syntaxes

  • /mdentry set <MDef Name> <Map Name> [Additional Data...]
    • <MDef Name> the name of the MDef to bind
    • <Map Name> the name of the map to bind to
    • /mdentry set 2020-Default Beach House adds a default MDef – 2020-Default – to Beach House

Additional Data

Event

Specifies the event which the entry belongs to. See Event Binding for more information

  • -{e|event} <Event Name>
    • <Event Name> the name of the event to limit to
    • /mdentry set 2020-Default-Halloween Beach House -e Halloween adds a limited time MDef – 2020-Default-Halloween – to Beach House
Weight

Specifies the weight of the MDef. See Weight for more information

  • -{w|weight} <Weight>
    • <Weight> the weight of the entry
    • /mdentry set 2021-Default Beach House -w 9 adds a default MDef – 2021-Default – to Beach House with a weight of 9
Submode

:warning: UNIMPLEMENTED :warning:
For simplicity’s sake, this flag won’t be implemented until after this proposal is implemented and completed

Specifies the submode the entry belongs to. e.g. Rapid, Hardcore, Expert, etc. See Submodes for more information

  • -{s|submode} <Submode>
    • <Submode> the name of the submode to limit to
    • /mdentry set 2021-Default Beach House -s rapid adds a default MDef – 2021-Default – to Beach House for the rapid mode
Priority

:warning: UNIMPLEMENTED :warning:
For simplicity’s sake, this flag won’t be implemented until after this proposal is implemented and completed

Specifies the priority level of the entry. See Priorities for more information

  • -{p|priority} <Priority>
    • <Priority> the weight of the entry
    • /mdentry set 2021-Default Beach House -p 9 adds a default MDef – 2021-Default – to Beach House at the priority level 9

List

Lists all the entries associated with the specified field

Access

Everyone

Aliases

  • list

Syntaxes

  • /mdentry list <{-map <Map Name...>|-{m|mdef} <MDef Name...>|-{e|event} <Event Name...>}...>
    • -map <Map Name...> if specified, only show results for the specified map
      • <Map Name...> the names of the maps to look up
    • -{m|mdef} <MDef Name...> if specified, only show results for the specified MDef
      • <MDef Name...> the names of the MDefs to look up
    • -{e|event} <Event Name...> if specified, only show results for the specified events
      • <Event Name...> the names of the events to look up
    • /mdentry list -map Beach House displays the Map-MDef entries for Beach House
      • MDef Name Event
        2020-Default
        2020-Halloween Halloween
        2020-Christmas Christmas
    • /mdentry list -map Beach House -e Halloween displays the Halloween entries for Beach House
      • MDef Name
        2020-Halloween
    • /mdentry list -map Beach House -e Halloween Christmas displays the Halloween and Christmas entries for Beach House
      • MDef Name Event
        2020-Halloween Halloween
        2020-Christmas Christmas
    • /mdentry list -m 2020-Default displays all entries where 2020-Default is used
      • Map Name Event
        Beach House
        Hill House

Delete

Deletes an MDef-Map entry

Access

ZManagers and Hosts(Custom Lobbies)

Aliases

  • delete

Syntaxes

  • /mdentry delete <MDef Name> <Map Name> [-{e|event} <Event Name>]
    • <MDef Name> the name of the MDef associated with the entry
    • <Map Name> the name of the map associated with the entry
    • [-{e|event} <Event Name>] specifies the event which the entry belongs to
      • <Event Name> the name of the event associated with the entry
    • /mdentry delete 2020-Default Beach House removes 2020-Default from Beach House
    • /mdentry delete 2020-Default-Halloween Beach House -e Halloween removes 2020-Default-Halloween in the Halloween event from Beach House

Other Commands

Commands that don’t fit in other categories


Select

Selects an MDef that will be the target of the following commands

Access

ZManagers and MDEditors

Aliases

  • s
  • select

Syntaxes

  • /mdef s <MDef Name>
    • <MDef Name> the name of the MDef to select
    • /mdef s 2020-Default

-t Flag

The -t flag is used to temporarily select an MDef. It’s equivalent to Select. If a command doesn’t need an MDef, then nothing happens

Access

ZManagers and MDEditors

Aliases

  • -t

Syntaxes

  • <Command> -t <MDef Name>
    • <MDef Name> the name of the MDef to select
    • /mdmob add 10 1 1 adds 10 Blue Slimes to round 1

Force MDef

Forces an MDef to be used in the next battle

Access

Custom Lobbies’ Hosts, Map Builder Lobbies’ Hosts

Aliases

  • fmdef
  • forcemdef

Syntaxes

  • /fmdef <MDef Name>
    • <MDef Name> the name of the MDef to force
    • /fmdef 2020-Default forces 2020-Default to be used next battle

Map Submission

Any format for map submissions works, as long it’s clear. But if you don’t have one to use, here’s one:


Table was created with TablesGenerator


Backups

Note that these commands are irreversible, so please ask for a backup after any public changes

2 Likes