Valor spent February 2026 in transit: the project moved to a new core. From the player's side an event like that looks dull - a maintenance window, followed by a stretch during which something is being fixed here and there. Internally it is the largest operation a private server ever undertakes. Let us go through what happens during one.

The core is the server

The WoW client is not the game in itself: it draws the picture and sends requests. The core is the server application that answers those requests and holds up everything else:

  • the world: spawns, NPC behaviour, zones;
  • combat mechanics: spells, auras, cooldowns, damage, threat;
  • instances and boss scripts - everything behind the phrase "the boss works correctly";
  • the services around the game: auction house, mail, guilds, the dungeon finder queue, chat;
  • database work, with accounts, characters and the world stored separately.

The 12340 build client, meanwhile, does not change at all: it speaks one protocol and has no idea which application is answering it. The consequence is that the core can be replaced without touching what the player has installed. The reverse holds too: a different version of the game needs a different core. The Legion 7.3.5 realm with a level cap of 110, which the project has in development, is not a "setting" on the current server but a separate platform for a different client.

Why cores get replaced

There are usually three reasons.

Performance. The core simulates the world in real time, and its bottlenecks are predictable: combat events, pathfinding, database queries. The difference between cores shows up not in a quiet world but under load: mass PvP, a season launch, a full raid.

Accuracy of mechanics. "Just like the original" is a thousand small things: aura durations, the order in which effects apply, the behaviour of one specific boss ability. How well they are implemented varies from core to core. A migration is a way to inherit somebody else's years of work on them.

Room to add your own things. Mythic+ keystones, the battle pass, mount crafting and hardcore mode do not exist in 3.3.5a - all of it has to be written. How expensive that is depends on how the core is built: whether there is a coherent scripting and module system, whether behaviour can be extended without rewriting half the code. A core is chosen not for today's feature set but for the one you plan to build over years.

Custom content is the first thing to break

Non-standard content rests on modifications, and those live in two places: in the core's code and in the data. Code cannot be carried over word for word, it was written against a different structure. Data may not line up with the table schema. That is why original content usually behaves fine after a core change, while your own work has to be ported and checked by hand.

February's fix to the creature type on the custom races is a clear example of this class of task. A race on 3.3.5a lives not only in client models but in server-side values: starting zone, available classes, reputations, creature type. That last one looks like a formality until you remember how many mechanics look at it: some spells only affect humanoids, crowd control effects check the target type. A wrong value does not stop you creating a character and walking around the world - it shows up in combat, selectively and not straight away.

This is a general property of migrations: what breaks is not the thing you notice immediately but the thing that is rarely tested. Major breakage is found within the first hour; a discrepancy in a single data field turns up in a player report two weeks later.

Why the move is done before release

A core change touches characters and their data, which on a live project with history means risk to other people's progress, a long maintenance window and an inevitable series of regressions on top of achievements people have already earned. Before release the cost of a mistake is different: what breaks is a test character, not somebody's season.

The Valor timeline reads exactly that way: the core was changed in February 2026, and the project released on 18 April 2026. The two months between them are not a pause but a working interval in which the consequences get caught. The client side went the same way: three launcher versions across March - 1.0.2, 1.0.5 and 1.1.5. That is a separate layer from the core, but the character of the work is the same.

What the player actually sees

  1. Maintenance. The only part that is noticeable straight away.
  2. A stream of small fixes instead of one big patch. That is a healthy sign, not a symptom of chaos: a significant share of discrepancies is only found through players.
  3. A more predictable foundation. Once the stream of fixes dies down, the changes in the news stop being repairs and become content again.

There is only one useful thing to do during periods like this: report anything odd, even when it feels like "this is probably intended". From the player's side, a data migration bug and a design decision look identical. What was fixed and when is visible in the news, and a breakdown of the custom races is on a separate page.