Jump to content

critto

Modders
  • Posts

    234
  • Joined

  • Last visited

About critto

Profile Information

  • Gender
    Male

Recent Profile Visitors

The recent visitors block is disabled and is not being shown to other users.

critto's Achievements

  1. Here's arm64 build of the version 2.4-20231231: https://drive.google.com/file/d/1P-8Y-yBmG3Mnqk_8Tcd7Vwugr6cYjX2l/view?usp=sharing
  2. Great I'll subscribe to the repo on github, to try and stay up to date with the new releases.
  3. OK, so l've managed to produce a packaged app that installs and runs well on my system. If someone wants to give this one a go, here's a temporary link: https://drive.google.com/file/d/1zqqK1maA3sRXICmAR5j5kUPD7PsYrGTh/view?usp=drive_link
  4. What does the process entail, exactly?
  5. I've started seeing a similar issue a few months ago after I'd updated to one of the newer packages. The app tries to open but fails silently. Running "open NearInfinity.app" fails silently. Then I've tried to run NearInfinity.app/Contents/MacOS/NearInfinity and got a java exception stack trace, failing to find libharfbuzz. So I installed and symlinked it into the expected location, and now I get the following exception: Exception in thread "main" java.lang.UnsatisfiedLinkError: /Applications/NearInfinity.app/Contents/runtime/Contents/Home/lib/libfontmanager.dylib: dlopen(/Applications/NearInfinity.app/Contents/runtime/Contents/Home/lib/libfontmanager.dylib, 0x0001): Library not loaded: /usr/local/opt/harfbuzz/lib/libharfbuzz.0.dylib Referenced from: <D7FA2D64-D161-374E-A9D5-C5A565497B9F> /Applications/NearInfinity.app/Contents/runtime/Contents/Home/lib/libfontmanager.dylib Reason: tried: '/usr/local/opt/harfbuzz/lib/libharfbuzz.0.dylib' (no such file), '/System/Volumes/Preboot/Cryptexes/OS/usr/local/opt/harfbuzz/lib/libharfbuzz.0.dylib' (no such file), '/usr/local/opt/harfbuzz/lib/libharfbuzz.0.dylib' (no such file), '/usr/local/lib/libharfbuzz.0.dylib' (mach-o file, but is an incompatible architecture (have 'arm64', need 'x86_64')), '/usr/lib/libharfbuzz.0.dylib' (no such file, not in dyld cache) Looks like the end of the road to me. It seems that the current NearInfinity app was built for Intel architecture. Running the jar file directly, however, works perfectly well, so I do that instead as a workaround.
  6. Did I understand correctly that this is an observed and proven behaviour? This explains why people some time report stuff like a portrait icon getting stuck on a character's portrait even if the character saved against the harmful effect. And then you sit and wonder, how did it ever happen.
  7. Hello, everyone. So, I was investigating an observation that a player has made regarding the behaviour of the game (BG2: EE) when multiple copies of the same spell are put into a spell sequencer. For example, Flame Arrow has a damage effect that does half the damage on a successful saving throw. In my tests, I've seen the creature that has been struck with 3xFire Arrow from a sequencer make only one successful saving throw against the first spell (that was shown in the combat log) but get half the damage from all three instances, judging by the numbers. In another test, I've had a sequencer with 3x Polymorph Other hit a creature. Combat log would sometimes show only a single successful saving throw message, and sometimes two. If that happened, none of the spells would affect the creature. So, what is going on here, exactly? My current hypothesis is that the engine rolls a single saving throw during a particular time frame (a round?) and uses the rolled value against all spells that require this particular kind of ST. Any insight? Cheers
  8. feature/v7 is the main branch. But I believe that @SparrowJacek wanted to take a look at it himself first (Jacek, correct me if I'm wrong). But thanks for the offer, if you do find the time to send a MR, we'd appreciate it. No, I'm still doing the primary maintenance and slowly working on v7 whenever I get a minute. But Jacek has been helping out a lot with various new changes to graphics and animations, as well as doing some of his own patches to the main branch and experimenting in separate branches, such as the recent v6.6-beta.
  9. Hi folks. The other replies are correct, it's hardly compatible with anything. Small mods could probably get away with being installed on top of IA, but I'm pretty sure something would become broken or would not work as intended. It might just not be noticeable at first glance. Yeah, it was not tested extensively. People played with it numerous times, but didn't report anything gamebreaking. I guess they did not run into this particular bug. A bit more, actually, but you're not far from the truth Seems like there's an issue with the mail delivery, password recovery isn't the only thing that does not work. The animation thing was an experiment, compatibility wasn't the primary consideration at the moment, but there's no harm in fixing it, I guess. Thanks for pointing that out. As for the overwriting, yes, it's a legacy issue with the mod. Ever since the mod was ported to EE, all of the new changes were mostly done by patching things. Overwriting stuff is a legacy issue, as mentioned above, the one that I am not sure how to fix efficiently. There's too much stuff inside to convert everything by hand, and my attempts to automate the procedure didn't get past the early prototypes. Granted, I didn't try very hard, for there seemed to be little payoff for all the required effort.
  10. Hello, everyone. I've been trying to understand the mechanics of Morale in the game and, hopefully, learn how to manipulate it reliably through scripts and opcodes. Gradual degradation of morale, followed by morale failure, is a cool concept that I haven't seen to be used much in mods, I don't think. Now I am beginning to understand why. Anyhow, here's a simple experiment that I've done. I made a creature that has 15 base morale, morale breakpoint set at 5 and morale recovery at 20, initially. Once the creature's HP is less than 25%, it gets hit with a morale hit of -3 every 6 seconds by timer, using MoraleInc(), through its AI script. This does not seem to produce any effect. I switch from MoraleInc() to force-applying a spell that does essentially the same using the opcode #23 (same params: value of -3 applied in a cumulative fashion, in BG1 mode). The creature suffers morale failure after the first hit of the spell but recovers pretty quickly, in a second or two. I change the value of morale recovery to 100, and the creature now spends maybe a few seconds/rounds in the state of morale failure. After the creature recovers, it does not suffer another morale failure despite numerous consecutive hits with the spell every 6 seconds (I guess there's a built-in immunity to morale break after recovery?) What exactly is happening here? The description of morale recovery in IESDP states that it is time taken to recover morale to its equilibrium value of 10. It is unclear, though, what is the unit of measure. My guess is that it is not seconds (as it says in IESDP) but rather AI updates? Still, doesn't feel right. In any case, none of this explains why one hit of -3 from the spell causes instant morale break. If the creature's morale were to restore from 15 to 10 before the conditions for triggering the spell are met, -3 does not seem like enough. Unless the damage the creatures suffers in the process also causes it to lose some morale? Also, apparently the state of Morale Failure: Panic is not the same panic caused by opcode #24? The AI script has a block that causes the creature to escape the area if it reaches a state of panic [StateCheck(Myself,STATE_PANIC)]. This does not trigger during Morale Failure. It is unclear to me how to check for morale failure inside the trigger, without resorting to custom-made spell states, at least. What's even more interesting, a trigger condition MoraleLT(Myself,6) does not catch the creature in the state of Morale Failure either. Which is confusing because its morale breakpoint is at the value of 5 or less. If morale failure has occurred, the value supposed to be at less than 6, right? All of this is painfully convoluted. The only way to debug is unhelpful: CTRL+M always returns the value of 10 for Morale. I wonder if anyone here has some explanations how all of this works. PS: not exactly relevant, but in case anyone is interested, a scripting action Panic() does something weird: it simply causes the active creature to move around, without triggering any other effects expected of the opcode #24 (changing circle to yellow, applying a relevant state, etc.) I guess, the description of Panic() inside the IESDP is truthful, but one might expect it to behave closer to the Horror opcode.
  11. Taylan, check out SCS. It uses Perl to do a lot of heavy lifting when it comes to code generation. IIRC, Perl binary is stand-alone and packaged with the mod, at least for the Windows version. Linux/OS X usually have it by default at /usr/env/perl or something. You can similarly use Perl or another light-weight portable language (Lua comes to mind) to code custom logic.
×
×
  • Create New...