Jump to content


  • Content Count

  • Joined

About Luke

Profile Information

  • Gender

Recent Profile Visitors

12,602 profile views
  1. Once you learn SSL, you'll really like doing AI stuff! If you do not use SSL, it's very tedious (and somewhat annoying) to write combat scripts. On top of that, you can't (easily) take into account the various spell systems without SSL...
  2. @kjeron The same holds for "resist_dispel", right? That is: you should set "power" and "resist_dispel" of op146 to non-zero if "power" and "resist_dispel" of the effects of the referenced subspell are zero; otherwise, set "power" and "resist_dispel" of op146 to zero. In so doing, the various checks trigger only once.
  3. Well, in that case I guess you would use Primary Type and opcode #220 (in place of Secondary Type and opcode #221...) Well, it depends (the check on hit points triggers once per round). What if I need an aura that triggers once every two rounds? Or once per three seconds? If that's the case, then you're forced to use op#272 + op#146 in the EFF to cast the aura subspell...
  4. I started playing with SFO using the fragments of documentation in the mod folder itself. And what about creating resources (e.g. STO / CRE / SPL / ITM / PRO files) from scratch? IMHO, that's great too... I mean, the key point here is the functional way of doing things. As you said, that means shorter and more readable code; less buggy code; code that's much easier to adjust at a bulk level. I like it! Yes, maybe it's not very suited for doing simple editing of individual resources, but still worth it...? IMHO, yes. LAF edit_creature STR_VAR creature = "bandit" editstring = "xp=>1200" END // Versus COPY_EXISTING "bandit.cre" "override" WRITE_LONG 0x14 1200 // You can basically "forget" about 0x14 and related 'magic' numbers... BUT_ONLY
  5. The variable "loc" written here and here is defined and initialized as an INTEGER variable (so you might want to replace that "STR_VAR loc=xxx" with "INT_VAR loc=xxx"...). This occurs several times and it fake works because the string under consideration is actually an integer, but still, you might want to check that out... The function CRE_delete_opcodes doesn't take any variable called file_ext (just "arguments"...) After this instruction (that should probably be "^.+\.cre$"...?), you might want to throw "PATCH_IF (SOURCE_SIZE > 0x2D3) BEGIN ... END", just in case... Actually, you might want to do it after every COPY_EXISTING_REGEXP so as to skip corrupt files... This READ_SHORT should be READ_LONG!
  6. @Bubb Thanks for the extra details (it confirms I cannot achieve what I wanted to achieve...) Just to clarify: what about opcode #211 (Imprisonment) and #213 (Maze)? Do they count as "Target Gone" along with STATE_INVISIBLE, STATE_IMPROVEDINVISIBILITY, and Sanctuary?
  7. What a pity! It'd be really handy for the aforementioned situation – I mean, it's of limited use as of now (true when path is blocked by searchmap/doors)... the 2.6 update will hopefully take that into account and improve it... In the meantime, I'm wondering if 0x4063 InWeaponRange(O:Object*) can be of any help...
  8. Another tweak about healing spells: On IWD:EE, they are coded to be ineffective against unnatural creatures (i.e., undead, fiends, golems, elementals and the like): you might want to do the same for BG games (I mean, it does make sense...)
  9. Does someone know when this trigger is supposed to return true? I wanted to use it to make sure a certain creature doesn't attempt to move towards another creature if it's completely surrounded by other creatures, but it doesn't seem to work...
  10. In case you're interested, my version of "ENFORCE_HP" *should* correctly handle dual-class characters. Note that: I assume the CRE being patched is a playable CLASS my notation is a bit different from yours I'm not interested in "at_best", "at_worst" and the like: I simply want the maximum (possibly adjusted by the INI variable "hitpoint_percentage")
  11. Variable mismatch: macro_read_in_hit_point_levels vs. read_in_hit_point_levels.
  12. Probably the authors of the mod took inspiration from P&P... Again, the authors of the mod probably took inspiration from P&P, that's why it makes use of those spells...
  13. OK, I'll keep reporting issues/oddities then... Missing "warning =" here (after STR_VAR).
  14. OK, I simply find that issue similar to the missing "arguments" string in "enforce_hp"... Sure, maybe it's not critical, but still something that should be taken into account...? Anyway, I really like reading your code and the "functional programming" way of doing things, sorry if I ask you too many questions
  15. Another initialization issue: clone_template doesn't make use of the variable "tv". Is that intended? I'm asking because you set it when launching clone_store and clone_creature...
  • Create New...