Page 1 of 3

Uh... Can anyone do something about the 4 gold per second?

Posted: Mon May 14, 2018 12:33 am
by Sylvanas
I just played again for the first time in a while today and the passive gold gain still isn't fixed, and everyone seems completely oblivious or indifferent to it. Can anyone fix it? I'm not familiar with making maps, but I feel like it should be a simple fix to make. Am I the only person thinking it's kind of a big deal?

Re: Uh... Can anyone do something about the 4 gold per second?

Posted: Mon May 14, 2018 3:44 am
by Letbell
I think putting ap mode should fix the 4 gp/sec.
Or any non-em mode.

Re: Uh... Can anyone do something about the 4 gold per second?

Posted: Mon May 14, 2018 9:57 pm
by Sylvanas
Letbell wrote:I think putting ap mode should fix the 4 gp/sec.
Or any non-em mode.

But the bots are em, and non-em doesn't seem to be an option for the majority of players...

Re: Uh... Can anyone do something about the 4 gold per second?

Posted: Thu May 17, 2018 10:24 pm
by Sylvanas
Well it really looks like absolutely nobody cares. I guess we'll all just do nothing and pretend nothing happened.

Double the passive gold gain for no reason, no one bats an eye. Cut it in half (aka the real game) and everyone loses their mind. What a world.

Re: Uh... Can anyone do something about the 4 gold per second?

Posted: Thu May 17, 2018 10:28 pm
by Zeratul
Sylvanas wrote:Well it really looks like absolutely nobody cares. I guess we'll all just do nothing and pretend nothing happened.

Double the passive gold gain for no reason, no one bats an eye. Cut it in half (aka the real game) and everyone loses their mind. What a world.


Watch a bear running with radiance only and noone cares

Watch an invoker attempting to do the same and look at the result: viewtopic.php?f=24&t=127835

Jackpot! XD

PS: Honestly i woulnd't mind non -em, as i'm getting used to it due to DotA 2, but it's like you say: the minute you suggest it and it gets approved, you'll see the shitshow happening all over again (if you recall what happened the last time it got removed :p)

Re: Uh... Can anyone do something about the 4 gold per second?

Posted: Thu May 17, 2018 10:50 pm
by Sylvanas
Zeratul wrote:Watch an invoker attempting to do the same and look at the result: viewtopic.php?f=24&t=127835

Jackpot! XD

PS: Honestly i woulnd't mind non -em, as i'm getting used to it due to DotA 2, but it's like you say: the minute you suggest it and it gets approved, you'll see the shitshow happening all over again (if you recall what happened the last time it got removed :p)

NEVER FORGET

Re: Uh... Can anyone do something about the 4 gold per second?

Posted: Wed Sep 19, 2018 4:39 am
by Sylvanas
...

Can anyone with some map making knowledge explain to me how cutting passive gold gain back down in half is a fucking impossible task that no one dares to attempt? This is ridiculous as hell.

Re: Uh... Can anyone do something about the 4 gold per second?

Posted: Wed Sep 19, 2018 11:27 am
by Dhamma
The task is not impossible and has nothing to do with the map makers.

All you have to do is remove EM from AP or AR when hosting games. But....

Zeratul wrote:the minute you suggest it and it gets approved, you'll see the shitshow happening all over again (if you recall what happened the last time it got removed :p)


This.

Best to just focus on the positive note here. Games are more challenging. More experienced players already know how to last hit and farm. It is only the noobs with 30cs per game who benefit from this. This way they can actually get their items regardless, and make the games more challenging for us. I actually had a discussion about this with nabo back in the day, and this was our conclusion.


PS: The game was never intended to be played with this EM mode. When the gold increase came about, it was a change intended for dota 2 that doesn't have EM. It was the first time the maps for Dota 1 and 2 weren't released at the same time. And marked the beginning of the end for dota 1. I suspect that the removal of EM from the map was either overlooked or they simply didn't care.

Re: Uh... Can anyone do something about the 4 gold per second?

