Jump to content

Request: A Total Newbie's Guide to Coding Infinity Engine Mods


Endarire

Recommended Posts

Greetings, all!

Maybe this sort of step-by-step guide with handy screenshots/videos already exists, but if so, I wasn't sure where.  I know the Near Infinity wiki exists, but it doesn't seem newbie-friendly.  It's a reference manual but not a step-by-step guide for these, at least from what I can tell.  These are at least some of the things that are useful for new modders to know and for modders in general to be able to reference quickly.

-Add new items and edit some existing items.

-Change what services and items a vendor has.

-Adding and editing containers on a map and the contents and boundaries of these containers.

-Making and editing NPCs, recruitable and not.

-Adding and editing dialog.

-Adding and editing spells.

-Adding and editing kits.

-Adding and editing creatures' stats/abilities and animations.

-Adding and editing PC paperdoll sprites and animations, like to add new types of equippable items and recolored/retextured versions of existing ones.

-Adding EE & EET support to a mod that doesn't already have one.

-How to determine what game versions a mod is compatible with (BGT, BG2EE, EET 2.5, 2.6, etc.)

-Packaging a mod with a WeiDU installer of a specific version.

-How to find and fix bugs.

-Whatever else you believe is wise for people with NO IE MODDING EXPERIENCE to know that's likely useful to making such mods.

Thankee!

Link to comment

The knowledge for most of your topics is out there, you just have to harvest it. Scan the tutorials' sections at G3, SHS, PPG, and BeamDog's. Read the WeiDU Readme. Take mods that do what you want to do and look how they do it. It's common practice to take other mods as examples, almost every modder started this way.

Writing tutorials takes up a lot of time. Ever modder has written some as far as I know. Requesting for them so you can start modding is - we have a saying in German: To carry someone to the hunt. You'll have to do some of the work yourself. Feel free to create "step-by-step guide with handy screenshots/videos" for the things you learn along way.

Link to comment

I don't know if it's really relevant, but I find the weidu language... baroque?

I wanted to do something very simple (in my opinion) as practice : overlay a 2da file value over another one (say do +1, -1 in splsrckn just for fun).

No big deal, I guessed. Double loop on the indexes, read values in each file, sum, write value.

But nope, I read the weidu doc (reference?) , tried to google (though I didn't try stackoverflow :D )

 

Maybe that's the developer spirit that makes me take the wrong view, but I can't understand how this is supposed to work...

Link to comment
On 10/25/2021 at 3:11 AM, jastey said:

The knowledge for most of your topics is out there, you just have to harvest it.

Reading between the lines, I think what might be useful (maybe what the OP is actually asking for?) is something like a stickied post with links to whatever tutorials are actually out there. Which is not an unreasonable thing to hope for. Grammarsalad has already provided one! Maybe the OP can incorporate any such answers into the top post and convert this very thread into the thing he is requesting.

Unfortunately I don't have much input - I learned everything I know from simply cracking open this or that mod and seeing how other people did it. That, and learning to edit things with NI, so that once I got the hang of your basic Weidu COPY commands, I could incorporate byte-patching into it. A nice thing about Weidu mods is that everyone's code is available to everyone else. Want to find out how something is done? Find a mod that does what you want to do and just look at it. So for patching spells, I could link to my mod that patches various spells; if you go to line 241 of that page you can see the example of the Luck spell, how you might use ALTER_SPELL_HEADER to change a spell's target/range/projectile, or use ALTER_EFFECT to change its duration. But that's not exactly a tutorial. I'm not sure a tutorial actually exists.

On 10/25/2021 at 12:37 PM, mickabouille said:

I wanted to do something very simple (in my opinion) as practice : overlay a 2da file value over another one (say do +1, -1 in splsrckn just for fun).

No big deal, I guessed. Double loop on the indexes, read values in each file, sum, write value.

Maybe I don't understand the question, because this seems not very difficult to me? If you mean taking a table or array as reference and then modifying some information in a second table or array based on the contents of the first one? I do that sort of thing fairly commonly.  It is dog slow - you have to process the first array n times, where n is the number of entries in the second array - but it is fairly straightforward even for someone with no programming experience. (If you mean how to do that efficiently, then yeah I have no idea, and Weidu might not be designed for that.)

Link to comment
On 10/25/2021 at 6:37 PM, mickabouille said:

I don't know if it's really relevant, but I find the weidu language... baroque?

I wanted to do something very simple (in my opinion) as practice : overlay a 2da file value over another one (say do +1, -1 in splsrckn just for fun).

No big deal, I guessed. Double loop on the indexes, read values in each file, sum, write value.

But nope, I read the weidu doc (reference?) , tried to google (though I didn't try stackoverflow :D )

 

Maybe that's the developer spirit that makes me take the wrong view, but I can't understand how this is supposed to work...

If you want to modify one single value in one specific line, you don't need a nuclear plant, use this process. ;)

Link to comment

"What is the artifact which sets my Intelligence and Wisdom stats to 18 and where can I acquire it."

  To be more serious:

On 10/24/2021 at 6:23 AM, Endarire said:

-How to find and fix bugs.

This has no proper answer even. Because this is all about learning, adopting a workflow which works and suiting oneself. Some people are experimeental kind, trying out things to break and then put safeguards against them one by one, others are more metholodical and try to design what they're doing in a way to optimize it and rigid it up. Most of the time, I am acting the latter, I've reviewed a lot of patches for a project a few years ago via only reviewing, darfting the effects on paper and approving it based on debugging in head instead of actively downloading the code and testing it because I understood the factors required. This ofcourse doesn't apply to my WeiDU yet, but still, putting effort into designing the implementation to prevent bugs is how I roll.

Edited by Graion Dilach
Link to comment

Join the conversation

You are posting as a guest. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...