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 390 pages long: 1 50 100 150 200 250 ... 300 301 302 303 304 ... 350 390 · «PREV / NEXT»
Salamandre
Salamandre


Admirable
Omnipresent Hero
Wog refugee
posted April 16, 2016 08:23 PM

@fanofheroes, I will build era mod from your upload then show here.

@bloodsucker, ok as you want, but you will be disappointed at the end. As if you already have one hero with 1000 azures dragons, a new level 1 hero will just use those 1000 azures to attack mobs on map and multi level in one fight. People keep playing for reaching unlimited power by conventional ways and the game has its natural progression, there is one time for little fights, then one for medium fights then the one where you rule the map in absolute lord. Once you are there, there is little probability one will enjoy redo early fights, for nearly no reward. But ok, your call.
____________
Era II mods and utilities

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


Legendary Hero
posted April 16, 2016 09:08 PM
Edited by bloodsucker at 21:23, 16 Apr 2016.

You think I can do better increasing the battles with a timer?
This is me playing WoG at 200% with my favorite scripts and mods but without any editing or extra scripting AND without BAI.

What was it again? Level 7 monsters month 3?
In any random maps but specially in open XXL Era with mods, it is pretty much impossible to predict what a player will have at a certain moment in time. I think the levels/prims do in fact a better job of identifying the capacity of the "army" at any given moment (if you have my super ghost army of course, I don't see the same to be possible without it but I'm sure RoseCavalier, Biobob or even you would just need some minutes to prove me wrong.

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


Admirable
Omnipresent Hero
Wog refugee
posted April 16, 2016 09:12 PM

The game bugs with such numbers and requires tedious actions to keep your army safe. I would go for dynamic stats instead of numbers, means monsters stats grow each month so you don't need billions of them.
____________
Era II mods and utilities

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


Legendary Hero
posted April 16, 2016 09:28 PM
Edited by bloodsucker at 21:35, 16 Apr 2016.

Did you noticed the name of the town? That is my bank.
The guy has 5 items giving 15 gold for each creature in his army, half a dozen ring that can be trade by double level 1 creatures in his army and a cape that doubles this effects, this occurs every weekend. This is not an army for fighting is a way to keep me rich behind absurd, so the name of the town.

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


Admirable
Omnipresent Hero
Wog refugee
posted April 16, 2016 09:44 PM

bloodsucker said:

In any random maps but specially in open XXL Era with mods, it is pretty much impossible to predict what a player will have at a certain moment in time.


On random, is easy. Considering that you get your first level 7 not later than 2 week, then consider regular progression for jebus for example, it will only get a bit harder or easier on other templates. And the key is not the army, but the spells and skills. An hero with earth + force field, or fire + berserk, and black orb if relics, can defeat any army, is only matter of patience during battle. Thats why one should consider taking them out or delaying them, if you don't want to be bored month 3 already.
____________
Era II mods and utilities

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


Legendary Hero
posted April 16, 2016 09:50 PM
Edited by bloodsucker at 22:13, 16 Apr 2016.

Wait, we are in the same boat then, even if it means an extremelly confusing evaluation routine.
I want to take in consideration the number of Expert Skills he has, as well as prims and level (level is important cause it affects Commander and HenchmEn capacities), etc...
I think a way to do it is ask hero vars and attribute numbers to the results, for instance: every skill ranks from 1 to 3, plus medium value of prims ranks divided by X (I think 4 but only testing), each basic skill commander has behind 4 counts 10, each skill behind 6 counts 5, etc... Then this values are added and the battle rank is determined this way.
Values will have to be very carefully evaluated but I think it is pretty much this, isn't it?  

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


Admirable
Omnipresent Hero
Wog refugee
posted April 17, 2016 01:30 AM

Well, best answer is to start scripting it then test. Such balances need work over months until you are happy with.
____________
Era II mods and utilities

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


Legendary Hero
posted April 17, 2016 06:16 AM

Is it possible to ask the "kingdom army value" of one hero? I know the information is there cause it affects the Thieves Guild but I don't recall to have ever seen the flags documented.

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


Admirable
Omnipresent Hero
Wog refugee
posted April 17, 2016 07:45 AM

Get army value of current hero in v3.

!?CM2; click anywhere while in hero screen
!!HE-1:N?y1;
!!VRv2:C0/0;
!!DO23154688/0/6/1:Py1;
!!IF:Q1/-1/-1/4^%V3^;

!?FU23154688;
!!HEx1:C0/x16/?y1/?y2;
!!FU&y1<0:E;
!!MA:Fy1/?y3;
!!VRv3:Sy3*y2;
!!VRv2:+v3;

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


Legendary Hero
posted April 17, 2016 08:06 AM
Edited by bloodsucker at 08:39, 17 Apr 2016.

Uau! Thanks.
Question: with or without neutral hero? My idea has always been with but with the ranks growing according to hero's parameters, I think I would need to do bateries of tests with different players to tune it and that will never happen.
P.S. I know it is too much to ask but do you see a way for that to work for both heroes during the battle? That would pretty much do for the "batery of tests".

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


Admirable
Omnipresent Hero
Wog refugee
posted April 17, 2016 09:07 AM

Don't understand your question, what both heroes? You mean calculate both heroes army value? Same script but use it in battle, get heroes ID then loop their stack. Monster fighting value is MA:F in erm help. But I am not sure this is what they use for thieves guilds, maybe the guys from VCMI or Sav know better.

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


Legendary Hero
posted April 17, 2016 11:17 AM
Edited by bloodsucker at 16:33, 17 Apr 2016.

I guess I found a way that will pretty much allow for anything.

1. Boxes will have 7 levels - the type of opponents and the percentage of hero's fighthing value he will face, as well as the quality of the neutral hero will be influenced by these levels.
The frequency of the box levels is:
Level   1 - 10
Level   2 - 6
Level   3 - 3
Levels 5/6 - 2
Level   7 - 1

2. Boxes read the value of the hero's army and provide army based on this. Percentages will rise from 25% or 50% to level 1 to above 100% for the 7th level (I think 300% will do it).

3. Battles are predifined like:
Marksmen, Cruzader, Cruzader, Zealot, Cruzader, Cruzader, Marksmen;
Grand Elf, Silver Pegasus, Silver Pegasus, War Unicorn, Silver Pegasus, Silver Pegasus, Grand Elf;
Etc...

4. Number of opponents per slot is found based on the percentage of the heroes army value atributted to that box and that's all.

5. The hero skills will be on the other hand used to pair the neutral hero. Again here the levels will have a roll:
a) low level boxes will have heroes with the specialty set to +350 gold while level 7 will have random between Offense, Armorer and Resistence.
b) skills and spells will be added just according to box level, so with a level 1 box you maybe fighting 1.000.000 marksmen but the hero will not have Blind, Cure or Dispel and if you attack a level 7 box with one imp the hero will still have summon elementals and high level dammaging spells and you're done.
c) a percentage of the hero's experience will be given to the opposing hero. That percentage will be determined by the box level. Low level boxes heroes will get the remainning slots filled with nothing (scouting, estates, navigation, etc...) so that they can't get too many good skills.

