Skip to content

Releases: Lehona/LeGo

LeGo 2.8.0

24 Apr 15:56
Compare
Choose a tag to compare
  • Add convenient way for save/load-persistent strings and floats: PM_BindString and PM_BindFloat, analogously: PM_BindInt
  • Double the amount of possible handles to 4294967295
  • Provide self in AI-functions
  • Add more AI-functions for instances
  • Allow to now hook external engine functions
  • Support function arguments/return values for engine hooks
  • Escape/unescape extended ASCII characters
  • Allow manual hiding of Bars
  • Set alpha values properly for both views of Bars
  • Fix negative protection values after Trialog
  • Increase compatibility of hooks
  • Fix View_Open when called every frame
  • Check handle validity in Talents
  • Simplify HookDaedalus and move local jumps safely
  • Fix memory leak in PermMem
  • Clean up data stack in between FrameFunction calls to avoid stack overflow
  • Remove warning during PM_Reset
  • Remove obsolete safety check in Anim8
  • Do not create talent when merely checking for a buff
  • Do not create buff list when not desired (Buffs_DisplayForHero == False)

When updating from a previous version, please take note of the commit message aeea75a.

LeGo 2.7.1

19 Jun 15:52
Compare
Choose a tag to compare

Hotfix to remember the last screen resolution across saves for updating the bars.

LeGo 2.7.0

19 Jun 15:07
Compare
Choose a tag to compare
  • Auto-update bars with screen resolution
  • Auto-hide bars in menus and dialogs (following playerstatus)
  • Add function Bar_Resize to resize existing bars
  • Add pixel-based equivalents Bar_MoveToPxl and Bar_ResizePxl
  • Add GameTimer-based equivalent FF_ApplyOnceGT
  • Improve initialization for mods that add LeGo later on, i.e. not with a new game
  • Improve virtual-pixel conversion accuracy, i.e. Print_ToVirtual and Print_ToPixel are now more accurate
  • Fix crash on loading unknown classes, instances and functions in PermMem (classes/instances are skipped, functions are replaced with empty ones)
  • Fix potential data stack corruption by checking the return type of ForEachHandle callbacks
  • Fix potential data stack corruption in _Buff_check and _Anim8_Loop
  • Fix crash after deleting Buffs, Buttons and Anim8 objects during their respective foreach-loops
  • Fix deletion of Anim8 objects (delete leftover A8Commands when deleting their parent A8Head)
  • Fix initialization of Trialoge by adding LeGo_AI_Function dependency (thanks to LootaBox)
  • Fix swapping of NPC visuals in Trialoge (thanks to Marek and Umfi)
  • Fix visual bug with Buff_ApplyOrRefresh
  • Fix potential bug in Buff_Has
  • Fix on_leave function call in Button_Deactivate by pushing missing function argument
  • Remove Buttons array and make Buttons handling foreach-based (thanks to blood4ng3l)

LeGo 2.6.0

24 Jun 14:56
Compare
Choose a tag to compare
  • Buffs on the Hero now fade out visually over time. This behaviour can be deactivated in Userconst.d. It may impact performance.
  • Buffs are now hidden when the player interface is hidden, e.g. in dialogs.
  • Anim8 now uses the ingame timer, i.e. it's paused when a menu is open.
  • Added functions to change the individual texture of bars (Thanks to KarolWojtasiuk)
  • Added Q_Peek(queue), to peek at the next element of a queue
  • Added some miscellaneous functions, trigonometry related
  • Fixed an issue with FFs if they had their delay set to 0 and were using the ingame timer.
  • Fixed oCNpc_RemoveFromSlot for Gothic 1
  • Fixed a crash in Render.d (Thanks to bogu9821)

LeGo 2.5.1

