Heroes of Might and Magic Community
visiting hero! Register | Today's Posts | Games | Search! | FAQ/Rules | AvatarList | MemberList | Profile


Age of Heroes Headlines:  
5 Oct 2016: Heroes VII development comes to an end.. - read more
6 Aug 2016: Troubled Heroes VII Expansion Release - read more
26 Apr 2016: Heroes VII XPack - Trial by Fire - Coming out in June! - read more
17 Apr 2016: Global Alternative Creatures MOD for H7 after 1.8 Patch! - read more
7 Mar 2016: Romero launches a Piano Sonata Album Kickstarter! - read more
19 Feb 2016: Heroes 5.5 RC6, Heroes VII patch 1.7 are out! - read more
13 Jan 2016: Horn of the Abyss 1.4 Available for Download! - read more
17 Dec 2015: Heroes 5.5 update, 1.6 out for H7 - read more
23 Nov 2015: H7 1.4 & 1.5 patches Released - read more
31 Oct 2015: First H7 patches are out, End of DoC development - read more
5 Oct 2016: Heroes VII development comes to an end.. - read more
[X] Remove Ads
LOGIN:     Username:     Password:         [ Register ]
HOMM1: info forum | HOMM2: info forum | HOMM3: info mods forum | HOMM4: info CTG forum | HOMM5: info mods forum | MMH6: wiki forum | MMH7: wiki forum
Heroes Community > Heroes 3.5 - WoG and Beyond > Thread: ERM help and discussion
Thread: ERM help and discussion This Popular Thread is 407 pages long: 1 50 100 ... 112 113 114 115 116 ... 150 200 250 300 350 400 407 · «PREV / NEXT»
JimV
JimV


Responsible
Supreme Hero
posted November 11, 2011 04:10 AM
Edited by JimV at 14:31, 11 Nov 2011.

Quote:
When you try this tactic on a battle with a "one" monster  (the only monster in the opositte side), and the spell doesn't work normally ( curse on undead, basic dispel magic on hostile creatures, mind spell on titans),
are you sure that these tactics works?


I believe I said that I had not tested and was not sure.

Quote:
at least the first method, the artificial curse maybe yes but when you cancel the action, the hero can cast a spell again


See BH:M (disable spell casting for a round of battle).  Sorry, I should have remembered this detail, but didn't.

P.S. Before I forget, here is yet another idea about restricting movement on grass, which I present as an example of a general method (since I don't know the specific details).

Suppose you want one step to cost 200 movement points on grass and 500 movement points on swamp.  Assuming you are correct that you can't change the grass penalty from 100 via UN:C, then instead of changing swamp to 500 you change it to 500*(100/200) = 250.  Do the same for the other terrain movement costs.  Then use a script to reduce each Hero's total daily movement by the same ratio (100/200), as follows:

Use a timer which triggers at the start of each day for each color.  Get the active color in a variable, then go through all the Heroes (0 to 155) in a function called by a DO command.  If the Hero's owner is not the color of the day, exit.  If it is, get the Hero's movement points for the day with HE:W?v1, and apply the ratio (v1*100+50:200), then reset the movement with HE:Wv1.

P.P.S. Try using the BM:M command to apply the Curse spell.  ERM Help doesn't say if this will work on an invalid target (and again I haven't tested), but it says that other invalid spells (Summon Boat) can be set this way (as well as all valid ones).  If it works it will eliminate a lot of trouble.  If all it does is make the spell show up in the list of spells applied to the creature, than that is another detail covered which I forgot to mention earlier.  ERM Help says that you would still need to apply the Curse animation manually, i.e., this command does not do animations.  Let us know if this method works or not and I will add the information to my next ERM Help update.

Update - I did some testing and found out two flaws in the previous Curse approaches.  A minor one is that the flag which governs Curse is bit-value 262144 (undead flag).  A major one is that Heroes will not allow the invalid Curse action to be initiated so there is no BG0 trigger.  CM4 was a better idea:

ZVSE

