-
Content Count
3,886 -
Joined
-
Last visited
Everything posted by Karawasa
-
The orbs will be larger for b13. I will also put in information about the minimum and maximum ranges. By the way, it displays the range in the tooltip(Orbit - [Radius 250]).
-
I have updated the boards with two new skins. One is darker themed, while the other has both elements. The default skin remains the same.
-
If we used a more intensive orb model, the fps drop would be greater. I can make the orbs bigger if that would help. The orbs are created and fired on every attack, so a Spring Forward buff makes this happen more often. Is it fun?
-
I'll fix the Golem hotkey, and perhaps look into the contract/expand hotkeys.
-
I'll look into that upgrade bug for the next beta. Explanation of Golems is in Timberwolf's thread.
-
I'll look into it for the next beta.
-
1. A Flesh Golem(this applies to tier 2 as well obviously) can morph between Normal Mode and Link Mode. In Link Mode it cannot move or attack. When a Normal Mode Golem attacks, it draws upon nearby Link Nodes(of the same tier only) for power which adds damage to the attack. The Link Nodes can "powerup" a Golem every 0.5 seconds, thus there is a CD to their effect. The formula for an attack is base(4000) + bonus(2000)*#(X Links)*1.05^#. 2. Good to hear that you're not having performance issues. How does it compare to B11? PB? 3. Glad you like the max hp change to solve healing wave imbalance. The reason why it balances undead too is because the undead unit will revive with a % of the balanced max hp. Speaking of which, undead creeps are too weak now(it sets the current hp to % too, even though the max hp is balanced)...
-
I'm happy to present to you guys the twelfth beta. I believe this beta will be a significant milestone in the 4.0 development process. Beta 12 sees the addition of the last two outstanding towers. The map is now nearly complete in terms of new content, and ready to be balanced. There are also a lot of fixes, tweaks, and performance optimizations. The historic healing creep bug for varying difficulties has finally been fixed. By far though the most important change is the new DPS Counter(replacing Damage Counter) along with the damage display functions(-start xx). Getting useful numbers on balance is now very easy and accurate. Get the beta here: http://www.eletd.com/beta You must use the following info: Username: tester Password: carleton First: In order to play the beta, you must type -carleton before the first round spawns. If you do not do so, the game will end. Make sure to put to good use the -level, -gold, and -lumber commands. Also use the -start xx, and -stop(if you need to) commands. Second: The following things are no cause for concern: Nothing, i.e. if it seems wrong report it! Third: Things to test: -Try out Flesh Golem and Jinx Tower. How do they feel? Do you like them? -How does the extra time feel for Short and Extra Short modes? -Do you notice an overall performance increase? Are Ice and Gunpowder better now? -For those of you who play on a lower difficulty, how do healing waves feel now? Undead waves? -How balanced does Hail feel now? Ice? Electricity? Kindle? -Most importantly, put the new DPS Counter and Damage Display Functions to good use. Here are some great tools to get easy, useful, and accurate numbers on tower and build balance. Fourth: Here is the changelog: -Damage counter remade(more on this below) -Lower difficulties now have max hp adjusted instead of current hp, preventing healing/undead imbalance -Increased starting time for Short Mode (45) and Extra Short Mode (60) -Changed Flesh Golem to Prism ability -Changed Jinx Tower to Orbit ability -Significantly improved performance of Frost Helix -Improved performance of Shrapnade -Improved performance of Contamination/Gaia's Wrath(the two shockwave spells) -Optimized creep leak trigger, hopefully fixed undead bug -Performance further optimized by modifying periodic functions -Changed Gunpowder from 3 fragments to 2, damage buffed to 150 -Sharpnade clusters now spread out less -Maledict now ignores armor type as well -Voodoo Tower buffed to 4000 damage up from 3000 -Clones can now be sold for 0 gold, also clones have the "Do not clone" effect on them for easy recognition -Hail changed to 6/3(active time/inactive time) -Nerfed Ice to 300 damage down from 400 -Light and Darkness towers now have faster projectile speeds -Kindle changed to attack based, now buffable by all supports -Conjure Lightning nerfed to 400 damage, down from 500 -Hydro Tower now switches targets when ability fires -Fixed Quantum Beam tooltip error -Conjure hotkey © now working -All buffs removed from a tower when it upgrades. This stops Mushroom/Quaker abuse and should also eliminate the massive model size bug -Ronald Counter should work properly now -Sunburn effect now destroys correctly after wearing off -Fixed Corpse Explosion blowing up sold towers -Hopefully fixed Quark max damage bug -Flame support buff autocast(and all others) should be working now -Interest now appears above the Beta Leader model -Beta Leader model changed **Damage Counter** -Present in SP only -Works for all damage sources -Doesn't count overkill damage -Now displays 3 second moving average DPS -command -start xx will start a countdown that expires in xx seconds, will display total damage done, total time, and average dps over the period when expires -command -stop will stop a current countdown and display the same information
-
Flesh Golems are changing.....
-
Over the course of a wave, placement of tower and position of creeps factors into output dramatically. I think it is better to look at one single time period, in this case 9 seconds. I can tell you that they are equal when placed in the same situation. Perhaps a Shroom with Fire Up should be placed differently than a Shroom with Spring Forward to maximize its damage over the course of the wave. Hopefully you will all be able to test it yourself tonight.
-
You will notice that the numbers are not that far off with the Beta 11 values. The difference is minute, and does not justify a jump from 4/8/30 to 9/15/30. Furthermore, I have repeatedly tested the Beta 11 numbers with the new system I have planned for Beta 12. Over a period of 9 seconds, the effective damage output and average dps were quite similar between Shroom+Smith and Shroom+Well. As such I am keeping the current values from Beta 11. Soon enough you will be able to test this yourself with the system planned.
-
I should note that Very Hard should be just that. There have been a lot of changes to the towers and builds, and it will take time to balance them and get used to them. Perhaps playing on Hard for now is justified, and as things stabilize master Very Hard. I have something planned that will allow us to balance the towers and builds far easier and more rapidly. Trust me when I say that if you like useful numbers, you should be excited. There has been good activity so far with Beta 11, and I hope to see more for Beta 12(skipping 11b). Good tools and great testers will result in a stable and exciting 4.0 release sooner.
-
The 6 ele build is quite a minority by itself. The vast majority of builds should be more powerful now. Healing may very well be too strong. As for VE and healing, I have an idea to fix that problem once and for all. Fast is too doable? Does that mean too easy?
-
Not a bug, this is intended. Like Mechanical, I think Undead creeps should sort of reset when leaked. We can change it if it is a balance problem though...
-
The undead creeps that moved backwards(or had full hp upon revival), were they leaked creeps?
-
Why I didn't think of that(or remember it if you posted earlier) is beyond me. Nice thinking, and consider it done.
-
Think of it like this, all the builds are now in an area of power between the old 6 element and the old 4 element. Old: 30/50/130 New: 60/65/70 The 6 element build certainly got nerfed, but the 4 and 5 element builds got buffed overall. Since the vast majority of builds are more powerful than before, I felt an increase in creep hp was needed.
-
You have to keep the time period the same for a fair comparison. While the duration of the ability does not increase, in the same time period a 15 mana increase results in ability going from 3/6 to 6/3. By reducing the period to 6 seconds, you don't get to see the full result of the 15 mana being added. All the calculations are based off of the same base numbers, and the time period should be considered a base number as well. How else can we explain the difference between 2500 and 2833.
-
The problem with your calculations is that you keep the ability time constant and instead change the divisor to reflect the difference in time. The above implies that with 15 mana added that half the time is spent in buff mode and half the time is spent in rest mode. When you keep it faithful you get: 6 sec 3 sec _____________ + ________ |1500+2000 | + | 1500 | = (21000+4500)/9 = 2833.33 Thus in the same time period (9 seconds), the level 2 bad buff with your 15 mana increases the overall DPS by 70%.
-
Lightning (and Ice) are the new Gold . Someone once mentioned that the first hit gets amplified too as if it were a bounce. I will have to test lightning and see what total damage ends up being, and correct accordingly. I'll post results here.
-
That is exactly it. It cannot stack on the same creep, otherwise it stacks. As for the topic, it may very well be that the game is too difficult now. The build rebalance made the game easier, but the creep hp buff could have perhaps overcompensated. That being said, I agree with others that we should focus on balancing the towers/builds first. If the creeps still feel too hard afterward, then we can nerf them.
-
Initially this post was my request for all the modifications needed. However, I got the urge to try and do it myself. It appears to be working, but I would appreciate your review in lieu of the coding. //Implementation: *create passive ability to be detected // *copy over trigger, config //Documentation: Really neat. Imported a custom model, that may or may not fit the theme of the tower, though is sure looks neat. scope Orbit globals private integer Dummy = 'n01B' // orbit dummy id private integer Abil_1 = 'A043' // orbit ability 1 private integer Abil_2 = 'A044' // orbit ability 2 private real Min = 250. // closest distance to tower private real Max = 750. // furthest distance from tower private real Ang = 18. // angle inc. per interval (rotation speed) private real Area = 128. // area around orbit dummy to damage creeps private real Interval = 0.05 // speed of the timer private timer TOrbit = CreateTimer() private group G = CreateGroup() private Orbit_data array structArray private integer Total = 0 private unit U private real B endglobals private function GetDamage takes unit u returns real if GetUnitTypeId(u)==TOWER_JINX then return 500.*B elseif GetUnitTypeId(u)==TOWER_HEX then return 2500.*B endif return 0. endfunction private function GetRadius takes integer lvl returns real if lvl==1 then return 250. elseif lvl==2 then return 300. elseif lvl==3 then return 350. elseif lvl==4 then return 400. elseif lvl==5 then return 450. elseif lvl==6 then return 500. elseif lvl==7 then return 550. elseif lvl==8 then return 600. elseif lvl==9 then return 650. elseif lvl==10 then return 700. elseif lvl==11 then return 750. endif return 500. endfunction private function Filt takes nothing returns boolean return GetWidgetLife(GetFilterUnit())>.405 and IsUnitEnemy(GetFilterUnit(),GetOwningPlayer(U)) endfunction private function DealDamage takes nothing returns nothing call UnitDamageTarget(U,GetEnumUnit(),GetDamage(U),false,false,ATTACK_TYPE_SIEGE,DAMA GE_TYPE_NORMAL,null) endfunction struct Orbit_data unit u player p unit orbA unit orbB real x real y real angA real angB real dist method Start_Orbit takes unit atkr returns nothing set .u = atkr set .p = GetOwningPlayer(.u) set .x = GetUnitX(.u) set .y = GetUnitY(.u) set .orbA = CreateUnit(.p,Dummy,.x+Min*Cos(0.*bj_DEGTORAD),.y+Min*Sin(0.*bj_DEGTORAD),0.) set .angA = 0. set .orbB = CreateUnit(.p,Dummy,.x+Min*Cos(180.*bj_DEGTORAD),.y+Min*Sin(180.*bj_DEGTORAD),0. ) set .angB = 180. set .dist = 0. endmethod method Orbit_Effects takes nothing returns nothing local real bonus if GetUnitTypeId(.u)==TOWER_JINX then set .dist = GetRadius(GetUnitAbilityLevel(.u,Abil_1)) elseif GetUnitTypeId(.u)==TOWER_HEX then set .dist = GetRadius(GetUnitAbilityLevel(.u,Abil_2)) endif set .angA = .angA + Ang set .angB = .angB + Ang call SetUnitX(.orbA,.x+.dist*Cos(.angA*bj_DEGTORAD)) call SetUnitY(.orbA,.y+.dist*Sin(.angA*bj_DEGTORAD)) call SetUnitX(.orbB,.x+.dist*Cos(.angB*bj_DEGTORAD)) call SetUnitY(.orbB,.y+.dist*Sin(.angB*bj_DEGTORAD)) set U = .u if GetUnitAbilityLevel(.u, 'B00A') > 0 then set bonus = 1.25 elseif GetUnitAbilityLevel(.u, 'B00J') > 0 then set bonus = 1.5 elseif GetUnitAbilityLevel(.u, 'B00K') > 0 then set bonus = 3.0 else set bonus = 1.0 endif set B = bonus call GroupEnumUnitsInRange(G,GetUnitX(.orbA),GetUnitY(.orbA),Area,Condition(function Filt)) call ForGroup(G,function DealDamage) call GroupClear(G) call GroupEnumUnitsInRange(G,GetUnitX(.orbB),GetUnitY(.orbB),Area,Condition(function Filt)) call ForGroup(G,function DealDamage) call GroupClear(G) endmethod method onDestroy takes nothing returns nothing call RemoveUnit(.orbA) call RemoveUnit(.orbB) endmethod endstruct //movement and effects function Orbit_Move takes nothing returns nothing local integer i = 1 local Orbit_data dat loop exitwhen i > Total set dat = structArray[i] if dat.angA>=360. then call dat.destroy() set structArray[i] = structArray[Total] set Total = Total - 1 set i = i - 1 else call dat.Orbit_Effects() endif set i = i + 1 endloop if Total==0 then call PauseTimer(TOrbit) endif //call Msg("Run",Player(0)) endfunction //starts the effects function Trig_Orbit_Actions takes nothing returns nothing local unit attacker = GetEventDamageSource() local Orbit_data dat set dat = Orbit_data.create() call dat.Start_Orbit(attacker) set Total = Total + 1 set structArray[Total] = dat if Total==1 then call TimerStart(TOrbit,Interval,true,function Orbit_Move) endif set attacker = null endfunction endscope //==== Init Trigger Orbit ==== function InitTrig_Orbit takes nothing returns nothing call ORBEngine_RegisterOrb(TOWER_JINX, function Trig_Orbit_Actions, "TOWER_JINX: Orbit") call ORBEngine_RegisterOrb(TOWER_HEX, function Trig_Orbit_Actions, "TOWER_HEX: Orbit") endfunction
-
I was able to double my FPS with 20 Ice Towers out by modifying the configuration options. I was also able to achieve significant FPS gain with 20 Gunpowder Towers by modifying options, and reducing fragments from 3 to 2 (and buffing damage to 150 to compensate). It sounds like Flame isn't causing too much lag (and it shouldn't based on what it does). Hopefully this takes care of the FPS problems then (unless another tower also causes lag). It was mentioned that Water Towers can reduce FPS more than normal when massed. If someone would like to compare their FPS between 3.0 and 4.0 PB when massed, that would be great. Results of a test like that will determine how much we can do (3.0 didn't have any fancy triggers really, so if it lags just as bad there...). Regardless of whether code can be optimized or not, we can further increase FPS globally by reducing over the top special effects. For instance, the biggest boost to FPS from modifying Gunpowder was changing the explosion graphic from the Mortar Team projectile to one that doesn't have such an intense effect (not to mention how it scorches the ground).