Jump to content
Sign in to follow this  
Razmataz

Mini Patch 830-2c, 2d, 2e Changelog - Aggregated Changes

Recommended Posts

   
  Changelog (Patch 830.2c, 2d, 2e - "Aggregated Changes")
   

Release date:  Rolling - July -> September 2021

Here you'll be able to read up on changes, big and small, made to various parts of the server.

Legend
  White  -  This was not changed. Also used for contrast.
  Green  -  This was added.
  Red  -  This was removed.
  Yellow  -  This was changed.


 

Highlights

New Player Experience

  • An introductory area has been set up for all new joiners in the flair of a questline on live servers, in order to ease them into the wonders of Epsilon.
     

Various bug fixes

  • Oddities with various features have been corrected.
     

Myriad of improvements

  • Extensions to behaviour of existing commands have been improved / made more robust / allow for slightly different contexts for the command to be used in.

 


 

Preamble

Hi guys!

Sorry, we've been ommitting these a little bit, so much so that we've gone through "three" minor updates without much for the official process of keeping you up to date with what's being added!

2c was effectively a small quality of life patch with a couple of new features and improvements,

2d brought us the NPE (which required a considerable amount of fundamental work)

2e is another small quality of life patch with, again, a few new features and bug fixes.

 


 

New Commands and Features

NPE

  • A new player experience has been set up which is designed to introduce new players to morphing, scale, .additem, MogIt, .gps $direction #amount, .cheat fly, .tele, .phase overview, .phase create and .phase enter.
  • There is an additional "repretoire of knowledge" given after the NPE, which briefly covers the rest of commonly used commands.

 

Main Phase spells

  • The system handling spells being disabled in the start zone or in a phase via use of toggle silence has been rewritten to allow live updates to the permitted spells list. These spells can now be cast from the spellbook.

 

/who

  • While in a phase, /who will now respect the area and zone overrides that the phase you're in has, and accommodate it in the who search accordingly.

 

.command

  • Subcommands added:
    • .command channel $command_category $new_channel/reset
      • Redirects all of the output of the given command category (e.g, cheat commands, phase forge npc outfit commands) to a different channel other than "System Messages". This is applied across the entire account.
      • Command categories include:   announce, announce_event, announce_guild, announce_phase, cast, character, cheat, conversation, doodad, epsilon, forge_item, go, gobject, gobject_blueprint, gobject_group, gobject_mass, gps, group, guild, help, learn, list, lookup, misc, modify, npc, pet, phase, phase_forge_npc, phase_forge_npc_displays, phase_forge_npc_outfit, phase_forge_npc_outfit, phase_shift, phase_shift_area, phase_shift_wmo, reset, send, server, tele, titles, waypoints, world
      • Channels include:    guild_announce, achievement_announce, blizzard_whisper, experience, honor, reputation, skill-ups, tradeskills, opening, pet_info, misc_info, battleground_horde, battleground_alliance, battleground_neutral, target_icons, blizzard_services_alerts
      • You can then enable/disable or even recolour each of the above channels as per your chat settings.
      • Please note that not all addons may support their channel output being redirected.
    • .command settings
      • Displays the current channel redirection configuration.

 

.cheat

  • Subcommands added:
    • .cheat slowcast [$on/off]
      • Causes channels and spell casts to take forever while active.

 

.phase

  • Subcommands added:
    • .phase clearaura #spellId
      • Removes the gven #spellId from all creatures in the phase.
         
    • .phase forge npc outfit class #class_id
      • Sets the NPC to use the character class #class_id. Most important to you guys will be 6, for Death Knight eyes.
         
    • .phase shift area skybox #skybox_spell
      • Applies the skybox_spell to all players who enter the area. -1 will result in no adjustment to any skyboxes on the player, while 0 will result in all skybox spells being removed.
      • This feature still requires a CDNS update to publish all 3,288 new spells.
         
    • .phase shift zone skybox #skybox_spell
      • Applies the skybox_spell to all players who enter the zone. -1 will result in no adjustment to any skyboxes on the player, while 0 will result in all skybox spells being removed.
      • This feature still requires a CDNS update to publish all 3,288 new spells.
         
    • .phase set skybox id #old_skybox #new_skybox
      • Behaves the same as the other .phase set skybox commands, but allows you to define the skybox you want to replace as opposed to having to be in a skybox "here", in the "zone" or on the "map". Accepts IDs from .gps "In Skybox" or results from .lookup skybox

 


 

Command and Feature Changes

.cheat

  • Optimisations in the backend for cheat commands.

 

.doodad

  • .doodad mass import #range
    • Prevented players from doodad importing if they do not have sufficient access in the phase.

 