6. The rewards can use the variables found over the fight value for the increases even if that means: the stronger you are the better the rewards.

7. AI will have a separate function giving random rewards between 5 enchanters, 5000 gold, 1 of Attack/Deffense plus a level 2 artifact for levels 5 and 6 and a level 3 for level 7.

I guess this is pretty much systemic and while confusing and laborious as far as I can tell I already know all I need to do it.
Thanks

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


Legendary Hero
posted April 17, 2016 06:00 PM
Edited by bloodsucker at 18:15, 17 Apr 2016.

Ok, I know that my sintaxe sucks but can you please correct this?
I'm not even sure if the math is right and it gives me 1000 errors per line but I would swear I'm using the right operators in the right order.

[Find the army value of the opponents]
!!VRy6&v4>0&y2=1:Sv4%4;
!!VRy6&v4>0&y2=2:Sv4%2;
!!VRy6&v4>0&y2=3:Sv4;
!!VRy6&v4>0&y2=4:Sv4+(v4%4);
!!VRy6&v4>0&y2=5:Sv4+(v4%2);
!!VRy6&v4>0&y2=6:Sv4*2;
!!VRy6&v4>0&y2=7:Sv4*3;

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


Admirable
Omnipresent Hero
Wog refugee
posted April 17, 2016 06:04 PM

!!VRy6&v4>0&y2=1:Sv4%4;
!!VRy6&v4>0&y2=2:Sv4%2;
!!VRy6&v4>0&y2=3:Sv4;
!!VRy6&v4>0&y2=4:Sv4+(v4%4);??? you need a var storing result of v4%4? set it before
!!VRy6&v4>0&y2=5:Sv4+(v4%2); ???
!!VRy6&v4>0&y2=6:Sv4*2;
!!VRy6&v4>0&y2=7:Sv4*3;

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


Legendary Hero
posted April 17, 2016 06:20 PM
Edited by bloodsucker at 20:09, 17 Apr 2016.

Thanks.

Ok, this is what I have till now.
It doesn't give me any errors but the battle stacks aren't filled and by some reason that illudes me, the problem starts with y2 not being charged.

***
ZVSE

!?TM2&$day$=1/$once$=1;
[Searching for objects to replace with TCs type 6]
!!UN:U79/-1/?y-1;
!!VRv1:S-1;
!!DO23154699/1/y-1/7&y-1>0:P79/4;

!!UN:U79/-1/?y-1;
!!VRv1:S-1;
!!DO23154699/1/y-1/7&y-1>0:P79/5;

!!UN:U79/-1/?y-1;
!!VRv1:S-1;
!!DO23154699/1/y-1/5&y-1>0:P79/6;

!!UN:U6/-1/?y-1;
!!VRv1:S-1;
!!DO23154699/1/y-1/1&y-1>0:P6;