09 Jan 21:45
Compare
Choose a tag to compare
  • PermMem: Critical fix in quick saves for correct loading of handles
  • TimerGT: New timer that only runs during the game and is paused when any menu is open
  • FrameFunctions: New functions for the TimerGT, new function for removing all FF that point to a specific function (thanks to the Dirty Swamp mod team!)
  • Buffs + Anim8: Now use the TimerGT
  • Buffs: New constant (Buffs_DisplayForHero) in UserConst.d that allows showing or hiding icons for the player
  • Anim8: Small fixes and a new on-remove-function that acts like a destructor for anim8 objects
  • Talents: Npc_FindByID now returns 0 if no NPC was found
  • Buttons: Button_Move is now fixed
  • DialogGestures: Fix for resetting animations
  • HookEngine: Data stack is now cleared in-between function calls
  • Talents: Talents arrays won't be automatically created anymore when simply checking for it with TAL_GetValue
  • Interface: Simplifying the PrintScreen-Fix (was very slow when using PrintScreen a lot)
  • HookDaedalus: NEW! See wiki (German language only).
  • Bloodsplats: Damage perceptions will no longer be overwritten, s.t. you may register your own damage perception functions along side the Bloodsplats
  • ConsoleCommands: When entering LeGo into the game console (given the ConsoleCommands package is initialized) the LeGo version as well as all active LeGo flags will be returned in human-readable format. This information is also sent to the zSpy on initialization of LeGo (screenshot).
  • Separate G1 and G2 header files (more information below)

To simplify the installation of LeGo, there are now separate SRC files for Gothic 1 and Gothic 2: Header_G1.src and Header_G2.src, respectively. When updating to this version, remember to update the respective entry in your Gothic.src.

Unfortunately, the package "Buffs" has not been promoted out of its experimental state. We appreciate any feedback from people who are already using it!

LeGo 2.5.0

14 Dec 22:09
Compare
Choose a tag to compare
  • Gothic 1 support (except for experimental packages)
  • Hooks have been reworked (allow recursive hooks, backup global instances and secure data stack)
  • Draw3D, see wiki (German language only)
  • ConsoleCommands are no longer written to game saves, but kept for the duration of the session
  • It can now be checked whether hooks are active (and they may be removed, not recommended)
  • New functions to replace and disable engine functions
  • NPCs are no longer stuck after trialogs (thanks to Cryp18Struct)
  • Level change is now correctly detected every time (sure...)
  • New List functions (List_AddFront*)
  • New View function (View_AddTextColored)
  • Minor fixes on Anim8, Bloodspats, Interface, zCViewText and arrays

Because of the Gothc 1 compatibility, the files EngineAdr_G1.d or EngineAdr_G2.d now need to be removed when installing LeGo for Gothic 2 or Gothic 1, respectively. There is an attempt to warn users when they forget to do this, but there's not much we can do in terms of error messages.

LeGo 2.4.0

14 Dec 22:08
Compare
Choose a tag to compare
  • The constant LeGo_Version has been updated to reflect the version number (rare enough to be worth a mention!)
  • Various "magic numbers" have been moved to EngineAdr.d
  • Fixed two warnings that would pop up during save/load
  • Minor changes to increase portability to G1
  • ConsoleCommands! See wiki

Buffs and Render still experimental.

LeGo 2.3.7

14 Dec 22:08
Compare
Choose a tag to compare
v2.3.7

LeGo 2.3.7

LeGo 2.3.6

14 Dec 22:07
Compare
Choose a tag to compare
  • Fixed an error that prevented parsing in Names.d
  • Fixed a bug concerning initialization order (happened if you never created a handle during startup)
  • Fixed a small bug in View.d (thanks to mud-freak)
  • Changed MEM_SetUseInstance() to expect a zCPar_Symbol* instead of a symbolID.

Note: Although I fixed a bug with the buffs, both Buffs.d and Render.d are not yet included in LeGo_All.

LeGo 2.3.5

14 Dec 22:06
Compare
Choose a tag to compare
v2.3.5

LeGo 2.3.5