Special Mod

I updated my Mod. It is still not finished, but already playable.

What it does:

First i stumbled over Henning Köhlers boost_core mod, which i found a very good idea. Especially his redefinition of the Eagle Eye skill was inspiring. Unfortunately he forgot to reconfigure all the heroes with Eagle Eye specialty of heroes that start with Eagle Eye skill. So i did a new mod doing exactly this. The Eagle Eye skill is now a support skill for archery and scouting. So it moved from a magic skill to a might skill, just as in the boost_core mod. And then all Heroes with Eagle Eye specialty got Learning specialty instead. That fit best to their Biography.

Next i saw was a level based growth for all those secondary skill specialists. Great idea. I found that this is now incorporated into base vcmi. Good. So i just added some gimmick to those heroes. This part is still under heavy development. Currently most interesting part is: Tied the Death Ripple and Animate Dead spells to the Necromancy skill. So all Necros start with these, but they should not show up in towns other than Necropolis.

Then i added a bunch of new skills. First: Resource generating skills. There are some heroes with resource generating specialty. I modified them so that one of their starting skills is now the matching resource generating skill. Plus a few more skills like Medicus or Whip.

Next i modified the Ironfists. For them i created the “Nobility” skill. That works similar to the Statue of the Legion, but limited to visited town. Their specialty is now “King” resp. “Queen”. That specialty boosts 4 secondary skills: Nobility, Leadership, Diplomacy and Estates. That should be a perfect setup for King and Queen. They are still special, so yes, they are a bit overpowered, but limited to maps where they are inserted intentionally.

Next: Made most of the spell specialists more interesting. Just grow their power with level was too boring. So all spell specialists with battle spells that have a mass version now open battle with their specialty spell. F.ex, Septienna with her Death Ripple specialty is now the perfect cleaner for all those spammed out single creature heroes that the AI spams out before loosing. She just needs to go into battle and automatically wins. Your main hero can press forward to the last enemies town.

For other spell specialists it is a little more complicated. I decided to make use of unused magic calling creature animations and add the ability to cast a spell to these creatures. So the same creature may cast different spells depending on in what heroes army they are. Or they do not cast a spell at all. If there is a specialty hero for this creature, i added a matching spell tho this creature. For example Inghams Zealots can now cast bless. In other armies they do not cast anything.

Then i added a few new heroes. They are still experimental. F.ex. there is now a specialist against undead. His good aligned troops do more damage against undead. Against the undead he is a real asset. Against others he is less than other heroes, because his specialty is absolutely useless then.

Also there is a big map to play with. Unfortunately i have put a few decorations on it that came from WoG. They are unknown to the server, and the server crashes. I tried to remove these objects, but obviously i did not find all. It is possible to play it after inserting a line into the vcmi system generic.json:

"decorativeObject"	: { "index" :40, "handler": "static", "types" : { "object" : { "index" : 0} } },

It doesn’t matter where exactly you add it. But with this line the map does no more crash. But the mod is not bound to this map. The Mod can be played with any map.

So, have fun :slight_smile:

SECONDAREY_SKILL_PREMY is now deleted in v1.2. I have to update my mod. It would be nice if this kind of non-compatible improvements would be communicated better.

How is that to be replaced?

It described in the List of all bonus types - VCMI Project Wiki

If you need something regarding Eagle Eye - it is LEARN_BATTLE_SPELL_CHANCE and LEARN_BATTLE_SPELL_LEVEL_LIMIT.

Anyway, if you do not update tactics, VCMI will try to convert your deprecated bonus automatically.

I can provide exactly info, if you describe what you want to change.

Sorry about long delay :slight_smile:
The mod crashed completely. So i’m currently trying to do it again from scratch. I have a new skill “Nobility” working, that increases creature growth in visited town. Now i want to modify the Ironfists accordingly. They should have a matching specialty. Here is the specialty bonus part:

				"majesty" : {
				"type" : "CREATURE_GROWTH_PERCENT",
				"val" : 50,
				"propagator" : "VISITED_TOWN_AND_VISITOR",
				"updater" : {
					"parameters" : [ 2 ],
					"type" : "GROWS_WITH_LEVEL"
				}
			}

That works so far for Cathrine. But as soon as i have a second hero (Roland) with the same specialty, the client crashes. Removing this specialty from Roland makes the game work again.

I checked the client log and found nothing revealing there. The client crashes before starting the server, so there is no server log.

The plan is to modify some of the special heroes, namely all the kings, in a similar way. Aside from the Ironfists this would be Boragus and Gavin Magnus. The Nobility skill is preset to all of them, but is available although rare for all heroes. The numbers are still up to balancing :slight_smile:

BTW, other alternatives would be boosting the nobility skill instead or doing something player-wide. Both i do not know how without making the client crash.

Update:
I modified this specialty for Roland. First attempt:

				"majesty" : {
				"type" : "CREATURE_GROWTH",
                                   "subtype" : "creatureLevel1",
				"val" : 1,
				"propagator" : "VISITED_TOWN_AND_VISITOR",
			}