[these are the same variables JV uses for TC 5, I saw them used in more then one similar functions
so I'm presuming I can also use them here]
!!UN:U101/6/?v951; [count number of TC6's]
!!VRv952:S-2; [Initialize v952 to last object for faster UN:U format]
!!DO23154698/1/v951/1&y3=1/v951>0:P6; [do a loop for each object]


!?FU23154699;
[Function to replace the selected objects with TCs 6]
!!UN:Ux1/-1/-1/1;
!!OB1:U?y1;
!!FU&y1<>x2:E;
!!UN:Ov1/v2/v3;
!!UN:Iv1/v2/v3/101/6;

!?FU23154698; x1=TC subtype
[Function to apply fixed values to each box]
!!FU&x1<>6:E; exit if not TC6
!!UN:U101/x1/-2/v952; [get x/y/l of yellow square of object into v952-v954]

[Adjust the frequence of the different levels of boxes]
!!VRy5:S1 R28;
!!VRy2&y5<=10:S1;
!!VRy2&y5>10&y5<=16:S2;
!!VRy2&y5>16&y5&<=20:S3;
!!VRy2&y5>20&y5&<=23:S4;
!!VRy2&y5>23&y5&<=25:S5;
!!VRy2&y5>25&y5&<=27:S6;
!!VRy2&y5=28:S7;

!!IF:M^Y5=%Y5^; TEST
!!IF:M^Y2=%Y2^;

!!VRy3:S1 R6; Selects the types of opponents
!!VRy4:S1 R6; Selects the type of reward

[Identify each box]
!!SN:W^Box_at_%V4_%V5_%V6_Level^/?y2;
!!SN:W^Box_at_%V4_%V5_%V6_Fight^/?y3;
!!SN:W^Box_at_%V4_%V5_%V6_Reward^/?y4;

!?OB101/6&-875;
!!HE-1:N?y1;    get hero number
!!HE-1:P?v7/?v8/?v9;

!!VRv2:C0/0;
!!DO23154688/0/6/1:Py1; get the fight value of player's army
!!SN:W^Box_at_%V4_%V5_%V6_Level^/y2;
!!SN:W^Attacker_Fight_Value^/v4;
!!IF:M^Y2=%Y2^;     TEST
!!IF:M^V4=%V4^;

[Find the army value of the opponents]
!!VRy6&v4>0&y2=1:Sv4%4;
!!VRy7&v4>0&y2=1:Sv4%4;
!!VRy6&v4>0&y2=2:Sv4%2;
!!VRy8&v4>0&y2=2:Sv4%2;
!!VRy6&v4>0&y2=3:Sv4;
!!VRy6&v4>0&y2=4:Sv4+y7;
!!VRy6&v4>0&y2=5:Sv4+y8;
!!VRy6&v4>0&y2=6:Sv4*2;
!!VRy6&v4>0&y2=7:Sv4*3;
!!IF:M^Y6=%Y6^;

[Test]
!!VRy9:Sy6%115;
!!IF:M^Y9=%Y9^;
!!HE-1:Tv7/v8/v9/3/y9;

!?FU23154688;
!!HEx1:C0/x16/?y1/?y2;
!!FU&y1<0:E;
!!MA:Fy1/?y3;
!!VRv3:Sy3*y2;
!!VRv4:Sv4+v3;
!!SN:W^Attacker_Fight_Value^/?v4;

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


Admirable
Omnipresent Hero
Wog refugee
posted April 17, 2016 08:38 PM

What this mathematical operation, %, means for you?

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


Legendary Hero
posted April 17, 2016 08:44 PM
Edited by bloodsucker at 20:52, 17 Apr 2016.

Modular division, removes the risk of non-integer results when dividing the player's army value by a percentil.
In the test, 115 is the value I got for marksmen, so integer of army value divived by creature value = number of opponents.

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


Admirable
Omnipresent Hero
Wog refugee
posted April 17, 2016 08:51 PM
Edited by Salamandre at 20:53, 17 Apr 2016.

Are you sure this:

!!SN:W^Box_at_%V4_%V5_%V6_Level^/y2;

you maybe wanted to ask value?

!!SN:W^Box_at_%V4_%V5_%V6_Level^/?y2;

Then if you want divide first, use :

Example
!!VRv4::2; v4 divided by 2.

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


Legendary Hero
posted April 17, 2016 08:53 PM
Edited by bloodsucker at 21:26, 17 Apr 2016.

No, the value is not knowed inside the object, so I'm charging it.

!!VRv4::2; v4 divided by 2

Is this still modular? Cause I think the division can result in a fractional number.

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


Admirable
Omnipresent Hero
Wog refugee
posted April 17, 2016 09:06 PM

it is never fractional in erm, it rounds to the highest value.

 Send Instant Message | Send E-Mail | View Profile | Quote Reply | Link
Jump To: « Prev Thread . . . Next Thread » This Popular Thread is 390 pages long: 1 50 100 150 200 250 ... 300 301 302 303 304 ... 350 390 · «PREV / NEXT»
Post New Poll    Post New Topic    Post New Reply

Page compiled in 0.0956 seconds