Jump to content


Photo

ar0600.ini


  • Please log in to reply
32 replies to this topic

#1 Avenger_teambg

Avenger_teambg
  • Member
  • 604 posts

Posted 13 June 2009 - 12:15 AM

In my ar0600.ini i see:

[ENTERSPAWN]
critters=patron4,patron5,patron6,toady1,toady2,ucho1,ucho2,ucho3,ucho4,ucho5patron1,patron2 ....


There is a missing comma after ucho5 preventing those 2 spawns to occur.

Same file:
harmonium_patrol is commented out, but still exists in the list:
[spawn_main]
events=harmoniumGuards,shadows,harmonium_patrol

This second problem wouldn't cause trouble, just a small inconsistency we had to prepare our engine for.
Avenger

#2 Qwinn

Qwinn
  • Modder
  • 3092 posts

Posted 13 June 2009 - 12:23 AM

Nice catch! Good stuff. The first issue will definitely restore 2 critters to the Clerk's Ward (prostitute and patron), and the second one... hmmm, I think I'll see about restoring those, would be kinda cool and fitting to have a wandering Harmonium patrol in the Clerk's Ward too, maybe I'll be able to figure out why they got disabled and, if it was just a technical issue, fix it.

Qwinn

#3 Qwinn

Qwinn
  • Modder
  • 3092 posts

Posted 13 June 2009 - 12:58 AM

Ok, I checked it out. The first issue you reported is clearly just a bug and fixing it does restore two characters to the Clerk's Ward... one is a prostitute pacing back and forth just north of Vrischika's shop, and the other is a male companion for a female cafe patron who stands just next to Aelwyn. Cool fix as without him, she basically just stands there talking to empty space.

Second issue, there's nothing to restore... the "harmonium_patrol" characters (hp1,hp2,hp3,hp4,hp5,hp6) are all there, their spawns were just moved to the end of the [ENTERSPAWN] critter list. I thought I'd see if there were any unused scripts lying around that would make them actually patrol the area, but there don't seem to be. Good to know about it though.

Thanks lots for the report!

Qwinn

#4 Qwinn

Qwinn
  • Modder
  • 3092 posts

Posted 13 June 2009 - 02:40 AM

I'm really glad you pointed me to that file. Noticed also that two cafe patrons, patron5 and patron6, are duplicated in the spawn list. And -that- made me notice that one of those has an interaction with the bartender over there that aren't working properly.

Qwinn

#5 Avenger_teambg

Avenger_teambg
  • Member
  • 604 posts

Posted 13 June 2009 - 03:15 AM

Well, more to come (while i'm adding a consistency checker into dltcep).

AR1600 has a duplicate section beginning like this:

[team_1_rat_13]

[team_1_rat_13]


This may, or may not disable team_1_rat_13 group. But it caused me 3 hours to hunt a memory leak... :angry:
Avenger

#6 Avenger_teambg

Avenger_teambg
  • Member
  • 604 posts

Posted 13 June 2009 - 03:24 AM

A sample output for similar duplicate entries.

AR1500
duplicate section entry: gulca

AR3016
duplicate section entry: distiller

AR0502
duplicate section entry: guard5

duplicate section entry: guard5


Maybe not all of these are a bug, the distiller might be fine.
But i would be very surprised if guard5 appears :)

Edited by Avenger_teambg, 13 June 2009 - 03:28 AM.

Avenger

#7 Qwinn

Qwinn
  • Modder
  • 3092 posts

Posted 13 June 2009 - 03:29 AM

Yowch. :( Duplicate header removed.

EDIT: This referred to post #5, working on post #6 now. Is that a comprehensive list? If you got more errors along those lines, I'd be happy to fix 'em all.

Qwinn

Edited by Qwinn, 13 June 2009 - 03:43 AM.


#8 Avenger_teambg

Avenger_teambg
  • Member
  • 604 posts

Posted 13 June 2009 - 03:47 AM

I've got more errors, but not of that type.
I cannot supply all errors yet, because i'm still in middle of writing the consistency checker.
And, now i have a question:

most inis got a [nameless] section. This is the respawn point.
ar0402 has no such section. Is this a problem, or not. If it isn't a problem, what to do when TNO dies there?
Avenger

#9 Qwinn

Qwinn
  • Modder
  • 3092 posts

Posted 13 June 2009 - 04:02 AM

AR0402 is the Smoldering Corpse Bar. It's okay if an INI file doesn't have that section. If the section does not exist, TNO's respawn defaults to the Mortuary 2nd floor (AR0202). Example: AR3006A.INI (this is the trap building in Ragpicker's Square with no door that you can only get out of with a bead from Vlask... or by dying.)

