Jump to content


Photo

Bad lag, tried almost everything


  • Please log in to reply
12 replies to this topic

#1 SimPanssi

SimPanssi
  • Member
  • 6 posts

Posted 24 December 2009 - 11:36 PM

Hi and merry christmas for everyone!

I have serious lag/stuttering in my game. I've tried every trick I've seen in these forums. Nothing helps. I have Big World Project Tactic version installed. Well, there are quite many quests showing up but the thing is that I have completed many of them and those are still showing up as active quests.

So here's what is happening:

About every second the game seems to go to pause mode (but the hand cursor also stops moving). When I pause the game, there are no problems. No problems in the inventory and other screens except on the map screen where the characters can be seen moving this pause also happens.

I don't remember when this started happening, but at first it wasn't as bad as it is now. But I think it was in chapter 4 or five, now I'm in chapter 6. And I remember that I already had visited almost all areas, but there was this lag before I did go to Baldur's Gate Bridge and Baldur's gate.

Because nothing helped I installed LStest and started a save game affected by this lag. I dont' understand most of the things this mod showed to me but these things were repeated over and over again (there was always my main characters name before any of these):

running block 10 of DW#1INV8.BCS (High Hedge, inside Thalantyr's castle but not outside)
running block 2 of AR3400.BCS (Firewine bridge)*
running block 3 of AR4600.BCS (SE of Nashkel Mines)
running block 33 of AGKARAEA.BCS (Nashkel)
running block 0 and 12 of AR3200.BCS (North of Nashkel)
running block 10 of DW#1INV5.BCS (sorry, forgot to note the area)*
running block 4 and 107 of AR8700.BCS (Bandit Camp)*
running block 0 of AR7900.BCS (Baldur's Gate Bridge)*

* means that in those areas my PC stopped in the middle of walking when commanding him (other party members didn't stop). However, I do not remember this happening before I installed LStest mod so I don't know if this mod is causing it.

Almost forgot. Weird thing happened after I reinstalled my game and tried the save that stutters. When I moved to other area the map was showing this dialog under the place where Gorion is killed (it should be Gorion's rest?):

"I... I do not rightly know. I was lost in the forest when I fleed, and I do not know the way back to the temple."

Maybe this has nothing to do with the lag problem but it is interesting that the dialog is showing up on the map screen. And it happened only after I reinstalled the BWP (but before I installed LStest).

Attached Files



#2 Lollorian

Lollorian

    smiley addict

  • Member
  • 4150 posts

Posted 25 December 2009 - 12:35 AM

Try downloading NearInfinity, then use it to export those .bcs'es and attach them here :cheers:

Impressive report btw :coolthumb:

Have you tried the anti-stutter solutions here (point #4)?? You probably did but still ... :P

Cheers,
Lol

"I am the smiley addict, yellow and round, this is my grin :D when I'm usually around :P.
When there's trouble brewing, see me post, cuz it's usually a wall o' yellow and your eyes are toast!!!"

BWP GUIDE - BWP FIXES - impFAQ - NPC LIST - KIT LIST - AREA LIST

GitHub Links : BWP Fixpack | Lolfixer | BWP Trimpack | RezMod


#3 SimPanssi

SimPanssi
  • Member
  • 6 posts

Posted 25 December 2009 - 01:37 AM

Try downloading NearInfinity, then use it to export those .bcs'es and attach them here :cheers:

Impressive report btw :coolthumb:

Have you tried the anti-stutter solutions here (point #4)?? You probably did but still ... :P

Cheers,
Lol


Yes, I tried those solutions. But like I said I have multiple quests going on (about 7 I think) and then there are those that I have completed that are still showing up (3 or 4 I think). The lag is so bad that I will try to complete them only after other things have been checked. And I really don't want to start the game from the beginning because this could happen again.

Here are the BCS files:

Attached Files



#4 Wisp

Wisp
  • Modder
  • 1353 posts

Posted 25 December 2009 - 06:16 AM

Oh man.

In agkaraea, this is the looping block:
IF
	OR(4)
		!Allegiance(Myself,ENEMY)
		!IsActive(Myself)
		StateCheck(Myself,STATE_INVISIBLE)
		StateCheck(Myself,STATE_IMPROVEDINVISIBILITY)
THEN
	RESPONSE #100
		NoAction()
END
I guess it's meant to cut off the combat blocks below this block from firing under inappropriate circumstances and I don't think there is much to be done about it, short of rewriting the entire combat script.

In ar3200, the looping blocks are of this type:
IF
	GlobalLT("CearwinQuest","GLOBAL",2)
THEN
	RESPONSE #100
		TriggerActivation("DoorS001",FALSE)
		Continue()
END
There are at least 4 blocks of this type that can loop under certain circumstances. They need (area-scope) variables to keep them from firing more than once. E.g.:
[code]
IF
  GlobalLT("CearwinQuest","GLOBAL",2)
  Global("whateverprefixthismodusesDoorS001","ar3200",0)
THEN
  RESPONSE #100
	SetGlobal("whateverprefixthismodusesDoorS001","ar3200",1)
	TriggerActivation("DoorS001",FALSE)
	Continue()
END
Obviously, if the mod is available for multiple platforms, the area will need to be appropriate for the platform.

In ar3400, the looping block is of the same type as the ones in ar3200. In this case it is:
IF
	PartyHasItem("NTPBLET1")
THEN
	RESPONSE #100
		TriggerActivation("TRAN51PB",TRUE)
		Continue()
END
Solution is the same as for ar3200.

In ar4600, the looping block is of the same type as the ones in ar3200. In this case it is:
IF
	Global("DragonSpawn","GLOBAL",0)
THEN
	RESPONSE #100
		TriggerActivation("TranC006",FALSE)
		Continue()
END
Solution is the same as for ar3200.

In ar7900, this is the looping block:
IF
	GlobalGT("Chapter","GLOBAL",5)
THEN
	RESPONSE #100
		ActionOverride("FLAMBRID",DestroySelf())
		Continue()
END
It needs an Exists("flambrid") trigger, or preferably a do-once variable like the area blocks above.

In ar8700, there's a drow item check series of blocks, the whole crap loops because of this block:
IF
	Global("DROWITEMCHECKDONE","GLOBAL",0)
THEN
	RESPONSE #100
		SetInterrupt(TRUE)
END
The missing Continue() action causes the script to start over from the top and DROWITEMCHECKDONE is consequently never set to 1.


I'm not quite sure why dw#1inv5 and dw#1inv8 loops, but seeing as how DavidW supports his mods, it might be worth asking in the SCS forum if he can have a look at it.

Edited by Wisp, 25 December 2009 - 06:22 AM.


#5 Lollorian

Lollorian

    smiley addict

  • Member
  • 4150 posts

Posted 25 December 2009 - 06:32 AM

In ar3200, the looping blocks are of this type:

IF
	GlobalLT("CearwinQuest","GLOBAL",2)
THEN
	RESPONSE #100
		TriggerActivation("DoorS001",FALSE)
		Continue()
END
There are at least 4 blocks of this type that can loop under certain circumstances. They need (area-scope) variables to keep them from firing more than once. E.g.:
[code]
IF
  GlobalLT("CearwinQuest","GLOBAL",2)
  Global("whateverprefixthismodusesDoorS001","ar3200",0)
THEN
  RESPONSE #100
	SetGlobal("whateverprefixthismodusesDoorS001","ar3200",1)
	TriggerActivation("DoorS001",FALSE)
	Continue()
END
Obviously, if the mod is available for multiple platforms, the area will need to be appropriate for the platform.

These are from Stone of Askavar (forum) ... soa\snips\4300.baf

In ar3400, the looping block is of the same type as the ones in ar3200. In this case it is:

IF
	PartyHasItem("NTPBLET1")
THEN
	RESPONSE #100
		TriggerActivation("TRAN51PB",TRUE)
		Continue()
END
Solution is the same as for ar3200.

NTotSC\BAF\Area\AR3400.baf ... NTotSC Forum

In ar4600, the looping block is of the same type as the ones in ar3200. In this case it is:

IF
	Global("DragonSpawn","GLOBAL",0)
THEN
	RESPONSE #100
		TriggerActivation("TranC006",FALSE)
		Continue()
END
Solution is the same as for ar3200.

DSotSC\BAF\Area\AR4600.baf ... DSotSC Forum

In ar7900, this is the looping block:

IF
	GlobalGT("Chapter","GLOBAL",5)
THEN
	RESPONSE #100
		ActionOverride("FLAMBRID",DestroySelf())
		Continue()
END
It needs an Exists("flambrid") trigger, or preferably a do-once variable like the area blocks above.

This is BGT\Base\BAF\ar7900.baf :unsure: ... BGT Forum

In ar8700, there's a drow item check series of blocks, the whole crap loops because of this block:

IF
	Global("DROWITEMCHECKDONE","GLOBAL",0)
THEN
	RESPONSE #100
		SetInterrupt(TRUE)
END
The missing Continue() action causes the script to start over from the top and DROWITEMCHECKDONE is consequently never set to 1.

DSotSC\BAF\Area\AR8700.baf

I'm not quite sure why dw#1inv5 and dw#1inv8 loops, but seeing as how DavidW supports his mods, it might be worth asking in the SCS forum if he can have a look at it.

SCS Forums :cheers:

Cheers,
Lol

Edited by Lollorian, 25 December 2009 - 05:43 PM.

"I am the smiley addict, yellow and round, this is my grin :D when I'm usually around :P.
When there's trouble brewing, see me post, cuz it's usually a wall o' yellow and your eyes are toast!!!"

BWP GUIDE - BWP FIXES - impFAQ - NPC LIST - KIT LIST - AREA LIST

GitHub Links : BWP Fixpack | Lolfixer | BWP Trimpack | RezMod


#6 SimPanssi

SimPanssi
  • Member
  • 6 posts

Posted 25 December 2009 - 10:16 AM

So it seems this is too complicated for me to solve. I know nothing about modding. :huh:

Only few questions left:

Do these problems exist in these mods (bugs), or is it just something I have done in the game that is causing this? Or something went wrong when I installed BWP.

In other words, if I start a new game is it possible that I can play the game to the end of ToB without ever seeing this annoying stuttering?

Thanks, SimPanssi

Edited by SimPanssi, 25 December 2009 - 10:26 AM.


#7 Chevalier

Chevalier

    Knight of the Realms

  • Modder
  • 2405 posts

Posted 25 December 2009 - 10:28 AM

In other words, if I start a new game is it possible that I can play the game to the end of ToB without ever seeing this annoying stuttering?

Not likely. :angry:

It is not really a bug with one mod, but too many mods adding things and not clearing them out when not needed. :blink:

I Ride for the King!


a.k.a. Chev


#8 10th

10th
  • Member
  • 621 posts

Posted 25 December 2009 - 11:49 AM

The problem with
IF
	Global("DROWITEMCHECKDONE","GLOBAL",0)
THEN
	RESPONSE #100
		SetInterrupt(TRUE)
END

isn't only that it causes a script loop, which up to a certain point is probably intentional, as the last big dungeon in DSotSC features respawning drow, but this also blocks every addition from other mods below that from executing.

Over at kerzenburg.baldurs-gate.eu we had a report from one gamer, that he couldn't get the ogres from BG1UB's Shilo Chen quest to spawn (which does an EXTEND_BOTTOM). I had the same problem, but could get it to work by moving BG1UB's script block above the DROWITEMCHECKDONE.

I'd also like to know if someone with both DSotSC and SCS I installed was able to fight the complete Bandit Camp including the guardians from Tazok's tent. Because the script blocks for this to happen were like BG1UB below those of DSotSC.

10th

Edited by 10th, 25 December 2009 - 11:50 AM.

Avast! You cannot defeat our titan-mounted submarine staffed by cannibal vikings! - Nodwick

"I grab his deceased spirit and piledrive it back into his body, duplicating raise dead." - Psyren Oots board

#9 SimPanssi

SimPanssi
  • Member
  • 6 posts

Posted 25 December 2009 - 12:55 PM

I'd also like to know if someone with both DSotSC and SCS I installed was able to fight the complete Bandit Camp including the guardians from Tazok's tent. Because the script blocks for this to happen were like BG1UB below those of DSotSC.


I killed everyone from Bandit Camp, including the guardians from Tazok's tent. And I had no problems with that.

I also couldn't complete the Shilo Chen quest because the ogres didn't spawn.

#10 10th

10th
  • Member
  • 621 posts

Posted 25 December 2009 - 02:52 PM

@SimPanssi
While all bandits were outside? SCS I introduces the feature that the guardians of Tazok's tent can leave the tent in order to fight alongside the other bandits. That feature is unfortunately also below that drowitemcheck.

10th
Avast! You cannot defeat our titan-mounted submarine staffed by cannibal vikings! - Nodwick

"I grab his deceased spirit and piledrive it back into his body, duplicating raise dead." - Psyren Oots board

#11 Lollorian

Lollorian

    smiley addict

  • Member
  • 4150 posts

Posted 25 December 2009 - 05:35 PM

Well, I thought you'd like to report this to their forums first :P But ... seeing that the DS/NTotSC forums are mostly empty, it might not have been a good idea. But, it's a good thing that stuff like this actually got found out :coolthumb:

@10th: Does that sound like an SCS-DSotSC conflict?? If yes, it'd be better to report it ... and the Stone of Askavar ones as well.

I'll just put this up for fixing by the BWPFixpack than :lol:

Cheers,
Lol

Edited by Lollorian, 25 December 2009 - 05:45 PM.

"I am the smiley addict, yellow and round, this is my grin :D when I'm usually around :P.
When there's trouble brewing, see me post, cuz it's usually a wall o' yellow and your eyes are toast!!!"

BWP GUIDE - BWP FIXES - impFAQ - NPC LIST - KIT LIST - AREA LIST

GitHub Links : BWP Fixpack | Lolfixer | BWP Trimpack | RezMod


#12 Wisp

Wisp
  • Modder
  • 1353 posts

Posted 25 December 2009 - 06:34 PM

@10th: Does that sound like an SCS-DSotSC conflict?? If yes, it'd be better to report it ... and the Stone of Askavar ones as well.

These aren't that kind of mod conflicts. Barring the unlikely circumstance that another mod (un)intentionally removes triggers from the offending script blocks, these problems are wholly bugs in e.g. DotSC or Stone of Askavar. They exist even if e.g DotSC is the only mod installed (but they obviously only sabotage mod X if mod X is installed).

#13 SimPanssi

SimPanssi
  • Member
  • 6 posts

Posted 25 December 2009 - 10:17 PM

@SimPanssi
While all bandits were outside? SCS I introduces the feature that the guardians of Tazok's tent can leave the tent in order to fight alongside the other bandits. That feature is unfortunately also below that drowitemcheck.

10th


I fought the guardians inside Tazok's tent.