Jump to content
DavidW

Immutability and encapsulation in mod design

Recommended Posts

2 hours ago, subtledoctor said:

Third: for the sake of reducing clutter, is there any reason the .debug logs shouldn't be shunted away into the weidu_external folder?  My MacOS micro mod manager already sequesters them into /logs, but I'm thinking about changing that to /weidu_external/debug_logs...

There is a weidu feature: create folder called 'debugs' and all installation .debug files will be created there. Other than that, I don't see how you could change .debug files location without using mod manager or extra bat/command files.

Regarding workspace folder overwrite problems: how about generating random folder name inside workspace for each installation? Or use folder name with modder prefix?

Edited by AL|EN

Share this post


Link to post

 

@DavidW

So, I went the extra mile and started using SFO (so as to complete your lecture about functional programming).

I (hopefully!) managed to get the hang of it, but unfortunately some features are poorly documented / rarely used in SCS, so I'd like to ask you a couple of questions:

  • As far as make_item and make_spell are concerned, how can I target a specific header using add_effect_inline? I was hoping for the array eff_fields to have an additional parameter (i.e., header or something like that), but that's not the case.... I mean, I don't think you're forced to do something like this, right?

    EDIT: Just to clarify: I'd like to match headers based on their order, i.e.: I'm looking for something like header in ordinary ADD_ITEM_EFFECT / ADD_SPELL_EFFECT ('SET header to number of extended header (starting from 1) the effect should be added to (by default the effect is added to every header'). I tried with 

    add_effect_inline => "match=>~ability=1~ opcode=>18 parameter2=>1"	// Add this effect to the first extended header only!

    but it's not working (i.e., the effect is not added....)

  • Is it possible to collect something like this
    add_effect_global_inline'0=>~opcode=>0~
    add_effect_global_inline'1=>~opcode=>1~
    add_effect_global_inline'2=>~opcode=>2~
    add_effect_global_inline'3=>~opcode=>3~
    add_effect_global_inline'4=>~opcode=>4~
    add_effect_global_inline'5=>~opcode=>5~

    into an auxiliary array (like you would do when adding a brand new ability / effect, i.e.: add_ability / add_effect => auxiliary_array).

Edited by Luke

Share this post


Link to post
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...