Jump to content
EleTD.com

Karawasa

Administrators
  • Content Count

    3,886
  • Joined

  • Last visited

Everything posted by Karawasa

  1. Karawasa

    Gold Tower

    Currently this tower gives gold based on how much damage it deals. I do not like this setup, it is very hard to find a good balance for this. I have a few ideas that could be used by themselves, or in combination. Curious as to what you guys think. 1. Tower increases bounty received, just like old Money Tower. 2. Tower has an ability that does damage based on how much gold you currently have, the more you have the more it does. 3. Tower has a base damage, then gets bonus damage based on how much gold you have. 4. Tower gives X gold every time it attacks, thus providing a constant stream of additional income. Thoughts?
  2. Karawasa

    Insane mode

    There is a name for it, it is called Extreme Mode (in 4.0). You will see what I mean when you play the next beta. Although the other component of Extreme Mode may scare you.
  3. Karawasa

    Ronalds

    Ronald is much to difficult, couldn't agree more with this. I have halved his HP, and made it so each Ronald results in only 1 life lost. He needs to be tough enough that no build can last versus him indefinitely, but also not overwhelmingly hard.
  4. Thanks for the advice, now it is looking sexy . //Implementation: *Create a unit target ability, add it to towers you wish // *Paste this code into a trigger named Frostbite // *Configure options and enjoy! //Documentation: Tested working. // Anyhow, this trigger takes care of everything for you, after your configure her ofcourse. scope Frostbite globals //config options: private constant integer fb_id = 'A01M' //ability id private constant integer fb_buff = 'B00I' //buff id private constant string fb_sfx = "Abilities\\Spells\\Undead\\FreezingBreath\\FreezingBreathTargetArt.mdl" //effect created on target while frozen private constant string fb_spot = "origin" //attachment location for effect //needed globals: private group G = CreateGroup() endglobals private function fb_duration takes nothing returns real return 5. //duration of spell/lvl endfunction private function fb_divisor takes integer lvl returns real //return ((lvl-1.)*2.)+1. //will do double dam at lvl 1, triple at lvl 2, etc., atm if lvl==1 then return 2. else return 1.33 endif endfunction //needed struct private struct data effect sfx = null unit u = null real hp = 0.0 real life = 0.0 endstruct function Trig_Frostbite_Conditions takes nothing returns boolean return GetSpellAbilityId()==fb_id and GetUnitAbilityLevel(GetSpellTargetUnit(),fb_buff)<1 and not IsUnitInGroup(GetSpellTargetUnit(),G) endfunction //create effects/ remove if no damage ever taken function Trig_Frostbite_Actions takes nothing returns nothing local unit u = GetSpellTargetUnit() local effect sfx = AddSpecialEffectTarget(fb_sfx,u,fb_spot) local real diff = 0.0 local data dat = data.create() call GroupAddUnit(G,u) call TriggerSleepAction(0.0) set dat.sfx = sfx set dat.u = GetTriggerUnit() set dat.hp = GetWidgetLife(u) call SetWidgetLife(u,dat.hp-(dat.hp/fb_divisor(GetUnitAbilityLevel(dat.u,fb_id)))) set dat.life = GetWidgetLife(u) call PolledWait2(fb_duration()) set diff = dat.life - GetWidgetLife(u) call SetWidgetLife(u,dat.hp - diff) call DestroyEffect(sfx) call GroupRemoveUnit(G,u) call dat.destroy() set u = null set sfx = null endfunction endscope function InitTrig_Frostbite takes nothing returns nothing set gg_trg_Frostbite = CreateTrigger() call TriggerRegisterAnyUnitEventBJ(gg_trg_Frostbite,EVENT_PLAYER_UNIT_SPELL_EFFECT) call TriggerAddCondition(gg_trg_Frostbite, Condition(function Trig_Frostbite_Conditions)) call TriggerAddAction(gg_trg_Frostbite, function Trig_Frostbite_Actions) endfunction
  5. How sexy is this: //Implementation: *Create a unit target ability, add it to towers you wish // *Paste this code into a trigger named Frostbite // *Configure options and enjoy! //Documentation: Tested working. // Anyhow, this trigger takes care of everything for you, after your configure her ofcourse. scope Frostbite globals //config options: private constant integer fb_id = 'A01M' //ability id private constant integer fb_buff = 'B00I' //buff id private constant string fb_sfx = "Abilities\\Spells\\Undead\\FreezingBreath\\FreezingBreathTargetArt.mdl" //effect created on target while frozen private constant string fb_spot = "origin" //attachment location for effect //needed globals: private group G = CreateGroup() endglobals private function fb_duration takes nothing returns real return 5. //duration of spell/lvl endfunction private function fb_divisor takes integer lvl returns real //return ((lvl-1.)*2.)+1. //will do double dam at lvl 1, triple at lvl 2, etc., atm if lvl==1 then return 2. else return 1.33 endif endfunction //needed struct private struct data effect sfx = null unit u = null real hp = 0.0 boolean ran = false endstruct function Trig_Frostbite_Conditions takes nothing returns boolean return GetSpellAbilityId()==fb_id and GetUnitAbilityLevel(GetSpellTargetUnit(),fb_buff)<1 and not IsUnitInGroup(GetSpellTargetUnit(),G) endfunction //create effects/ remove if no damage ever taken function Trig_Frostbite_Actions takes nothing returns nothing local unit u = GetSpellTargetUnit() local effect sfx = AddSpecialEffectTarget(fb_sfx,u,fb_spot) local data dat = data.create() call GroupAddUnit(G,u) call TriggerSleepAction(0.0) set dat.sfx = sfx set dat.u = GetTriggerUnit() set dat.hp = GetWidgetLife(u) call SetWidgetLife(u,dat.hp-(dat.hp/fb_divisor(GetUnitAbilityLevel(dat.u,fb_id)))) call PolledWait2(fb_duration()) if dat.ran==false then call SetWidgetLife(u,dat.hp+(dat.hp/fb_divisor(GetUnitAbilityLevel(dat.u,fb_id)))) call DestroyEffect(sfx) call GroupRemoveUnit(G,u) endif call dat.destroy() set u = null set sfx = null endfunction endscope function InitTrig_Frostbite takes nothing returns nothing set gg_trg_Frostbite = CreateTrigger() call TriggerRegisterAnyUnitEventBJ(gg_trg_Frostbite,EVENT_PLAYER_UNIT_SPELL_EFFECT) call TriggerAddCondition(gg_trg_Frostbite, Condition(function Trig_Frostbite_Conditions)) call TriggerAddAction(gg_trg_Frostbite, function Trig_Frostbite_Actions) endfunction
  6. That's right, you can now access the IRC channel with just a click. Go to the site (http://www.eletd.com) and on the side menu you will see "Join The Chat Channel." Click it, and you will be able to join the channel via web interface. Hopefully this encourages random visitors to chat.
  7. I get an error similar to that when I make really long posts too, the determinant is how long you take to post I believe. I think after a certain point it times out, I'll see if there is a setting for that.
  8. Per our conversation, just wanted to remind you about your comment. You said this uses game cache which is ancient, should be using unit groups instead.
  9. Karawasa

    Voting.

    Tests went well, implementation still being worked on .
  10. Ok per our conversation I'm going to scratch this idea. Instead, I'll just make a simple AoE damage spell that applies a SFX to target units instead of projectiles.
  11. Got this one, will post code here for review once it is done.
  12. One of the spells will be dispel magic in AoE, and thus will be defensive. This gives the player some layer of protection at the cost of offense.
  13. Karawasa

    Generic Map Triggers

    Nice work, creeps spawn a lot better now with that timer instead of the wait. I'll have to catch you online soon for that voting system code. Here is a list of triggers that run the most (and thus could benefit the most from optimization), I've listed them all, so pick and choose what is worth optimizing. The parentheses indicates what category the trigger is under. Before you do these, get the most recent file from http://www.eletd.com/mapfile List: -Interest (Bank) -Leak (Level) -Quits (Level) -Unit Dies (Creep) -Networth (Multiboard) -Update Multiboard (Multiboard)
  14. But if all spells are random, then it really isn't interactive. The idea is that you can screw a specific person over if you want. Could even make it so that when one guy is eliminated, everyone else gains like 10 lives. Truly would be a last man standing game.
  15. Karawasa

    Thehelper.net

    Indeed, TheHelper helped me out, no pun intended?
  16. Karawasa

    Voting.

    I agree with you, and it has been fixed for Beta6. Voting will be independent, you go at your own pace. That means you can finish it as fast as you want, and then fiddle around until everyone else is done (or timer expires and voting ends).
  17. Karawasa

    Triggering

    Interface maker, that sounds interesting.
  18. No clue, got it from emjlr3, who got it from somewhere else.
  19. Karawasa

    Tower of Elements

    Good point, post edited.
  20. Nice idea! As for imbalance, the abilities will have high CD I am sure, so they will have to be used strategically.
  21. Karawasa

    Bugs

    Without cheating, it is not possible to max everything.
  22. I have decided that Hero Mode is probably going to get the axe, as I just do not have the time to remake it into something better than a bunch of heroes with the same stock ladder abilities. However, I don't want the game to lose a mode, so I would like to propose an idea I have had for awhile. It is a game mode that will allow players to interact with each other, and really fight to survive. If you have played Enfos, then you will understand this concept pretty easy. The idea is that when selected, each player would then become enemies of the other players. Shared vision would be lost, so you wouldn't be able to see the areas of other players. You would get a building that would have a bunch of spells, that will allow you to interact with other players. These spells would cost mana and have a CD, so you would have to plan how to use them. Potential spells could be: -Reveal an area to see other players -Speed up creeps for one person -Increase armor of creeps for one person -Decrease damage of towers for one person -Heal creeps for one person in AoE -Make a creep immune to spells -Put a builder to sleep etc. etc. you get the idea. Thoughts?
×
×
  • Create New...