Current time: 25.11.2024, 12:55 Hello There, Guest! (LoginRegister)
Language: english | russian  

Post Reply 
Threaded Mode | Linear Mode
ERA III
Author Message
Archer30 Offline
Moderators

Posts: 1175
Post: #1786

daemon_n, thanks. Didn't realise it was from HD Unsure


Latest ERA mods and scripts in development - My GitHub
28.08.2021 18:43
Find all posts by this user Quote this message in a reply
Valery Offline

Posts: 2196
Post: #1787

Hi,

I saw there are new opportunities to display pics while creating dialogs with choices, like IF:G, can you point me please to some manual about?
31.08.2021 22:19
Find all posts by this user Quote this message in a reply
daemon_n Offline
Administrators

Posts: 4343
Post: #1788

Valery, that is just intext game resources' displaying support

IF:M^{~>myDef.def:0:5}^; 0 is cadre group, 5 - is cadre number (starts from 0)
IF:M^{~>myPcx.pcx}^; just pcxAb not sure, it was made for pcx 102

Quote:[+] Added support for displaying inline def-images right in texts as a part of Era Markup Language (EML).

    To embed image in text use the following tags:
    {~>def_name.def} Will display the first frame from the first group of def_name.def image in place of text cursor.
    {~>def_name.def:frame_index} Will display specified frame from the first group of def_name.def image or nothing if index is invalid.
    {~>def_name.def:group_index:frame_index} Will display specified frame from specified group of def_name.def image or nothing if index is invalid.

    Frames and frame groups are counted from 0. Frames are automatically trimmed.
    By default images are rendered "inline". It means, that they are treated as non-wrapping sequence of white space characters. Images do not allocate
    vertical space except the height of current font. But they automatically allocate necessary width.

    Images can be aligned vertically using the following attribute: valign=top|middle|bottom.
    Examples:
    {~>ava0037.def valign=bottom}
    {~>smalres.def:5}

    Vertical alignment modes:
    - 'top'. Image is drawn from the top left pixel of current character box.
    - 'middle'. Image is vertically centered relative to current text line height. This is the default mode for inline images.
    - 'bottom'. Image is drawn so, that it's bottom edge matches current text line bottom edge.

about RADIO settings: (Click to View)


Image: widget.png?style=banner2

Новейший Heroes Launcher
31.08.2021 22:57
Visit this user's website Find all posts by this user Quote this message in a reply
Berserker Offline
Administrators

Posts: 16657
Post: #1789

Additional interesting parts from manual:
Code:
[+] Added possibility to use animated defs in DL-dialogs. Just append " animated" to dialog item name to make it animated. Example: "Def" => "Def animated".
    Up to 10 animated defs are supported for each dialog. Animation speed is 10 frames per second. One single DEF group of frames is used.

[+] Added possibility to specify frames group index for defs in DL-dialogs. Write frame index as GROUP_INDEX * 100000 + FRAME_INDEX. Group indexes are counted from 0.

[+] Implemented horizontal text alignment support in Era Markup Language (EML).

  To specify alignment use either regular color tags with new align=xxx attribute or new tag "text".
  Possible alignment values: "left", "center", "right".

  Examples:

  {~RosyBrown align=right}Some text with(out) images{~}
  {~text align=center}Some text with(out) images{~}
  {~RosyBrown align="left"}Some text with(out) images{~}
  {~text color="RosyBrown" align="left"}Some text with(out) images{~}

  Attribute values without spaces and special chars may be written without double quotes.

[+] Implemented block-style images support for Era Markup Language (EML).

  Use "block" attribute to mark image in text as block-style. New line before and after image will be forced automatically.
  Vertical space in text is also automatically reserved for block images. Moreover, they can be partially scrolled without vanishing effect, occuring for inline images.

  Examples:

  !!IF:M^{~text align=center}{~Orange}Fire camping{~}

  ----
  {~>CDEVIL.def:0:0 valign="middle" block}
  ----

  {~>cndrgn.def:12:2 block}{~}^;

[+] Added support for 65536-color pcx images (pcx16) in DL-dialogs. Default loading mode is 256 colors (pcx8). To load image as pcx16 change its name in dialogs editor to '****.pcx.pcx16'. Real file name in lod/pac archive should be left as is. The engine will recognise new extension, transform it into '.pcx' and load image as pcx16.


Скачать Герои 3 Эра и всё, что с ней связано / ERA 2.46f для старых модов
Поддержать проект
31.08.2021 23:45
Find all posts by this user Quote this message in a reply
Valery Offline

Posts: 2196
Post: #1790

wow 36

Thanks, now I am lost with the ton of information. Can you give me a short example, following a script I used in Era 2, please? So I can see the new pattern without converting to bits


How would look adding any pcx or def to a single of those options? 119
01.09.2021 00:08
Find all posts by this user Quote this message in a reply
Berserker Offline
Administrators

Posts: 16657
Post: #1791


=>



Image: image.png


Скачать Герои 3 Эра и всё, что с ней связано / ERA 2.46f для старых модов
Поддержать проект
01.09.2021 00:51
Find all posts by this user Quote this message in a reply
Valery Offline