!?CM4; left-click Hero or Cast Spell
!!CM:I?v1 F?v2 A?v3/?v4;
*!IF:M^CM4:  I=%V1, S=%V2, px/py=%V3/%V4^; get Hero coordinates
!!FU&v1<>2008/v3>57|v2<>0:E; exit if not on Cast Spell and right of Hero or if not left-click
!!FU&v1<>2008/v4<17:E; exit if not on Cast Spell and above Hero
!!FU&v1<>2008/v4>127:E; exit if not on Cast Spell and below Hero
!!DO100/0/41/1:P; process all undead
!!IF:V30/1; set flag to unprocess later

!?FU100; x16=stack
!!BMx16:T?y1; stack type
!!FU&y1<56:E; exit if before Skeleton
!!FU&y1>69/v5<>154/v5<>196:E; exit if after Ghost Dragon and not Blood Dragon or Dragolich
!!BMx16:F?y2;
!!VRy2:&-262145;
!!BMx16:Fy2; allow curse cast (but not Destroy Undead or Animate Dead)

!?BG1&30; end of next action
!!DO101/0/41/1:P; re-process all undead
!!IF:V30/0;

!?FU101; x16=stack
!!BMx16:T?y1; stack type
!!FU&y1<56:E; exit if before Skeleton
!!FU&y1>69/v5<>154/v5<>196:E; exit if after Ghost Dragon and not Blood Dragon or Dragolich
!!BMx16:F?y2;
!!VRy2:|262144;
!!BMx16:Fy2; restore undead

This works (Curse is allowed and applied on Vampires in a test map), but as noted in the comments, we don't know what spell will be chosen when Cast Spell is clicked, which is a problem because maybe it will be Destroy Undead or Animate Dead (or Bless if the undead creature is friendly).  Maybe after the spell book is exited, BG:S? will be set (or some UN:C address).  So far I have spent an hour or so testing (mainly correcting typos).  How badly do you want this capability?

(Note to self - another ERM Help update:  CM4 works for left as well as right-clicks - knew that, used it in scripts, but forgot to update ERM Help.)

 Send Instant Message | Send E-Mail | View Profile | Quote Reply | Link
mister_kalu
mister_kalu


Known Hero
posted November 11, 2011 01:42 PM

thanks for the time and the script, it doesn't work in my test map with skeleton, vampire, lich ..with a multiple stack or single stack, with a spell or all spells.Anyway is clear that you know very much about this theme thanks for the idea.

 Send Instant Message | Send E-Mail | View Profile | Quote Reply | Link
mister_kalu
mister_kalu


Known Hero
posted November 11, 2011 01:54 PM

Quote:
thanks for the time and the script, it doesn't work in my test map with skeleton, vampire, lich ..with a multiple stack or single stack, with a spell or all spells.Anyway is clear that you know very much about this theme thanks for the idea.


!?PI;
!!VRy1:S2; --Grass
!!VRy2:S0; --none pathfinding
!!VRy3:Sy1 *4 +y2 *4 +6546704;
!!UN:Cy3/4/200; --200 movepoints per tile

