The Adventure Continues – TERA Offline

While TERA PC’s adventure is ending as an officially published game (as Bluehole ends development of it), the leaked server files (for a PTS version of patch 92.03) from the Taiwan publisher (which closed back in November 2021), will at least provide the ability for some of us to continue that adventure in an offline capacity (I’ve thus called my server setup, TERA Offline).

Alternatively, there are at least 3 different private servers in operation; Asura, Menma (both of these run a modified version of patch 92.04), and TERA CZ (which runs on a pre-Fate of Arun 2015 version).  Prior to the closure announcement, the population on these private servers were low (TERA CZ was planning to close but has since decided to resume operations after urging from the player community; seems like they plan to see how things go).

Personally for myself, I don’t particularly care for playing on private servers like these because they are “unstable” by their nature of being subject to closure at anytime (there is still the legal component of not being authorized to actually run an online service for them due to the lack of an actual license, where companies can issue a cease and desist and/or DMCA takedown), or simply the lack of funding for hosting an appropriate sized server with adequate network bandwidth.  Another reason is what I wrote extensively about regarding the City of Heroes private server drama from 2019.

In my case, I’ve always been an advocate for offline emulation.  Back in 2018, a DMCA exemption was created to allow the preservation of online only games.  However, it is still challenging trying to clean reverse engineer games this way (which is why you don’t hear much success stories with dead MMO’s being successfully brought back from the dead in an emulated state).  In the case of the leaked TERA 92.03 server files, this goes beyond an emulator since they are the files you need to run that particular version (official during the period that patch was live) of the game.  I view them as okay for using in an offline capacity (such that you can recreate your characters and still experience the game play in some fashion) but definitely not as a publicly available private server.  I know that not everyone agrees with this take because these private servers will be the only means they’ll be able to experience the game (since setting up something like these leaked server files or an emulated version, may go beyond their technical skills and/or lack of hardware to do it).

With that said, I finally got a chance this weekend to work on getting the TERA 92.03 server retail files up and running.  The following is an overview; I do plan on writing up all of this in a more specific format that I plan to make more user-friendly compared to the instructions included in the downloads.  I decided to use the VMWare setup that someone (Robson26) made because it has everything self-contained.  It’s not completely turnkey since it does requires tweaking for your own network.  I had also spent the past two months reading through this entire thread (regarding the 92.03 retail files) just to get a better idea of what things needed to be done.  There’s two years worth of trial and error, as well as coding for certain missing pieces by many different individuals where most of what needs to be done, has now been distilled into a single page document (included in the archived downloads).  That all came in handy this weekend in making the necessary changes to get the VMWare server files, operational.

The first major caveat of delving into this is it can be resource intensive hardware wise.  It’s after all the actual TERA server (just with a scaled back configuration that can be tweaked upwards to handle 5-figure players on datacenter capable hardware).  My system has 64GB of RAM, an 8-core i7-9700k, an NVMe SSD (where the virtual machine resides), and two SATA SSD drives where my games are installed; this includes the TERA 92.03 client that is required for this server.  It is not advisable to run both the virtual machine and game client from the same drive (and it is also advisable to do all of this on an SSD; running it from a hard disk will result in a fairly lengthy startup time).  With that said, it is possible to run both the server and game client on the same PC; it just requires some changes to the default server configuration file to reduce the amount of channel instances to one for every zone (which reduces RAM consumption), and making sure you have enough storage space for the virtual disk drive since you’ll need a large swap file).  The configuration for the 92.03 files were for a ~1000 player public test server (and thus can easily consume 64GB of RAM); the reduction to a single channel zone spinning up at launch, allows the server (including the dungeon server processes) to run in a 32GB memory footprint; perfect for my purposes which is an offline single player environment.

The first thing I needed to do was download a copy of VMWare Workstation Player from VMWare (I’m using version 16 as of this writing).  The download is free and non-commercial use is also free.  Once that was done, I created a TERA_SERVER folder in the root directory of my C: drive (which is the NVMe SSD), and copied the virtual machine containing the TERA server files into that folder (making sure the permissions for the folder and contents, allows write access).  I then ran the player (which recognizes the virtual machine was either moved or copied) and allowed it to import the virtual machine.  I then simply followed the directions in the thread, making the necessary changes (mainly IP address related).  Workstation player does not have the more detailed view of the network interface (compared to Workstation Pro) so I had to run IPCONFIG in a Windows command window to see what DHCP IP address was assigned (the VM is using NAT); that’s the dynamic IP address I needed to edit on both the server, and the launcher.  Since my system has 64GB of RAM, I set the memory for the virtual machine to 32GB and allocated 2 cores for the processor.  I didn’t bother installing the english language datacenter files or audio for the client at this time since the objective was to make sure I could get the actual server up and running, and then make sure I could get into the game.