Posts: 2196
Post: #1792

Thanks, but how do I place a big def as header and below the option?

As this, empty z var?

!!VRz3&v9222<99:S^{~>smalres.def:%(RES_ORE)}^;

or simply like in your first example?

IF:M^{~>myDef.def:0:5}^;

Because I want the def to display in a IF:G dialog. Also animated defs display only in DL dialog?
(This post was last modified: 01.09.2021 01:26 by Valery.)
01.09.2021 01:23
Find all posts by this user Quote this message in a reply
Berserker Offline
Administrators

Posts: 16657
Post: #1793

Animated defs are supported in DL-dialogs, right, though simple animated def-dialog is on approach.

You can use {~>} tags anywhere in text, though there is not so much space for images in IF:G boxes.


Скачать Герои 3 Эра и всё, что с ней связано / ERA 2.46f для старых модов
Поддержать проект
01.09.2021 01:54
Find all posts by this user Quote this message in a reply
Archer30 Offline
Moderators

Posts: 1175
Post: #1794

An idea of ERA + BattleReplay improvement.

How about storing every single global vars at OnBeforeBattle and restore all of them at OnBattleReplay? With this mod makers don't have to do it manually. Scripting is much easier Unsure


Latest ERA mods and scripts in development - My GitHub
(This post was last modified: 04.09.2021 09:51 by Archer30.)
04.09.2021 09:51
Find all posts by this user Quote this message in a reply
Berserker Offline
Administrators

Posts: 16657
Post: #1795

Archer30, this feature may double memory requirements (let say, +200-400 MB), may create battle start delays and will not be universal anyway, because it will not touch the memory of Lua/C++/Delphi plugins. Moreover, there maybe trigger-local arrays and temporary ERT-variables, which are harder to save restore.

How many scripts do you have to adapt and how many variables to save/restore?


Скачать Герои 3 Эра и всё, что с ней связано / ERA 2.46f для старых модов
Поддержать проект
04.09.2021 16:11
Find all posts by this user Quote this message in a reply
Archer30 Offline
Moderators

Posts: 1175
Post: #1796

Hmm. I have to save and restore a lot. Haven't count yet

Recently, I become a co-author of the Chinese mod "Fengmo", implementating modern support to the ancient project. The amout of features of the mod is about 2 times TUM + ACM. I have to dig deep to figure out many variables. That's inefficient.

But I understand your concern. Not all players have modern PCs. That makes sense to keep it the current way


Latest ERA mods and scripts in development - My GitHub
(This post was last modified: 04.09.2021 17:11 by Archer30.)
04.09.2021 17:08
Find all posts by this user Quote this message in a reply
Berserker Offline
Administrators

Posts: 16657
Post: #1797

Archer30, if we save all the memory just before OnBeforeBattleUniversal event, we will lose all changes in memory, made by scripts in this event. OnBattleReplay will restore variables to the state even before attempt to initiate battle. To my mind the whole replay feature can never support arbitrary scripts and mods even in theory. Full save and load is the most stable way.


Скачать Герои 3 Эра и всё, что с ней связано / ERA 2.46f для старых модов
Поддержать проект
04.09.2021 17:30
Find all posts by this user Quote this message in a reply
Archer30 Offline
Moderators

Posts: 1175
Post: #1798

Berserker, Right, I get the idea.

Looks like the issue with HE:F 1 is non-stopped...I suppose the receiver should be banned or improved.

Crashes happened with 39 hero spec boost script on leveling up.
Two reports

The most tricky part is, I couldn't reproduce the problem a few hours ago. Until now it's 100% reproduciable. Sent the save to daemon, he can't reproduce no matter what.

Any idea? 112

I start to figure out an alternative way here.


Latest ERA mods and scripts in development - My GitHub
(This post was last modified: 04.09.2021 18:58 by Archer30.)
04.09.2021 18:58
Find all posts by this user Quote this message in a reply
V_Maiko Offline

Posts: 610
Post: #1799

Berserker, Do you think that virtual technology will ever exist that is capable of reversing in time the events caused? Sort of like a save/load state in emulators, but full scale in OS. Sorry, I was curious as for now it is impossible to make a completely faithful rollback of heavily scripted battles.
96-copy
(This post was last modified: 04.09.2021 19:03 by V_Maiko.)
04.09.2021 19:01
Find all posts by this user Quote this message in a reply
Berserker Offline
Administrators

Posts: 16657
Post: #1800

Archer30, your solution is ok, fixed it a bit (don't forget to add prefixes to functions).
From my researches all crashes with HE:F were produced either by artifacts plugins or by attempt to make some artifacts combo-arts or non-commander arts.

V_Maiko, that's not possible ) Not all computations can be reversed. Take integer division operation as an example.

21 : 5 = 4.
When we have 4 as result, we cannot reverse operation by 4 * 5 = 20.


Скачать Герои 3 Эра и всё, что с ней связано / ERA 2.46f для старых модов
Поддержать проект
04.09.2021 23:10
Find all posts by this user Quote this message in a reply
« Next Oldest | Next Newest »
Post Reply 


Forum Jump:

Powered by MyBB Copyright © 2002-2024 MyBB Group