Jump to content

Version 20 comments/bug reports


ScuD

Recommended Posts

Having compared my own fixes to v20 of SCSII there seems to be some stuff left out - mostly cosmetic. Please correct me if I'm wrong.

 

1. \help\scripts\dw#grpin.baf, \workspace\dw#asc_illasera.bcs

They still have the good old !Dead("astSeenBy(Myself))")

 

2. \misc\antimagicscript.ssl

I reported about ReallyForceSpellRES("%spell%d",scstarget) in the v19 bug thread. Do spells with names smthd exist? Is it a typo and if not, could you please explain why?

 

3. \misc\reputation.tph

I remember thebigg has provided a pretty neat solution for the component. Aside from any disagreements between you and him it is really faster This is the file I use (not accounted for Viconia-Solaufein, can be easily added):

DEFINE_ACTION_MACRO ~reputation_core~ BEGIN
COPY_EXISTING_REGEXP GLOB ~^.*\.bcs$~ ~override~
											  ~^.*\.dlg$~ ~override~
 PATCH_IF (~%SOURCE_EXT%~ STRING_EQUAL_CASE ~DLG~ && `0 != INDEX_BUFFER (~ReputationInc~)) ||
			   (~%SOURCE_EXT%~ STRING_EQUAL_CASE ~BCS~ && `0 != INDEX_BUFFER (~%WNL%163OB~))
 THEN BEGIN
PATCH_TRY
	  DECOMPILE_AND_PATCH BEGIN
		REPLACE_TEXTUALLY ~ReputationInc(1)~ ~SetGlobal("DMWWRepBoost","GLOBAL",1)~
		REPLACE_TEXTUALLY ~ReputationInc(2)~ ~ReputationInc(1)~
	  END
WITH DEFAULT
	  PATCH_WARN ~SCS WARNING: couldn't patch %SOURCE_FILE%, some mod broke it; leaving it untouched.~
END
 END
BUT_ONLY
<<<<<<<< .../scsii-inlined/repadd.baf
IF
 Global("DMWWRepBoost","GLOBAL",1)
THEN
RESPONSE #%probA%
					 SetGlobal("DMWWRepBoost","GLOBAL",0)
					 ReputationInc(1)
					 Continue()
RESPONSE #%probB%
					 SetGlobal("DMWWRepBoost","GLOBAL",0)
					 Continue()
END
>>>>>>>>
EXTEND_TOP ~baldur.bcs~ ~.../scsii-inlined/repadd.baf~ EVALUATE_BUFFER
EXTEND_TOP ~baldur25.bcs~ ~.../scsii-inlined/repadd.baf~ EVALUATE_BUFFER
END

 

4. \shapeshift\dw#shnbr.itm (same for SCS)

A cosmetic comment - the description icon has some garbage, better leave blank.

 

Looks like you've fixed everything else :)

Link to comment
2. \misc\antimagicscript.ssl

I reported about ReallyForceSpellRES("%spell%d",scstarget) in the v19 bug thread. Do spells with names smthd exist? Is it a typo and if not, could you please explain why?

inside scsii\spell\spell.tph

look for the line I pointed to with a comment in all caps

DEFINE_ACTION_MACRO ~antimagic_patch_new~ BEGIN
ACTION_IF ~skip_tobex~=0 BEGIN
   COPY_EXISTING ~%spell%.spl~ ~override~
	 READ_BYTE 0x1b ~spellbyte~
	 SET ~spellbyte~=~spellbyte~ BOR 0b00000001
	 WRITE_BYTE 0x1b ~spellbyte~
  BUT_ONLY
END ELSE BEGIN
  // clone the spell
  COPY_EXISTING ~%spell%.spl~ ~override/%spell%d.spl~   // <----NOTE THIS LINE.  HERE IS YOUR ANSWER
	  // here we add an instruction to destroy the original creature
	 LAUNCH_PATCH_FUNCTION ADD_SPELL_EFFECT
		 INT_VAR
			  opcode=168
			  target=9
			  timing=4
			  duration=1
	 END
  // make the core spell
 COPY_EXISTING ~%spell%.spl~ ~override~
    READ_ASCII 0x0 ~template~ (0x64)
    READ_ASCII 0x76 ~graphic~
    READ_SHORT 0x98 ~proj~
    READ_SHORT 0x84 ~castingtime~
 BUT_ONLY
 COPY ~%scsroot%/misc/antimagic.spl~ ~override/%spell%.spl~ // actually just a pristine version of Summon Fiend
	 WRITE_ASCIIE 0x0 ~%template%~
	 WRITE_ASCIIE 0x76 ~%graphic%~
	 WRITE_ASCIIE 0xae ~%spell%~ (8)
	 WRITE_SHORT 0x84 ~castingtime~
	 WRITE_SHORT 0x98 ~proj~
