First thing is to me it sounds like they rushed a release without fixing most of the problems which they collected from the closed beta's they had. They did small fixes but ignored most of the reports or choose to release the game anyway. So you have some people using exploits such as the ones with Jukpoong, or Glyquare which are bugged mobs that don't attack but give tons of money and experience. They also decreased the rates of the game so low in order to force people to buy experience.
Remember how Ragnarok Online had the in-game shops well this feature was removed from the game after release to prevent people from being able to buy and sell products because of the mobs which are easy to kill that give tons of money. So instead of fixing the problems they are making it cost money to use the auction 20 dollars to pay for use of the auction then every item posted gets increasingly expensive the more you post.
If that isn't bad enough how about 30 dollar haircuts? You could go to great clips and use a coupon for a haircut in real life which is cheaper then a haircut in Tree of Savior. The experience rate is low so buying experience boosts is also very expensive too. With an expensive shop that means as more things get added the prices for them will just be more expensive cause the base line price is very high. Most players don't have 30 dollars to drop in a game for cosmetics. People bash on Archeage for being pay to win shop wise but at least your not spending 30 dollars for a hair change. And they've actually done a good job making it more balanced for F2P players a little too late though.
So how broken is the game? During the last two days of open beta I reported on a bug that I found allowing someone from hot keying any window by knowing what that window is called so they patched it so you can't hotkey the windows anymore to pull them open. But what people don't understand there's another part of it which I pmed privately because I didn't want people flipping out over how broken it is. But aside from hot key pulling open the menu which I pulled the GM menu opened you couldn't access it without changing the game files. But it can be done if you know how to LUA and you can bypass the security check loading the changes after the security check. Which makes the following possible:
One shot a boss but maybe just telling you about it isn't enough maybe I have to actually prove it too you. Cause maybe it sounds like I'm just lieing to you.
function PARAMCONTROL_ON_INIT(addon, frame) end function OPEN_PARAMCONTROL() local frame = ui.GetFrame('paramcontrol'); if session.IsGM() ~= 1 then frame:ShowWindow(0); return; end frame:ShowWindow(1); local cnt = frame:GetChildCount(); for i = 0, cnt - 1 do local ctrl = frame:GetChildByIndex(i); local name = ctrl:GetName(); local uiType = ctrl:GetClassName(); if uiType == "slidebar" then local constName = name; local sl = tolua.cast(ctrl, "ui::CSlideBar"); sl:SetMinSlideLevel(0); sl:SetMaxSlideLevel(1000); local text = frame:GetChild(constName .. "_text"); local cls = GetClass("SharedConst", name); text:SetTextByKey("title", cls.Desc); end end cnt = frame:GetChildCount(); for i = 0, cnt - 1 do local ctrl = frame:GetChildByIndex(i); local name = ctrl:GetName(); local uiType = ctrl:GetClassName(); if uiType == "edit" then local constName = string.sub(name, 1, string.len(name) - 5); local cls = GetClass("SharedConst",constName); local val = cls.Value; local valStr = string.format("%.2f", val); ctrl:SetText(valStr); elseif uiType == "slidebar" then local constName = name; local cls = GetClass("SharedConst",constName); local slideValue = cls.Value * 100; local sl = tolua.cast(ctrl, "ui::CSlideBar"); sl:SetLevel(slideValue); end end end function REQ_SERVER_UPDATE_PARAM_CTRL(frame, clsName) if session.IsGM() ~= 1 then return; end local text = frame:GetChild(clsName .. "_edit"); local val = tonumber(text:GetText()); local valStr = string.format("%.2f", val); local cls = GetClass("SharedConst", clsName); iesman.ChangeIESProp("SharedConst", cls.ClassID, "Value", valStr, "Change By Tool", 1); end function PARAM_CONTROL_EDIT(frame, ctrl, str, num) local ed = tolua.cast(ctrl, "ui::CEditControl"); local name = ctrl:GetName(); local constName = string.sub(name, 1, string.len(name) - 5); local sl = GET_CHILD(frame, constName, "ui::CSlideBar"); local val = tonumber(ed:GetText()); sl:SetLevel(val * 100); REQ_SERVER_UPDATE_PARAM_CTRL(frame, constName); end function PARAM_CONTROL_SLIDE_RESET(frame, ctrl, str, num) local sl = tolua.cast(ctrl, "ui::CSlideBar"); local clsName = sl:GetName(); local edit = frame:GetChild(clsName .. "_edit"); edit:SetText("1.00"); sl:SetLevel(100); REQ_SERVER_UPDATE_PARAM_CTRL(frame, sl:GetName()); end function PARAM_CONTROL_SLIDE(frame, ctrl, str, num) local sl = tolua.cast(ctrl, "ui::CSlideBar"); local val = sl:GetLevel(); local text = frame:GetChild(ctrl:GetName() .. "_edit"); local str = string.format("%.2f", val * 0.01); text:SetText(str); end function PARAM_SLIDE_END(frame, ctrl, str, num) local sl = tolua.cast(ctrl, "ui::CSlideBar"); REQ_SERVER_UPDATE_PARAM_CTRL(frame, sl:GetName()); endSo as you can see from the above this script has a check to tell whether a person is able to access the gm menu so if you pull the menu up by using hotkeys it would check to see if your marked as a gm and then tell you no you can't access it. But the problem with this is that if we know how to edit LUA we can decrypt the client files modify then load them in after the security check is passed. It gives us the ability to increase level to 1000 change stat's and other things making it possible and easy to one shot bosses in dungeons. I won't be telling you how to load changes like these cause its pretty stupid. But I do like that I get ignored by IMCgames and they release the game anyways. It makes me really disappointed so I most likely won't be waiting around for the game anymore.
Who knows maybe someone will take the game and make a private server but with the game client being the reason behind the games failure and lacking Meruru from the xray project and his ability to make a custom client we won't see a successful private server of the game either.
Also if your interested in seeing any of the information from the Korean players forums Nexon and IMCgames has been deleting most of the posts made on the forums but you can access a backup of them from this link But the frustration is real especially for the Korean players. But on a positive note we can come up with fun new names for what the game should be named. I have a few:
Tree of Payments
Tree of Cashshop
Tree of Exploits
Tree of GM menu
Tree of No Trade
I'm sure people could easily do better then me. But anyhow I'm going back to Archeage till Moonlight Blade comes out. Hopefully won't be disappointing like the last 5 mmorpg's that came out.