Mists of Pandaria Repack News

Jack Sparrow

Gold Supporter
Senior User
342
2015
193
Since the repack vote thread poll closed here

MoP won first place with 51 votes over the other options

So.. MoP has been in development for quite some time now, and some of you guys are probably wondering what's going on with the project?

Going into this, MoP has been in development, pretty much everyday.

MoP is one of the harder version to work on, to be able to work on mop means you need to have a good mindset, and good knowledge if you want to have something worth while.

I personally learned many things while working on this core. I'll make a quick story behind the core. If you don't care for the story, you can skip this part. and just read the progress of the core.

Starting from last year, on January 28, 2017 I picked up this core, from emucoach, It was the firestorm leak found here https://www.emucoach.com/showthread.php/2357-FIRESTORM-SOURCE-LEAK-548-547-MOP-Based-on-Jadecore

Before the summer I thought about opening my own repacked version of the core on ac-web showing off my fixes, people there told me that I would just get bored like Junky and Dule did and just give up, well I did not give up even to this day, and still working actively everyday on it.

so obviously the first thing I did with the core was make a repo on git, and start it up. When I first started on this core, it seemed pretty good, spells were working, it felt good to run around in mop, then I realized the horrors of JadeCore, and it's monstrosity of hackfixes, the server crashes, all that horror.. So the next few months after that, were many changes regarding crash fixes, some minor spell fixes, and some hackfix cleanup, and cmake script updates. Finally after this the core became stable and didn't crash within 1 hour of just messing around. Now I will skip ahead a few months, since nothing worth sharing happened during the summer of 2017.


So as you may know, this leak, and pretty much any JadeCore found online, during 2017 did not have any mmaps/pathfinding. So I decided to take on the challenge of adding mmaps, after a while I got the compile to work, only to find what was probably stopping the other devs on jadeCore from implementing them, which was really awkward mob movement. I soon learned this was caused from SMSG_MONSTER_MOVE, and that was the first ever opcode, and I didn't know a ton about opcodes other than they change per each version ever since cataclysm, and you have to be a god to reverse them. So I talked with some friends of why it does this, and they told me SMSG_MONSTER_MOVE wasn't correct to an extent. One of those friends was Quadral. He happened to also be working on the firestorm leak too, and released his core to the public after he couldn't find out how to fix the SMSG_MONSTER_MOVE packet structure. He told me that he even asked the Firestorm Developer if the structure of that opcode was correct, and the firestorm dev replied that it was. Obviously we both didn't believe that so I used the internet, and remembered SkyFire used to be 5.4.7 and they had mmaps at that time, so I took their MovementPacketBuilder files which contained SMSG_MONSTER_MOVE and ported it into jadecore and found that it actually worked for mmaps. and Mmaps was working, so I shared the fix with my friend Quadral at the time and he got motivated that pathfinding was working again, so he started back up on his core privately.

So now core has working pathfinding, hey that's pretty cool. that's something unique a lot of people wont have.

so now lets skip a few more months into December 2017-January 2018

During this time BattlePay was successfully coded which is the ingame shop. I figured out how to code an opcode structure only using unk bits based on the WowPacketParser project on TrinityCore's github https://github.com/TrinityCore/WowP...dule.V5_4_7_17898/Parsers/GameStoreHandler.cs

after a ton of trial and error, I was able to guess 90% of the structure for the list opcode, and managed to code this for 5.4.7, throughout this whole way I kept thinking to myself, how can I make this easier.. cause the whole process took weeks just for 1 opcode.

so I torrented IDA pro and looked at my wow.exe, didn't know what I was looking at, closed it, looked up youtube videos everynight of how to use IDA, and I learned some of the basic things, which was how to search for stuff, how to press F5 to see pseudocode, and some other things.

Still after that I could not find out how to reverse opcodes.

Then after messing around with IDA a bit more, I was able to find my first opcode structure which was for SMSG_UPDATE_OBJECT, so after studying it for a bit I realized some patterns. and it kind of took off from there.

I then found out about the main opcode part of the client, which was the SpecialJamDispatch, which contained 80% of the opcodes. I first found SMSG_AUTH_RESPONSE was already in my IDB and I saw what was going on, and that it did back trace to the SpecialJamDispatch function so I figured some of this out, although stuff wasn't matching up with opcode decimal from Opcodes.h of the server, at the time I did not know how it was calculated.

So I decided to take on a challenge, update the core to 5.4.8 fully.

I took this on at the end of February 2018, I found online on a forum that someone in 2014 posted a huge dump of opcodes for 5.4.8, it was well documented, it had very useful stuff on it, and it had the Offset that SpecialJamDispatch was using, so I could easily reverse the structures of SMSG opcodes with it, as long as they were in the dispatch function.

Well moving forward a few months, after using IDA so much everyday and learning how stuff was calculated, I made my own program to auto get the structure of any SMSG given the decimal, and it works great.
CMSG was intresting to find how it works, but it's really simple, just decompile the full wow.exe, open in your favorite text editor, search a2, CMSGDECIMAL, go to that function in IDA, jump to xref, and the structure is 1 above that function.

I won't go too much into about the reversing from the client, because it would be a paper that is too long for a repack.. so going on, I saw on emucoach that there was a repack poll around the same time in the beginning of march.

I decided to comment on this saying, "I will be having a really good mop repack coming out soon!~". So a few days later I check emucoach again and I see a msg from exo in my inbox, tl;dr of this we decided to work together, and coming out of working together -> I made a new really decent friend. So now the initial repack I was planning to make will become even better! great!

note: some parts may be mixed up here, or completely left out intentionally (eg. my server or drama)

