Jump to content


Photo

Creepin's various WeiDU questions of varying silliness

0x10e

  • Please log in to reply
111 replies to this topic

#61 The Imp

The Imp

    Not good, see EVIL is better. You'll LIVE.

  • Member
  • 5148 posts

Posted 11 January 2018 - 08:09 AM

summoning invisible creature

When people will finally understand it's a no way to do things <_<  

It's, when the BG2ToB begomes able to easily change character classes, kits nad gains Sorcerer kits, divine ones too etc. Ouh that's not going to happen, well then, never. 


Yep, Jarno Mikkola. my Mega Mod FAQ. Use of the BWS, and how to use it(scroll down that post a bit). 
OK, desert dweller, welcome to the sanity, you are free to search for the limit, it's out there, we drew it in the sand. Ouh, actually it was still snow then.. but anyways.


#62 Creepin

Creepin
  • Administrator
  • 1676 posts

Posted 11 January 2018 - 11:30 AM

Right, I forgot you were a diehard luddite :P

Sorry about that, guess I'll have to add this to my signature to spare people the annoyance of giving the correct answer in vain :cheers:

 

Back to the topic: any other way to multiply/mimic physical attack vs. AC that would work in classic BG2 engine?


Edited by Creepin, 11 January 2018 - 11:34 AM.

The Old Gold - v0.2 WIP (mod for BGT/BWP/BWS)


#63 The Imp

The Imp

    Not good, see EVIL is better. You'll LIVE.

  • Member
  • 5148 posts

Posted 11 January 2018 - 11:55 AM

Back to the topic: any other way to multiply/mimic physical attack vs. AC that would work in classic BG2 engine?
Make a spell that tells the player that they are dreaming and honestly tell that the attacks will have a Thac0 of 7, and not what the super cheater player has at the time of the summon, even if it's -20, while he gulped a potion of super giant strenght&speed that going to kill the summoner in 13 seconds. :P The kind I sell to my favorite adventrers. :devil:

Yep, Jarno Mikkola. my Mega Mod FAQ. Use of the BWS, and how to use it(scroll down that post a bit). 
OK, desert dweller, welcome to the sanity, you are free to search for the limit, it's out there, we drew it in the sand. Ouh, actually it was still snow then.. but anyways.


#64 temnix

temnix
  • Member
  • 983 posts

Posted 29 January 2018 - 05:29 PM

A suggestion for multiple attacks: if they are to be with real attack rolls, why not summon a bunch of invisibles with custom ranged weapons or melee weapons with long reach (you can set range to anything), and have them strike at the target creature - the simplest thing would be at LastSummonerOf? If you want them to have the author's THAC0, you can run a quick OnCreation check with CheckStat and then set the minion's THAC0 to it, like this:

 

 

IF



OnCreation()

CheckStat(LastSummonerOf,THAC0,20)



THEN



RESPONSE #1



ChangeStat(Myself,THAC0,20,SET)

AttackOneRound(LastSummonerOf)


END

 

 

Do this for the whole lineup 20-0. It's not going to be instant, but if you make the weapon's speed 0, the minion will still attack in second or two. And you put a Self-targeted RemoveCreature on the minions, delayed to 3 seconds. Voila.



#65 The Imp

The Imp

    Not good, see EVIL is better. You'll LIVE.

  • Member
  • 5148 posts

Posted 29 January 2018 - 10:00 PM

Do this for the whole lineup 20-0.

That's not enough though. What of charnames that have better than 0 Thac0. A_lso the creature needs a weapon that's clone of the users... and STR. One could possibly make this clone by creating the clone via opcode 236 with type 2... but it's needing to die quite fast. and be without an avatar(invisible).


Yep, Jarno Mikkola. my Mega Mod FAQ. Use of the BWS, and how to use it(scroll down that post a bit). 
OK, desert dweller, welcome to the sanity, you are free to search for the limit, it's out there, we drew it in the sand. Ouh, actually it was still snow then.. but anyways.


#66 temnix

temnix
  • Member
  • 983 posts

Posted 30 January 2018 - 02:48 PM

Then write the list for negative THAC0, no problem. As for clones, subtledoctor has written up a good method for handling clones on the Discussion board, in one of my topics. If it comes to that. But I don't expect that Creepin here wants to preserve all of the powers of the original weapon. Do you? That sounds way overpowered for any multiple-attack arrangement. On the other hand, the weapon, whatever it's like, should have at least the same enchantment bonus as the original. Maybe invisible clones with penalties for balance, and a quick Remove Creature, are the way to go after all; but copied weapons are not going to have the same long range as custom weapons would. If the clones crowd about the target trying to strike and shoving each other, even without avatars and with personal space 0, that's going to be messy, some attacks may be lost.

 

All in all, in a case like this I would go for invisibles with custom weapons that make basic attacks and vary their enchantment bonuses with the level of the author. So summon invisibles with non-magical weapons for levels 1-6, with +1 for 7-13 and so on. And I would write some kind of explanation for this in the ability description.



