|
|
JimV
Responsible
Supreme Hero
|
posted December 11, 2012 08:04 PM |
|
|
No, I was the one who mis-interpreted OxFea's comment, and has something to be sorry about. You were quite correct to say that !?FU3xxxx can't be used in WoG 3.58f. It is remarkable how well The Bersy Rule works.
(TBR: 1) Bersy is always right; 2) Whenever you think Bersy may be wrong, refer to #1.)
|
|
Siegfried
Famous Hero
|
posted December 17, 2012 03:13 PM |
|
|
Hi,
i have some questions about some monster stats (!!MA receiver). I do not understand some of the properties. These are:
!!MA:F has a fight value of ... What does that mean? How should it be calculated if i alter some stats?
!!MA:H... has an adventure map high of ...
!!MA:I... has an AI value of
!!MA:R... has a grow H of ...
!!MA:V... has an adventure map low of ...
Does anyone know what these mean? Does anyone want to enlighten me?
____________
|
|
JimV
Responsible
Supreme Hero
|
posted December 17, 2012 05:10 PM |
|
|
The descriptions are taken directly from the CRTRAITS.TXT column headings, so I am not sure the WoG Team knew exactly how these values are used (but wanted to allow them to be modified by ERM, like the rest of the CRTRAITS parameters). It seems likely to me that they are used by the AI, for example when deciding which creatures to buy in a Town, which enemy troops to attack first in battle, which neutral armies to attack with an AI Hero of a certain strength, et cetera. Looking at CRTRAITS.TXT with TXTedit.exe you can see how the values change from weak to strong creatures.
I am sure there are people who know more and maybe one of them will comment.
|
|
Felipe
Known Hero
Editing Heroes Without Limits
|
posted December 17, 2012 11:03 PM |
|
|
Quote: Hi,
i have some questions about some monster stats (!!MA receiver). I do not understand some of the properties. These are:
!!MA:F has a fight value of ... What does that mean? How should it be calculated if i alter some stats?
!!MA:H... has an adventure map high of ...
!!MA:I... has an AI value of
!!MA:R... has a grow H of ...
!!MA:V... has an adventure map low of ...
Does anyone know what these mean? Does anyone want to enlighten me?
As I understand:
!!MA:H... has an adventure map high of ... ->max number of creatures will appear at random at the start of a map
!!MA:V... has an adventure map low of ... -> lowest number of...
!!MA:R... has a grow H of ... -> It is connected to the special houses that increase the production of some creatures. Like Dwarves mine
____________
|
|
Siegfried
Famous Hero
|
posted December 18, 2012 08:56 AM |
|
|
Quote:
As I understand:
!!MA:H... has an adventure map high of ... ->max number of creatures will appear at random at the start of a map
!!MA:V... has an adventure map low of ... -> lowest number of...
!!MA:R... has a grow H of ... -> It is connected to the special houses that increase the production of some creatures. Like Dwarves mine
Interesting. Adventure map high and low seems logical. Although the numbers depend on difficulty level.
But your idea of !!MA:R is very interesting. If this is true, i would alter my scripts. I'll take a look at the crtraits.txt this weekend. Thanks.
|
|
artu
Promising
Undefeatable Hero
My BS sensor is tingling again
|
posted December 20, 2012 04:56 AM |
|
|
Is there a way to make a master of upgrades upgrade more than 2 creatures? Gelu and Dracon each upgrades 4 units so I'm guessing there should be. These didnt work:
!!HE151:X6/24/25/172;
!!HE151:X6/10/11/172;
!#HE151:X6/24/25/172;
!#HE151:X6/10/11/172;
!#HE151:X6/24/25/10/11/172
|
|
JimV
Responsible
Supreme Hero
|
posted December 20, 2012 05:56 AM |
|
Edited by JimV at 06:13, 20 Dec 2012.
|
To repeat what ERM Help says:
HE:X
$1=6 Upgrades (extended syntax)
$2=creature 1 to upgrade(see Format C )
$6=creature 2 to upgrade(see Format C )
$7=creature to upgrade to(see Format C )
($3...$5 ignored, preferably 0)
...
6/$1/$2/$3; (basic syntax) Upgrade of creatures type $1 and $2 ($1+1 and $2+1 possible as well) to creatures type $3. Upgrade's price is counted as difference between the prices of the creatures (if it's more than zero:-)
...
To check the current settings use:
!!HE#:X?y5/?y6/?y7/?y8/?y9/?y10/?y11;
...
Comments:
For "couple" creatures (basic and upgraded), if the first is changed, the second will also be changed.
... (excerpts end)
So for Gelu, $2=(Archer #) and $3 or $6=(Wood Elf #), but this means he can also upgrade (Archer #+1 = Marksman) and (Wood Elf #+1 = Grand Elf).
To check Gelu's settings, you could have tried:
!#HE148:X?y5/?y6/?y7/?y8/?y9/?y10/?y11;
!#IF:M^Gelu HE:X - $1=%Y5, $2=%Y6, $3=%Y7 ... ;
It really does help to read all of ERM Help (and to go back and read it again if something doesn't seem to be working, and then display some debugging information).
P.S. A Hero can be given the ability to exchange any creature for some other creature by an ERM script which checks for mouse clicks on troop slots in the Hero Screen. See Orrin's (Tan's) Specialty in "The Dragon Slaughter" thread.
|
|
artu
Promising
Undefeatable Hero
My BS sensor is tingling again
|
posted December 20, 2012 02:25 PM |
|
|
I am trying to turn Mutare into an upgrade master that turns all level 6 horse units into Nightmares, i checked dragon slaughter Orin script but I guess it is like the Ulysses of Erm scripting,what should I add here:
!!VRv2|v1=10/v1=11/v1=24/v1=25/v1=66/v1=67/v1=157:S172;
!!HE151:X6/v1/v1/v2;
|
|
Salamandre
Admirable
Omnipresent Hero
Wog refugee
|
posted December 20, 2012 02:31 PM |
|
|
Those two lines are only the end of script triggered by CM2. First you have to be sure every Orrin ID was changed to 151 which is Mutare. (0->151)
Then delete the lines which allow multiple upgrades, keep only one and add yours. Then change Orrin specialty reset to Mutare one. Paste here the result.
____________
Era II mods and utilities
|
|
JimV
Responsible
Supreme Hero
|
posted December 20, 2012 03:01 PM |
|
|
Quote: !!VRv2|v1=10/v1=11/v1=24/v1=25/v1=66/v1=67/v1=157:S172;
I have never tried to "upgrade" a higher-level creature (Hell Hydra, 157) to a lower-level creature, and am doubtful that it is allowed. For that matter, I am not sure what (Town) level a Nightmare is and it might be lower than a Cavalier or Black Knight. The upgrade dialog asks for gold equal to the difference in cost, and it might object to a negative cost. So if it were me I would check the level and cost values for all of those creatures (MA:.../?vn) and see if changing them so that the Nightmare costs more and has a higher level might help.
|
|
Salamandre
Admirable
Omnipresent Hero
Wog refugee
|
posted December 20, 2012 03:10 PM |
|
|
It works, no gold cost. Of course downgrading something is weird, I suppose Artu put hydras ID by mistake, maybe he wanted nomads.
____________
Era II mods and utilities
|
|
artu
Promising
Undefeatable Hero
My BS sensor is tingling again
|
posted December 20, 2012 03:13 PM |
|
|
Quote:
Quote: !!VRv2|v1=10/v1=11/v1=24/v1=25/v1=66/v1=67/v1=157:S172;
I have never tried to "upgrade" a higher-level creature (Hell Hydra, 157) to a lower-level creature, and am doubtful that it is allowed.
That should, of course, be 195 (Hell Steed, not Hydra)which means I better continue tomorrow after a good night's sleep. The others have all slightly lower stats than nightmare.
|
|
Salamandre
Admirable
Omnipresent Hero
Wog refugee
|
posted December 20, 2012 03:19 PM |
|
|
Something like that:
ZVSE
!#UN:G2/151/3/353;
!?CM2; Hero Screen,
!!HE-1:N?y-10;
!!FU&y-10<>151:E;
!!CM:I?y1 S?y2 F?y3;
!!if&y1>=68/y1<=74:;
!!VRy3:Sy1 -68; y3=troop slot, 0-6
!!HE151:C0/y3/?v1/?v3; v1=type, v3=number
!!FU|v1<0/v3<1:E; exit if slot empty
!!VRv2:S-1;
!!VRv2|v1=10/v1=11/v1=24/v1=25/v1=66/v1=67/v1=195:S172;
!!HE151:X6/v1/v1/v2;
!!en:;
!!if&y1=118:;
!!VRz2:S^Mutare can upgrade all horses to nightmares^;
!!IF:N21/10/21/11/21/24/21/25/21/66/21/67/21/195/21/172;
!!IF:N^%Z2^;
!!CM:R0;
!!en:;
____________
Era II mods and utilities
|
|
artu
Promising
Undefeatable Hero
My BS sensor is tingling again
|
posted December 20, 2012 07:18 PM |
|
|
Yes, this works perfectly. It's a complex one, it would have been hard for me to do, thank you very much. I changed the specialty picture to Nightmare icon and removed Nightmare picture from upgradable horses list, so it looks like this now:
!#UN:G2/151/3/272;
!?CM2; Hero Screen,
!!HE-1:N?y-10;
!!FU&y-10<>151:E; [Mutare Nightmares]
!!CM:I?y1 S?y2 F?y3;
!!if&y1>=68/y1<=74:;
!!VRy3:Sy1 -68; y3=troop slot, 0-6
!!HE151:C0/y3/?v1/?v3; v1=type, v3=number
!!FU|v1<0/v3<1:E; exit if slot empty
!!VRv2:S-1;
!!VRv2|v1=10/v1=11/v1=24/v1=25/v1=66/v1=67/v1=195:S172;
!!HE151:X6/v1/v1/v2;
!!en:;
!!if&y1=118:;
!!VRz2:S^Mutare can transform all level 6 horse units into Nightmares^;
!!IF:N21/10/21/11/21/24/21/25/21/66/21/67/21/195;
!!IF:N^%Z2^;
!!CM:R0;
!!en:;
|
|
Salamandre
Admirable
Omnipresent Hero
Wog refugee
|
posted December 21, 2012 12:26 AM |
|
|
It looks complex but is not. As almost everything, it needs combining various commands to achieve your result.
The script is triggered when opening hero screen, then:
1. checks if hero is mutare, if not exits
2. checks where we click in the screen (CM flags)
3. if we click on slots, then check what creature is in that slot
4. if creature is horse, change mutare specialty to upgrade that ID
5. if we click on specialty, display custom text
6. remove regular message (mutare gets dragons attack)
Every command on its own is simple, the thing is to combine them successfully by browsing the erm help. The script was 100% done in TDS, only needed slight modifications for you.
____________
Era II mods and utilities
|
|
JimV
Responsible
Supreme Hero
|
posted December 21, 2012 01:18 AM |
|
|
Good work, good explanation.
|
|
majaczek
Supreme Hero
Work at Magic Dimmension
|
posted December 21, 2012 09:24 PM |
|
|
hmmm as triggers can be called from !!FU receiver i found an intresting use - from !?OB use !!FU into another !?OB receiver.
the question is: if we know object id and subid (or if we want to call for specific object id with any subid) which we want to call, how to calculate function number for this trigger?
PS: another use is call the !?OB from artifact-handling or speciality-handling code, which would allow use vanilla wog scripts without modification under new script without copy-paste. Note that most scripts before era tend to limit usage of function numbers.
|
|
solitaire345
Promising
Famous Hero
|
posted December 21, 2012 11:00 PM |
|
|
Quote: the question is: if we know object id and subid (or if we want to call for specific object id with any subid) which we want to call, how to calculate function number for this trigger?
I'm not sure if I wrote it correctly, but it should work if there are no mistakes. Wrote it from Slava's code.
Object with type and any subtype:
0x40000000+ObjID*0x1000;
Object with type/subtype:
0x40000000+ObjID*0x1000+ObjSubtype+1;
Object at x/y/z:
0x10000000+0x04000000*z+y*0x00010000+x;
Add 0x08000000 if it's post-trigger (!$OB)
Event at x/y/z:
0x20000000+0x04000000*z+y*0x00010000+x;
|
|
JimV
Responsible
Supreme Hero
|
posted December 22, 2012 02:42 AM |
|
Edited by JimV at 14:35, 22 Dec 2012.
|
Thanks for the information.
|
|
solitaire345
Promising
Famous Hero
|
posted December 22, 2012 11:02 AM |
|
|
Not a typo, but a failure in calculating bitwise shifts in my mind. Fixed my post.
____________
|
|
|