Why 5.4.8 vs the initial 5.4.7?

Many reasons, here's some of the main ones:

1. Latest version of mop, more people have the 5.4.8 exe
2. 5.4.8 is more stable than 5.4.7, and feels better to play on, and no crash every other login.
3. 5.4.8 has more features and more documentation dev wise to work on


So now what's the progress with the repack, what still needs to be done for release?

I'll give a rundown of whats implemented and whats now

Green: Working
Yellow: Semi-Working
Red: Not Yet Implemented or broken

- Authentication (including Character Templates, BattlePay)
- BattlePets - NYI
- BattlePay - YT: https://www.youtube.com/watch?v=qBs0dgrxXJs
- Boost This is from a skyfire Pull Request! https://github.com/ProjectSkyfire/SkyFire.548/pull/768
- Char Select Screen
- Movement - Copied from Skyfire
- LFG - Queing up is implemented, dungeons prob not working yet, not all opcodes are updated to 5.4.8
- LFR - Not checked yet
- Quests
- Spells - unique one not many have working: https://www.youtube.com/watch?v=WPJFoUhVOxg (we also have spell queue implemented!)
- Warden - NYI
- Battlegrounds - Not checked yet
- Arenas - Not checked yet
- Tickets
- Black market
- Player
- Loot - including AE looting
- Instances - Stock scripts
- Eluna Lua Engine - since 2 weeks ago implemented and stable

some stuff may have not been listed! eg: script quality, not a priority right now, spells and core is the bigger priority

Summary:

We don't want to release something here at emucoach that is generic or average, but instead unique and worth your while, right now we feel the core is just not ready for the public yet, as we still have many problems to conquer before then.

There are many problems that still need to be worked out: like code style updates and more packet/opcode structure changes, and more changes.

If you guys want development update videos/videos of certain features, let me know in the comments your opinions

Thank you for reading!
 
Last edited:

someguy12312

Verified Member
19
2015
0
Will be great to see how it turns out. I haven't played WoW officially since Cataclysm and it would be interesting to see what all changed after I left. Will the initial repack be available for the free users or not and if not when do you think you will make it available to the general public?
 

IceNet

Gold Supporter
Veteran Member
116
2015
5
Nice!

In JadeCore, the BG's are working (FireStorm based on JadeCore)

If u need testers or help with SQL, i can help u out.

I love MoP and would help u a lot!
 

Jack Sparrow

Gold Supporter
Senior User
342
2015
193
Nice!

In JadeCore, the BG's are working (FireStorm based on JadeCore)

If u need testers or help with SQL, i can help u out.

I love MoP and would help u a lot!

Yes BG's may have been working on 5.4.7 however since 5.4.8 randomized all structures/opcodes it has to be recoded. Currently working on a new packet structure system like what Trinity currently has here: https://github.com/TrinityCore/TrinityCore/tree/master/src/server/game/Server/Packets so it will be finishing in time.

Also thank you for your support everyone else! it helps for motivation!
 

mastermind

Silver Supporter
Senior User
189
2017
13
Location
PA, USA
There are a lot of people that do not realize the effort that goes into something like this before a single line of code is typed.
Thanks for all the hard work and for sharing the adventure getting to this point.
 

ExO

Admin
5,084
2014
1,442
Will be great to see how it turns out. I haven't played WoW officially since Cataclysm and it would be interesting to see what all changed after I left. Will the initial repack be available for the free users or not and if not when do you think you will make it available to the general public?

That is yet to be decided. We'll have a decision and news about it once we get there.
 

Mariusfurios

Silver Supporter
17
2016
0
One of my favourite expansion. Really going to look fordward into this. Also is there a possibility you can Take The quest scripts and many other things from The Cataclysm repack?
 

ravish123

Gold Supporter
Senior User
279
2015
76
Would love to see development videos, see how the progress is coming along. Also if possible I'd love to see some videos of you developing the core, I'm interested in majoring computer science and would love to see how you go about your business getting stuff done, as I'm thinking about going into something similar towards programming if not programming itself, and seeing how I enjoy wow development I feel like I'd help me understand stuff
 

darkonio

Heir to the Emucoach
Gold Supporter
Veteran Member
98
2014
18
would love so see a full release guys, keep going you are doing a great job :eek:k:
 

eyerobot

Gold Supporter
Superior Member
917
2015
22
Location
Barryton Michigan USA
That's great! I was wondering what was happening with Pandaria. Can't wait to see the database structure, to see if it's compatible with Cataclysm. With all the people working on Cata, We should have plenty of database fixes to add to Pandaria.
 

eyero

Veteran Member
55
2016
1
That's great! I was wondering what was happening with Pandaria. Can't wait to see the database structure, to see if it's compatible with Cataclysm. With all the people working on Cata, We should have plenty of database fixes to add to Pandaria.

That sound great mate!!
 

myth215

Trial Member
1
2018
0
Good morning, have any items editor quests such things as the truice or a version of the truice that works on MoP 5.4.8
 

ExO

Admin
5,084
2014
1,442
NPCBots will not be added as of first, but if it goes well we will add it after fixing some more bugs (we want to make it a little more playable before eventually implementing NPC Bots).

MOP Release will happen in around ~~ 5-7 days (after the 24th).
 

Sikuri

Gold Supporter
Veteran Member
63
2018
5
NPCBots will not be added as of first, but if it goes well we will add it after fixing some more bugs (we want to make it a little more playable before eventually implementing NPC Bots).

MOP Release will happen in around ~~ 5-7 days (after the 24th).

Holy mother of Jesus!!!!!!
This is the best news I've had all week!

Thank you very much for your hard work, guys!
 
Top