Posted: Fri Sep 21, 2018 10:54 pm
by EdgeOfChaos
I could do it; it's not hard. But I don't think ENT wants this.

Re: Uh... Can anyone do something about the 4 gold per second?

Posted: Fri Sep 21, 2018 11:27 pm
by Sylvanas
EdgeOfChaos wrote:It's not a hard mapmaking change. I could do it. But I don't think ENT wants this.

ENT (the games hosting service) will have to switch to it when requested, since it's not even a change, it's just a glitch fix. Nobody cares what ENT (the community) thinks of it.

Re: Uh... Can anyone do something about the 4 gold per second?

Posted: Fri Sep 21, 2018 11:31 pm
by Zeratul
Sylvanas wrote:ENT (the games hosting service) will have to switch to it when requested, since it's not even a change, it's just a glitch fix. Nobody cares what ENT (the community) thinks of it.


Altho i understand what you mean, believing that ENT will 'blindly' approve anything just cause its a glitch fix is a bad idea :P But yeah, if you can fix the 4g/sec to the normal 2g/sec while keeping the current -em, i see no reason for it to be denied (removing -em is a whole different story)

Re: Uh... Can anyone do something about the 4 gold per second?

Posted: Fri Sep 21, 2018 11:37 pm
by Sylvanas
Zeratul wrote:Altho i understand what you mean, believing that ENT will 'blindly' approve anything just cause its a glitch fix is a bad idea :P But yeah, if you can fix the 4g/sec to the normal 2g/sec while keeping the current -em, i see no reason for it to be denied (removing -em is a whole different story)

What do you mean by bad idea? I think it's both a good idea and also a truthful one. I'm pretty sure a glitch fix version to any map currently being hosted will inevitably be approved.

Re: Uh... Can anyone do something about the 4 gold per second?

Posted: Sat Sep 22, 2018 12:42 am
by EdgeOfChaos
Try out this map @sylvanas https://www.dropbox.com/s/cmmpsnthrqd9r ... x.w3x?dl=0
it was 5 min work, typing out this description took longer than doing it, but still don't expect ENT to autohost it, the plebs will riot

I am going to describe the technical details so that people can understand and do it yourself if you so want to. And maybe give you an understanding of wc3/dota code if you care at all.
First thing: extracted .j file, opened in JASSCraft.

The goal is changing the gold timer to provide gold more slowly, since it's too fast right now. I started by searching for anything that adds gold to the player (PLAYER_STATE_RESOURCE_GOLD) but there were a shitload of them and none that gave 2 or 1 gold directly. Next approach: search for timers. Gave no leads. I guess I am dumb and didn't think to search for periodic triggers, so I did the following instead:

I know that EM changes the value of gold gained, so finding the switch for EM mode should show exactly where the gold gain changes from 2 to 1, and therefore get me the gold gain trigger.

String array WB2 stores each mode string WB2[15] is the slot for easy mode. When -(something) is entered as a mode, WB2 is iterated over by this loop.

Code: Select all

exitwhen z>WD2
if WB2[z]==SubString(DC2,x,y)then
set WC2[z]=true
set z=WD2+1
set DC2=W22(DC2,x,y)
set x=-1
set FQ1=StringLength(DC2)
set y=FQ1
else
set z=z+1

-> checks if mode WB2[z] is entered for all z. If it is, WC2[z] switch set to true, and a lot more stuff happens I have no idea about. But WC2[z] is the part that matters, so WC2[15] is the switch controlling easy mode.

From there we get this declaration

Code: Select all

set EM=WC2[15]

Now variable EM is the switch controlling easy mode

From there, this function is called

Code: Select all

call PMI("X42",EM)

The code of function PMI is simple.

Code: Select all

function PMI takes string PNI,boolean PSI returns nothing
if PSI then
call ExecuteFunc(PNI)
endif
endfunction

-> Calls the function specified as first argument if boolean passed in is true.

Now we go to function X42 which is called when EM is active.

Code: Select all

