It's perfectly doable to scale upgrade priority based on the number of players per team, further weighted by AI difficulty levels. Some time this week, I'll try to make some functions that do this, and give examples of how to implement them. As I said in the other thread, I'm not entirely sure exactly which upgrades should be considered when, although I find that with these settings, the AI very rarely gets Blacksmith and Armory II+ unless it's already dominating. If anyon
miriyaka
Looks pretty good. If there's a way to determine whether or not an AI is set to Nightmare (this might be somewhere in AIBrain, but I haven't checked), or better yet, how many are on a team, it might be worth re-introducing both death penalty I-II and gold II-III - both are brutally effective for a team full of nightmare AI. Poked around for a few minutes, and figured out how to get an AI's difficulty: [code="c++"]ScenarioInfo.ArmySetup[unit:GetAIBrain().Na
This is a silly derail, but I'd just like to add that certainly not everyone sees it your way, especially mod users in GPG's game communities, who are quite used to being able to combine mods at will, and will actively avoid mods that break compatibility with or cause problems for the myriad other mods that they're using. Demigod is a bit different because they provided limited to no ability to add new units or items (also because nobody plays it, loool), but the same UI / sim exclusion
Actually, the absolute most common question in the FA mod forums is "is this mod compatible with that mod" even when they're huge, balance-changing mods that add tons of units. By a factor of 50, over all other questions by 'average mod users'. So yes, everyone definitely cares about which mods can work together, because these games are unique in making that possible. None of the teams producing the big TC-type mods for FA intended for their mods to work together, but they
There's zero excuse for that in the moho engine though. It lets you combine any number of mods smoothly and efficiently, and all you need to do is to learn some simple shorthand for editing blueprints. I see people coming into the FA community all the time with this 'mod pack' mentality, and it's retarded, because then you end up with this stagnant set of a bunch of mods that are all individually being updated and improved and that work just fine together, but that the mod pack au
I already have that part worked out; the problem with using dgdata.zip is distribution. dgdata.zip contains all of the lua for the entire game, and is 20mb. I can just distribute a batch file and a mods.lua, but then installation is a pain in the ass, and either people won't figure it out or won't even bother to try because it's unnecessarily difficult. [quote who="LORD-ORION" reply="29" id="2756226"]Also, looks like I finally found an advantage to destruc
Welp, no luck. No matter which directories I mount in RetailDataPath.lua, no matter the order in which I mount them, the game ignores all files in those directories, including within hook subdirectories. I can't find any other files that reference mount paths other than GameDataPath.lua, also in \bin, which seems to do absolutely nothing and is never called. So, unless I'm missing something, the only way to do this is to make a copy of dgdata.zip with the modified files co
It's especially nice once you have explosive end, some serious mana regen, and a celerity flag + cooldown item. You can basically use them as two-click fire-and-forget mobile bombs that will almost assuredly explode on something, especially if you have some minion speed items as well.
I see how to force skirmish AI in campaign, but there's no way to do it in an actual mod itself. Unless there's a way to shadow/override files within dgdata.zip outside of the mod system, you'd have to insert a modified mods.lua or SinglePlayerLaunch.lua into dgdata.zip, which would probably cause desyncs in multiplayer with anyone who didn't also have the same modified dgdata.zip. If the game will read / overwrite files contained in a dgdata folder, it will still desync, but yo
Well, I traced the single player launch process up to LaunchSession(SetupSinglePlayerSession(sessionInfo)), which is an engine command that does who-knows-what. Do you have to do anything special to use UI mods in single player? If not, there should be code somewhere that differentiates between UI and sim mods for a single player session, and it should just be a matter of finding out what happens after LaunchSession, lua-wise. This is a part of the engine I don't have much
New test / RC release, should be stable enough: http://code.google.com/p/uberfix/downloads/detail?name=UberFixv103_RC2.zip&can=2&q= I've been slowly pecking away at issues when I feel the urge to play a game or two. Haven't been keeping a dedicated changelog, but I've still been updating the issues on the google code site. Here's what I c
The maps and models are all done in Granny, which is a professional content creation suite that isn't sold in single licenses. The only license they have is something like $20k, so this might clue you in on why there aren't any user-created maps already (and there would be, if there were any reasonable way to make them).
Idea for selling: An optional list for which items to sell when buying each item, that the sell weighting function checks (if present). This would create some more logical upgrade paths without too much work (though still necessitating a return to a global item weight table), and would allow the AI to avoid selling items that may complement the one it's trying to purchase.
Oh, and the other thing I forgot to mention is how insane the nightmare AI can be with high gold and Currency III. If they do well early on, and have enough money to buy C3 within the 15 minute cutoff, it pays for itself in something like 5 minutes for a nightmare AI, and boosts the hell out of any others on the team. Remember that nightmare AI get double gold for absolutely everything, which means 16 gold/s out of Currency III.
With stock Demigod item balance, there are only 3-4 cases like that you'd have to set. The reason I didn't do that for items is because the Skirmish AI Mod has item priorities set individually for each demigod, so I would have to change those item priorities in every single demigod AI blueprint. This would require a lot more work and testing than citadel upgrades, which nightmare AI usually do have enough gold to purchase later in the game - especially on high gold setting. <
Ok, so I promised I'd finish refining my citadel upgrade priorities, but as usual I ran out of steam and I just haven't been playing the game enough lately to fully test and tweak the exact priority amounts. However, I do have a pretty nice framework set up with a bunch of utility functions for modifying priorities based on everything from game settings, to team and AI demigod levels/deaths, to citadel health, enemy upgrades, etc. So I'm going to post my current AIGlobals.lua, a
Even if you're using the special summon select key, it still saves at least 2 clicks and a decent amount of time. It also means they're advancing the instant you summon them, and you don't have to change your current selection. You're still dancing around the core issue, which is that they'd be completely overpowered (making Occulus insanely overpowered given all his other abilities) if they could be distance-summoned with explosive end. They're plenty useful when they're
Control isn't the problem with the long-range summoning, it's the fact that they can be made to do insane damage with the explosive death ability. Remove or re-appropriate that, and then I can see the point-summoning being potentially balanced. Also, making them non-controllable necessitates removing minion bonuses from them, and remember how terrible they were before they got minion bonuses. Comparing them to Rook's towers is also silly, because they share absolutely no
Yes, but there's actual code in that ability for moving / autoattacking the ball lightning, and it simply doesn't work properly. It's a huge stretch to say they were meant to teleport just because they have a reticule, when the reticule is currently used (if the code worked) for expediting their attack runs, which does make sense because of their limited lifetime and disposability vs normal minions. They just need an actual attack move command, a longer command range, and more s
I'm not sure why you think that was intended, and it would be incredibly difficult to balance when combined with their death explosion ability (as they could be summoned across gaps to quick-kill towers). However, from the code, it's obvious that they did want the lightning to advance / attack move toward the selected position, which they do not do because the wrong method was used. That's why they're retarded and just sit there when there are no targets within a very short range.
They each still get their own timer? I hadn't realized that. I recall buying a scroll once while waiting for the amulet cooldown, and it was the same cooldown time as the amulet, but I guess that's not the case if you have a scroll in inventory already.
Er, both the Amulet and scrolls use a shared cooldown, as of one of the first patches. Unless you changed that in this mod.
Beam weapon splash, and thus ToL splash, is absolute. So if you're making modifications to the DamageSplash buffs, that's fine, just remember that it won't affect ToLs. If you get the chance, test its effects on Trebuchets - but I'm pretty sure it will affect them, and that they need to be made immune (in the Uberfix, probably).
[quote who="LORD-ORION" reply="40" id="2720728"] That's not what I understand. It is an Edge Effect. Aoe 2.0 at 60% means do 60% damage at the edge, and then scale up to 100% as you approach the center, This is why It should stay high and decrease as AoE increases. AoE 2.5 at 50% would do roughly the 60% damage at the 2.0 area distance (same as the upgrade before it), as it scales up towards the middle 100% damage.[/quote] There's absolutely nothing to support this, th
Welp. ToLs are NOT affected by DamageSplash. Here's the relevant code for BeamWeapon.DoDamage:[code="c++"] if data.Radius and data.Radius > 0 then DamageArea(data) elseif data.Amount and targetEntity then DealDamage(data,targetEntity)