.gobject

  • .gobject set visibility [#visibility]
    .gobject group visibility [#visibility]
    .gobject mass visibility [#visibility]
    • The limit for supervisible objects has been removed.
       
  • .gobject copy [$direction #distance] [#count]
    .gobject group copy [$direction #distance]
    • Specifying no arguments now copies the object (or object group) to your position, retaining all other aspects (including orientation).
       
  • .gobject turn [#angle]
    .gobject group turn [#angle]
    • Specifying no arguments now turns the object (or object group) to the direction you are facing in.

 

.guild

  • guild rename $name
    • Prevented anyone but the owner of the guild from renaming it.

 

.phase

  • phase blacklist add $name
    • Adjusted logic in identifying correct account to blacklist in the backend based on character activity / deleted characters.
       
  • .phase forge npc create [#displayid]
    • The default cap for phase forged npcs has been increased to 10,000.
       
  • phase forge npc gossip text add $text
    • The gossip page is now expected to update with new text as opposed to closing.
       
    • phase rename $name
      • Prevented anyone but the owner from renaming the phase.
         
    • phase toggle flight [$on/off]
      • Now actually works.
         
    • phase toggle listed [$on/off]
      • Now supports no argument, in which case it will alternate between listed and not listed.
         
    • phase shift wmo [root/sub/manual] name $name
      • Will now force the wmo to stop inheriting any data from an areaId if it is set up to do so by default.

     

    .npc

    • npc follow #distance #angle
      • Additional arguments are now available to .npc follow which allow you to specify at what angle and distance a NPC should follow you at. If distance is specified, then uses the relative angle between you and the NPC to determine the following angle.
         
    • npc info
      • Now displays outfit equipment if the NPC is a forged NPC, as long as it is spawned in its original phase and you are an officer+ of that phase.

     

    .waypoint

    • waypoint show [$on/off]
      • Waypoint nodes for NPCs with outfits now display the outfit rather than a wisp.
      • Waypoint nodes walk in the direction of the next waypoint.

     


     

    Bug Fixes

    Crashes

    • Fixed a crash that occurred with requesting a hotfix update for an item when the item specified was not a forged item.
    • Fixed a crash in a secret command.
    • Fixed a crash associated with the waypoint system incorrectly reserving a vector of size greater than 2305843009213693951 elements.
    • Fixed a crash caused by a teleporter object acting on a player that went out of scope (e.g. logged off) before it could trigger.
    • Fixed a crash caused by passing in a substantially large value into any .phase forge npc outfit attribute command.
    • Fixed a crash caused by a minion being summoned by a non-player.
    • Potentially fixed a crash that could trigger whenever a gameobject was updated by a command while simultaneously having data requested about it.
    • Fixed a client crash when .gobject group select was performed on substantially large groups when toggle highlight was enabled.
    • Fixed a client crash when ObjectMover would select a SIEGEABLE [sic] or PHASEABLE MO gameobject type. This has since been changed in the addon.

     

    Performance

    • Fixed an issue where gobject mass delete would take up to 25 seconds to delete a single gameobject group from the database, causing a significant queue to form if a mass delete was large enough. This would lead to object data from spawning not being pushed to the database, causing .gobject delete to not work.

     

    Other

    • Fixed npc cast delete not working on the 0th id
    • Fixed gossip forge state being lost following a server restart if the creature had been updated by virtual updates (e.g. outfit, name, subname, etc commands)
    • Fixed npcs becoming invisible.
    • Fixed object teleporters having improper text at the top of the page.
    • Fix phase inactivity not being updated by owners of the phase.
    • Fixed improper handling of dbresynching gameobjects in a phase with delete mode.
    • Prevented knockback spells from having any effect on NPCs unless you are an officer+ in the phase.
    • Removed name restrictions for a variety of titles, e.g. Lord, Major.
    • Fixed phase weather behaving inconsistently and not being applied on people entering the phase, or disappearing when teleporting in any capacity.

     


     

    End of Changelog

     


    Glossary

    Below is a list of common terms you will encounter when reading changelogs and using commands on Epsilon, to help you understand how a command might work.


    • Syntax
      • The structure of a command, composed of strictly arranged words (arguments and/or parameters) required to be met for the command to be performed.
        • Think of it as the grammar of programming, where all computers are grammar nazis who won't do what you ask if you don't write perfectly.
          • How you see Epsilon's changelog and in-game use of syntax is not what it tends to look like in actual programming.
      • Parameter 
        • Parameters in our case are used to structure the specific command it is you wish to perform.
      • Argument
        • Arguments in our case are used to tell the parameters which data type(s) to use when performing the command.
    • Example:
      • Syntax  =  .phase forge npc displays add #display_id %scale %weight
      • In the case of Epsilon, is the same as:
      • Syntax  =  .parameter parameter parameter parameter parameter argument argument argument
        • .phase forge npc displays add 100 2 5
          • The arguments (green) tell the preceding parameters (white) to:
            • "Add"  #display_id  "100"  at %scale  "2"  with %weight  "5"  to the targeted forged NPC.
    • Data types
      • Floating Point - Symbol  %
        • A real number, accepts decimals. World of Warcraft does not count more than 6 decimals.
          • .mod scale %scale  =  .mod scale 1.063523
      • Integer - Symbol  #
        • A natural number, does not accept decimals.
          • .gobject spawn #display_id  =  .gobject spawn 175490
      • String - Symbol  $
        • A sequence of characters, typically forming one or multiple words.
          • .summon $name  =  .summon Bob the Builder
    • Optional - Symbols  [ ]
      • When a single data type is encased in brackets, it means it's an optional argument and is not required in the syntax for the command to function.
        • .phase forge npc displays add #display_id [%scale] [%weight]
          • #display_id  is required but  [%scale]  and  [%weight]  are optional.
      • When two or more data types are encased in brackets, it means that though they are optional, if one is specified then both are required for the command to function.
        • .gobject teleporter add [#guid] [#icon "$text"] [#x #y #z] [#orientation]
          • No argument is required as the command uses player position by default, however  [#icon "$text"]  requires both arguments to be specified to work.

    Share this post


    Link to post
    Share on other sites

    Please sign in to comment

    You will be able to leave a comment after signing in



    Sign In Now
    Sign in to follow this  

    • Recently Browsing   0 members

      No registered users viewing this page.

    ×