Jump to content

Mike1072

Gibberling Poobah
  • Posts

    3,186
  • Joined

Everything posted by Mike1072

  1. Thanks, that is a very good suggestion. Keeping the docs up to date is always a challenge, which is why these are generated using the actual files and descriptions. Displaying both descriptions side-by-side seems doable, but trying to find a way to automatically identify and call out individual differences doesn't seem like a good time investment. I don't know when I'll have time to dedicate to this, but we'll see. We have a topic dedicated to discussion of the docs if you have any additional suggestions: https://www.gibberlings3.net/forums/topic/30765-spell-descriptions-and-other-documentation/
  2. Looking at the actual resources in Near Infinity, there aren't any #111 effects on the ITM files, so you may want to be applying that ALTER_SPELL_EFFECT function on the SPL files that create the items in the first place. But that is a separate discussion.
  3. Feel free to ignore Jarno in this case. Firstly, if you want to do an "else if" (like in C-style languages), that's totally valid and common: ACTION_IF (x) BEGIN // do something END ELSE ACTION_IF (y) BEGIN // do something else END For what you're doing, it's easiest to extract the stuff that will be different into the game-specific checks and then proceed with the shared code. For example, you could set a variable to a specific value and then reference the variable in the shared code. I wasn't sure I understood what you were attempting, but it looked like you were first modifying some source files, then cloning those source files and making further changes to the clones. You could do that like so: ACTION_IF GAME_IS ~BGEE~ BEGIN OUTER_TEXT_SPRINT source_paw ~brbrp~ OUTER_TEXT_SPRINT destination_paw ~brbrp2~ END ELSE ACTION_IF GAME_IS ~BG2EE~ BEGIN OUTER_TEXT_SPRINT source_paw ~cdbrbrp~ OUTER_TEXT_SPRINT destination_paw ~cdbrbrp3~ END ELSE ACTION_IF GAME_IS ~IWDEE~ BEGIN OUTER_TEXT_SPRINT source_paw ~werewlf1~ OUTER_TEXT_SPRINT destination_paw ~werewlf3~ END ACTION_IF FILE_EXISTS_IN_GAME ~%source_paw%.itm~ BEGIN COPY_EXISTING ~%source_paw%.itm~ ~override~ LAUNCH_PATCH_FUNCTION ~ALTER_SPELL_EFFECT~ // LINKS TRANSFORMATION WITH CORRECT PAW ATTACK INT_VAR check_globals = 1 check_headers = 1 header = 1 header_type = 1 match_opcode = 111 timing = 2 STR_VAR resource = EVAL ~%destination_paw%~ END BUT_ONLY COPY_EXISTING ~%source_paw%.itm~ ~override/%destination_paw%.itm~ LAUNCH_PATCH_FUNCTION ~ALTER_ITEM_HEADER~ // dice size and dice thrown INT_VAR check_globals = 1 check_headers = 1 header = 1 header_type = 1 dicesize = 12 dicenumber = 1 damage_bonus = 0 END END You may also want to add a condition to the component to prevent users from installing it on games other than the ones you support. You can do so by adding a REQUIRE_PREDICATE right after the start of your component. When the condition isn't met, the user will be prevented from installing the component and they will instead see the associated message. BEGIN ~My Component~ REQUIRE_PREDICATE GAME_IS ~BGEE BG2EE IWDEE~ ~This component can only be installed on BGEE, BG2EE, and IWDEE games.~
  4. G3 is proud to welcome a new mod to the site: Transitions, by Lauriel. Transitions requires EET, BGEE, SoD, or BG2EE. It smooths out the transitions between Baldur's Gate campaigns and allows continued play after boss enemies have been defeated. In addition, it adds personal housing, another Bhaalspawn power, quests, and other content. You can find further details via the links below. Project Page Forum at G3 Readme Download at G3 Download directly at GitHub
  5. Welcome! You may be able to locate the game folder by right-clicking the game in Steam, selecting "Properties...", then clicking the "Local Files" tab and hitting the "Browse..." button. That should open up the folder where the game is installed. I don't use macOS, so that's the extent of my knowledge. I know @subtledoctor uses a Mac and would encourage you to use his launcher for installing mods on Macs (MWL). You can install mods without it, but it may provide an easier experience.
  6. The primary purpose is determining access to items. If an item is flagged to be unusable by assassins, then any kits whose unusability value includes that particular bit will be unable to use the item.
  7. Thanks, I've updated them all. Fixed. There are probably some other references that are a bit out of date, particularly those that relate to limitations that have been removed in the Enhanced Editions. Each of the 32 bits in the unusability value uniquely correspond to a specific vanilla kit. The hex unusability value of "0004 0000" which an assassin uses can be expressed as "0000 0000 0000 0100 0000 0000 0000 0000" in binary. Looking at it this way makes it easier to see which of the 32 bits "belongs" to the assassin. If a kit has this bit set to 1, the game will treat it as an assassin in terms of restricting it from using items that assassins can't use. It can also affect other things, like limiting the number of thieving skill points that the kit gains per level.
  8. Fetching is just one of the first steps in the link you posted. You then have to merge the changes into your current branch. If you're dealing with the master branch, the command would be: git merge upstream/master
  9. We use the .ini file as a place to enable options that we don't feel warrant a separate component.
  10. It's a common practice to link mods in your signature. Take a look at the signatures used by @jastey or @Lava. Everyone is free to post about their mods in this forum or general mod discussion. (We discussed adding a special forum dedicated to that purpose, but weren't sure what to name it.) The only thing I'll say about official hosting is that it something that we evaluate on a case-by-case basis in private correspondence with the mod author. It involves work on our end, so we don't enter into it lightly.
  11. Your .tp2 looks fine. If you're installing on EEs, make sure that you set the WeiDU preference for which dialog.tlk to install to (weidu.conf) to match the language you selected in-game.
  12. I'd recommend he link them in his signature for easier access.
  13. That's a bit trickier. There's no mass way to unarchive them but they can be unarchived manually one-by-one. If there is a specific archived topic you want to respond to or think should be unarchived, send me a PM.
  14. Good catch. It looks like the SR version of spcl722.spl is cloned from the wizard version (spwi308.spl), and that version assumes you won't have access to it until you are 5th level. It doesn't include variants for levels 1-4, which the Priest of Talos needs.
  15. I believe everything should be fixed now, but please let me know if you encounter any similar issues and I'll follow up.
  16. Sorry for the delay. I've just put in a support request.
  17. The forum software hasn't been working properly lately. I'd recommend uploading your files to another site and linking them here until the forum issues can be resolved.
  18. Thanks, we're aware there are some wonky things going on right now. The cleanup task has been failing which is probably responsible for a lot of the weird behaviour you're seeing. Will need to get support to look at it.
  19. I'm not sure why the attachment is unavailable. Forum software bug? Other users' attachments still appear to be working. No need to apologize.
  20. I've added a message and updated the first topic in the thread to link to your post above. If you release any future updates to the mod, you'll be able to update your post to include the new information and download link.
  21. My comments were directed specifically to cloning, aka creating a new file from an existing one. There are very good reasons to use it in other situations. No worries. I would write tutorials if I weren't so lazy but I feel like there will always be specific questions that need specific responses. Good luck on your modding adventure!
  22. Whichever is easiest for you to maintain. There are some values (like the name of the script and dialogue files) that are unlikely to ever change, so it might be confusing for debugging if the value in the .cre file is not actually used and is instead replaced at install-time. But there's no real harm in setting them via code if you prefer. If you decide you want to change any of the values, editing text is easier. Proficiencies or spell memorizations might be things you decide to swap around as you work on the mod, so that may be a reason to consider setting them using code. Or you may decide later you want to incorporate adjustments to them based on the presence of other mods, which would be easier to do if they were being set using code from the start. When using BUT_ONLY_IF_IT_CHANGES, if your patches make no changes to the file, it will NOT be copied into the game. When you're trying to clone a file, you definitely want the new file to be created, so there's little sense in using BUT_ONLY_IF_IT_CHANGES. It's fine and is probably most widely used method for adding new files to the game. Yes, you could. The benefit of doing this is that it will pick up changes that other mods have made to that creature. The downside of doing this is that it will pick up changes that other mods have made to that creature. For creating a new (joinable...?) NPC, I don't see a need for it. There's a good chance it would cause you grief rather than solve any problems, if it ever came up.
  23. // replace kivan's halberd proficiency with spear proficiency COPY_EXISTING_REGEXP GLOB ~^_?kivan[46]?\.cre$~ ~override~ LPF ALTER_EFFECT INT_VAR match_opcode = 233 match_parameter2 = 99 parameter2 = 98 END BUT_ONLY Should work on BG:EE/EET and Tutu. It's harmless on BGT but not needed since he has a spear proficiency instead of a halberd proficiency there already.
  24. No, it doesn't need to be copied over if it already exists. Thank you, I thought that it sounded familiar but I didn't want to lay blame based on a vague recollection. There are two locations in SPL files where icons are specified: the spellbook icon is stored in the SPL header and this is where the .BAM file variant with the "C" suffix should be used the stone icon is stored in the ability header(s) and this is where the .BAM file variant with the "B" suffix should be used In Near Infinity, the place to assign the spellbook icon can be found by navigating to the SPL file, clicking the Edit tab header, and locating the field labelled "Spell icon" at offset 0x3a. The place to assign the stone icon can be found on the same Edit tab by scrolling down to the list of abilities at the bottom, and then for each ability (labelled "Spell ability 0", etc.): either double-clicking it or selecting it and pressing the View/Edit button locating the field labelled "Icon" at relative offset 0x04
×
×
  • Create New...