UN:C to add grass penalties works, but in a few maps.. ( on regular maps  is well, but on my test map it doesn't works)

 Send Instant Message | Send E-Mail | View Profile | Quote Reply | Link
JimV
JimV


Responsible
Supreme Hero
posted November 11, 2011 02:12 PM
Edited by JimV at 16:37, 11 Nov 2011.

If it isn't too much trouble, please give a link to download your test map so I can check it, since my test map works.  (I am running under WoG 3.58f.)

With these modifications (below), I can do both Curse and Destroy Undead on a Vampire stack, but the latter is a two-step process.  First the Destroy Undead gives a "That spell will affect no one!" message, because the undead flag for the Vampires has been removed, but then MM0 detects that the spell was not Curse, restores the undead flag, and disables the part of the script that does Curse, until the next turn:

!?CM4&-31; left-click Hero or Cast Spell
!!CM:I?v1 F?v2 A?v3/?v4;
*!IF:M^CM4:  I=%V1, S=%V2, px/py=%V3/%V4^; get Hero coordinates
!!FU&v1<>2008/v3>57|v2<>0:E; exit if not on Cast Spell and right of Hero or if not left-click
!!FU&v1<>2008/v4<17:E; exit if not on Cast Spell and above Hero
!!FU&v1<>2008/v4>127:E; exit if not on Cast Spell and below Hero
!!DO100/0/41/1:P; process all undead
!!IF:V30/1; set flag to unprocess later

!?FU100; x16=stack
!!BMx16:T?y1; stack type
!!FU&y1<56:E; exit if before Skeleton
!!FU&y1>69/y1<>154/y1<>196:E; exit if after Ghost Dragon and not Blood Dragon or Dragolich
!!BMx16:F?y2;
!!VRy2:&-262145;
!!BMx16:Fy2; allow curse cast (but not Destroy Undead or Animate Dead)

!?BG1|30/31; end of next action
!!DO101/0/41/1&30:P; re-process all undead
!!IF:V30/0 V31/0;

!?FU101; x16=stack
!!BMx16:T?y1; stack type
!!FU&y1<56:E; exit if before Skeleton
!!FU&y1>69/y1<>154/y1<>196:E; exit if after Ghost Dragon and not Blood Dragon or Dragolich
!!BMx16:F?y2;
!!VRy2:|262144;
!!BMx16:Fy2; restore undead

!?MM0&30;
!!MM:D?v5;
!!BG:S?v6;
*!IF:M^MM0:  D=%V5, S=%V6^;  no response until after spell cast or cancelled, then S=42 or whatever
!!FU&v6=42:E;
!!DO101/0/41/1:P; spell was not Curse, so re-process all undead
!!IF:V30/0 V31/1;

It would be possible to cast Destroy Undead manually (by script commands) under the MM0 trigger rather than waiting for the player to re-cast it.  I'm not sure what to do about the error message though.  Even if it were changed to something else, it would be an inconvenience, as it has to be clicked off.  What is needed is a way to detect which spell icon has been clicked before Heroes reacts to that selection, but so far I have not found one (in WoG 3.58f) - none of the mouse triggers works inside the spell book.  In Era, one could, at worst, replace the  spell book with a custom DL and use the DL trigger (with a lot of work).

Edit - found another typo/editing error - some v5's in FU100 and FU101 which needed to be y1's.  Didn't show up in my test since it would only affect Blood Dragons and Dragoliches.

Update - here is a version which asks the player if he is planning to cast Curse on Undead - but only the Hero has the spell and has six spell points and there are undead among the enemies.  I tried it against a troop of Pikemen, and against a mixed troop of Skeletons, Walking Dead, Wights, and Vampires.  In the former case the script was not triggered; in the latter case I could curse any of the undead.  I also tested under Era 1.8 and cursed a Zombie.

ZVSE

* CurseUndeadTest2, JHV, Nov.11, 2011

!?BR;
!!VRv37:Sv997; save round for other triggers where v997 may not work

!?CM4&v37>-1; left-click Hero or Cast Spell (not during Tactics rounds)
!!CM:I?v1 F?v2 A?v3/?v4;
*!IF:M^CM4:  I=%V1, S=%V2, px/py=%V3/%V4^; get Hero coordinates
!!FU&v1<>2008/v3>57|v2<>0:E; exit if not on Cast Spell and right of Hero or if not left-click
!!FU&v1<>2008/v4<17:E; exit if not on Cast Spell and above Hero
!!FU&v1<>2008/v4>127:E; exit if not on Cast Spell and below Hero
* check to see if there are any Undead foes, and whether
* the Hero has Curse and enough spell points to cast it
!!BG:Q?v5; get current side
!!BHv5:N?v6;
!!FU&v6<0:E; just in case
!!HEv6:M42/?v7; see if Hero has Curse spell
!!FU&v7=0:E;
!!HEv6:I?v7/1; get spell points
!!FU&v7<6:E; not enough (but need further check for friendly Mages or Silver Pegasi foes)
!!IF:V2/0; reset temporary flag 2 for undead check
!!DO102/0/20/1&v5=1:P;
!!DO102/21/41/1&v5=0:P;
!!FU&-2:E;
* end of checks
!!IF:Q1:^Are you planning to cast Curse on Undead?^;
!!FU&-1:E;
!!DO100/0/41/1:P; process all undead
!!IF:V30/1; set flag to unprocess later

!?FU102; x16=stack
!!BMx16:T?y1 N?y3; stack type, count
!!FU|y1<56/y3<1:E; exit if before Skeleton or dead
!!FU&y1<56:E; exit if before Skeleton
!!FU&y1>69/y1<>154/y1<>196:E; exit if after Ghost Dragon and not Blood Dragon or Dragolich
!!IF:V2/1; found an undead
!!VRx16:S99; end DO

!?FU100; x16=stack
!!BMx16:T?y1 N?y3; stack type, count
!!FU|y1<56/y3<1:E; exit if before Skeleton or dead
!!FU&y1>69/y1<>154/y1<>196:E; exit if after Ghost Dragon and not Blood Dragon or Dragolich
!!BMx16:F?y2;
!!VRy2:&-262145;
!!BMx16:Fy2; allow curse cast (but not Destroy Undead or Animate Dead)

!?BG1&30; end of next action
!!DO101/0/41/1:P; re-process all undead
!!IF:V30/0;

!?FU101; x16=stack
!!BMx16:T?y1 N?y3; stack type, count
!!FU|y1<56/y3<1:E; exit if before Skeleton or dead
!!FU&y1<56:E; exit if before Skeleton
!!FU&y1>69/y1<>154/y1<>196:E; exit if after Ghost Dragon and not Blood Dragon or Dragolich
!!BMx16:F?y2;
!!VRy2:|262144;
!!BMx16:Fy2; restore undead

 Send Instant Message | Send E-Mail | View Profile | Quote Reply | Link
JimV
JimV


Responsible
Supreme Hero
posted November 11, 2011 11:08 PM
Edited by JimV at 03:54, 12 Nov 2011.

Progress, under Era 1.8, using my favorite new 3.59 trigger:

[First draft of script removed to save space; final version added below after Update.]

This method works as long as there are both non-undead and undead enemy stacks, so that the Curse spell can be selected.  Once it is selected, TL0 detects it and removes the undead flags, which are restored at the end of the action.

My next trick will be to create an artificial, invisible non-undead stack so Curse can always be selected.

Update:  I added several tests to the script, and made it work for battles in which all the enemy stacks are undead.  It turned out I had to actually summon an alive enemy stack to enable the selection of Curse from the spell book, and to get rid of it after applying the Curse I had to hit it with a Titan's Lightning Bolt.  A temporary stack can be defined with BM:T and BM:N and that stack can cast spells with BM:C, but such stacks do not convince the Heroes program to allow a Curse spell to be selected (when all other enemy creatures are undead).  To get the attention of the Heroes program I had to summon the stack, so to get rid of it I had to kill it.  The BM:K spell does not kill a stack until some other stack has been hit, so the quickest way to get it off the battlefield was to hit it with a spell.  (It has the clone bit set so it does not leave a corpse.)

Before going to this trouble, the script checks to see whether there is any enemy stack which is alive.  However, when there is not, enabling the Curse on undead stacks creates some extraneous displays (the summoned creature and the spell cast which kills it).  I think these could be eliminated by a mod which provided an invisible alive creature to summon (I used a Peasant), and an invisible, noiseless spell which does enough damage to kill the summoned creature but costs no spell points.

ZVSE

* test of JV TL0 method for detecting spell selection
*** tested and working under Era 1.8

* uses v37-v39 as permanent variables from start to end of a battle
* uses FU100-FU104 and flags 30-33
* uses v1-v8 as temporary variables

!?BA0&1000;
!!IF:V30/0 V31/0 V32/0;

!?BR;
!!VRv37:Sv997; save round for other triggers where v997 may not work

!?CM4&v37>-1; left-click Hero or Cast Spell (not during Tactics rounds)
!!CM:I?v1 F?v2 A?v3/?v4;
*!IF:M^CM4:  I=%V1, S=%V2, px/py=%V3/%V4^; get Hero coordinates
!!FU&v1<>2008/v3>57|v2<>0:E; exit if not on Cast Spell and right of Hero or if not left-click
!!FU&v1<>2008/v4<17:E; exit if not on Cast Spell and above Hero
!!FU&v1<>2008/v4>127:E; exit if not on Cast Spell and below Hero
* check to see if there are any Undead foes, and whether
* the Hero has Curse and enough spell points to cast it
!!BG:Q?v39; get current side
!!BHv39:N?v6 M?v7; Hero #, spells cast this round
!!FU|v6<0/v7>0:E;
!!HEv6:M42/?v7; see if Hero has Curse spell
!!FU&v7=0:E;
!!HEv6:I?v7/1; get spell points
!!FU&v7<6:E; not enough (but need further check for friendly Mages or Silver Pegasi foes)
!!IF:V2/0; reset temporary flag 2 for undead check
!!DO102/0/20/1&v39=1:P;
!!DO102/21/41/1&v39=0:P;
!!FU&-2:E;
* end of checks
!!IF:V33/0; reset flag 33 for alive check
!!DO104/0/20/1&v39=1:P;
!!DO104/21/41/1&v39=0:P;
* summon one non-undead stack to enable Curse if necessary
!!DO103/4/182/1&-33:P; search for empty hex
!!BG:S-1;
!!UN:C5168326/4/2657254; turn on TL triggers
!!IF:V30/1 V31/1;

!?TL0&31; spell selection loop
!!BG:S?v1;
*!IF:L^TL0, S=%V1^;
!!DO100/0/41/1&v1=42:P; process all undead
!!IF&v1=42:V32/1;
!!IF&v1>-1:V31/0;
!!UN&v1>-1:C5168326/4/434630; turn off TL triggers
*!IF:L^TL0, S=%V1, F30=%F30, F31=%F31, F32=%F32^;

!?FU100; x16=stack
!!BMx16:T?y1 N?y3; stack type, count
!!FU|y1<56/y3<1:E; exit if before Skeleton or dead
!!FU&y1>69/y1<>154/y1<>196:E; exit if after Ghost Dragon and not Blood Dragon or Dragolich
!!BMx16:F?y2;
!!VRy2:&-262145;
!!BMx16:Fy2; allow Curse cast (but not Destroy Undead or Animate Dead)

!?BG0&30; start of action
!!BMv38&-33:P?v1; position
!!BHv39&-33:C57/v1/3/1; get rid of temporary alive stack

!?BG1&30; end of next action
!!DO101/0/41/1&32:P; re-process all undead
!!IF:V30/0 V32/0;

!?FU101; x16=stack
!!BMx16:T?y1 N?y3; stack type, count
!!FU|y1<56/y3<1:E; exit if before Skeleton or dead
!!FU&y1>69/y1<>154/y1<>196:E; exit if after Ghost Dragon and not Blood Dragon or Dragolich
!!BMx16:F?y2;
!!VRy2:|262144;
!!BMx16:Fy2; restore undead

!?FU102; x16=stack, search for undead
!!BMx16:T?y1 N?y3; stack type, count
!!FU|y1<56/y3<1:E; exit if before Skeleton or dead
!!FU&y1<56:E; exit if before Skeleton
!!FU&y1>69/y1<>154/y1<>196:E; exit if after Ghost Dragon and not Blood Dragon or Dragolich
!!IF:V2/1; found an undead
!!VRx16:S99; end DO

!?FU103; x16=stack, search for empty hex for summoning
!!VRy1:Sx16%17;
!!FU|y1<4/y1>12:E;
!!BU:Ex16/?y1;
!!FU&y1>-1:E;
!!VRy1:S1-v39; side to summon for
*!IF:L^Hex=%X16, Side=%Y1^;
!!BU:S139/1/x16/y1/-1/0;
!!BU:Ex16/?v38;
!!BMv38&v38>-1:F?y2;
!!VRy2:|4194304; cloned - leaves no corpse
!!BMv38&v38>-1:Fy2;
*!IF:L^Hex=%X16, Stack=%V38^;
!!VRx16:S200; end DO

!?FU104; x16=stack, search for alive stack
!!BMx16:N?y1 F?y2; stack count, flag bits
!!FU&y1<1:E; exit if empty stack
!!VRy2:&16;
!!FU&y2=0:E; exit if not alive
!!IF:V33/1; found an alive
!!VRx16:S99; end DO

!?CM4; left-click Surrender or Retreat
!!CM:I?v1 F?v2;
!!FU|v1<2001/v1>2002/v2<>0:E; exit if not on Surrender or Retreat or if not left-click
!!IF:V30/0 V31/0;
!!UN:C5168326/4/434630; turn off TL triggers


 Send Instant Message | Send E-Mail | View Profile | Quote Reply | Link
ceken4
ceken4


Hired Hero
posted November 12, 2011 11:08 AM

HI!

I need help. I am sorry to trouble you about this but I do not
know how could I give a new spell animation. For example !!BM1:V200; let  play a new spell animation number 200.



Thanx for answer!

 Send Instant Message | Send E-Mail | View Profile | Quote Reply | Link
JimV
JimV


Responsible
Supreme Hero
posted November 12, 2011 03:13 PM

There is no way to do that strictly using ERM commands, so it is not an ERM topic - more of a modding topic.  The only clues I can offer are modding clues:

Method 1) Instead of using a new number, use an existing number which is already coded for in the Heroes program, and replace the DEF used by that number with your new DEF.