#67 Creepin

Creepin
  • Administrator
  • 1676 posts

Posted 30 January 2018 - 10:07 PM

To clarify, I am intended to implement Dart of the Hornet's Nest. It might be overpowered indeed, but I am not going to lose any of its PnP power, I will fix this with price and rarity.

 

I'm thinking in the same direction (after reading these subtledoctors posts). The main problem of simple invisible creatures though is that system messages will show that attacks were done by that invisible creature, and this is unacceptable from immersion PoV. I'm planning to do so with multiple invisible unselectable restoration'ed simulacrums to keep original PCs name in system messages (and his Thac0 for attack rolls), but that is only a theory so far, I haven't got to implement it yet. My main concerns are being able to make them invisible from the second 0 and to synchronize projectile visual from fake attack by a PC with wound animation from actual invisible attacks by simulacrums.


Edited by Creepin, 31 January 2018 - 12:32 AM.

The Old Gold - v0.2 WIP (mod for BGT/BWP/BWS)


#68 temnix

temnix
  • Member
  • 983 posts

Posted 31 January 2018 - 11:20 AM

If setting the name of the minions is your only concern, do

 

OnCreation()



...



SetTokenObject("INV_NAME",LastSummonerOf) /// Add a string to your TRA with <INV_NAME> token

SetName(@X) /// Put the reference line for the TRA line here, and compile the whole file as a BAF

Continue()


END

And, if you choose clones, do say if you manage to get subtledoctor's idea to work seamlessly.



#69 subtledoctor

subtledoctor
  • Modder
  • 656 posts

Posted 12 April 2018 - 01:26 PM

EDIT - responded to an old question by mistake. Sorry, nothing to see here...

Edited by subtledoctor, 12 April 2018 - 01:27 PM.


#70 Creepin

Creepin
  • Administrator
  • 1676 posts

Posted 20 April 2018 - 05:59 AM

Ok folks, this one is really hard, and I'm certain I will need help from some of you WeiDU ninjas because the thing is way beyond my understanding of WeiDU.
 
I need to implement the following logic:

for each creature having inside its name letters "basilisk", "Basilisk", "medusa" or "Medusa" (no matter if in the beginning or in the middle)
	for each its weapon having projectile = "gaze" inside weapons item ability AND save type = "paralyze" inside such item abilities current effect 0
		add to such item ability two effects that must become effect 0 and effect 1, in that exact order, shifting all previous effects down by 2
BUT_ONLY_IF_IT_CHANGES

I believe I might figure out how to do so if I'll spend a month or two learning WeiDU, but I would be really happy to have help from someone for whom this is a matter of a 10 minutes to write :rolleyes:

 

P.S. Hooray for my 1000th post in the last 14 years... damn how the time flies :crazy:


Edited by Creepin, 20 April 2018 - 06:54 AM.

The Old Gold - v0.2 WIP (mod for BGT/BWP/BWS)


#71 Argent77

Argent77
  • Administrator
  • 1397 posts

Posted 20 April 2018 - 08:00 AM

This code should do it. You'll still have to fill in the missing parts (i.e. new effect parameters).

Spoiler



#72 subtledoctor

subtledoctor
  • Modder
  • 656 posts

Posted 20 April 2018 - 10:29 AM

Problem is it won't catch the creatures if the player's game is not in English...

Edited by subtledoctor, 20 April 2018 - 10:29 AM.


#73 Argent77

Argent77
  • Administrator
  • 1397 posts

Posted 20 April 2018 - 10:33 AM

There may be other creature aspects that can be checked instead, e.g. race or class. For (lesser or greater) basilisks race is always BASILISK.



#74 Gwendolyne

Gwendolyne
  • Administrator
  • 1016 posts

Posted 20 April 2018 - 11:48 AM

And you can add a check on MEDUSA race or animate.ids for an incoming mod. ;)


CARPE DIEM ....
 

In progress : Menace sur le Royaume de Diamant Éternel there.


#75 Creepin

Creepin
  • Administrator
  • 1676 posts

Posted 20 April 2018 - 12:56 PM

Argent77, I have no words, this is so cool, and I wouldn't hope to attain this ability to manipulate files even after a months of study! Thank you so very much :clap:
Not sure I understand every quirk of it though: for example why do you apply patch if "STRING_CONTAINS_REGEXP ~\(basilisk\)\|\(medusa\)~ = 0", should not it be "STRING_CONTAINS_REGEXP ~\(basilisk\)\|\(medusa\)~ = 1", as in, a hit?

As for subtledoctors good point about languages, I wonder if
READ_STRREF NAME1 name1 ELSE ~~
READ_STRREF NAME2 name2 ELSE ~~
READ_STRREF 0x272 race

