|
|
Salamandre
Admirable
Omnipresent Hero
Wog refugee
|
posted October 22, 2014 10:55 PM |
|
|
Umm, all wrong. You use same command for different things: MA:A. This is only for attack. Then remove the very last line.
____________
Era II mods and utilities
|
|
bloodsucker
Legendary Hero
|
posted October 22, 2014 11:13 PM |
|
|
Salamandre said: Umm, all wrong. You use same command for different things: MA:A. This is only for attack. Then remove the very last line.
Ops, didn't notice that I haven't changed the parameter nor that you were directly incrementing the value.
So, it has to be something like this (cause is absurd to create a function for each parameter, right?)
!?FU724321;
!!FU&x16=12/x16=13/x16=36/x16=37/x16=63/x16=64/x16=67/x16=122/x16=124/x16=126/x16=128:E;
** excludes players army and some not used monsters just for safety
!!MA:Ax16/?y1 Dx16/?y2 Ex16/?y3 Mx16/?y4 Px16/?y5;
!!MA:Ax16/?y1; check attack
!!VRy6:Sy1*125:100; increase by 25%, store in y2
!!VRy6&y6<1:S1; set y2 to 1 minimum value if result was rounded down to zero or less.
!!MA&y6>1:Ax16/y6; if result more than 1, set to y2
!!MA&y6=1:Ax16/dy6;if result is 1, add 1 to initial attack
!!MA:Dx16/?y2; check defense
!!VRy7:Sy2*125:100;
!!VRy7&y7<1:S1;
!!MA&y7>1:Dx16/y7;
!!MA&y7=1:Dx16/dy7;
!!MA:Ex16/?y3; check max damage
!!VRy8:Sy3*125:100;
!!VRy8&y7<8:S1;
!!MA&y8>1:Ex16/y8;
!!MA&y8=1:Ex16/dy8;
!!MA:Mx16/?y4; check min damage
!!VRy9:Sy4*125:100;
!!VRy9&y9<1:S1;
!!MA&y9>1:Mx16/y9;
!!MA&y9=1:Mx16/dy9;
!!MA:Px16/?y5; check health
!!VRy10:Sy5*125:100;
!!VRy10&y10<1:S1;
!!MA&y10>1:Px16/y10;
!!MA&y10=1:Px16/dy10;
|
|
Salamandre
Admirable
Omnipresent Hero
Wog refugee
|
posted October 22, 2014 11:24 PM |
|
|
Two notes:
!!FU&x16=12/x16=13/x16=36/x16=37/x16=63/x16=64/x16=67/x16=122/x16=124/x16=126/x16=128:E;
This says: if x16=12 and x16=13 and and x16=36 etc etc. (which will never happen as x16 can't be several values at same time)
What you want is:
if x16=12 or x16=13 or x16=36 etc
Thus the syntax is not & but |. This is correct:
!!FU|x16=12/x16=13/x16=36/x16=37/x16=63/x16=64/x16=67/x16=122/x16=124/x16=126/x16=128:E;
Then this line is useless, as you re-ask parameters later, so remove it.
!!MA:Ax16/?y1 Dx16/?y2 Ex16/?y3 Mx16/?y4 Px16/?y5; remove me
And por favor, use the red icon when parsing erm codes.
____________
Era II mods and utilities
|
|
bloodsucker
Legendary Hero
|
posted October 22, 2014 11:29 PM |
|
|
|
Siegfried
Famous Hero
|
posted October 23, 2014 07:47 AM |
|
|
Salamandre said:
Normally the limit is 8. There is a script increasing this limit to 12, then a plugin in era for unlimited (you get all 28 skills). You can set a custom limit by using !?HL trigger. Once you hero reaches x level or whatever condition, prohibit him to learn more skills.
As far as I remember, HE:S are the receivers for secondary skills
That is what i'm searching for: That plugin for Era that gives unlimited number of skills. I'd like to remove it. But i don't find it. The one plugin with "unlimited skills" is off. But the heroes are still getting unlimited number of skills.
You are right, !!HE:S is the receiver for secondary skills. And with this and the !?HL trigger i could manually remove all excess skills. But i would think it is much better to disable this plugin.
One of the fun parts of H3 is to carefully develop your hero. But if it doesn't matter which skills he gets this part of the game is completely gone. I'd like to have it back. Maybe this is a question to 0xFEA. I think it should be possible to set this limit with UN:C, but which address?
____________
|
|
Salamandre
Admirable
Omnipresent Hero
Wog refugee
|
posted October 23, 2014 12:27 PM |
|
|
Plugin must be zero byte file in your mod data/era plugins/after wog folder.
Then with HL you control how hero levels up. Once the skills limit you want is reached, you code it to only give primary skills at level up. And then you'll have to code each map encounter giving skills: witch huts, conflux, scholars and so.
|
|
mister_kalu
Known Hero
|
posted October 23, 2014 01:51 PM |
|
|
|
mister_kalu
Known Hero
|
posted October 23, 2014 01:57 PM |
|
|
Salamandre said: Plugin must be zero byte file in your mod data/era plugins/after wog folder.
Then with HL you control how hero levels up. Once the skills limit you want is reached, you code it to only give primary skills at level up. And then you'll have to code each map encounter giving skills: witch huts, conflux, scholars and so.
salamandre can you try this please
!?CM4;
!BA&v997>=-1:H0/?y2;
!!HEy2&v997>=-1:I?y3;
in my two versions , i got the same bug , when i try to get the spell points, some parts of adventure map open into the battlefield until i press some other button in the screen
|
|
Salamandre
Admirable
Omnipresent Hero
Wog refugee
|
posted October 23, 2014 02:09 PM |
|
|
Cm commands have some redraw in, hence you get other graphics. Don't give with CM, you have many other ways, BF, BG, BR, MF.
____________
Era II mods and utilities
|
|
mister_kalu
Known Hero
|
posted October 23, 2014 02:19 PM |
|
|
with
!?BG1;
!!HEy2:I?y3;
happens too :/
i tried with BR trigger and the same, probably the command HE:I ,inside the battle gets the spell points or any other hero characteristic outside the battlefield. the only way to do this after BR v997=-1 ; is with BR trigger v997=1; and the resource bar appears with the mini hero screen in the right, but only instants
|
|
Salamandre
Admirable
Omnipresent Hero
Wog refugee
|
posted October 23, 2014 02:45 PM |
|
|
I$/1 Additional Syntax
The same as HE:I$ but without redrawing
For standard syntax some of them called redrawing always even if you check only.
!!HE#:I/d$/1;
|
|
Mister_kalu
Known Hero
|
posted October 23, 2014 04:33 PM |
|
|
Salamandre said: I$/1 Additional Syntax
The same as HE:I$ but without redrawing
For standard syntax some of them called redrawing always even if you check only.
!!HE#:I/d$/1;
yes you're right, thanks
|
|
heroes_player
Known Hero
|
posted October 23, 2014 06:43 PM |
|
|
I learned programming about month ago and I find it very exciting! Now I found that ERM is one of the programming languages. I would like to learn that but is there any good tutorial guide for them? For example, C++ or Python has nice guides all over the internet but ERM... even Google doesn't find any results for that!
So I would like to ask how useful ERM is for other than HoMM modding? I mean is it useful somewhere in the working place etc...
|
|
gatecrasher
Famous Hero
|
posted October 23, 2014 06:57 PM |
|
|
heroes_player said:
So I would like to ask how useful ERM is for other than HoMM modding? I mean is it useful somewhere in the working place etc...
Not at all. It's just WoG's built-in scripting language.
Besides, it's syntax might be concise but as you might have recognised it is hardly readable. Just like for instance purposefully obfuscated Perl code.
"Real" programming / scripting languages are a different kettle of fish.
|
|
bloodsucker
Legendary Hero
|
posted October 23, 2014 07:17 PM |
|
|
If I create an object of the type CB and manualy place them on the map, would this command be immediatly able to reconize them? Or do I have to add some extra code somewhere?
!!UN:U16/-1/?y-1;
@Salamandre
I'm studying the respawn made for Commudus.
;Get information about CB guards
!?CM0;
!!CM:P?y41/?y42/?y43;
!!TRy41/y42/y43:E?y50;
!!FU&y50>0:E; exit if no yellow square
!!OBy41/y42/y43:T?y44 U?y45;
*******************
!!if&y44=90/y45=1:;
!!IF:Q1^Remove this shrine (you can replace it later)?^;
!!FU&-1:E;
!!UN:Oy41/y42/y43;
!!VRv9490:+1; done
!!VRz334:S^^;
!!OBy41/y42/y43:Hz334;
!!POy41/y42/y43:B0/?y1;
!!OBy41/y42/y43:Cy1;
!!en:;
*******************
!!FU&y44<>16/y44<>84/y44<>24/y44<>85/y44<>25:E; if not a CB, exit
!!CBy41/y42/y43:T?y46; check if taken
!!FU&y46=1:E; exit if taken
!!VRy47:Sy44; !!VRy48:Sy45;
______
If I understand what I read, the code between the *** is about something completly different and is usefull only in the specific Commodus context. Can I simply remove it and forget it?
Thank you.
|
|
bloodsucker
Legendary Hero
|
posted October 23, 2014 07:23 PM |
|
|
gatecrasher said: "Real" programming / scripting languages are a different kettle of fish.
On the other hand, after he finnish to write a middly entertainning mod he will be ready for Assembly.
C++ looks like mother language after 200 working lines.
And it's not directly usefull in the working place but I believe that to add a line about a good working mod in a curriculum can be usefull to find a job.
Me at least I would consider the fact that when the guy is motivated he is able to accomplish an hard task.
|
|
Salamandre
Admirable
Omnipresent Hero
Wog refugee
|
posted October 23, 2014 08:08 PM |
|
|
Just because comments tell something about banks doesn't mean the code is for banks respawn. Don't copy/paste codes blindly.
|
|
bloodsucker
Legendary Hero
|
posted October 23, 2014 09:26 PM |
|
|
Salamandre said: Just because comments tell something about banks doesn't mean the code is for banks respawn. Don't copy/paste codes blindly.
I'm not, that's how I noticed you don't add Vampires to Transivanian Banks nor Master Genies to Lost Bottles and that the Dragons in Utopia remain classic, don't upgrade to Powerfull. I also noticed Cyclops bank gives mithril.
I don't like the extra mithril, now it's me saying "you don't need that in random maps". Already deleted it, I think.
I have one doubt none the less, all those minor functions (FU100 to FU109) are global and represent a claimed function all over, right?
I know your code is for a standalone mod but maybe I should rethink just changing their names... I always heard it is a good policy to use functions but this global one time functions seem a waste of valuable resources.
--------
And for this one I have to agree with you: I basicly have no idea of what I'm doing.
It took me all night but I succeded, I can change the battle field like Haart from TDS. Now, I wanted this to happen to all faction 0 (red) heroes and to no others but (as I was able to test) is now happening to all human players (wich would be even better, if I had the knowlegde to say "and to no others"). Help please.
P.S. Ok, I think I've found a solution, only it is going to stay in the I think session forever cause I don't know if the code I wrote worksh or simply doesn't trigger an error. And I don't know how to test it cause it's like that "I'm gonna be hanged" riddle, if I'm in control is not AI.
---------
ZVSE
!#VRv6008:S-2;
!?BG;
!!OW-1:I&y6; [my remarkable lines]
!!OW-1&y6=0:E;
!!BU:Gv6008; use v6008 menu selection for terrain
!?CM4;
!!BG:Q?y1 H?i;
!!CM:I?y1 S?y2;
!!FU&y1<>2009:E;
!!FU&y2<>14:E;
!!BU:G?y3;
!!VRz1:S^Magic Plain^;
!!VRz2:S^Cursed Ground ^;
!!VRz3:S^Holy Ground^;
!!VRz4:S^Evil Fog^;
!!VRz11&y3=-1:S^General Terrain^;
!!VRz11&y3=0:S^Sea^;
!!VRz11&y3=1:S^Magic Plain^;
!!VRz11&y3=2:S^Cursed Ground^;
!!VRz11&y3=3:S^Holy Ground^;
!!VRz11&y3=4:S^Evil Fog^;
!!VRz11&y3=5:S^Clover Field^;
!!VRz11&y3=6:S^Lucid Pools^;
!!VRz11&y3=7:S^Fiery Fields^;
!!VRz11&y3=8:S^Rocklands^;
!!VRz11&y3=9:S^Magic Clouds^;
!!VRz5:S^Choose the battlefield terrain:
[NB: new terrain effects occur after current creature's turn]^; v1012=monster growth selection [Enhanced Monsters script]
!!VRz5:S^Choose the battlefield terrain:
[NB: new terrain effects occur only after current creature's turn]^;
!!VRz6:S^All magic spells are at expert level^;
!!VRz7:S^Prohibits the use of level 2-5 spells, foils Inteus^;
!!VRz8:S^Good troops get +1 morale, evil troops get -1 morale^;
!!VRz9:S^Good troops get -1 morale, evil troops get +1 morale^;
!!VRz12:S^The current terrain: %Z11^;
!!CM:R0;
!!IF:D6/5//12/////1/2/3/4/1/2/3/4;
!!IF:F6/6/7/8/9/1;
!!IF:E6008/6;
!!BU:G/z11;
!!VRv6008&v6008=-1:Sv6001;
|
|
Salamandre
Admirable
Omnipresent Hero
Wog refugee
|
posted October 24, 2014 07:00 PM |
|
|
TDS scripts are not much commented, as they were in chinese, then Jim added a few comments when translating, but not detailed. So I would suggest that you script "red player choose battlefield" from scratch, the TDS script depends too much on other choices and parameters.
Also not every receiver will work in battle triggers.
This makes no sense, syntax wrong:
!!OW-1:I&y6; [my remarkable lines (not so remarkable)]
!!OW-1&y6=0:E; Only function can trigger exit. FU:E, thats it.
|
|
bloodsucker
Legendary Hero
|
posted October 24, 2014 11:55 PM |
|
|
Salamandre said: TDS scripts are not much commented, as they were in chinese, then Jim added a few comments when translating, but not detailed. So I would suggest that you script "red player choose battlefield" from scratch, the TDS script depends too much on other choices and parameters.
Well, I may even be able to recode this without using TDS directly but you have to admit some of the best code in WoG history is there for the taking...
Palace of Dreams (you used it yourself), second henchman, neutral creatures with EA habilities, growth factor, probability for artifacts, unbuild grail, creatures growth over 4000, just to name a few I have my eyes on. Also the adventure cave and the Big Bosses can give some ideas for scripts.
One thing I'm looking for and I didn't found yet (that's how I came up doing the battlefield script) is that quest for Tome of Air where creatures suddenly appeared on the way. I think that would help with the script I want to make kind of rogues fight rule. This idea looks good to me cause if you dramaticaly increase the probabilities, let it happen so many this a day as it can and increase dificulty like in the Karmic Battles (maybe even using the same counter so they increase simultaniously), you can keep having strong battles against neutrals even when terain is completly clean.
P.S. Found it, it's called The Game and is not for Tome of Air is for the four Tomes, I only got Air that's the reason of the confusion.
|
|
|