Method 2) Somehow get your hands on the source code for the program, or reverse-engineer it with a disassembler, and figure out how to restructure it to add more animations to it.  That is the type of thing the WoG team did - led by a professor of computer science, and working for several years.

 Send Instant Message | Send E-Mail | View Profile | Quote Reply | Link
ceken4
ceken4


Hired Hero
posted November 12, 2011 04:41 PM

Okay, thanx.

In messages it can play an avi, is it passible to use in battlefield or no?

In the help is !!MA:F#/$ Monster # has a Fight value of $.
What does it mean?

 Send Instant Message | Send E-Mail | View Profile | Quote Reply | Link
ceken4
ceken4


Hired Hero
posted November 12, 2011 04:57 PM

I am sorry about my stupid questions but how can I find which def is for animation number 65. Is that passible there is 2-3 animation about it (fire wall).

 Send Instant Message | Send E-Mail | View Profile | Quote Reply | Link
Magissia
Magissia


Adventuring Hero
posted November 12, 2011 07:11 PM

Hello

I know artefact "grail" is 2

But what about the grail you have to dig for ?
Is it 2 too ? How i make people need to dig for it if i place it with ERM ?
____________

My works

 Send Instant Message | Send E-Mail | View Profile | Quote Reply | Link
JimV
JimV


