Discussion in 'NOTD Discussion' started by Lulz, Mar 7, 2012.
buying items is giving you credits... needs to be fixed asap
Oh hai dere emergency.
Bought everything in the shop in Easy Company, could not replicate.
Made a solo game and tested just now - couldn't reproduce.
I am guessing someone with high creds left that guy's game and he bought something, therefore gaining credits (that credit bug is still alive but I think Ability said its np or something)
That bugs been around forever. It used to be a hell of an exploit back when it Credit Shop Came out for 2 or so people to easy get 10k Credits and just Own Survival mode with Permacloak Cons via Arc, XS-4, and any weapon you want.
A way to deal with it would be to have the game set a person's credits to 0 before they leave while they leave, without that part saving.
I think Abi put a limit on credit gain so you cant exceed the amount anyway using the exploit.
Well you can as long as you do everything in that game.
I.e. guy with 10 k credits opens game with you. He leaves. You buy AV for 10 credits and gain 10k on top.
Buy kitten, pet, color idk. Games saves those for you.
It also works for mods, but the issue with mods is that next time you try to change your mods, you lose all of them even if you had legit ones. You keep them as long as you don't change them though.
On a side note, I can't readjust mine without them disappearing even though all of my current mods are legit. I did have some glitched ones initially but those disappeared due to the code check. It does seem to maybe set a flag on you though because even after that I can't manage to keep them.
I have no idea how that guy managed that.
No medals btw
Note that is his 3rd game. In the 2 games before he had a grand total of 8 xp (maybe 4 each).
Prior to this game 487 credits gained already.
In this game, 2 people left before MB, but given that he is under 500xp he couldn't have bought anything. And I didn't see anyone use shop at start.
MwFog reporting same issue in different pub:
http://www.notdstarcraft.com/forum/show ... 39#pid6039
I need Earendil's help to fix this. It's a very long trigger that gives me nightmares.
Earendil uses Terrazine as a proxy for Credits - to enable simple resourced based purchases in shop. My hypothesis is that when players leave a game, their Terrazine (Credits) get allocated to remaining players. In next patch, I've put in a logic check to ensure that if a player's Terrazine is higher than their starting Credits to revert the Terrazine count back to starting amount.
Hopefully this fixes it.
How would this impact credit gain during the game? Is that not stored as terrazine given how you can purchase items at any time during say survival?
Also, in terms of the terrazine, someone on the old forum suggested a fix for it (not using blizzard resources).
For this current credit issue, theres 2 separate problems:
1. Player leaves, the person who next buys an item from the shop next gains a share of all previous leaver credits [generally intentional exploit except during runs where someone drops early and team decides to continue but use shop]
2. Player leaves, a random newbie gets their credits (high xp players do not get it at least. Always goes to a noob) [random issue]
It is Shared among remaining players. There is a message that says that "XXX has left the game. Resources have been distributed among remaining players", or something to that extent, though it doesn't appear in NOTD, this resource share occurs in every game I've played on StarCraft 2.
As a result, their credits get thrown into a huge pool. The question is why this resource isn't instantly distributed, but is only given to the person who actually attempts to (or does) purchase an item.
As long as a resource system is used, its likely this bug will always occur to some extent, but it is the only thing that can be used as far as I know.
But I have a quick question; If their current terrazine count is higher than their starting terrazine count, wouldn't the issue then be, a person cannot gain credits as it will be instantly reset to
their initial value?
(two example variables to represent Current & starting Terrazine.)
Because if current_terrazine > starting_terrazine, then current_terrazine == starting_terrazine, there is no possible way for a player to increase their credit amount. If they gain 8 credits, then their current_terrazine is 8 greater than their starting_terrazine, which means current_terrazine gets set to starting_terrazine's value.
One way is to have a check that ensure the player doesn't have >15% extra Terrazine vs. starting credits as a check when buying items in shop. This should fit 99% of situations where shops are involved.
I feel that is actually still problematic:
Player buys weapon mod in game 1.
Player now has 0 credits and enters a survival game.
Player gains 400 credits and buys a stinger in the shop.
Logic check finds that player has >15% of starting credits when purchasing stinger.
That said however, what you could do is to ensure that when purchasing an item/mod, your final credits are exactly that much smaller than the cost of the item compared to your pre-purchase credits.
This should be feasible as leaver credits are not immediately added to a player's total until after/with the purchase.
This of course still only takes care of problem 1 not of problem 2 as I mentioned.
Problem 2 will need a different solution and code.
Separate names with a comma.