Qwinn

#10 fuzzie

fuzzie
  • Member
  • 7 posts

Posted 13 June 2009 - 04:10 AM

AR0402 is the Smoldering Corpse Bar. It's okay if an INI file doesn't have that section. If the section does not exist, TNO's respawn defaults to the Mortuary 2nd floor (AR0202). Example: AR3006A.INI (this is the trap building in Ragpicker's Square with no door that you can only get out of with a bead from Vlask... or by dying.)


That is actually already implemented by in GemRB, Avenger is forgetful! :)

Going a bit off-topic (sorry!): I have a few questions about how things in PS:T work (for instance, are rounds always 2 seconds? It seems so to me, and I'd like to implement that in GemRB, but every post I can find via Google seems to assume they're 6 seconds, the same as Baldur's Gate, and I worry that perhaps round sizes are somehow different). Since you seem to be the person with the most knowledge about how these things work, would you be willing to try to answer some of them were I to post here or email or similar? Or anyone else?

#11 Avenger_teambg

Avenger_teambg
  • Member
  • 604 posts

Posted 13 June 2009 - 04:45 AM

A new class of bugs (reference to a missing spawn section):

ar0203: the repetitive section has a missing closing ] This is surely a bug.

In ar1600 team_1_spawn is commented out, but the reference is still there (this is surely a false positive).
Avenger

#12 Avenger_teambg

Avenger_teambg
  • Member
  • 604 posts

Posted 13 June 2009 - 05:05 AM

Another group of problems (using dltcep output):

AR1500
No guljb.gulkb spawn section referenced in enterspawn:critters
No gulja.gulka spawn section referenced in enterspawn:critters

The problem is that they used a dot instead of comma to separate some spawn entries. This disabled some ghouls from spawning

AR1400
No rat_4 spawn section referenced in enterspawn:critters
No rat_3 spawn section referenced in enterspawn:critters
No rat_2 spawn section referenced in enterspawn:critters

This second one is not so easily fixed as 3 entire sections of data are missing. Maybe it is not a big loss.
Avenger

#13 Qwinn

Qwinn
  • Modder
  • 3092 posts

Posted 13 June 2009 - 05:41 AM

Since you seem to be the person with the most knowledge about how these things work, would you be willing to try to answer some of them were I to post here or email or similar? Or anyone else?


Absolutely feel free to ask anything you like, I'll be happy to answer to the best of my ability.

As for the question... yeah, it -does- seem to me also that a combat round -is- more like every 2 seconds, rather than 6. That explains a bit actually. I wonder if that is a bug or intentional?

Qwinn

#14 Avenger_teambg

Avenger_teambg
  • Member
  • 604 posts

Posted 13 June 2009 - 05:50 AM

Some more in ar1600

AR1600
Invalid spawn_point value: [3898,1705:8] in section wererat14
Invalid spawn_point value: [3898,1705:8] in section wererat13

Ok, this might be fine, but in other places they use a dot as a separator in a spawn point. This is the only place where they use a comma.

And i have a question now:
sometimes there are multiple spawnpoints. If point_select is set to 'r', then the engine picks one randomly.
But sometimes it is written as spawn_select (and spawn_select isn't known by the engine).
I believe these entries are wrong!

example from ar1600:
spawn_point = [1011.2492:14],[1665.2696:6],[1412.2853:10]
spawn_select = r

Also, what is the correct form to write a spawn_point list? Sometimes they are not separated by commas.

Edited by Avenger_teambg, 13 June 2009 - 06:03 AM.

Avenger

#15 fuzzie

fuzzie
  • Member
  • 7 posts

Posted 13 June 2009 - 06:14 AM

As for the question... yeah, it -does- seem to me also that a combat round -is- more like every 2 seconds, rather than 6. That explains a bit actually. I wonder if that is a bug or intentional?


I think it's deliberate; it's the kind of thing that they'd certainly notice, and everything else (attacks per round, weapon speed factors, etc) seems to be scaled to the shorter rounds too (although if you know of anything that is otherwise, I'd be grateful to know). If you turn on end-of-round autopauses (a bit misleadingly named, they autopause at the beginning of rounds, it seems) then it seems quite clear, both for combat and for spells. I'm just so surprised no-one's mentioned it before - I worry I might be missing something obviously contradictory! The fixpack readme/forums/etc have been very useful for their glimpses into how other things work.

#16 Avenger_teambg

Avenger_teambg
  • Member
  • 604 posts

Posted 13 June 2009 - 08:48 AM

check_view_port exists in NUMEROUS spawn ini files, but the exe contains only the 'check_by_view_port' keyword.

And i have only a guess what this would do: probably the spawn wouldn't happen while the spawnpoint is visible on screen?

Edited by Avenger_teambg, 13 June 2009 - 08:49 AM.

Avenger

#17 Qwinn

Qwinn
  • Modder
  • 3092 posts

Posted 13 June 2009 - 09:43 AM

I think you're correct that "spawn_select" should be replaced by "point_select". I will try it and see what happens. Too bad I'm rather unfamiliar with how the spawns in the Warrens of Thought are normally laid out, I really hate that area.

AR1500
No guljb.gulkb spawn section referenced in enterspawn:critters
No gulja.gulka spawn section referenced in enterspawn:critters

The problem is that they used a dot instead of comma to separate some spawn entries. This disabled some ghouls from spawning


Actually, apparently not. Replacing the dot with commas doesn't make any more ghouls spawn for that cutscene. The engine can apparently still parse the fields separated by a dot. I did rename one of the duplicate gulca's to gulfa and added it to the list, which did restore one ghoul to that scene.

I'm not sure whether the point lists should have commas or not. The only two INI files with commas are the fortress shadow area and the warrens of thought. Every other INI that I can see, no commas. I'm guessing they're probably ignored, but I will run some tests and see.

Qwinn

Edited by Qwinn, 13 June 2009 - 09:44 AM.


#18 Qwinn

Qwinn
  • Modder
  • 3092 posts

Posted 13 June 2009 - 09:56 AM

AR1600
Invalid spawn_point value: [3898,1705:8] in section wererat14
Invalid spawn_point value: [3898,1705:8] in section wererat13

Ok, this might be fine, but in other places they use a dot as a separator in a spawn point. This is the only place where they use a comma.


The engine appears to be able to parse this properly as well. The two wererats do spawn.

Qwinn

#19 Avenger_teambg

Avenger_teambg
  • Member
  • 604 posts

Posted 13 June 2009 - 12:07 PM

The remaining questions:

1.
Do you know what 'death_scriptname' is supposed to do?

Used in:
ar0402
ar0700
ar0901
ar3016

2. in ar3016 the distiller section is used as spawn and creature header too. Can this work?

3. check_view_port vs. check_by_view_port
what is it?
if it is useful, will you fix it by changing the .exe or all the ini files? I would probably alter the exe because it is a smaller change, depends on your choice we implement that version in gemrb (well, once we find out what this flag is supposed to do).

4. i also found that commas are highly interchangeable with dots.
What about multiple points separated by commas?
Theoretically, i could write this--> spawn_point = [100.200:8],[100,300].[100.400].[100,500:1][100.600][100,700]
and still have all 6 points as possible spawnpoint ?
Avenger

#20 Qwinn

Qwinn
  • Modder
  • 3092 posts

Posted 13 June 2009 - 01:41 PM

The only one of those I can answer right away is 2... yes, the distiller spawns just fine.

The others, I can't say at this point. Hopefully scient can figure out more when he comes back. (I think he's having connectivity issues).

Qwinn