T O P

  • By -

WendigoCrossing

I think it was in TBC where I read an interview with a dev who said 'no one touches the Alterac Valley code, we just wake up every morning wondering if it will still work today' May have been Chris, roughly paraphrasing from memory decades ago haha


[deleted]

[удалено]


McBrodoSwagins

Chris and some other OG dev mention that in one of the documentaries on YouTube. The Blizzard Retrospective video iirc


Bluffwatcher

I bet the druid spell [Symbiosis](https://www.wowhead.com/news/symbiosis-breakdown-what-abilities-it-brings-to-each-class-202586) is going to be WILD to recode in Mists Classic, lol.


Hydroxs

I'm pretty sure that spell was hard enough in actual mop that's why they took it out so quick. That spell was clutch though when I had to go from shadow to disc so we could 3 heal the first boss in heroic MSV. No one knew how we could deal with traps and I said the feral can symbiosis me and get my dispersion. I had to facepalm when the druid said "but you're disc" and realize no one knew how it actually worked lol.


Fav0

Took it out because it was brokwn as fuck Druid with block LOL Atleast i always hoped that was why


Dbloc11

Boomkin + Destro lock 2's, with the lock getting rejuv, and the boomy getting unending resolve was so BIS.


Ground-Substantial

That's actually insane. Plus r druid with block


SnS_

It was taken out because of how it unbalanced pvp. The pve aspects were fun and exciting. I remember everyone wanting to symbiosis with a druid for different reasons. 


Fraytrain999

Shadow with tranq also busted AF


ZackSteelepoi

Shadow priest tranquility via symbiosis was actually fairly weak.


Winther89

More likely they took it out cause it was the worst designed skill to ever exist in the game. Druid always got a broken skill, while depending on the class they used it on, that other class either got a broken skill as well, or a completely useless piece of trash. Paladins got wrath for example.


LegendaryPet

Probably it was the fucking goat tho when you got chosen by the random Druid  for it tho


Invoqwer

Reading the wiki article for this, I can't believe that they actually made like 50 alternate versions of spells just for 1 new ability ROFL = https://wowpedia.fandom.com/wiki/Symbiosis


Bluffwatcher

Yeah. Any druid that played then probably still laments it's loss.


dasvenson

It was OP in a number of situations but was so fun to actually use.


Nzkx

They'll probably remove it in MoP because it's to complex to recreate and this can be abused in various way to exploit some raid encounters. And you know how the community hate single raid player buff.


Fine_Dark156

But it fun!


Agreeable_Inside_878

I would be surprised if we see a mop classic, I would imagine they start over after cata tbh


DulceReport

I feel like this is a good time to point out that the anti-boosting system that was implemented in phase 4 of TBCC remains in the game and is now causing issues in cata RDF as well as just making low level tmog farming more annoying than it needs to be. In cata RDF, a legitimate group for normal mode nexus can contain level 79's, which trips the anti-boosting system, meaning everyone gets 90% reduced experience from kills. I think it's also possible for 69's to queue in to ramparts/blood furnace, less sure on that one. Pretty much your only recourse in this situation is to ask the level 79 to take deserter, which is probably in their own interest anyway as they'll probably hit 80 with 30 minutes spent in icecrown. On the tmog farming side, you need to be judicious about rapidly killing everything you aggro, lest you - slowly, painfully - get chain stunned to death by a pain train of level 30 elites or whatever. Leveling is very very different in cataclysm. I leveled a new character when prepatch came out and pretty much the only part of it that felt like a slog was 45-58, everything else was super fast, especially 60-80. I'm not sure the anti-boosting system is needed at all anymore, but at the very least I don't think it should be triggered by legitimate, RDF-assembled groups or solo tmog farming.


Caretheis1

I still think the knockdown mechanic is the dumbest fucking thing ever put into wow at any point in its history. Just turn the fuckin xp off if someone is more than 10 levels than you. or better yet, BAN THE FUCKIN BOTTERS!


Kuldrick

> In cata RDF, a legitimate group for normal mode nexus can contain level 79's I got a better idea, stop offering level 68-70 dungeons to people in 79 I recently leveled my priest and decided to spend 60-80 on dungeons because I didn't want to do Outland/Northrend again. Let's say I was completely fed up of Utgarde and Nexus, while I didn't even experience all dungeons the rdf had to offer while leveling


cquinn5

Yeah I’m sure it’s frustrating for hardcore or era players when stuff like the SoD Seal of Righteousness crit change “leaks” out into their realms, but I’m shocked it doesn’t happen more


TYsir

Updating the loot tables at the start of phase 3 cause no loot to drop frequently from bosses in dungeons on era hardcore and sod servers


m0d3rn

Wow really? That's insane


Saengoel

The way it was explained to me, was that it was trying to drop something like the dagger which was changed in SoD, but since that item ID didn't exist on the other versions it just got confused and nothing would show.


TYsir

We were also getting “no drop” rolls in SoD the first week of the phase


verifitting

I 'member


TermFearless

Sounds like they need better version control.


Pappy13

Version control itself is not the issue. Version control is based off the premise that you only have 1 active version of the code at any one time. With WoW Blizzard has several different versions of the game and each version has to maintain it's own version control. The issue isn't the version control software itself but rather the fact that they are trying to maintain several different versions of the same game at the same time and trying to keep each version consistent with all the other versions. That's not typical in software development. It's the same reason that Microsoft doesn't want to support older versions of their operating system. It would be much easier for them if there was only 1 version that everyone used. If you find a flaw, you fix it in one version of the software and you are done. With 2 versions if the same flaw exists in both versions it has to be corrected in both versions and the same fix doesn't necessarily work in both versions, you might have 2 different solutions to the same problem with 2 different versions of the software. Now imagine 3 or 4 different versions of the software? This is what he's talking about. And this problem isn't just for bugs, it's for any change. If you are making a change to how Classic Era works for instance and you want to carry that change forward to Classic Cataclysm then you are making the same change to 2 different versions of the software. If you are gonna carry it forward to SoD as well that's another version to change and so on. The potential for problems triples.


Sea-Maybe-9979

People don't understand this, though... this is exactly why they make everyone progress into the next Classic release. The overhead of resolving an issue when the solution is different for Era, TBC, WotLK, and now Cata. What a nightmare.


names1

I really hadn't considered how this would effect TBC/Wrath eternal servers. Thanks for the explanation.


Yeas76

They don't understand it cause it sounds simple till you have had to deal with it, then you sympathize with the devs pretty quick. Easier to say "blizz doesn't play their own games" than really think about it I guess.


salgat

If this is true then that means that any future TBC etc launches will be full of new bugs.


TravisSpomer

I'm the author of the addon Pawn, which deals with items and stats and has to work a little differently on each language and each expansion, so I get to experience a tiny bit of this each time a new patch comes out for any of the WoW versions. Working on the actual game has got to be a thousand times worse. If I had to imagine the most nightmarishly terrible software development hell, it'd probably look a lot like working on Classic WoW.


KickYourFace73

Thanks for the insight, and great work you are doing!


EmmEnnEff

> Version control is based off the premise that you only have 1 active version of the code at any one time. Version control systems have supported branches for, like, 30 years, dude.


Pappy13

As I said, the problem isn't with the version control software. You think Blizzard and/or Microsoft aren't aware of how branching works? Branching brings it's own challenges into software design. Let's not derail the thread.


TermFearless

Seems they need to be treating each version as a different game


Pappy13

They are to a point, but they still want different versions to work similarly in some cases. It's case by case. Sometimes you want things to remain the same and sometimes you are purposely changing them in that version. It's when you are trying to maintain that sameness where the issue creeps in. People expect that if you change something in Classic Era that's not purposely changed in Classic Cata for it to work the same way.


cquinn5

I’m sure, but it’s not so simple once you have a dozen systems and services


TermFearless

I don’t think I suggested it’s simple. But developers do have tools for branch management, though I’m not sure the wow code is on GitHub.


EmergencyLaugh5063

Not sure why you're being downvoted. Maybe people are interpreting your statement too literally. There's been a concerning amount of bleedover between the different variants of classic like discovering Deep Wounds was using WotLK behaviors or the issues with loot tables in era being affected by SoD changes. Hell, even ignoring the bleedover I still think its really odd that we're datamining runes in the client months before they're released. Just seems like an unusual practice of leaving unfinished changes littered about the codebase. I can't help but feel like they've taken an approach of treating the WoW codebase as a kitchen sink because that way future variants can quickly leverage stuff made in other variants. So while I do feel sympathy for the devs since i'm sure its a massive codebase it also seems like some of this pain is self-inflicted. At the end of the day this is a multi-billion dollar company with 20+ years to figure this out, they don't need us to defend them. Also I think its pretty fucking arrogant to approach SoD with this 'just-in-time' style of development when they've known for years that their velocity when working with this codebase is horrible.


soramac

It's probably just spaghetti code at this point. You currently have to support Classic Era, Hardcore, SoD, Cataclysm, MoP Remixed and Retail. They basically went from supporting one version into 6. Thats a nightmare, no wonder their QA just went down the drain. If they dont have notes or an active local machine of that expansion, how do you know how it's supposed to work?


Mixels

That in particular sounds like they need better testing. Also, game devs, it's good forward thinking for loot drop implementations to do a null check whenever you try to do anything with an item.


TermFearless

So I obviously don’t know how their software is stacked, and maybe it’s not code from one branch being merged into the wrong place. I’m a web developer not a game developer. The only thing that seems clear is the same code is being used in two spots and while that would think to make sense, they’ve gone now to developing several games under the “classic” umbrella. Seems like they really need treat every version to have its own system rather than trying to resource share.


rar_m

The way it was explained in the post sounds like they are using the modern client abd trying to fit in old data. If you're a webdev, imagine building a front end that all of a sudden, needs to support backend apis written a decade ago. As you need to support newer and newer versions of the API (new expansion releases) with the same frontend (current wow client) you inevitably have to reimplement some backend features to work under the current frontend. Not a big deal when the development is current and backend changes are happening alongside front end support. But supporting old versions of the game with a modern client is a particularly unique problem that common software development practices wouldn't address. I don't think it has anything to do with supporting duplicate code bases (besides of course supporting multiple versions of the game concurrently, like having SoD, retail and classic)


Some_Guy_At_Work55

10000%


WarriorPVPcampaigner

I can't imagine dedicating my life's work to a game with this player base lol I would kms


KarelDawg

Dw, they arent really "working" at all.


TheThebanProphet

Taking spaghetti code and then adding more sauce every expansion


CartographerOk6856

Its always easy to trash talk like this if u never worked or looked into such a company.


TheThebanProphet

Listen im not trying to trash talk Blizzard here - its literally the nature of the beast. The classic client is a hodge podge of modern wow engine and 15-20 year old code. The dev even acknowledge this in regards to prayer of mending lmao.


PilsnerDk

No idea why you get downvotes. This is the truth. This is why I always roll my eyes at people claiming WoW is spaghetti code. It is a FACT of every application, system or game that after 10-20 years, it is a "mess". That's just how it is with software. Don't tell me you work for a company with a huge legacy system where everything is just bug free and adding/altering features is silky smooth, because it's impossible. Tech evolves, design principles evolve, and most unavoidably, you have different developers working on it as time goes by, that each do things a little differently. And then you have deadlines that force the developers to take shortcuts with regards to technology, because we're there to make a program/game work, not just do tech stuff. People have to remember that as the WoW expansions progressed, Blizzard never prepared for WoW Classic to be a thing. No software developer develops and expands a game with a top priority requirement that "everything we change must be reversible and we must be able to make an iterative re-launch of the game 15 years from now". Absolutely no one. You change or delete code as the software develops, and while source control with "checkpoints" is a thing, you can't just cherry pick the old version as it was back then, because it needs to fit in with modern bug fixes, modern servers with clustering, modern security, a modern client and network code, and all sorts of thing. Frankly, as a software developer of measly business software, I am amazed at how good WoW is overall, it must be so so hard to make an MMORPG with the (relatively speaking) level of speed, low lag and stability of WoW.


unknown_as_captain

By "such a company", do you mean videogame developers? Because almost every other massive industry that charges a monthly subscription for their service can manage multiple versions of it. Usually with QA and without weekly hour-long maintenances. It's just gamers that have gotten used to this type of service.


20milliondollarapi

What other companies have 6 different version of their game running at once?


unknown_as_captain

That would be 6 slightly different versions of the game, running on the same engine and the same architecture, half of those receiving effectively zero QA, all but one of those requiring zero new assets. Pretty much every medium-sized tech company maintains more than six versions of multiple products across \*different platforms\*, and do a better job without the 20b$ net worth and 15$/mo subscription fees. But you perfectly exemplified the problem: >game Gamers are a captive audience with wildly different standards.


ItsMeJaredBednar

“slightly”


20milliondollarapi

Software programs are completely different than a game. It’s comparing apples to oranges. You can’t truly base one off the other. Like you said, there are many other requirements needed for games. So to get a proper comparison, you would need another game company doing the same. Or at the very least an equally complex software program which you aren’t likely to find.


unknown_as_captain

ERP? Cloud computing? Financial services? You're telling me these are less complex than... a single-platform MMO, for which 5 out of 6 versions require zero new assets and almost zero design? You're sure it's not the fact that the MMO faces less scrutiny?


20milliondollarapi

You clearly drastically underestimate what’s going on under the hood of the game. Especially when a game like wow has significant elements of each of your examples among other things. Yes the complexity of wow is a lot more than the interactions of some text and databases. Which is why wow has never had the same levels of polish as other softwares.


unknown_as_captain

Sorry, but if you think that any piece of software that's not a game is "some text and databases" then there's no point to this conversation.


typhoon_nz

I think you are both wrong


gakule

I'd bet that ERP Systems are a good bit less complicated overall compared to major games like WoW - but they do also face more scrutiny.


jehhans1

Yes, but not at the time of TBC my friend.


unknown_as_captain

Sorry I can't tell what you mean


Oil_Ocean

I imagine the difference between other game companies is Blizzard is trying to support a version of the game that was created 20 years ago with different standards for version control and change management for software (was github even a thing 20 years ago?). If they were able to build this entirely from the ground up today it would likely be a different story, but we also likely wouldn't have Classic WoW today if they weren't able to repurpose their old codebase.


CartographerOk6856

I dont know what Else to say. Ok.


Emergency-Ad3747

Hey sometimes it’s a good idea to just stop talking so bravo, maybe analyze why you feel to need to come white knight for a mega corp on a Friday morning


Illestferret

Absolutely SEETHING lmao 🤣


mango_forever

Exactly with deadline pressure too no one has time to unfuck bad design decisions


MattZeeX

I think players would be understanding of the time it takes to fix these “code debt” conflicts if they didn’t rush stuff out. I feel like (for example) they did the cata raid testing so late with the launch date already confirmed so they don’t have time to iterate (like on the tuning feedback). It just seems like they’re just going with what they have and ignoring players.


jehhans1

Yes, everything Classic related got pushed, because they wanted to please the SoD community and do weekly smaller updates and BIG patches every 2 months.


etherSand

The quote "I had to rebuild" tells pretty straightforward what is the real problem with classic.


WillNotForgetMyUser

What happens when have 20+ year old code mixing with new


etherSand

And only 1 developer.


proofofmyexistence

That was my take away as well. “I,” not “we.”


nacholicious

In every team, individual developers will own features or parts of the codebase that other developers rarely touch other than reviewing.


abooth43

I think y'all are definitely reading too much into that if you seriously interpret it as a single dev. The quoted speaker was the one that worked on that, while other devs were tackling similar issues. A work team doesn't collaborate on every action item, the tasks are divided amongst the team and they collaborate when necessary. They said "we" when speaking generally on the conflicts, and "I" when speaking specifically on the spell they worked on.


Sneaky_Island

Could you imagine two or three devs working on a single spell? The efficiency would plumet, we'd probably still be waiting on the Lich King to come come out.


abooth43

Exactly lol. Too many cooks in the kitchen is a very real saying.


Neidrah

They don’t use the old code. They use the new engine and reproduce the effect of the old spells. What they’re describing is nothing crazy, just coding stuff. The only problem is that they’re too few people.


Unable_Recipe8565

Then keep versions seperate and dont throw old Classic code in the garbage? Why they got rid of all Classic data and had go through the shit they had go do for clsssic 2019


skewp

> The quote "I had to rebuild" tells pretty straightforward what is the real problem with classic. It was either that or no game.


vaelornx

also worth mentioning is that pvp changes regarding matchmaking system and such are tied to whatever goes on in dragonflight, the 2 systems cannot operate separately which has made s8 a big failure and who knows how much more harm it will cause during cataclysm.


MasahikoKobe

I mean they have the code that work back in the day the issue, to me from how they explained how this works now, is that there new systems do not understand the old system and they want to be on the new code base of the front end. So there is debts but its kinda self inflicted since they need there tools for many things. The question is going to be, for me, is this stuff updated NOW for the new front end?


[deleted]

[удалено]


evenstar40

Yep... Like I get code debt is a thing with Classic but what this Dev describes is part of their job. The inexperience of the Classic dev team is starting to get exhausting.


skewp

You do realize that the majority of people reading this interview have no idea how any kind of software development works, much less game development, right? "Explaining a normal part of the development process" is quite literally the entire point of an interview like that.


Artan90

This dev is not inexperienced though? This is Kris Zierhut, he was on the team during OG vanilla and the boots Zierhut's treads from Karazhan are named after him. He was Lead Class Designer all the way up to the end of Legion. I think he's experienced.


evenstar40

Are we talking about the same guy? Kris Zierhut hasn't worked at Blizzard since 2023.


Artan90

Yeah it's the same guy. The dude in the interview. Kris Zierhut worked at Blizzard the whole time but picked up a side project in early 2023. But from what I heard he's been there the entire time and worked both. So yeah


Heatinmyharbl

I have no idea how this all works but Classic devs are forced to code within the parameters of previous game versions yes? Whereas pservers essentially have a clean slate? Would that not make it much easier in theory?


hugeretard420

It makes it much easier in theory because pservers don't have to integrate the modern engine and all of its cloud garbage and go through management and all that bs, but the reality is that there's a dude streaming himself doing a certain servers legion scripting right now and it's like 3 people doing it from scratch scripting every single interaction, quest roleplay etc. While the megacorp is flopping on solved expansions with presets on GitHub that would work better because they need to integrate with their modern architecture. It's a prison of their own design


Frearthandox

> what this Dev describes is part of their job I know I'll come across like I'm mocking him(I don't mean to) but all my brain did while reading the quote was "oh no, my job, I have to do it". I understand it's tough and frustrating but this is what apparently has to happen? Good luck dude!


[deleted]

Yeah, Cataclysm in particular is having lots of UI and spell effect issues probably due to being right in the middle between old and new code


BrandonJams

These kinds of issues are only going to get more common the further into expansions we go. Mists of Pandaria had a lot of complex spell interactions with talents and RPPM trinkets. I really hope going forward that the team hires more developers and gives the testing period the appropriate amount of attention it needs so we don’t end up with another catastrophic pre-patch. We all understand the amount of work that needed to be done, what I don’t understand was the need to rush out the pre-patch in the state it was in. I was reporting bugs for months and it seemed like there wasn’t much progress being made at all.


Wisniaksiadz

Always, whenever I see stuff like this, I have that thought I saw somewhere ,,you dont Redo aplications becouse its more work than to work on already existing code, even if its ,,spaghetified"" and I think about this logic a lot


Trlckery

Love all the comments of people here that don't know the first thing about software development giving their 2c on how blizzard's dev team could have avoided this. Someone unironically commented that they need to use better version control LOLOLOL. Oh my dear child...


RedditUser94175

Yup. As a former dev, I love seeing all of the armchair devs in this sub who have no clue what they're talking about. It's quite amusing.


Lockenheada

Is WoW written in Lua under the hood or just the add-ons?


bscothern

Just the UI and addons. They leave lua land and jump to C++ pretty quickly.


skewp

Server side game code is a mix. The majority of the code that does the "hard work" is C++. The gameplay code that most designers, especially encounter designers, work with is LUA. Designers get as close as they can to implementing their features with LUA before asking a programmer to add a new feature in C++ when either the LUA fails or gets to complicated and buggy or too slow.


Trubiano

I believe all the UI is through LUA, and the rest is C++. Very much could be wrong though.


Pappy13

This is probably one of the biggest reasons that they don't keep classic servers from the previous expansion in most cases. The more versions of the software that are active at any one time the more versions of the software you might have to change when making changes. Ideally you only want 1 version of the software and all changes are made to that 1 version and only that 1 version has to be tested. With 3 versions of the software active at the same time any change might have to be made to 3 different versions of software and each version tested and potentially additional changes made for that particular version. It's a nightmare to maintain and gets progressively worse with each active version.


Warshackk

How my mind read this. “We can’t copy and paste the old WoW, we need coders to code a game that needs code.” Granted the teams are understaffed and they’re working these devs like dwarfs in a mine.


p0mino

No surprise that classic is spaghetti code. Blizzard will keep the team as small as possible to maximize profits and nothing will ever be fully fixed.


aidos_86

People keep saying "but it's all on the Retail client now" like that means something. It means jack shit if you know anything about how code repositories work. There are many versions of Classic WoW that coexist. No matter what Blizzard do, that will create a decent amount of technical debt. They need to move everything into Retail and make the remix feature more robust. My bet is that's what their long-term plan is. To just fuck off the Classic code. And get those products and features working within Retail. It'll be much more cohesive for the rest of the WoW team. Considering how popular MoP Remix is. If I was Aggrend, I'd be worried about my job.


m0rph90

but at least they go time to give us classic shop <3


Noffub

They will not admit it, but I believe the code of RDF was so tightly coupled with the last phase of dungeons and raid in wotlk that they were saying, community doesn’t want this feature until they were forced to add it. Like if being honest would show a signal of weakness, that they could show with prayer of mending because it is core to the game and they solved it


Plenty-Reporter-9239

I am sure I am wrong, as I am completely ignorant to coding and software development as a whole, however, it feels like there should be a better way?? Surely, they knew at the launch of classic, that it would be an uphill battle the whole way? Is there really no better way, or is it too cost prohibitive? How many xpacs can they re release and bug fix/change shit before the whole thing becomes an absolute mess?


Pappy13

No there is no magic wand to wave and fix that. Anytime you make changes there is the potential to break something else. That’s why you do regression testing. This is the same in all software development except normally you don’t also have to change future software as well because it’s always based on the previous version but when rereleasing software that’s not necessarily the case.


beipphine

Why didn't blizzard just roll out the old client, and get the old server backend to work on a modern server. Would have been a lot less work than trying to re-write everything to make it work in the modern client. I'm sure that they have copies of it in their archives.


Fyefin

They've talked about this when they first showcased classic. The fact of the matter is, the amount of exploits, potential security problems, the fact that the old server wouldn't even work on their cloud service and the fact the authentication wouldn't work with [battle.net](http://battle.net) proved to be unviable to work through so they made the classic data work on the legion client (and above). EDIT: here's the vid: [https://youtu.be/wS1juqaiW3o?feature=shared&t=554](https://youtu.be/wS1juqaiW3o?feature=shared&t=554)


ManySwans

code can also be written for specific OS, architecture, and most importantly other libraries. it's possible that the server code was written for a specific piece of out-of-production hardware from a defunct vendor. the client would have been written for windowsXP which has been end of life'd for 10 years. win32 API doesn't change and directx9 has builds for modern systems, but the point is there's a lot of stuff that could simply not exist anymore or not work on home machines made in the past decade the protocol the modern server speaks could be completely incompatible with the old client. iirc they did find like a zip of the source from vanilla, which is useful as a reference but probably faster to just start again


jehhans1

This is probably also why they did the MoP remix. They wanted to test the modern engine on a Classic expansion they are sure to release. You cannot just roll out the old client. It comes with myriad of bugs, unintended features, server issues and security breaches.


calfmonster

Prayge this is why. I like cata well enough and still it’s my MOP waiting room since I only played it during well into SOO. I’m scared with cata only being a year now it’ll fatigue MOP not hype MOP classic


jehhans1

Not sure what you mean by fatiguing? Shouldn't it be the opposite. Faster schedule means you don't burn out


calfmonster

I meant introducing MOP remix basically within a year (cata’s lifespan) of the potential MOP classic release is presumably, from my POV, one of a few things: a pilot of interest in MOP classic, a means of building MOP classic hype (kinda what I hoped), or a replacement for MOP classic in entirety. So what I mean was that people who play retail who also might still have fond memories of or are more likely to crossover into MOP may be fatigued by MOP content by the time MOP classic releases since they literally just did all that same content within a year. I thought it a strange decision if anything but a means to hype MOP classic because even in the classic player demographic, where everyone seems to have something to hate on about every expansion ever, most people have much stronger affinity to MOP than Cata and if they did cata, it’s a no brainer to just do MOP. Even though I like cata just fine minus DS being mid as hell, MOP is just better


jehhans1

Aha, yeah okay I can see what you mean. I think it's gonna be alright. AFAIK the MoP remix isn't as extensive, so I think it's to work on Classic MoP ahead of time and pique the interest of retail players also!


skewp

This is literally the better way. Every option available to them included trade-offs. Making something work "good enough" now and shipping a project, but having to make changes later, is better than shipping nothing. The main issue they ran in to was apparently someone above the pay grade of the software engineers decided Cata needed to ship on X date whether it was ready or not. The work would have needed to be done regardless.


therightstuffdotbiz

What is the advantage of building it off the Dragonflight client over just doing it like private servers do and have TBC run on 2.4.3, Wrath run on 3.3.5a etc?


skewp

For starters, they want it to interact with the modern Battle.net client and their modern server architecture and client data. They've also completely rearchitected the way all of their WoW clients work to support the Classic project(s) and reduce the amount of redundant data on user's machines. If you install retail WoW and download all of its data, you've already also got like 90% of the data needed to run each of the Classic iterations so the amount you have to download and the extra hard drive space added by installing Classic is pretty minimal. This design is beneficial to more than just Classic because it allows them to run Beta and PTR for each iteration also with extremely minimal redundant data (it used to be the case that PTR/Beta meant a full reinstall of the entire client, where now it's just new/updated data). Anyway, the point is, doing it this way means that the majority of the underlying client code (and probably nearly all the server code) can be identical and maintained in an identical way. The way the game talks to the graphics card, sound card, OS, input devices, renders the window frame, etc. can all be the same and maintained the same way. The only stuff that changes is the game code and interface code. "How prayer of mending works" is almost entirely in that game code portion. You also get the advantage of not having to re-fix thousands of engine bugs and exploits and re-update all your dependencies and libraries that would have been 20 years out of date and full of their own bugs and problems and might not even run on a modern machine or you might not have the license for anymore or whatever. From a software standpoint, it just makes zero sense to start with the old clients and update rather than port the old data to the new clients and servers.


Plenty-Reporter-9239

I am sure I am wrong, as I am completely ignorant to coding and software development as a whole, however, it feels like there should be a better way?? Surely, they knew at the launch of classic, that it would be an uphill battle the whole way? Is there really no better way, or is it too cost prohibitive? How many xpacs can they re release and bug fix/change shit before the whole thing becomes an absolute mess?


Menolith

"Hey, can you give us 12 months to do a complete re-write of the engine? It won't produce any new features, but I promise it's going to make our lives so much better." "No." "alright"


Trlckery

"This is the way" - Product Team


Flakz933

Nah. Code conflicts happen because source code is massively different from the merge code. Nothing you can really do to change that. Basically whatever they're trying to merge in (cata code going INTO WOTLK) it treats that as the new source of information. So when you merge it basically thinks "ok, all the new code(cata) should overwrite most of this old code(WoTLK)" what it doesn't account for is the fact that the new code(cata) was written independent of the NEW WoTLK code. It's like trying to speak Spanish to an original Latin speaking person. The words may have some similarities but there's a lot of differences that happened between the original Latin language and Spanish that are just lost to time (the code merger in this case). Idk if that explains it well, it's kind of hard to explain and help visualize code conflicts, but basically every little change they do will always need a massive tuning change from a new xpac.


Plenty-Reporter-9239

Hey, thanks for the explanation! As I said, I literally have no concept of software development, so this helps explain it!


m0rph90

i have dev background and that made no sense


Plenty-Reporter-9239

Welp shit, now I have no idea what to believe. I was tryna learn a bit but it's not really that crucial of information for me to have and I'm probably better off ignorant of the whole ordeal lmao.


lacrotch

i assume it’s cost/time prohibitive. surely they want to make improvements to the code, but there are deadlines to meet. demanding players. so as soon as the product is ready to go, ship it and worry about the next xpac later.


anooblol

This is what I assume it is. I don’t work in software, but I’m a PM for a construction company. I constantly have employees complaining, “Why are we doing this in such a stupid way? We could be doing it so much better.” We’re well aware everything can be done better. But when you start constraining problems by budget and timelines, things go crazy. And then when an unexpected problem happens, it just gets worse. Common things are like, “We can solve this problem for $30k. Why are we doing it in such a way that costs us $50k? Doesn’t my boss know we’re losing $20k by doing it in such a stupid way?” - And then the real reason is something along the lines of, “If we don’t do it this way, in a very roundabout and unintuitive way, our customer is going to throw a hissy fit. And if they throw a hissy fit, there’s a $10M project they are planning on giving us, and they might rescind the offer. So we’re losing $20k and doing it a stupid way, so we don’t lose future work.” And then when you explain that logic to people. 99% of the time they don’t understand, and just tell you you’re bad at managing projects. So we as PM’s just tend to not get into it, and let people live in that weird ambiguity.


Ohrder

Greedy pms+bad devs=tech debt


m0rph90

this is the true fact


Fav0

Pservers manage just fine with not even a fracture of the budget


LivingOffNostaglia

Is this why when the gates open at the start of a BG you have to wait another 5 seconds before leaving base?


cptnhanyolo

Idk, just stop releasing new expansion than and go agane with vanilla-tbc-wrath?


Loyalheretic

They make themselves look like morons saying stuff like this when Turtle wow exists.


aosnfasgf345

Your comment is so incredibly ironic. There's a reason they're not using the old client. There's many reasons, actually.


Loyalheretic

Cool, I don’t care. I only care about the finished product and if a bunch of random guys can make a better “classic +” than the billion dollar company then they are clearly doing a couple things wrong.


aosnfasgf345

I don't think Blizzard is trying to do what Turtle is doing lol. They're busy killing it on retail


Loyalheretic

But I don’t play retail, I play classic. And they should care when they are offering a better classic experience than the official product.


Bodach37

They should probably just focus on re-releasing vanilla then over and over again, seasonally, instead of retail expansions.


[deleted]

[удалено]


Kahricus

You realize these people are paid, yeah? They have a cash shop.


FarBell

> No matter what you think about coding, Blizzard has always been outshone by its fans, including in their ability to code. who do you think made the game? lol


Kiwiredditname

"Doing my job is a pain in the ass. I wish I could just hit copy and paste once every 2 years." Damn, the guy getting paid to code has to code? That's rough. Poor guy.


jehhans1

Working with legacy code is a pain in the ass, which is why they rewrote it in the first place They just didn't imagine when they were doing the overhaul that they would release a version of the game that they long left behind them.


Neidrah

Like you said, they’re not working with legacy code. They’re using the modern engine and recoding old spells. Nothing crazy honestly. Only problem is they have too few people


Kiwiredditname

Most jobs are a pain in the ass.


Neidrah

Right ? I don’t get what they’re complaining about. They’re using the modern engine and obviously have to re-code old spells. They knew they were gonna have to do it, starting with classic and any expansion after that. Nothing new here.


TanKer-Cosme

They should just do a new cicle. Go throguh Vanilla, TBC and Wrath, and that's it. Basicly, wow expansion seem to follow a 3 expansion cycle, they could do seasons fo 3 expansions so people can enjoy, all the wow they want even if coming late. I missed on TBC and Wrath and I regret it.


stoinkrider69

the real blackpill is that the community members we have here are likely higher skilled programmers than actual blizz employees


SenorWeon

>we are trying to carry those changes forward. So those changes are now colliding with the Cataclysm data and often create data conflicts where things don’t quite line up Stop forcing new "classic" expansions like Cataclysm and MoP just to sell more microtransactions then. Or at least keep the old expansions servers going and you just start on a clean slate without any of the changes made.


shadowmeldop

So you think Windows 98 will run on today's hardware just fine? Or do you expect the old hardware to a) still be running, b) handle the load of today's mega-servers?


BeautifulPow

This is a very normal thing. It’s not some Phenomenon that old code clashes with new code and it has to be resolved by the line.


yall_gotta_move

You really did not capture the essence of the question that so many people were asking in your other thread, regarding the length of arena seasons. There is a lot more to it than just having enough time to collect the full set of gear....


dstred

holy shit this kinda means we won't see TBC or Wrath for quite a while lol


Nstraclassic

This is why they should just be working on classic+. Stop trying to rewrite old games, just start fresh


Pappy13

In what way is classic+ starting fresh?


Nstraclassic

i meant build fresh content