Jump to content

PST .ini files


Displacer

Recommended Posts

Seems there are more to these than are seen. Looking through the code there are other entries that can be used that are not listed, probably because they do not occur in any of the existing ini files.

 

For instance the following:

 

exit

detail_level

control_var

spawn_time_of_day

ai_ea

ai_general

ai_race

ai_class

ai_gender

auto_buddy

spawn_facing_global

check_crowd

 

etc. etc.

 

There are quite a few more, not in any order and I'm not sure yet what goes under which [] section (pretty sure exit goes under [spawn_main] but not sure about the others)

Link to comment

detail_level is connected to torment.ini/program_options/detail_level. To filter out unimportant critters, if detail level is low.

Btw, only the first letter of detail level counts (High/Medium/Low)

 

Though, there is a bug in the .exe which seems to cause high and medium the same. When parsing the ini file, it sets the value of high when it encounters a 'medium' entry.

Link to comment

Yea a lot of these appear to be overrides to defaults for individual critters. I suppose that gives a lot of flexibility which apparently they didn't take advantage of, doesn't mean others can't though ;)

 

I'll toss up a list soon and maybe someone can play with them and see what they do quicker than I can trace the code for them

Link to comment

OK here's the list I've found. Note it does not contain the nameless entries, they are in another section of code I haven't gotten to:

 

 

::

BlackIsle

events

spawn_main

exit

enter

detail_level

interval

critters

control_var

spawn_time_of_day

spec_var

spec

spec_area

spec_qty

cre_file

create_qty

script_name

ai_ea

ai_general

ai_race

ai_class

ai_gender

ai_specifics

ai_alignment

ai_faction

ai_team

script_override

script_class

script_race

script_general

script_default

script_area

script_specifics

dialog

good_mod

law_mod

lady_mod

murder_mod

death_scriptname

death_faction

death_team

spawn_point

point_select

point_select_var

facing

ignore_can_see

check_crowd

find_safest_point

Save_selected_point

save_selected_facing

spawn_point_global

spawn_facing_global

inc_spawn_point_index

hold_selected_point_key

check_by_view_port

do_not_spawn

auto_buddy

detail_level

time_of_day

 

 

 

Also I have no idea how many of these actually work, what input they take etc. etc.

Link to comment

I didn't find any examples of exit. It doesn't really make sense to spawn creatures in an area on exit.

enter - seems to be an one time spawn when the area is created (at least that's how i implemented it in gemrb).

 

spawn_time_of_day/Blackisle is just a dead string, not used in spawn ini.

Link to comment

Well I could think of one reason for a spawn on exit. Say you go to an area and wreck the place, it would be a nice touch if you had a army waiting for you on your return looking for revenge. Using exit would spawn them to the area without you knowing about it, making for a unpleasant surprise when you returned...

 

More info on [spawn_main], the events entry, and possibly enter and exit can have several arguments. I don't know if there's a limit yet but the arguments can be separated by either a "," or a "."

These arguments can be seen under the actual section label set in "events" (an example would be the "critters" list).

Link to comment

Found something interesting. At the point where it's processing "interval". It appears that it has a minimum. It checks if it's lower than 0x0f and if it is it sets it to 0x0f. Odd since there's several ini files that have a value less than 0x0f. May have been a last minute hack to the code before they shipped

 

Here's the relevant code:

 

.text:007E9DFE				 mov	 edx, [ebp+var_A8]
.text:007E9E04				 cmp	 dword ptr [edx+30h], 0Fh
.text:007E9E08				 jnb	 short loc_7E9E17
.text:007E9E0A				 mov	 eax, [ebp+var_A8]
.text:007E9E10				 mov	 dword ptr [eax+30h], 0Fh

Link to comment

Archived

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

×
×
  • Create New...