As a French person I feel like it's my duty to explain strikes to you. - AdrienIer

Create an account  

 
Submod "Caster of Magic for Windows: Warlord"

(November 29th, 2023, 01:44)Boooster Wrote: Playing a massive map with 13 opponents on master difficulty and this is the most challenging game of MoM I've ever had... no more having a few stacks of doom dominating the map but having to make actual sacrifices when taking on enemy wizards - it's fantastic!  The only issue I'm facing is each turn is taking 2-3 minutes which is somewhat expected due to the size of the game... is there any way to possibly speed this up?  I've turned off see enemy moves but it didn't seem to help much - maybe some trick someone knows.

Thanks for creating this mod!

Thank you.
Reply

https://www.moddb.com/mods/caster-of-mag...nloadsform

This is Warlord mod version 1.5.3.2 with fix of bug I saw from stream by Mechanical Beanstalk yesterday.

Change log version 1.5.3.2.
Others:
• New score modifier “Cosmic Chessboard” all combat involved neutral Life or Death creatures would have neutral Life or Death creatures coming with random common/uncommon unit enchantment and chance for free combat enchantment.
• Bug fix: Cosmic Chessboard give non-neutral Life or Death creatures’ bonus that supposed to be neutral only.
• Bug fix: Descriptions of Cosmic Chessboard told that it give global enchantment bonus instead of combat enchantment bonus.
• Add statement about rarity of unit enchantment neutral units could gain from Cosmic Chessboard and Nodeborne Souls.
• Nodeborne Souls modifier is no longer given combat enchantment for node combat.
• Optimized neutral faction code.
• Rearrange score modifier and with additional labels and all empty slot will have some more indicator that it is not bug.
Reply

I felt like giving the new version a try. By turn 3 I decided it was way, way too slow to be playable. I set the units.cas bit to 0 in Modding, but that didn't speed it up. On further searching I found overlandturn.cas (I think that's the file type). That's what was slowing this version down. It checks every unit, I assume even the ones in lairs, for two spells and whether they're in a Fighter's Guild, every turn. No wonder it's slow. I deleted the contents except for Halt ; , and the game went back to normal speed. For anyone who wants to speed it up, I recommend that, at least until you reach the point where there are Fighter's Guilds or those spells.

I haven't figured out why starting the game for the first time takes so much longer than it used to. I suppose it's unpacking each little image file and whatever else, but it would have done that before. Maybe there's a new error-checking or version-checking addition?
Reply

A thought for a speed-up for overlandturn and maybe the ones for units: add some global variables for spells and events, initially set to zero and set to one only when a spell is actually cast for the first time, or the event occurs. Then the script can do one check for whether there's actually a point in checking every unit for that spell or event. If no one has cast State of Rot, there's no need to spend time checking each unit for effects. If you want to get fancier, you can add a way to reset those global variables, such as if a unit-affecting global spell is dispelled.
Reply

Thanks for report, I will improve it. If possible, may I request your save game to test it's slowness?
Reply

The slow game has been overwritten. It was simply the latest version of Warlord, which ran painfully slow. Editing overlandturn.cas changed it to the speed of earlier versions. There's just no reason to check each unit for State of Rot or being in a city with a Fighter's guild on turn one. Well, I suppose an independent city could have a Fighter's guild, and if you had Modding set to allow neutrals to gain experience, it would make a numerical difference, but is that really worth having to wait several minutes between turns? I hate to think how slow it would get in later stages of the game, with many cities pumping out units.

As a quick fix, players who hate the long turn times but want those features later in the game can just comment out what's not in use, and uncomment it when someone does Build a Fighter's Guild or casts one of those spells.
Reply

(December 27th, 2023, 12:02)JustOneMoreTurn Wrote: The slow game has been overwritten.  It was simply the latest version of Warlord, which ran painfully slow.  Editing overlandturn.cas changed it to the speed of earlier versions.  There's just no reason to check each unit for State of Rot or being in a city with a Fighter's guild on turn one.  Well, I suppose an independent city could have a Fighter's guild, and if you had Modding set to allow neutrals to gain experience, it would make a numerical difference, but is that really worth having to wait several minutes between turns?  I hate to think how slow it would get in later stages of the game, with many cities pumping out units.

As a quick fix, players who hate the long turn times but want those features later in the game can just comment out what's not in use, and uncomment it when someone does Build a Fighter's Guild or casts one of those spells.

Before new year I will release fixed version that remove exp bonus but still keep state of rot (state of rot is once per turn so it is tolerable). Next version would have some change in Forester, mountaineer, and amphibious as some part of tactician bonus would become built in mandatory  while numerical bonus of tactician would be double to steamline text as some remake cultist had suggest about how current description of tactician is not elegent enough..
Reply

(December 24th, 2023, 12:58)JustOneMoreTurn Wrote: A thought for a speed-up for overlandturn and maybe the ones for units: add some global variables for spells and events, initially set to zero and set to one only when a spell is actually cast for the first time, or the event occurs.  Then the script can do one check for whether there's actually a point in checking every unit for that spell or event.  If no one has cast State of Rot, there's no need to spend time checking each unit for effects.  If you want to get fancier, you can add a way to reset those global variables, such as if a unit-affecting global spell is dispelled.

I have look into this but I don't think this would make game faster as it is not solution for current state of rot. But this might be solution for something else like like enchantment counting but that would make such change nolonger real time.
Reply

It wouldn't speed up the game _after_ State of Rot is first cast, but it would avoid the slowdown from overlandturn.cas until that point, which is typically how many turns? To me, the wait time per turn even for turn 1 makes the game no longer fun. For any script that checks for each unit per turn, I suggest making that optional, so that people can decide whether the spell or other unit modifier is worth the extra turn time.

I noticed that an old version I still have of Warlords (separate folder) is also really slow to initially start the game, even though I didn't update it. Recently I did finally manage to stop Windows Update from starting, so maybe one of those changes is causing a slowdown. Maybe it's checking each tiny file for whether it needs Windows updating, or some such thing. I'll have to check the services monitor.
Reply

The slow starting seems to be my system's problem. COM seems to involve high TCP usage while starting, for some reason. esrv is also running, so I'll have to disable Intel updater and maybe some other stuff.

I hate Windows!
Reply



Forum Jump: