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: Era II
Thread: Era II This Popular Thread is 203 pages long: 1 2 3 4 5 ... 40 80 120 160 ... 199 200 201 202 203 · «PREV / NEXT»
xericsin
xericsin


Famous Hero
posted January 26, 2020 07:00 AM

Bersy said:
Are you sure? BM:S simply return value from monster structure. It includes any spell effect, it's final value.




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


Honorable
Supreme Hero
posted January 26, 2020 11:26 AM

Thanks, marked in todo to look at.

test update

[+] SN and RD receivers syntax was improved. Now any command can use string concatenation (like d&z2),
   integer modification (like d*5), SN:W string variable in the form of [?]s^var name^, SN:W integer
   variable in the form of [?]i^var name^.

[+] Added support for SN:W variables interpolation inside ^...^. %S(var_name) for string values, %I(var_name)
   for integer values. The total length of interpolated string must not exceed 1 MB.
____________
Heroes 3 Era and everything for it. Releases folder for releases.

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


Honorable
Supreme Hero
posted January 27, 2020 01:42 AM

xericsin, Era 2.9.6 will be released today, I hope.

[+] Added new ERM command BM:U6/?$, returning stack actual speed, including slow spell effect.
   Note, BM:S always returns speed without slow spell effect.
____________
Heroes 3 Era and everything for it. Releases folder for releases.

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


Famous Hero
posted January 27, 2020 07:38 AM

Bersy said:
xericsin, Era 2.9.6 will be released today, I hope.

[+] Added new ERM command BM:U6/?$, returning stack actual speed, including slow spell effect.
   Note, BM:S always returns speed without slow spell effect.


Great!

And can you show some examples of the new SN:W syntax?

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


Honorable
Supreme Hero
posted January 27, 2020 01:02 PM

Just tests:

!!SN:W^name^/^bers^ W^hero^/^mighty ^ W^hero^/d&s^name^ W^hero^/?z2;
!!IF:M^%Z2^;
!!SN:W^sum^/5 W^sum^/d*i^sum^ W^sum^/?y2;
!!IF:M^%Y2^;
!!SN:M0/1/0/0 M0/d*3 M0/2/i^sum^ M0/2/?y2;
!!IF:M^%Y2^;
!!IF:M^%S(hero) %S(name) %I(sum) Percent: %%. You have %I(gold) gold %S %S(name^;

d+, d-, d*, d:, d& (string concatenation)
s^var name^, i^var name^, ?s^var name^, ?i^var name^, %S(var name), %I(var name)

____________
Heroes 3 Era and everything for it. Releases folder for releases.

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


Honorable
Supreme Hero
posted January 27, 2020 07:57 PM
Edited by Bersy at 19:59, 27 Jan 2020.



Version 2.9.6

[+] SN and RD receivers syntax was improved. Now any command can use string concatenation (like d&z2),
   integer modification (like d*5), SN:W string variable in the form of [?]s^var name^, SN:W integer
   variable in the form of [?]i^var name^.

   Examples:
   - Concatenate string with existing variable and display result.
   !!SN:W^report^/^Today we met a few strangers. They were^;
   !!SN:W^report^/d&^ orcs^;
   !!IF:M^%S(report)^; Today we met a few strangers. They were orcs

   - Get current MP3 theme into named variable
   !!MP:C?s^theme^;
   !!IF:M^Current theme is %S(theme)^;

   - Multiply number of creatures in the first slot of recruit dialog by 10 and display it
   !!RD:C0/?t/d*10; type not changed, number multiplied by 10
   !!RD:C0/?t/?i^numMons^;
   !!IF:M^There are %I(numMons) creatures to hire^;

[+] Added support for SN:W variables interpolation inside ^...^. %S(var_name) for string values, %I(var_name)
   for integer values. The total length of interpolated string must not exceed 1 MB.

[+] Replaced Heroes 3 random generator routine with world-wide known Mersenne Twister, generating
   qualitative uniformly distributed sequences with huge periods.

[+] Added new ERM command BM:U6/?$, returning stack actual speed, including slow spell effect.
   Note, BM:S always returns speed without slow spell effect.

[*] VR:T is deprecated and is equal to VR:R now. To get current time in milliseconds the following code can be used:
   !!UN:C6529876/4/?t; t = timeGetTime function address
   !!SN:Et/1;          v1 = result
   Use VR:R0/#new_seed to reseed random number generator.

Download
____________
Heroes 3 Era and everything for it. Releases folder for releases.

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


Hired Hero
posted January 27, 2020 09:13 PM

Bersy said:


Version 2.9.6

[+] SN and RD receivers syntax was improved. Now any command can use string concatenation (like d&z2),
   integer modification (like d*5), SN:W string variable in the form of [?]s^var name^, SN:W integer
   variable in the form of [?]i^var name^.

   Examples:
   - Concatenate string with existing variable and display result.
   !!SN:W^report^/^Today we met a few strangers. They were^;
   !!SN:W^report^/d&^ orcs^;
   !!IF:M^%S(report)^; Today we met a few strangers. They were orcs

   - Get current MP3 theme into named variable
   !!MP:C?s^theme^;
   !!IF:M^Current theme is %S(theme)^;

   - Multiply number of creatures in the first slot of recruit dialog by 10 and display it
   !!RD:C0/?t/d*10; type not changed, number multiplied by 10
   !!RD:C0/?t/?i^numMons^;
   !!IF:M^There are %I(numMons) creatures to hire^;

[+] Added support for SN:W variables interpolation inside ^...^. %S(var_name) for string values, %I(var_name)
   for integer values. The total length of interpolated string must not exceed 1 MB.

[+] Replaced Heroes 3 random generator routine with world-wide known Mersenne Twister, generating
   qualitative uniformly distributed sequences with huge periods.

[+] Added new ERM command BM:U6/?$, returning stack actual speed, including slow spell effect.
   Note, BM:S always returns speed without slow spell effect.

[*] VR:T is deprecated and is equal to VR:R now. To get current time in milliseconds the following code can be used:
   !!UN:C6529876/4/?t; t = timeGetTime function address
   !!SN:Et/1;          v1 = result
   Use VR:R0/#new_seed to reseed random number generator.

Download


I guess this completely renders y-vars useless :) Finally ERM can be used in the same way as all other languages!! Good job!
____________
"If you get scared of doing what's right you might as well lay down and die" - Wulfstan, Heroes of Might and Magic V: Hammers of Fate

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


Honorable
Supreme Hero
posted January 27, 2020 11:20 PM

Only with RD, SN and MP receivers and not in conditions. Thus other variables will be always alive.
____________
Heroes 3 Era and everything for it. Releases folder for releases.

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


Honorable
Supreme Hero
posted January 31, 2020 09:48 PM



Version 2.9.7

[+] Added possibility to query function arguments count for functions, called via FU:P, FU:D, DO:P.
   New command !!FU:A?$ returns number of x-arguments (not including x16 for DO:P), received by function.
   This mechanism allows to write functions with optional parameters (parameters with default values) and
   functions with variadic arguments number.

   Example 1:
   !?FU(KillHero);
   ; Kills specified hero. Demonstration of optional parameters.
   ; [x1] - hero ID. Optional. -1 by default
   !!FU:A?k;       get number of function arguments
   !!VRx1&k=0:S-1; set x1 to -1, if no arguments passed
   !!HEx1:K;       killed hero

   !?CM0;
   !!FU(KillHero):P; kill current hero
   !!FU(KillHero):P155; kill Xeron

   Example 2:
   !?FU(sum);
   ; Calculates sum of all passed arguments.
   ; x1..x[n] - arguments to sum
   ; x[n+1] - result
   !!FU:A?k;  count function arguments
   !!VRxk:S0; set result to 0

   !!VRi:S0;
   !!SN&i>=k:G[end-for]; repeat k times
   [:for]
   !!VRxk:+xi; add next argument value to result
   !!VRi:+1;
   !!SN:G[for];
   [:end-for]

   !?CM0;
   !!FU(sum):P100/200/300/400/?s; get 100 + 200 + 300 + 400 into "s" quickvar
   !!IF:M^%Vs^; displays "1000"

[+] VR:C now supports v, y, x and w-variables.
[+] Improved MR:N and OnBattleRegeneratePhase:x1. Now stack ID is returned more accuratly. Thanks to Heromant.
[+] Small improvements of ERM Editor. Better 'for'-loop snippet, syntax fixes, 'iff' for !!IF, etc.

[*] Map resources, like ERM or Lua scripts were previously located in Maps/[MapName] directories. In order
   to support HD-mod maps grouping into folders, the location was changed to Maps/Resources/[MapName].

[-] Fixed wrong/unstable round, used by WoG for creature autosummoning via creature experience system.
[-] Fixed bug: w-variables in SN/MP/RD were always related to current hero.
[-] VR:R will no more crash on invalid value.

Download
____________
Heroes 3 Era and everything for it. Releases folder for releases.

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


Admirable
Omnipresent Hero
Wog refugee
posted February 02, 2020 01:25 PM

zmudziak22 said:
Valery, seers uncovered doesnt work with era 2.9 versions. It has problem ERA API(error says it need era 2.46 to work).


Bersy, can you please look into?

Seer hut mod

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


Hired Hero
posted February 02, 2020 05:40 PM

As far as i can see Pandora's API destinations are changed by latest era.
First occasion is related to (AdvErm.Pas)

// Use direct handler address from Cmd.Params[15] instead of linear scanning
Core.p.WriteDataPatch(Ptr($7493A3),
...

Somewhere at that address Pandora make compare that are not same as 2.7.4 verson.
Probably other locations are problematic too.

By quick look that seems hard to fix up
Good thing is that there is no lot code in Pandora.

We will see what Bersy has to say

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


Honorable
Supreme Hero
posted February 03, 2020 12:08 AM

Yes, new receivers by gamecreator should be rewritten a bit, but the author has gone away. Now Era provides function RegisterErmReceiver similar to the one, written by plugin author.

I have latest sources of pandora:
https://dropmefiles.com/66O36

But it seems, that gamecreator forgot to put pandora api main file inside. Of course, we could try to modify compiled Pandora's API.era library. Thus the task is solvable, but requires effort )
____________
Heroes 3 Era and everything for it. Releases folder for releases.

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


Admirable
Omnipresent Hero
Wog refugee
posted February 03, 2020 12:17 AM

To say the truth, that was my first mod to use in my everyday list, it makes navigating through large maps so easy and clear. Would be a pity to have it disabled by new versions

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


Admirable
Omnipresent Hero
Wog refugee
posted February 03, 2020 03:59 AM

Also, in my opinion, why not set a definitive Era II version (2.8?) in which all written mods work without errors, and from there start Era III, where you can add all the changes you want, without carrying about breaking compatibility with the 150 existing mods?

Because as I see now, compatibility error reports are coming in increasing rate, then what about mods whose authors are gone or inactive, who checks for them still working? Something is wrong here.

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


Hired Hero
posted February 03, 2020 08:45 AM

Salamandre said:
Also, in my opinion, why not set a definitive Era II version (2.8?) ...
isn't version 2.47.9 already serving such a purpose?
apart from the fact that it is not very well known as such

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


Promising
Famous Hero
Researching Magic
posted February 03, 2020 10:06 AM
Edited by RerryR at 10:12, 03 Feb 2020.

Given the number of new features in the current ERA releases, it would definitely be justifiable calling it ERA III.

From my experience the 2.88 was stable.
It is likely that some error reports came from ERA releases 2.9X which still had little issues, that are now maybe fixed. Overall I don't think the situation with mods is bad currently, most do work. Of course not every player updates constantly.  

It is important that people test the new releases to find bugs because there will always be some, that is just how it is with every new release of any mod and part of the evolution process of a software. Nobody can do the testing alone. Not sure the testing would happen to the same extent if there was a ERA III Beta.

Let us see what Berserker still has in the stores for us in the future


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


Admirable
Omnipresent Hero
Wog refugee
posted February 03, 2020 10:55 AM
Edited by Salamandre at 10:58, 03 Feb 2020.

I disagree, when you already have 150 mods done and not a single one new in the work, you prioritize the compatibility. I already had to rework syntax to all interface  mods because they stopped reading the ini, then all my maps stopped working because the hook was now shipped with new era so conflict (I still didn't update the packages, no time so they still not working), then fortunately someone reported the BA trigger being broken, then now API, it clearly shows that it needs serious testing, who will do?
Not me, I am out of business.
____________
Era II mods and utilities

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


Honorable
Supreme Hero
posted February 03, 2020 11:49 AM

Salamandre, 2.8.8 is the one, people need for old mods.

1) Leading slash in path was interpreted as path relative to game directory in previous Era VFS implementation, which was a bug. The right way for Windows is ".\relative path" or simple "relative path". '\x' is expanded by OS to "C:\x" or "D:\x". That's not my fault, bugs may be fixed some day.

2) gamecreator's plugin is a plugin without full source code. It's normal to be incompatible with engine, when engine evolves. Fortunately, gamecreator left sources for most parts of the code and wrote it in high level style, so there can be written a fix.

3) Era 2.9 improved ERM engine. 10x-15x speed increase for loops, higher-level constructions like !!re/!!br, fixed bugs with condition evaluation, added means for advanced functions, etc. It's the last branch, where ERM is developed.

Look, if no one plays and thus test new versions, no new versions appear and modding/community dies. For those, who prefer something old and stable there is always current - 1 branch. 2.8.8, for instance.
____________
Heroes 3 Era and everything for it. Releases folder for releases.

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


Honorable
Supreme Hero
posted February 03, 2020 04:56 PM

I finally managed to port Pandora's API dll to era 2.9.8. It will be included in the main Era release and thus players will have to remove the copy from Seer Huts mod.
____________
Heroes 3 Era and everything for it. Releases folder for releases.

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


Promising
Famous Hero
Researching Magic
posted February 03, 2020 05:54 PM

By the way what actually is "Pandora's API" and what can I do with it? Is it about the boxes or something completely different ^^?

 Send Instant Message | Send E-Mail | View Profile | Quote Reply | Link
Jump To: « Prev Thread . . . Next Thread » This Popular Thread is 203 pages long: 1 2 3 4 5 ... 40 80 120 160 ... 199 200 201 202 203 · «PREV / NEXT»
Post New Poll    Post New Topic    Post New Reply

Page compiled in 0.2472 seconds