Dear players and DXE users,

As the times go on so do our experiences on Apollo realms. The Twinstar Team recently blessed us with Cross-Faction Battlegrounds thanks to which it’s possible to ballance players of both factions into a single battleground, splitting them as needed into both teams. I doubt there is somebody who didn’t realize one day at the start of a battleground that they are on horde side when they are a night elf or what are they doing in the alliance base when they are a troll and why is my teammate taurent and gnom respectivelly.

The feature as it is not really a concern for me. Mixed teams will certainly help to make more battlegrounds possible but there is one thing that annoyed me greatly and that’s the fact that while switching the sides the UI would keep changing too. One time the markers are red and the other they are blue. One time our score is red but the next time it’s blue. I found it chaotic. So much so that I started avoiding battlegrounds. When is released version 3.3 on July 16th 2019 with the first iteration of battlegrounds it started playing them much more enjoyable. Everything was in order but now came the chaos. I had to attempt to change it. So I have been working for more than 2 months on the solution and the result is the following update:

Deus Vox Encounters 3.4

– Battlegrounds II – ​

If you plan on using new battleground features the information below might offer you necessary understanding.

The goal of this update is to bring you better predictability of how DXE or the game itself prsents your faction inside the battleground. It’s based on your selection of an option I called “Faction Mode” in DXE.

Faction Mode

There are 4 options to select from:

  • Alliance – the player is always perceived as Alliance
  • Horde – the player is always perceived as Horde
  • Actual – the player is perceived as their actual faction (not the one they were assigned to in the BG)
  • Current – the player is perceived as the faction they were assigned in the BG (ignoring their actual faction)

Depending on the player’s selection, player’s faction and the faction player has been assigned to in the battleground it is then determined if different aspects of the game’s appearance should be switched.

Example #1: I’m an Alliance player, I prefer Alliance and I was assigned to the Alliance team = nothing changes

Example #2: I’m an Alliance player, I prefer Alliance but I was assigned to the Horde team = UI switches

Example #3: I’m an Alliance player but I prefer to be perceived like Horde and I was assigned to the Alliance team = UI switches.

Example #4: I’m an Alliance player but I prefer to be perceived like Horde and I was assigned to the Horde team = nothing changes

Performed changes

It is important to realize that any addon, which DXE is also, has limited options to what it can influence.

There are aspects of playing for the other faction that can’t be changed. For example starting in the opposite faction base – nothing can be done.

Then there are game models and textures. The alliance flag will look on a stand the same way no matter if a horde player wants to steal it or an alliance player (playing for the horde team). A base take by the alliance will have the alliance flag no matter if an alliance player assaulted the base or a horde player (playing for alliance team) did – nothing can be done.

But there are other aspects of UI that are within our powers to change. So DXE makes changes inside the battleground according to the preferred faction to these UI elements:

Chat

In battlegrounds there are 5 types of texts that end up in the chat frame (and in the last case also in the Emote Frame):

  • Battleground Horde – e.g. Arathi Basion “Greghouse claims the blacksmith! If left unchallenged, the Horde will control it in 1 minute!“,
  • Battleground Alliance – e.g. Warsong Gulch “The Horde flag was picked up by Greghouse!”,
  • Battleground Neutral – e.g. Isle of Conquest “Greghouse claims the Docks! If left unchallenged, the Horde will control it in 1 minute!”,
  • Monster Yell – e.g. Alterac Valley “Herald yells: The Stonehearth Bunker is under attack! If left unchecked, the Horde will destroy it!”,
  • and Raid Boss Emote – e.g. Strand of the Ancients “The Horde captured the East Graveyard!”.

DXE adjusts these text by swapping the words “Alliance” and “Horde” so that they correspond withthe preferred faction.

The exeption are the texts that players write themselves (directly or indirectly using addons including DXE). While comunicating with other players I think we should share the common reality. If the player of Alliance preferring Alliance but assigned to Horde had written “Alliance is going to win.” and meant their own team which would have been Horde team at the time others might be confused. So I would prefer that with any outgoing communication players would call their team the way it actually is no matter their preferences (note: This might sound to you like something other than playing video games).

Points of Interest (POIs)

In WoW there are 3 types of maps:

  • World Map (the big one, usually in fullscreen mode),
  • Battlefield Minimap (the smaller one that people sometimes use in BGs),
  • and Minimap (the classic, usually, round one, most commonly at the top right).

On all of these maps in battlegrounds small icons of important places (so called Points of Interest) are shown and they have colors corresponding to a faction. Alliance bases are blue, horde bases are red.

DXE switches these colors so that they correspond to your preferred faction.

Icons with the Alliance as preferred factionIcons with the Horde as preferred faction

The exception are the icons of flags. I decided that it would be best that flag icons always correspond with their physical appearance (which can’t be changed).

Player table

After pressing SHIFT + SPACE a familiar table of players is shown containing information about damage, healing, honor, etc. Similarly as above DXE adjusts the information flowing to this table so that factions here also correspond to your preferred faction.

Score Frame

I’ve also made changes to the way Score Frame is drawn in relations to your preferred faction. In the previous version the alliance was always on the right and the horde was always on the left. In the new version the order is determined by your preferences. The team the player is assigned to I’m calling a “home team”. The home team is by default on the left side and the other team is on the right but you can choose to have them the other way around. The colors are then determined by your preferred faction as explained above.

Score Slots