Responsible
Supreme Hero
posted November 12, 2011 07:27 PM
Edited by JimV at 19:32, 12 Nov 2011.

Quote:
In messages it can play an avi, is it possible to use in battlefield or no? *(A)

In the help is !!MA:F#/$ Monster # has a Fight value of $.
What does it mean? *(B)

which def is for animation number 65. Is that passible there is 2-3 animation about it (fire wall) *(C)


A) Make a small test map, put a Hero and some creatures on it, set the victory condition to finding an artifact or something such that the map is playable, and write a script to play a .avi file in battle.  You will get your answer and get ERM practice at the same time.  I think the answer is yes, but to be 100% sure I would have to make the test map myself.

B) Don't know, think it helps the AI decide which creatures to attack next.  A test map and some tests might provide some clues.

C) Don't know, but then I'm not much of a modder.  This might be already answered on one of the sticky posts about modding.  Anyway, that is where the expert modders hang out.  Being the stubborn type who likes to learn things for myself, if I wanted to know I would look through all the DEF's in h3sprite.lod until I found it.

Quote:
But what about the grail you have to dig for ?
Is it 2 too ? How i make people need to dig for it if i place it with ERM ?


The grail which is the gold bubble (last item in the Map Editor artifacts table) is type 36, subtype 0.  An easy way to find type and subtype (and DEF file) if you have Grayface's Map Editor patch is to place the object on the map and then right-click on it and select Advanced Properties.  You may place an object on the map via ERM using the UN:I command.  (This is done in the map "New Magic", which you have.)

 Send Instant Message | Send E-Mail | View Profile | Quote Reply | Link