function X42 takes nothing returns nothing
set R0=true
call SetPlayerTechResearched(BO[0],1378889780,1)
call SetPlayerTechResearched(CO[0],1378889780,1)
call SetPlayerHandicapXP(BO[1],1.5)
call SetPlayerHandicapXP(BO[2],1.5)
call SetPlayerHandicapXP(BO[3],1.5)
call SetPlayerHandicapXP(BO[4],1.5)
call SetPlayerHandicapXP(BO[5],1.5)
call SetPlayerHandicapXP(CO[1],1.5)
call SetPlayerHandicapXP(CO[2],1.5)
call SetPlayerHandicapXP(CO[3],1.5)
call SetPlayerHandicapXP(CO[4],1.5)
call SetPlayerHandicapXP(CO[5],1.5)
endfunction

So we see here is where EM gives the bonus xp (50% bonus). Three commands I have no idea about yet: what R0 is, what research 1378889780 is, and what research 1378889780 is. Based on the fact that those 2 researches apply to the computer players, it would seem those are responsible for lowering tower damage. Therefore the last option to find gold gain trigger is this R0.

Finally leading us to this function. This is the trigger that grants gold gain.

Code: Select all

function U31 takes nothing returns boolean
local integer ROI=1
if R0 then
set ROI=2
endif
call SetPlayerState(BO[1],PLAYER_STATE_RESOURCE_GOLD,GetPlayerState(BO[1],PLAYER_STATE_RESOURCE_GOLD)+ROI)
call SetPlayerState(BO[2],PLAYER_STATE_RESOURCE_GOLD,GetPlayerState(BO[2],PLAYER_STATE_RESOURCE_GOLD)+ROI)
call SetPlayerState(BO[3],PLAYER_STATE_RESOURCE_GOLD,GetPlayerState(BO[3],PLAYER_STATE_RESOURCE_GOLD)+ROI)
call SetPlayerState(BO[4],PLAYER_STATE_RESOURCE_GOLD,GetPlayerState(BO[4],PLAYER_STATE_RESOURCE_GOLD)+ROI)
call SetPlayerState(BO[5],PLAYER_STATE_RESOURCE_GOLD,GetPlayerState(BO[5],PLAYER_STATE_RESOURCE_GOLD)+ROI)
call SetPlayerState(CO[1],PLAYER_STATE_RESOURCE_GOLD,GetPlayerState(CO[1],PLAYER_STATE_RESOURCE_GOLD)+ROI)
call SetPlayerState(CO[2],PLAYER_STATE_RESOURCE_GOLD,GetPlayerState(CO[2],PLAYER_STATE_RESOURCE_GOLD)+ROI)
call SetPlayerState(CO[3],PLAYER_STATE_RESOURCE_GOLD,GetPlayerState(CO[3],PLAYER_STATE_RESOURCE_GOLD)+ROI)
call SetPlayerState(CO[4],PLAYER_STATE_RESOURCE_GOLD,GetPlayerState(CO[4],PLAYER_STATE_RESOURCE_GOLD)+ROI)
call SetPlayerState(CO[5],PLAYER_STATE_RESOURCE_GOLD,GetPlayerState(CO[5],PLAYER_STATE_RESOURCE_GOLD)+ROI)
return false
endfunction

Very well, almost done. Now we perform a search on function U31 to find the timer that grants gold.

Located:

Code: Select all

set EW0=CreateTrigger()
call TriggerRegisterTimerEvent(EW0,0.6,true)
call TriggerAddCondition(EW0,Condition(function U31))

Here we see that it triggers every 0.6 seconds. We change this to 1.0 seconds.
Also this means that technically it wasn't 4 gold per sec, it was 3.3333 gold per sec. not that it really matters.

Re: Uh... Can anyone do something about the 4 gold per second?

Posted: Sat Sep 22, 2018 1:05 am
by Sylvanas
OK, it works, thanks. Should I suggest this map now? Or would you prefer doing it?

Re: Uh... Can anyone do something about the 4 gold per second?

Posted: Sat Sep 22, 2018 1:06 am
by EdgeOfChaos
You can; I don't particularly care about the change one way or another tbh :d