In accordance with the changing of team ordering inside the Score Frame it makes sense that the order of slots should get reversed too in some cases. This behavior can be turned off individually for a given battleground if the player wishes.

An example below shows Arathi Basin

With the automatic reversing turned onWith the automatic refersing turned off
Slot order begins with Farm sticks to the horde side.Slot oredring beginning with Stables is always from left to right.

Capture Bar

  • Specifically for the Eye of the Storm battleground I duplicated the functionality of Blizzards Capture Frame which is by default displayed at the top right under the minimap. The reason was to better integrate new faction mechanics and their switching and better integration to Score Frame. Displaying of DXE’s Capture Bar is optional and by displaying it the original Blizzard’s Capture Frame is hidden.

Battleground Shutdown

A new feature in battlegrounds is the battleground shutdown timer which is shown as soon as not enough players are detected in the battle. This gives more accurate idea to player than the default chat messages which are also delayed.

On top of that in Alterac Valley I added victory prediction timers should the battleground end due to the lack of players. In Alterac Valley the player with the most points (Resources) at the end of the countdown wins (other battlegrounds end with a timeout draw).

Battlegrounds

The reason why it took me 2 months to come up with a solution was mainly the fact that to be able to implement all of the faction shuffling above I decided to rewrite the etire system on which the original battlegrounds are based upon in DXE. Because of that I had to make most of the battlegrounds from scratch. The new system however is now better arranged for me and allowed me to add new functions that used to be very difficult to add before.

General

  • “Speedkills” in battlegrounds are now recorded from the point of the effective side to which the player is assigned to. In another words, a victory of the alliance team shall be recorded as such no matter if the player is from alliance or from horde.
  • Table of players at the end of the battleground now shows the correct texts for a draw and for a timed-out battleground because of not enough players present. It is important to note that by default the Blizzard UI displays the draw / time-out as Horde victory which is a bug and no victory occurs.

Capture the Flag

  • Improved the mechanism of flag detection upon entering a battleground in progress. If we can tell the flag has been stolen, UI will show as such and if we’re able to figure out the flag carrier’s name it will be updated too.
  • Fixed last version’s bug when setting the flag carrier to the Score Slot where the player wasn’t able to click the slot to target the carrier.
  • Fixed the flag returning countdown which used to break sometimes because of how the timer library is implemented.
  • A special fix for the map, where instead of wrong texture for the alliance flag the actual flag icon is shown.
Before the fixAfter the fix

Base resource race

  • Reworked the method of estimating the winner (in case of Arathi Basin, Battle for Gilneas and Eye of the Storm). The current method should be as accurate as possible at any point.

Alterac Valley

  • Fixed displaying of East Frostwolf Tower icon when it gets destroyed. For some reason the server stops sending the information so in that case DXE simulates it like nothing wrong is going on.
Before the fixAfter the fix
  • Added a countdown of estimated winner in case the battleground is closing because of the lack of players.

Strand of the Ancients

  • Improved battleground state detection and code handling the battleground.

Eye of the Storm

  • Rotation of base texts in Score Slots which is based on the player’s character rotation is now much quicker having shortened its update interval.

Events

  • Created a module for The Crown Chemical Co. (The Love is in the air event boss).

Bastion of Twilight

Valiona & Theralion

  • Added a backup trigger for Engulfing Magic, so that the timer disappears even for people who are in the other phase.

Blackwing Descent

Omnotron Defense System

  • Added a miscellaneous settings for Arcane Annihilator so that targeting Arcanotron is not required.

Maloriak

  • Fixed Scorching Breath timer.
  • Fixed Release Aberrations timer.

Well of Eternity

Queen Azshara

  • Added Hand of the Queen arrow canceling.

Improvements and fixes

Options

  • Added the Show Score Frame button to show Score Frame in a test mode.
  • Added a font setting for Score Slots
  • Reorganized settings for Score Frame
  • Added a button to test Break timer.

Core

  • Fixed a Lua error that happened during the automatic opening of the windows at the start of a fight.
  • Fixed more Lua errors.

Radar

  • For encounters where the radar is set not to check distances between players it is now possible to lower its transparency so that other elements such as circles and lines are more prominent.
The settings can be found in the Options here:

Alerts

  • Improved text alignment for timers.
  • Fixed text alignment animation for timers.
  • Fixed broder updating for timer animations.

Warning for developers

To make faction switching possible I had to replace these global functions:

  • GetNumMapLandmarks,
  • GetMapLandmarkInfo,
  • GetBattlefieldScore,
  • GetBattlefieldTeamInfo,
  • SetBattlefieldScoreFaction,
  • and GetBattlefieldWinner

The original function are available under the variable DXE.originalfunctions. Replacing these global functions was necessary because the Blizzard UI itself calls these and it was by far the easiest way to make faction switching possible.

Conclusion

I thank the players who plentifully use DXE , support my will to keep developing it for Apollo and Apollo 3 realms and I hope you will keep on using DXE for Firelands too. In this release there were a lot of changes that I tried to test for as much as possible and so I ask you, please, if you find an issue do let me know so there is any hope of fixing it.

Incoming Firelands should remove all the timer differences between the 4.1 raids which means it’s no longer necessary to release two versions and for now on a single joint version will get released.

I’d like to remind you that if you think my work on DXE has a value and you are willing to appreciate it in a way, you can send me whatever amount of stars you see fit (see the link at the top right).

Thank you!

Leave a Reply

Your email address will not be published.