END
// patch the spell description
COPY_EXISTING ~%spell%.spl~ ~override~
 READ_STRREF 0x50 ~sourcestring~
	 SPRINT ~addon~ @3700
	 SPRINT ~sourcestring~ ~%sourcestring%~^~%addon%~
  SAY_EVALUATED 0x50 ~%sourcestring%~
  // patch the scroll description
  COPY_EXISTING ~%scroll%.itm~ ~override~
	 READ_STRREF 0x54 ~sourcestring~
	 SPRINT ~addon~ @3700
	 SPRINT ~sourcestring~ ~%sourcestring%~^~%addon%~
  SAY_EVALUATED 0x54 ~%sourcestring%~
  // make the CRE file
  COPY ~%scsroot%\misc\dw#cloud.cre~ ~override/%spell%.cre~
  WRITE_EVALUATED_ASCII 0x248 ~%spell%~ (8)
  WRITE_LONG 0x8 ~-1~
  WRITE_LONG 0xc ~-1~
  WRITE_ASCII 0x280 ~dw#antim~
  // make the EFF file
  COPY ~%scsroot%\misc\dw#cloud.eff~ ~override/%spell%.eff~
  WRITE_EVALUATED_ASCII 0x30 ~%spell%~ (8)
  // make the script
  COPY ~%scsroot%/misc/ssl_out/antimagicscript.baf~ ~%scsroot%/workspace/%spell%.baf~
  COMPILE ~%scsroot%/workspace/%spell%.baf~ EVALUATE_BUFFER
END

Link to comment

Having compared my own fixes to v20 of SCSII there seems to be some stuff left out - mostly cosmetic. Please correct me if I'm wrong.

 

1. \help\scripts\dw#grpin.baf, \workspace\dw#asc_illasera.bcs

They still have the good old !Dead("astSeenBy(Myself))")

 

The former needed to be verbatim identical to the Ascension version, because it was used in a substitution - but in any case, it's not actually used in modern SCSII, it's just fossil code. The latter is a verbatim copy of the Ascension script, made at install time from whatever's in Ascension. (The files in the workspace directory are inert and should have been cleared out before I distributed, though they're harmless.)

 

2. \misc\antimagicscript.ssl

I reported about ReallyForceSpellRES("%spell%d",scstarget) in the v19 bug thread. Do spells with names smthd exist? Is it a typo and if not, could you please explain why?

 

Like plainab said: they're generated by SCS itself.

 

3. \misc\reputation.tph

I remember thebigg has provided a pretty neat solution for the component. Aside from any disagreements between you and him it is really faster

 

I'm confused, because I don't recall any disagreement with theBigg and because I think my code is pretty much identical to his. (The details might differ slightly, but the basic principle is still the same.)

 

4. \shapeshift\dw#shnbr.itm (same for SCS)

A cosmetic comment - the description icon has some garbage, better leave blank.

No need: it's an undroppable item.

Link to comment

I was unable to install "Slightyly improved Drow" and "Improved minor encounters" with Spell Revisions also installed until I corrected what I think is a typo in scsii.ini.

 

 

Correction I made in scsii.ini:

 

Mage_Level_No_Adjustments 0
Mage_Level_Add 0
Mage_Level_Scale 100
Mage_Ignore_SR 0
Priest_Level_No_Adjustments 0
Priest_Level_Add 0
Priest_Level_Scale 100
Mage_Ignore_SR 0		   // Changed this to: Priest_Ignore_SR 0
Sendai_Component_Is_Sendai_Only 0
AI_Does_Not_Detect_Items 0
Conceal_Prebuff_Spell_Names 0
Force_No_HLA_Repeats 0
Disable_SSL_Compilation 0
Disable_ToBEx 0

 

 

Relevant error message in .debug file:

 

 

 

Installing [upgrade Ust Natha's defences] [v20]

 

---snip

 

 

[./DATA/25DEFLT.BIF] 2818187 bytes, 160 files, 0 tilesets

Copying and patching 1 file ...

[./override/spell.ids] loaded, 24111 bytes

ERROR: cannot convert scs_ini_hash_Priest_Ignore_SR or %scs_ini_hash_Priest_Ignore_SR% to an integer

Stopping installation because of error.

Stopping installation because of error.

Stopping installation because of error.

Stopping installation because of error.

 

 

 

Link to comment

Hi. In another topic i mentioned drow city defenders number raising with time like a snowball and having quite bad result on system performance. The developer told me that there should be a limit to about 25 drow soldiers hunting for you at a time.

 

2mwczs0.jpg

 

Here is the pic with i think 30+ drow soldiers and a couple of golems on top. I tested it this way: when i finished the drow city quest and defeated the lesser demon lord, i remained in the same room to make sure i only fight spawned drow, not the guys that were in the city even before i entered it. I opened the door, spotted a drow guard( he was there before) to trigger patrols respawning and closed it promptly so that no drow outside of spawns can enter it. After some time the amount of soldiers in the room snowballed and there s pretty much no way to defeat them for my party of lvl 18s or so even if i snipe the archmage, moreover its becomes very laggy. I think its a good thing i cant defeat a drow city so i will just enter that console command to make it easier.

 

I would have loved to fight them in somewhat more balanced way when they spawn in waves and i have to defeat each wave before the new arrives (with no laggy performance too) even if i still lose in the end. I dont have ancient PC, my is 6 core 3.2 ghz processor and stuff, bought it this year. So i think its not rly my fault.

 

At which point it is safe to use the drowcity lite console command?

Link to comment

I can only count about two dozen drow (I can also count about four glabrezu and about four golems).

 

"Fighting them in a more balanced way" is against the purpose of the component, which is deliberately extremely difficult. (I think the readme is clear on this.)

Link to comment

10molm1.jpg

 

Here is another bug showing how lich touch attacks on a failed save cant paralyse a target creature. You can see the special effect of paralysation when my character failed a save. When a character saves successfully there is a message for example: save vs death: 8. There is none here which proves he failed.

Link to comment

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...