Jump to content

SCS2 system requirements?


dizzyorange

Recommended Posts

Hope this question has not been asked before.

 

DavidW, you mentioned previously that the extended scripts of SCS2 (and all other tactical mods) can lead to lag on older machines and possibly on modern PCs as well. May I ask what computers you are using as references?

 

Specifically, do you know how the scripts compare to the eSeries player AI scripts? I know they are two very different things, but the activating an eSeries script on all six of my party members causes noticable lag on my machine, one that I would consider at the low end of what might considered "modern".

 

2GHz Mobile Sempron (budget processor, not really comparable to a 2GHZ Athlon64 or newer dual-core Pentium)

896mb RAM

mobility Radeon x200

Link to comment

On your machine it shoul be playable but you'll surely notice some slowdown when enemies' scripts are loaded and when Simulacrums or Project Images are fired. I've beta-tested it on a AMD 2.4 Ghz with 1024 Ram: the slowdown when a coningency is fired is a bit annoying and there's an almost undetectable lag but a part from that the game is still playable and i can assure you that the scripts DavidW has wrote are really great and the same enemy even react in different ways every time you face him making the game much more fun to re-play if you can bear the little lagness.

Link to comment

Basically there are two sorts of slowdown:

 

1) a one-off delay when some creature (or worse, lots of creatures) with long scripts are created - caused by the engine taking a moment to get set up to handle that creature(s)

 

2) a continuing lag during play, caused by the engine taking just a little too long to execute a complicated script as combat goes on.

 

 

I think you'll see (1) a fair bit in playing SCS II: there'll be a 0.5sec-2sec delay when high-level wizards (and possibly beholders) appear, and a similar delay when you enter new areas. I hope you won't see (2) (at least, not really detectably) except on a very old computer but I confess I haven't tested it. (My computer is something like 2.9 GHz, can't remember the graphics-card make but it was new 18 months ago but not state-of-the-art or bought for gaming).

Link to comment

David, I'm sure you are already familiar with this method, but I thought I'd mention it just in case. :thumbsup: Using a special NoAction() block on top of your scripts can be a great performance saver. For example, I use such blocks for all of the scripts in my Shadow Thief Improvements to prevent dozens of pointless checks from running before an opponent has even been spotted:

 

IF
Global("RR#Active","LOCALS",0)
OR(4)
	AttackedBy([ANYONE],DEFAULT)
	TookDamage()
	Heard([ANYONE],124)
	See([GOODCUTOFF])
THEN
RESPONSE #100
	SetGlobal("RR#Active","LOCALS",1)
	Shout(124)
	Continue()
END

IF
OR(4)
  Global("RR#Active","LOCALS",0)
  StateCheck(Myself,STATE_CHARMED)
  StateCheck(Myself,STATE_PANIC)
  StateCheck(Myself,STATE_DEAD)
THEN
RESPONSE #100
	NoAction()
END

IF
Global("RR#Active","LOCALS",1)
!InActiveArea(Myself)
!See([GOODCUTOFF])
THEN
RESPONSE #100
	NoAction()
END

 

The !InActiveArea(Myself) check is also very useful as it stops the scripts from running if the party leaves the master area but is still within one of the ancillary areas (i.e. when the party enters an indoor structure without the "party required" flag). BTW, you can ignore the STATE_CHARMED and STATE_PANIC checks as, they are just something I add to all of my AI scripts.

Link to comment
It hadn't occurred to me to put a STATE_DEAD in, actually.

 

It's mainly there to prevent silliness like contingencies and spell triggers popping up on dead characters. :thumbsup:

 

Doesn't the InActiveArea stop enemies fighting when you split the party in some circumstances?

 

Yes, because it returns true if Player1 is not in the current area. That's why I've put a !See([GOODCUTOFF]) in there as well.

Link to comment

Archived

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

×
×
  • Create New...