The most important change I made for the server was to reduce all channel instances to 1 (simple copy and replace in one configuration file).  Two hours after beginning the setup, I was able to get the TERA server up and running.  Launching just the processes for the game world, took around 6 minutes.  That’s enough to connect to the open world and do everything you normally would (it’s the best starting to point since loading the dungeons, battlefields, and matchmaking [these last two being irrelevant anyway for a single player offline setup] aren’t really needed at this time, and consumes more memory).  Running the rest of the processes for the dungeon server, battlefields, matchmaking system, and Nexus server takes an additional 6 minutes (and will consume most of the 32GB physical RAM allocated to the VM; still less than 15 minutes total to get everything running (people that have lower configuration hardware, less than 32GB memory, and trying to run this from a hard drive, can expect this process to take over an hour).

The part that was throwing errors for me was the launcher itself (the errors were in Taiwanese so I couldn’t make out what the actual problem was even though I had hexedited the IP address in it as outlined).  The issue ended up being an oversight in one of the server side forms where there were several more IP addresses I needed to change.  I also installed the english web resources so the login window and launcher would appear in english.  I was finally able to register an account and login with it.

The real moment of truth was seeing how far the game client would go.  At the server select screen, I hit the enter button and was greeted with the character lobby.  While everything was still in Taiwanese, getting to this point told me it was working.  I exited the client to add the english translated datacenter file and audio GPK which did the job of making the TW client, english.  I created my ninja (pictured up top) and entered the game (which I aptly refer to as TERA Offline).  The worldserver has a wealth of GM commands where you can quickly boost your character level, give yourself gold, etc.  One important one is /@makeitem itemID quantity where you can spawn in gear, costumes, mounts, pets, enchantment boxes, etc. using information from TERA Lore.  I was able to recreate my main character this way (having recorded all of the sliders from the character creator for all of my characters) except for the gear tier (since it only goes up to Kaia in this build).  It did feel weird using GM commands this way since normally, you are sinking a lot of money to acquire those cosmetic items and mounts.  That’s one of the most obvious reasons for why game companies are concerned with actual leaks like this.  What I’m more surprised about is the lack of a “kill switch” for what was a PTS build (but then again, this is Krafton/Bluehole we’re talking about…).

On this account, I plan to recreate the characters I have on my main Gameforge account on NA Velik.  Similarly, I have two other accounts with fewer characters that I’ll also recreate on separate accounts.  Once all of that is completed, I plan on reconfiguring the character creation data sheet to be like normal (right now, I have it modified to start all created characters at level 70 with all quests completed up to level 65) so that I can setup another account to level and play normally.  The game world being devoid of other players isn’t that out of place for me since Genshin Impact has normalized that aspect.  Yes, you can put this online (so long as you open up and forward the proper ports) for a small group of friends but doing that opens up security risks unless further steps are taken to harden the security (like adding password hashing for the account database) as well as disabling GM access (which is enabled for the entire server).

Finally, some folks may ask “why bother?” considering that patch 92 is part of the mess that has driven players away.  For myself, it’s about the beautiful game world and being able to continue to experience it (not through pictures or videos).  It’s about the characters you created and played over the years (and how you breath your own personality into them), and how you can continue to play them.  It’s about their combat (TERA IMHO, still has some of the best combat available) and the ability to continue to experience that yourself.  This setup is no longer about grinding to enchant your gear, or spending tons of money for cosmetics.  It’s about being able to continue to enjoy the parts of the game that appeal to me, while no longer having to deal with some publisher pushing their often times exploitive monetization on me (or waiting for the closure shoe to drop like it now has with TERA PC).

I also enjoy tinkering with the backend (and boy is this game highly configurable).  Some of the things I’ll be working on is eliminating the invisible walls (all those annoying collision maps) from the open world.  I already changed the Island of Dawn back to its original pristine state (Bluehole seriously could’ve done this years ago versus the Island of Glowing Dawn instance they finally added in patch 113-114 when it was too late; you can’t even fly in that instance).

Basically, I was looking for a new hobby and I think I just found it.  It’s a game that I enjoyed (maybe just not what both the developer and publisher wanted to stress which is plainly to farm your wallet) and can now continue to experience, tinker, and adventure with in an offline fashion (aka TERA Offline).