Thar crashed too. Second attempt:

				"majesty" : {
				"type" : "NONE",
			}

That did not crash. Obviously it is not what i want :slight_smile:

Can you upload crashing mod? And log from client?

Will need some time. First find a location where to upload. Currently i am testing mod with Roland given this specialty a completely different one. That works. But obviously such a crash is dangerous, in case any other mod adds a hero with that specialty.

Currently Roland has a specialty which gives a minimum morale to all troops, including allies (TEAM_PROPAGATOR). This might be an interesting idea too. One question here: The minotaurus has set an INDEPENDENT_MAX value type. I have set an INDEPENDENT_MIN type. What would be correct to let the troops morale never drop below 1 (or 0)?

I call later again after test, then modifying mod again to crash, then zip and upload :slight_smile:

I just tried to play a map with my mod and another mod (court town), and it crashed again. Yesterday i did the same with fairy town, and it did not crash. I have to investigate that. Maybe the crash is not vcmi related, but some weird thing with some mods. I’ll try different towns and standard only.

Update: No, it is not some mod. I deactivated nearly everything, only WoG remaining. It seems i have created a map that makes vcmi crash :slight_smile:

Another crash, this time probably a server crash. I uses my mod plus fairy town, attacked a kreegan town (defending hero was a dungeon overlord) with Uliri (fairy town hero). The server crashed before the first move. Here is the relevant part of the server log:

[2024-Feb-15 11:48:12.814913] TRACE global - Entering void QueriesProcessor::addQuery(PlayerColor, QueryPtr): player=‘7’, query=’[0x7f2d740a0d90] A query of type ‘12CBattleQuery’ and qid = 2915 affecting players RED and PINK’.
[2024-Feb-15 11:48:12.814925] TRACE global - Leaving void QueriesProcessor::addQuery(PlayerColor, QueryPtr).
[2024-Feb-15 11:48:12.814999] TRACE network - Sending to all clients: 15BattleSpellCast
[2024-Feb-15 11:48:12.815014] TRACE network - Sending a pack of type 15BattleSpellCast
[2024-Feb-15 11:48:12.815076] TRACE network - Applied on gs: 15BattleSpellCast
[2024-Feb-15 11:48:12.815116] TRACE network - Sending to all clients: 22BattleObstaclesChanged
[2024-Feb-15 11:48:12.815129] TRACE network - Sending a pack of type 22BattleObstaclesChanged
[2024-Feb-15 11:48:12.815223] TRACE network - Applied on gs: 22BattleObstaclesChanged
[2024-Feb-15 11:48:12.815246] TRACE network - Sending to all clients: 9GiveBonus
[2024-Feb-15 11:48:12.815259] TRACE network - Sending a pack of type 9GiveBonus
[2024-Feb-15 11:48:12.815309] DEBUG global - Empty bonus decription. Type=5
[2024-Feb-15 11:48:12.815325] TRACE network - Applied on gs: 9GiveBonus
[2024-Feb-15 11:48:12.815339] TRACE network - Sending to all clients: 13StacksInjured
[2024-Feb-15 11:48:12.815351] TRACE network - Sending a pack of type 13StacksInjured
[2024-Feb-15 11:48:12.815381] TRACE network - Applied on gs: 13StacksInjured
[2024-Feb-15 11:48:12.815398] TRACE network - Sending to all clients: 14TurnTimeUpdate
[2024-Feb-15 11:48:12.815411] TRACE network - Sending a pack of type 14TurnTimeUpdate
[2024-Feb-15 11:48:12.815442] TRACE network - Applied on gs: 14TurnTimeUpdate
[2024-Feb-15 11:48:12.815456] TRACE network - Sending to all clients: 14TurnTimeUpdate
[2024-Feb-15 11:48:12.815468] TRACE network - Sending a pack of type 14TurnTimeUpdate
[2024-Feb-15 11:48:12.815497] TRACE network - Applied on gs: 14TurnTimeUpdate
[2024-Feb-15 11:48:12.818711] TRACE network - Sending to all clients: 14SetStackEffect
[2024-Feb-15 11:48:12.818737] TRACE network - Sending a pack of type 14SetStackEffect
[2024-Feb-15 11:48:12.818799] TRACE bonus - red battle stack [5]: 345 of creatures.fairy-town.ftWisp2.name.plural from slot 3 of armyobj=8402 receives a new bonus: Air Shield +50
[2024-Feb-15 11:48:12.818815] TRACE network - Applied on gs: 14SetStackEffect
[2024-Feb-15 11:48:12.819821] ERROR mod - spell id -1 is invalid

It seems an air shield cast got wrong. Since the bonus was applied to one of my stacks, but i did not cast it, it may be some effect due to the stack level.

Aside from that: The bug described in last message seems to be related to the implementation of the statue of the legion. I have added a similar specialty to Roland and Catherine. With only one of them in the game it works, but both produce weird results or crashes. So i have removed the updater, and now it works. So it may be related to the fact that the statue of the legion does not stack. If you have two statues you still get only the bonus of one. For me this is now o.k. as it is.