PATCH_IF (~%name1%~ STRING_CONTAINS_REGEXP ~\(basilisk\)\|\(medusa\)~ = 0 ||
~%name2%~ STRING_CONTAINS_REGEXP ~\(basilisk\)\|\(medusa\)~ = 0 ||
race = ~BASILISK~ || race = ~MEDUSA~) BEGIN
would work as a temporary solution?
And you can add a check on MEDUSA race or animate.ids for an incoming mod. ;)
Haha, I remember that, that's why a cared to bother with Medusas (Medusae?) at all ;)

Edited by Creepin, 20 April 2018 - 01:13 PM.

The Old Gold - v0.2 WIP (mod for BGT/BWP/BWS)


#76 GeN1e

GeN1e

    A very GAR character

  • Modder
  • 1604 posts

Posted 20 April 2018 - 01:32 PM

Problem is it won't catch the creatures if the player's game is not in English...

Using TRA is simple

/*
@1000 = ~\([Bb]asilisk\)\|\([Mm]edusa\)~
*/

OUTER_SPRINT basilisk @1000
// Scanning all creature resources...
 COPY_EXISTING_REGEXP ~.+\.cre~ ~override~
 READ_STRREF NAME1 name1 ELSE ~~
 READ_STRREF NAME2 name2 ELSE ~~
 PATCH_IF (~%name1%~ STRING_CONTAINS_REGEXP ~ºsilisk%~ = 0 ||
           ~%name2%~ STRING_CONTAINS_REGEXP ~ºsilisk%~ = 0) BEGIN

 

 

Not sure I understand every quirk of it though: for example why do you apply patch if "STRING_CONTAINS_REGEXP ~\(basilisk\)\|\(medusa\)~ = 0", should not it be "STRING_CONTAINS_REGEXP ~\(basilisk\)\|\(medusa\)~ = 1", as in, a hit?

 

Because WeiDU readme explains so 

 

String STRING_CONTAINS_REGEXPString

As STRING_MATCHES_REGEXP, but it evaluates to 0 if the first string contains the second regexp. Thus "AR1005" STRING_CONTAINS_REGEXP "[w-z]" evaluates to 1 (“mismatch”).
Be warned that this does the exact opposite of what the name suggests.

 

 

PS Also f*** Invision and its forum shitware


Edited by GeN1e, 20 April 2018 - 01:37 PM.

Retired from modding.


#77 Creepin

Creepin
  • Administrator
  • 1676 posts

Posted 20 April 2018 - 01:35 PM

@1000 = ~\([Bb]asilisk\)\|\([Mm]edusa\)~

Hmm, do I get it right that I should put that (or rather translations thereof) in .tra files of my mod?

UPD. Indeed, forum software acting up lately :(

Edited by Creepin, 20 April 2018 - 01:50 PM.

The Old Gold - v0.2 WIP (mod for BGT/BWP/BWS)


#78 GeN1e

GeN1e

    A very GAR character

  • Modder
  • 1604 posts

Posted 20 April 2018 - 02:19 PM

Hmm, do I get it right that I should put that (or rather translations thereof) in .tra files of my mod?

Yeah.

 

UPD. Indeed, forum software acting up lately  :(

Not just lately, I always hated this particular engine, it's just that sometimes it pisses me off more than usual :D


Retired from modding.


#79 Creepin

Creepin
  • Administrator
  • 1676 posts

Posted 03 May 2018 - 12:32 PM

I am trying to make weapon attack modify target's saving throw before applying core effect of that attack.

 

My testing rig is a dart doing 1 damage upon target failing save versus death. Target have save vs. death 10, so under normal circumstances dart hits 10 times out of 20 attacks. Then I am adding prior (slot 0) effect #33 adding 6 to target's save. If that would work in theory hit to fired ratio should fall down to about 4 per 20 attacks, but testing gives same 10 of 20, so my #33 obviously not working.

I have filed it with target 2 (preset target), value 6, modifier 0 (increment), timing 0 (instant/limited), dispel 3 (dispel/bypass resistance), duration 0 and probability 100. Which of these is wrong?

 

I am attaching the item in question just in case.

Attached Files


The Old Gold - v0.2 WIP (mod for BGT/BWP/BWS)


#80 CamDawg

CamDawg

    ALL GLORY TO THE HYPNOTOAD

  • Modder
  • 1505 posts

Posted 03 May 2018 - 01:36 PM

I believe--and I'm sure I'll be corrected if this isn't accurate--that the engine rolls for saves on an item/spell once and at the time of the attack. So essentially it's rolling for the ranged attacks and all of the attached effects before applying them. So the op 33 is being applied, but the save roll for the damage is already in the bag at that point.

 

You'd be better served just applying a save penalty on the damage effect itself since this appears to be intended as an instant change.


Edited by CamDawg, 03 May 2018 - 01:37 PM.

Why is this Hypnotoad video so popu... ALL GLORY TO THE HYPNOTOAD.
____
The Gibberlings Three - Home of IE Mods

The BG2 Fixpack - All the fixes of Baldurdash, plus a few hundred more. Now available, with more fixes being added in every release.