Salamandre
Salamandre


Admirable
Omnipresent Hero
Wog refugee
posted November 12, 2011 07:47 PM
Edited by Salamandre at 19:58, 12 Nov 2011.

Can't play avi., heroes (except campaigns) only read uncompressed movie, so 10 seconds will take 200 Mo. For same effect use big gifs, but they can't stop.

You can place the grail through ERM but can't bury it.
____________
Era II mods and utilities

 Send Instant Message | Send E-Mail | View Profile | Quote Reply | Link
JimV
JimV


Responsible
Supreme Hero
posted November 12, 2011 08:15 PM

Quote:

You can place the grail through ERM but can't bury it.


(Thanks for the information on avi.)

As I mentioned, the 36/0 Grail is placed on the map after the game start in "New Magic", via UN:I, and can be dug up.  I made the map without any Obelisks so that the Grail would not be buried automatically.  It is in one of three places, randomly selected at the start of the game, surrounded by Dragoliches.  The new-magic spell called "The Eye of Agamoto" will show a glowing X on the square where the grail is buried.

In "Nexus Polaris" the mad Bulgarian places two Grails (gold bubbles) with the Map Editor, but only one of them has the Grail, so I think only one buried Grail is allowed.  So using UN:Ix/y/z/36/0 would probably have no effect if the map had Obelisks since it would already have a Grail placed randomly by the Heroes program.  (One might be able to add Obelisks with UN:I after placing the Grail, but I have not tried this.)

 Send Instant Message | Send E-Mail | View Profile | Quote Reply | Link
