XaiJu
PSO2
PSO2

patreon


Wibbly Wobbly Time Wimey, Thanks, Walking Down Memory Lane, and Looking Towards The Future (but not a boss rush)

WARNING: This will be a wall of text. Like, a big one. It may scare you at first glance, but I have faith you will conquer it in time. If not, no shame in it! We love you all the same!

Hello, all you awesome patrons! I know it's been a while since I've written up one of these posts, but I always seem to be working on or fixing something or implementing something new. Sorry!

I wanted to use this post to thank each and every one of you for your support. It really does help with our projects (we used 21TB of bandwidth last month! That's insane!), hardware, licenses, etc etc etc. So from the bottom of my heart, thank you! It means the world to me and the team.

Secondly, as you likely already know, the PSO2 Tweaker (and many projects under the Arks-Layer flag) now support PSO2NA. This support was not planned from the start, however, and definitely caught us by surprise. I know that sounds weird, lemme explain.

It was assumed that PSO2NA would be converted to a Univeral Windows Platform application, which means you couldn't edit it in memory (no anti-cheat necessary!), modding would be nigh-impossible, it would use the Windows Store to update, and generally would take care of itself. Without the burden of GameGuard, the JP patcher, and the number of issues those caused, it sounded like PSO2 would be almost as easy to play as playing JP through the Tweaker. Because of this, I held off on putting NA support into the Tweaker, figuring the launch would go smoothly. When they confirmed it was a windows store exclusive and it was accidentally leaked it was 64-bit only (unlike the 32-bit JP exe), we thought it was pretty much confirmed that it would be a UWP game.

...We thought wrong. The game released and went "suprise, motherf#(%$$" - It was the same old launcher and anti-cheat! Even worse, it combined with the Windows Store to make an unholy mess of nightmares that the world didn't think was possible. Thus, the need for the PSO2 Tweaker became clear, and I began working on it. It's a bit of a blur now, but I recall not really sleeping for the first couple of days, just programming and testing and fixing.

I was spurred on by many things. One of the most powerful were the posts of frustration from people who had waited eight years to play this game and just couldn't. That's not cool, and knowing that my work could help them filled me with determination.

The second is that, after 8 years of working on it, PSO2 feels like my baby. I know I don't own it, I know it's not mine (stop looking at me like that), but it feels that way. I didn't like how my baby was being treated, intentional or not. This was unacceptable, and had to be fixed.

The third is that a lot of the anger and frustration was vented at the NA team managing PSO2 NA. These poor souls had nothing to do with the decision to put the game on the Microsoft store and, from how down to earth and relatible their interactions with us are, I'm pretty sure they even warned the JP team against using the Microsoft store. They were getting shit for something they likely didn't want in the first place, and they just want to see PSO2 NA succeed here. I have no doubt that was incredibly frustrating for them, and that sucks.

Those were the main things that powered me through that programming crunch (which I hope I will never have to do again!) and allowed me to add PSO2 NA support to the Tweaker so quickly. Passion is power! Then we had to test it thoroughly with a limited group (releasing a broken launcher into the world to fight against two other broken launchers would have made more problems than it had solved!), discover issues, fix issues, etc.

Eventually it was at a point where I believed it was ready. Let me tell you, it is nerve wracking to go "Alright, I'm going to ping 40,000 people with this and hope it works because there's no way we can test every system config and if it all goes wrong, I'll have 40,000+ people coming for my head all at once." That's terrifying! Kudos to the testers though - This first phase (which I internally called "patchfixing") would let people sidestep the original launcher completely, along with fixing a large number of GameGuard issues.

However, that didn't solve the Windows Store issue, arguably the largest issue for NA. I'll take this moment to explain why the issue occurs, so if you don't care (which is OK!), you can skip a bit ahead (but don't spoil the ending, it wasn't even the butler with the candlestick this time!).

When you restart your computer (or at other random times, we're not sure how these other times work), Windows uses the store to check to make sure your games are installed correctly and uncorrupted, as part of their anti-cheat thing. However, it checks for this so fast and so quickly during reboot that (depending on your drive speeds), your main Windows drive may be the only one currently mounted, which causes a serious problem if you tried to install the game on another drive.

Since only the C: (or whatever other letter you chose for your main Windows drive, you monster) drive is up when the Appx subsystem does a check up for Mutable Appx packages, it will remake the link from the original location to C:\ModifiableWindowsApps\FOLDERHERE, which means you'll get a 2nd pso2_bin folder. (Hence the space being taken up) You can premake another link to redirect that "new" to the old folder in that drive, but it'll still break next time. 

 Get-Item "D:\ModifiableWindowsApps\pso2_bin\" | fl

Directory: D:\ModifiableWindowsApps
Name           : pso2_bin
CreationTime   : 5/28/2020 2:29:25 PM
LastWriteTime  : 5/28/2020 2:29:25 PM
LastAccessTime : 5/28/2020 2:29:25 PM
Mode           : d----l
LinkType       : Junction
Target         : {D:\Program Files\ModifiableWindowsApps\pso2_bin}

See that l at the end of the mode? That means the link is broken. However, that's not the only issue -  Someone messed up on the error checking path in Appx and it will use  X:\ModifiableWindowsApps\FOLDERHERE instead of X:\Program Files\ModifiableWindowsApps\FOLDERHERE, which will mark the game install as corrupted. There's also a bug with how it does junctions, since they probably don't test with multiple NTFS drives. 

When the install is marked as corrupted, the Windows Store attempts to backup your "Modifiable" folder (so your mods don't get lost) and then install the game... except that our game itself is stored in that folder. So it cuts the entire 70GB game, puts it somewhere we're not supposed to be able to touch it, then starts downloading it again. smh my head.

Alrighy, tech time is over. You can come out now, it's safe again! So, while I was working on adding NA support to the Tweaker, the rest of the team was busy trying to break the game out of the Windows store. Eventually, we managed to get the Windows Store to recognize a custom install of the game if we installed it as a test application using developer mode. Awesome!

Then I had to write the guide and write new code in the Tweaker, while they began writing that amazing powershell script you all use. Then came the testing (with a much larger group this time, and taking much longer because it required a new install). Then bugfixes, then re-attempts, figuring out why it wasn't working for some, etc etc etc. Once we felt confident that the method worked well, we went ahead and released that too. \ o / (This phase was known internally as "freedom")

So far, it seems to have worked out very well - People can now just sit down and play the game as intended, as opposed to trying to troubleshoot the game and getting a crash course in college IT to play it. It just works, and that's really how it should have been from the start.


Right now, I'm working on some things for the discord, finishing up the touches on some new tools, and then it's back to the Tweaker for some enhancements. I did originally update some of our tools to support NA (because I thought they were useful), but since we're going the whole nine yards, it's time to support NA on everything!

As of now, the following Arks-Layer projects have full NA support:

This means that players in either region can enjoy using the same tools. Awesome!

Here's where you guys come in - Is there anything else you think needs NA support? Is there anything about NA (or JP!) that you think we could make easier/better? Any feedback is welcome, as always - Questions, comments, and criticism. Some of our most awesome things have come from suggestions, so fire away either here or the #server-suggestions channel in the discord (http://discord.gg/PSO2).

Thanks for your patience, kind words, and support. It means the world to us. Enjoy the game, have fun, and be safe. See you ingame, ARKS!


More Creators