|
|
We all know what OMG mode from DotA was. I am curious whether this is possible to create using the map editor? I did a search for this topic and came to no avail.![]()
It is but stresses sistem way too much and would cause major lagg when you need to reload new heroes and abilities.
How do you figure it's any more stressful than the current loading of heroes and abilities?
The only part that would be more stressful to the server (which even this would probably be tiny) would be the actual randomization of the skills. Everything else would be loaded with the same stress level as the current loading.
I think it could work, but it would require an insane amount of script.
You don't even need to use the map editor, you will only have to do scripting.
Maps:
Enfo's Team Survival Beta [Dream] - v1.019 (18/07/2011)
BeHoNeled Alpha (Bejeweled clone) [Dream]
So the short answer is yes, but it would take an inordinate amount of scripting? Has anyone even tried to attempt this kind of mod? From the responses I suppose it's safe to say it will take way too much work to be worth it in the end.
If I knew more about development and scripting I would be willing to assist in the creation of a proper OMG map. But sitting here and thinking about the logistics of how skills and hero models would be selected makes me wonder if the game engine would really work well with that type of mode. I assume you would have to script a completely separate GUI to allow for these selections.
If I am way off base, feel free to correct me.
Yes, that is right, you would need a UI modification to include a way to pick your skills.
The amount of scripting I'm talking about is because you would need to do the following when you select a skill:
I never tried the OMG mod myself so I might be a little of, but it should look like this.PHP Code:if numb_skills = 0
if skills = pyro_stun
give the skills pyro_stun on slot 0
numb_skills = numb_skills + 1
elseif skills = mag_stun
...
elseif skills = ...
...
endif
elseif numb_skills = 1
if skills = pyro_stun
give the skills pyro_stun on slot 0
numb_skills = numb_skills + 1
elseif skills = mag_stun
...
elseif skills = ...
...
endif
elseif numb_skills = ...
...
endif
You would still need a lot of scripting done for the heroes, but it would be only one script that you would copy+paste in every hero.
I guess you could generate all of the code, it would take less time. You would only need to input all of the hero name and generate all the code from it.
Maps:
Enfo's Team Survival Beta [Dream] - v1.019 (18/07/2011)
BeHoNeled Alpha (Bejeweled clone) [Dream]
i was thinking about DM cuz usually i play DM with OMG
Well anyway even if you could pull it off some abilites would look pretty retarded like how will swift pull of panda ult or how will devo pull off swifts spin it wont work.
I think its hardy doable and only a little amount of spells to choose from.
It is just editing every hero spell and deleting cooldown line.
And about mode where you need to random skills. It wouldn't be that hard.
Just onentergame you random skills and trough variable you give them to heroes script.
So for Accursed you have:
inventory0="Ability_Accursed1"
inventory1="Ability_Accursed2"
inventory2="Ability_Accursed3"
inventory3="Ability_Accursed4"
you would random let's say Ability_Arachna1 for Accursed first skill
save to variable.
The problem is that you would need a lot of variables.
Or you could find function which changes Hero Accursed Abilities
like ActiveInventoryDescription{slot} where param0 stands for name of ability
Last edited by Reminator; 01-03-2011 at 05:35 PM.
OMG mode is a mode where you choose your skill to build your hero. The no cooldown mode is WTF mode, which I think you can do with only an aura on a gadget that reduce 100% cooldown time.
Also, like I said even if its in the <onentergame> you still need to do a lot of scripting, since to change an hero ability you will need to use modifier for each ability and I don't think there is another way to do it.
With all the scripting needed in <onentegergame>, you would need a modifier for each of your spell. Since you can have the spell on slot 0-2, maybe even 0-3 if you can use a normal ability as your ult. You will need a modifier for each slot for each ability. Sure you only need to write this code once and copy it for each hero, but still, it makes a lot of scripting to do.
Maps:
Enfo's Team Survival Beta [Dream] - v1.019 (18/07/2011)
BeHoNeled Alpha (Bejeweled clone) [Dream]
Well I don't know of a way to return a random hero ability, there is no function to do this and I don't know if you can see if a ability slot is already in use. If you could, it would reduce the code a bit, but you would still need to use modifier to set the ability to the right slot so you would end up with the same amount of code.
There is also no "functions" in scritping with HoN, so you can't do this kind of thing easily.
Last edited by Oloko; 01-03-2011 at 06:43 PM.
Maps:
Enfo's Team Survival Beta [Dream] - v1.019 (18/07/2011)
BeHoNeled Alpha (Bejeweled clone) [Dream]
I was having fun trying to make it work and I'm kind of disappointed. It looks like there is a limited number of modifier you can have on an entity (I guess it makes sense), so you can't have all the spells to choose from.
Anyway, for those who are interested here is the map:
Working version that random between fives spells (you can get duplicate).
Not working version that random between 255 spells (you can get duplicate).
It takes a lot of time to load (3min for me) and might even not load on slower pc. The only hero is Armadon, since I only wanted to make a prototype, but you could also randomize the hero. The skills are randomized since there is no UI to choose the spells from.
Maps:
Enfo's Team Survival Beta [Dream] - v1.019 (18/07/2011)
BeHoNeled Alpha (Bejeweled clone) [Dream]
If you just wanted perma random abilities at the start you could set the heroes abilities in the maps resources folder to variables with an array of random(how ever mana abilities there are) and put each ability into that array.. If you understand that, grats.
Example:
So that makes 8 abilities total.Code:var_abilities[0] = ability_accursed1 var_abilities[1] = ability_accursed2 var_abilities[2] = ability_accursed3 var_abilities[3] = ability_accursed4 var_abilities[4] = ability_andromeda1 var_abilities[5] = ability_andromeda2 var_abilities[6] = ability_andromeda3 var_abilities[7] = ability_andromeda4
Then when you pick your hero:
I dunno maybe that could work maybe it can't.Code:inventory0="var_abilities[random(8)]" inventory1="var_abilities[random(8)]" inventory2="var_abilities[random(8)]" inventory3="var_abilities[random(8)]" inventory4="Ability_AttributeBoost" inventory5="" inventory6="" inventory8="Ability_Taunt"
Maps:
Enfo's Team Survival Beta [Dream] - v1.019 (18/07/2011)
BeHoNeled Alpha (Bejeweled clone) [Dream]
obviously it should be simple as this http://pastebin.com/QR41Xhf6
just instead of opening and saving xml files there must be some function to access every characters infos before picking screen and changing the inventories just randomly.
but theres not much resources on how to use this scripting language s2 is providing to us, hell im not even sure if it supports arrays or got random function..
once they provide more resources like every function it has i dont think it will take long till someone creates OMG mod
Of course it would be simple if you could do things like this. This is more or less what I am actually doing, but with more complex code since you can't do all of this in HoN.
I don't think there is a way to actually "edit" attribute of an entity using script if it's not with modifier. The closest thing to editing attributes that I've seen in the official scripts is that: <setvalue name="combat_basedamage" a="125,175,225" />
This is trigger right before the attack hit the target to "overwrite" the official damage to the one set in there. But as far as I know, even this will only last till the end of the actual attack.
Maps:
Enfo's Team Survival Beta [Dream] - v1.019 (18/07/2011)
BeHoNeled Alpha (Bejeweled clone) [Dream]