Salamandre
Salamandre


Admirable
Omnipresent Hero
Wog refugee
posted November 12, 2011 08:39 PM

Did not know that, thanks for the grail info.
____________
Era II mods and utilities

 Send Instant Message | Send E-Mail | View Profile | Quote Reply | Link
ceken4
ceken4


Hired Hero
posted November 12, 2011 09:45 PM

Hi again!

I used !!BU:Sx1/x2/x3/x4/v7385/0; but the summoned creature's stack
is not egual v7385. If I started to count 0-19 (not 20) then sometimes is egual sometimes not. If I used not v7385 but -1 I can not ask the true stack number by !BU:Ex3/?y1; the program crashed because of invalid monster number.

 Send Instant Message | Send E-Mail | View Profile | Quote Reply | Link
JimV
JimV


Responsible
Supreme Hero
posted November 12, 2011 10:16 PM
Edited by JimV at 22:27, 12 Nov 2011.

It looks like you didn't read ERM Help for the BU:S command, so I have to copy and paste it for you here:

S#1/#2/#3/#4/#5/#6; Summon a stack of monsters on a battle field.
  #1 - Type of monster (See Format C)
  #2 - Number of monsters
  #3 - Position
  #4 - Side (0=left or 1=right) of owner
  #5 - Hero's slot number (-1 -no slot)
  #6 - Redraw (1) or not (0)
Restrictions:
1. It must be correct position number
2. It must be free of other monsters and obstacles position.
3. There may be no more than 21 stacks on each side.

Note that the 5th parameter is not the stack number, but the troop slot number (0-6) which the creature will be placed in if survives the battle (if its side has a Hero).  In most cases this should be -1.

If you are having a problem with invalid numbers in a script, the first thing to do is to look up each command in ERM Help.  The second thing to do is to add IF:M commands to display your values and see where they are getting screwed up.  Example:


!?FU300;
!!IF:M^FU300:  x1=%X1, x2=%X2, x3=%X3, v1234=%V1234^;
...
!!BU:Ex3/?y1;
!!IF:M^FU300, BU:E/?=%Y1^;
...

You can also read about x-variables, under "Flags, Variables".

 Send Instant Message | Send E-Mail | View Profile | Quote Reply | Link
ceken4
ceken4


Hired Hero
posted November 12, 2011 10:56 PM

You were right.
Not stacks.  Thanx.

 Send Instant Message | Send E-Mail | View Profile | Quote Reply | Link
Bersy
Bersy


Honorable
Supreme Hero
posted November 12, 2011 11:08 PM

Off-topic. Jim, would you be so kind to recheck out Phoenix Mod translation?

 Send Instant Message | Send E-Mail | View Profile | Quote Reply | Link
Salamandre
Salamandre


Admirable
Omnipresent Hero
Wog refugee
posted November 13, 2011 01:11 AM

Interesting thing with the grail. If you place it via script, it will remove the original one. You can't have two of them buried at same time.
But you can move its location at any time. No matter if you placed it before the game or no. And of course, if you reset the obelisks to not visited, you can dig infinite number of grails.
____________
Era II mods and utilities

 Send Instant Message | Send E-Mail | View Profile | Quote Reply | Link
Magissia
Magissia


Adventuring Hero
posted November 13, 2011 01:22 AM

Thanks for testing Salamande
____________

My works

 Send Instant Message | Send E-Mail | View Profile | Quote Reply | Link
Jump To: « Prev Thread . . . Next Thread » This Popular Thread is 407 pages long: 1 50 100 ... 112 113 114 115 116 ... 150 200 250 300 350 400 407 · «PREV / NEXT»
Post New Poll    Post New Topic    Post New Reply

Page compiled in 0.1889 seconds