Wake of Gods Forum | Форум Во Имя Богов

Full Version: ERA III
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
daemon_n, thanks. Didn't realise it was from HD Unsure
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?
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)
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.
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

=>



Image: image.png
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?
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.
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
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?
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
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.
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.
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
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.
Reference URL's