www.tombraiderforums.com

www.tombraiderforums.com (https://www.tombraiderforums.com/index.php)
-   Next Generation Level Editor (https://www.tombraiderforums.com/forumdisplay.php?f=40)
-   -   AkyVís released plugins (https://www.tombraiderforums.com/showthread.php?t=219148)

YumaS2Astral 10-08-22 01:18

Quote:

Originally Posted by AkyV (Post 8340976)
You are right, you need to export plugin triggers from NGLE, and then you can place them in TriggerGroup script commands in TombIDE, and then you place triggers for TriggerGroups (eg. F118) down in Tomb Editor to execute the triggers in that TriggerGroup.

For the other thing:
Plugin triggers exported are longer than classic TRNG triggers exported.
I mean, you can see that plugin triggers are starting with the numbers of 01, 02, 03 etc. which classic TRNG triggers can't have.
You need a Plugin script command for that plugin installed in TombIDE. Check the ID in the Plugin command. Eg. if that ID is 1, then that number in your plugin trigger must be 01, not 02, not 03 etc.


(I could tell more about it, but perhaps that would be too much to a newbie. :) )

Your message has saved my life!

When I was trying to implement Akya's plugins on my level, they wouldn't work at all, and I wouldn't understand why. I have done everything right, from creating the appropriate trigger using normal NGLE, to exporting to TombIDE, etc. Turns out that this was the particular issue that was preventing them from working. I was already suspecting that it had to do with the plugin script commands, but it never ocurred to me that I had to match the plugin script command IDs with the starting numbers of the triggers themselves, depending of where they came.

AkyV 10-08-22 19:28

You are welcome. :)

Teone 05-11-22 08:39

Hello, I want to report a possible bug in Plugin_AkyVMix02

Playing The Witch's Tea Party by Klona and trying to load savegames created by other users, my game crashes to desktop, and in the log I read the reason of the crash is Plugin_AkyVMix02
We all play the same game version because it was never updated (yet)

This is the log:

Code:

Version=1.3.0.7
Date: 2 June 2021  (11:0:34)  Size=2760704 bytes
CRS=Disabled
Last diagnostic mexage:ERROR: Get(GET_ITEM) invalid item index (2606), outside of valid range 0 - 128
Last directX error:

MEMORY CODE MAPPING:

BASE    START    END      ID  PluginName            (PluginVersion - TrngVersion)
--------------------------------------------------------------------------------------
10000000 10001000 1014A000  0  Tomb_NextGeneration    (1.3.0.7 - 1.3.0.7)
72420000 72421000 7243F200  1  Plugin_AkyVMix01      (1.0.0.0 - 1.3.0.7)
72400000 72401000 72408000  2  Plugin_Chronicles      (1.0.0.0 - 1.3.0.0)
723E0000 723E1000 723EA200  3  Plugin_Cranes          (1.0.0.1 - 1.3.0.0)
72390000 72391000 723C6C00  4  Plugin_AkyVMix02      (1.0.0.0 - 1.3.0.7)
72360000 72361000 7237D200  5  Plugin_AkyVMix03      (1.0.0.0 - 1.3.0.7)
72350000 72351000 72355600  6  Plugin_Demibubble      (1.0.0.0 - 1.3.0.0)
72340000 72341000 72345400  7  Plugin_ExtendedSaves  (1.0.0.0 - 1.3.0.0)
72330000 72331000 72334E00  8  Plugin_Animatings      (1.0.0.0 - 1.3.0.0)
722F0000 722F1000 722F6200  9  Plugin_AutomaticFov    (1.1.0.1 - 1.3.0.7)
722E0000 722E1000 722E5C00  10  Plugin_FLEP            (3.0.0.0 - 1.3.0.7)
72270000 72271000 72272800  11  Plugin_Crystals        (1.0.0.0 - 1.3.0.0)
72260000 72261000 72265C00  12  Plugin_Subtitles      (1.0.0.0 - 1.3.0.7)
--------------------------------------------------------------------------------------
............... QUICK DIAGNOSTIC LOG ...............
At moment of crash the program was managing:
....................................................
CRASH REASON: EXCEPTION_ACCESS_VIOLATION
        The thread tried to read from or write to a virtual address for which it does not have the appropriate access.
EXTRA_INFO: VIOLATION ON READ AT OFFSET 0xC
RECOVERABLE : YES
CRASH OFFSET: 0x723A6F07  (Inside offset range of Plugin_AkyVMix02)
REGISTERS:
        EAX=0 
        EBX=4 
        ECX=0 
        EDX=AA0000 
        ESI=4 
        EDI=725C0FA5 
        EBP=BC3FE7C 
        EIP=723A6F07
        ESP=BC3FE48
Stack=0xBC3FE48  pContesto=0xBC3F968  pInfoEccezione=0xBC3F918
PRIMARY_STACK:
ESP=0xBC3FE48
STACK_TRACE:
        0x72438487
        0x100C477B
        0x448B5B
        0x1007502D
        0x100D1A85
        0x100C43D1
        0x4A6FC0
        0x451EF4
        0x451166
        0x475155
        0x49E67C
<CRASH DURING STACK TRACE>
END_STACK_TRACE

SECONDARY_STACK:
ESP=0x19B0DC
STACK_TRACE:
        0x460020
        0x460020
        0x48CC6B
        0x48CACE
END_STACK_TRACE

OTHER_STACK:
ESP=0x118AB150
STACK_TRACE:
<CRASH DURING STACK TRACE>
END_STACK_TRACE


AkyV 05-11-22 12:01

Hello!
Naturally I have not tested this complex environment together ever (not even knowing what the builder does). Naturally the level builder's task is also very hard to make a complex and perfect gameplay beta test with all of these plugins, even with a test team. Plus, I think it is very rare that people test other people's game saves when making a plugin or building a level.
What I am trying to explain now is that there are too many plugins working here at the same time together, it is hard to find the way which is possible with all with them, and which is not. Plus, when you theoretically do that fix successfully however, then there will be another complex plugin pack later in someone else's game, and perhaps that fix will be a bug for them.
In these cases (and not only for this problem, or this plugin) I only hope the level builder will find what goes wrong, and then will build differently, or skip that part.

However, what I can say for "Get(GET_ITEM) invalid item index (2606), outside of valid range 0 - 128" diagnostic message (those detailed reports with entries like "CRASH OFFSET: 0x723A6F07" are useless anyway, no one knows what they mean):

- 2606 is a really big item index. I suspect the builder uses a feature with an object index which should successfully transform that into that 0-128 interval. It is not 2606 everyway, because the game has a different index than the editor, but it also can be really a big one in the editor, it can be too much for that transformation. If the builder updates the game, then I suggest deleting both this object and another (not important) object with a little ID. Place the feature object again, which will be on that lower ID now, and replace the ID in the feature. Now they can place that not important object as well.
- My plugin2 uses changes in saving procedures (that is why perhaps having sometimes some little troubles, in menu trigger feature, with the ring inventory plugin, which naturally also does). I don't know what Plugin_ExtendedSaves does, but I suspect that also has changes in saving procedures, which are not compatible with my plugin when you use a savegame of other people.

Thanks for the report, anyway. :)

klona 05-11-22 12:35

It's very strange as there is no item with the ID 2606 in that specific level where the crash occurs, and that same level does not use anything from AkyVMix02 plugin.

AkyV 05-11-22 16:39

As I said it is not ID 2606, it is the game index, not the editor one.:)
Is this ngle? Because it has a menu like "trep index" where you can identify the game index to the editor one.

If it is not, it is also possible with trng in TE. There are trng flipeffects to transform one ID to the other one, and then display them in a variable, which you can see eg. In Diagnostics text.

Teone 05-11-22 17:33

What puzzle me most is that this crash doesn't occur for some people, despite we play the same game version and we have the same OS. :confused:

justin 06-11-22 01:51

I experienced a different issue with regards to Aky's NVARs. Sometimes when a player shares a savegame, the variables get messed up. No real way to solve it, as Aky mentioned above it's just too many plugins working off of each other.

Either way, it's good for all of us to be aware of these funny limitations :)


All times are GMT. The time now is 20:40.

Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2022, vBulletin Solutions Inc.