TTLG|Thief|Bioshock|System Shock|Deus Ex|Mobile
Page 2 of 3 FirstFirst 123 LastLast
Results 26 to 50 of 67

Thread: New Scripts: tnhScript 2.1 [final] Public Scripts 2.1 [second test]

  1. #26
    Member
    Registered: May 2006
    Location: Russia
    I stole this method from 'Broken Triad'.

  2. #27
    Desperately Dodgy Moderator
    Registered: Nov 2001
    Location: Fields of bluegrass
    Wow, there's a surprise! I stole the method used for thrown weapons and the "hidden" weapon in Deathmatch from the Staff of Far Reach.

  3. #28
    Member
    Registered: Jan 2001
    Location: Formby, NW England
    It's been a while since I redid one aspect of the conv, so I thought I'd also converted it to using ScriptController to show the right page. Now that I've just looked again, I can see that I'm still using the repeating frob method.

  4. #29
    Member
    Registered: Aug 2001
    Location: Virginia, USA
    Here's a tip if you're using script.osm. TrapSMTrans and Forwarder are good for handling the ScrMessage action in conversations.

  5. #30
    Member
    Registered: Aug 2001
    Location: Virginia, USA
    Bump for final release.

    I've been using the new scripts, both TNH and Pub, in a number of existing FMs and so far not a single glitch. Finally got an excuse to play DP2. After being killed by the scarecrow right off the bat... I got as far as the shadow room before getting stuck. Worried that it might have been a script, I checked in Dromed and see that it's just an undersized OBB trigger. I walked right by the thing but must've only clipped a corner. Those things are really unreliable.

    Anyway, here's the official tnhScript and a preview of Public Scripts.

  6. #31
    Desperately Dodgy Moderator
    Registered: Nov 2001
    Location: Fields of bluegrass
    Which trigger did you miss? Glad to hear it seems to be working correctly with the new releases. There's a lot of scripting in that mission.

  7. #32
    Member
    Registered: Aug 2001
    Location: Virginia, USA
    No, that wasn't it at all. Turns out I had been playing the mission without tnhScript. The OSM had the wrong name.

    Once I set that right it all went like a breeze. Well, as much as you can call being stuck in an endless nightmare a "breeze".

    I was a bit amused to see a couple custom objects from Amnesia. (the hanging candle lantern and chain) And the only complaint is I was disappointed that the egg pods weren't alive. Those things gave me a fit in SS2 (especially the swarm pods) so I was creeping through that sewer real timid until I realised I could smack 'em with a sword and nothing would happen.

  8. #33
    Desperately Dodgy Moderator
    Registered: Nov 2001
    Location: Fields of bluegrass
    Ah, yes, I've taken to renaming all osm modules in my missions. It started with gen and the problems with the patched version in the ZIP not getting installed.

    Anyway, uhm.... the pods DO in fact do something, and all you have to do is bump into them. Although the sword should do the trick too. As for your lantern - sorry I didn't credit you, I got that mission from Will with no attributions and didn't know where most of that stuff came from, I thought it was mostly from DEDx. I'll add you to the readme when and if I ever do an update.

  9. #34
    Member
    Registered: Aug 2001
    Location: Virginia, USA
    So nothing to say on Public Scripts? It's a bit awkward when no one gives me any bug reports. Make something up if you have to.

    A while back I recall some talk about WindowShade. I've got that here, as well as ControlWindowShade. But I made a small tweak to how they act in TDP. When the game starts, I change the textures to match the current light state. But perhaps you have a perverse reason for the light and textures to be out of synch initially? I can't imagine why, so I'll do it this way unless someone speaks out.

    Then there's the elementals. TDP is supposed to make them shrink upon dying. But I don't think it was ever used. They kept SlayResult=Normal so they just die and disappear. But I can set SlayResult=NoEffect and have the scale tweq destroy the elemental when it completes. But honestly, I think it looks dumb. Which is probably why the original games didn't use it. So is it worth worrying about that part of the script working? The issues are:
    - How fast should the scale be? TDP made the fade time take 1000ms always. I think a faster speed is at least slightly less annoying.
    - Should the attached particles be on or off when shrinking?

    And are there any T1/G scripts that you really want in the next release? I've got through the Bonehoard scripts, and a few scattered ones from other missions. But some of the tricky ones like the Assassins look-back script could take time and I'd rather get a release done sooner rather than later. And I still haven't tested anything in Thief 1 or SS2.

  10. #35
    Member
    Registered: Jan 2001
    Location: Formby, NW England
    I'll do some testing over the next few days, but with so many scripts it would be best if a few others did as well...

  11. #36
    Member
    Registered: Jan 2001
    Location: Formby, NW England
    CommandControl sems to have stopped working. I tried a variety of triggers (frob button, enter boundstrigger etc) but the script doesn't seem to respond.

    TrapKillEvents works, but if the player tries to look around while it's active, when the timer expires the view will instantly snap to the direction in which the player tried to look.
    Things go a bit haywire if the player is moving/rotating when the trap is activated. The motion will continue while the trap is active. In the case of moving, the player will keep going even after the timeout. Perhaps this trap could also issue a halt_player command, which works in Thief2.exe.

    TrapCamAttach: What does forcereturn do? I don't understand the description "Always return the camera". Return to what? When setting it to true, I can't see any difference in the object's behaviour.

    TrapFreezePlayer: freeze_speed=-1 is an amusing setting. As a temporary thing, it might go well in a 'The Sword' type of mission. Imagine how evil it would be to have it triggered via an AI's Alert Response. Then the player tries to run away...

    I will do more later.

  12. #37
    Member
    Registered: Jan 2009
    Location: Germany
    Sorry for my english, because it is difficult to explain this
    I already use Public Scripts in my mission, bot only a few of them. What I noticed is TrapCamAttach. If the object, that has this script, is hitten by a explosion (from a FireBolt or FireArrow) and I use this object again, the view origin is anymore from the object. It seems that the viewpoint is falling trough the solid space.
    Because I have no idea how I can get rid of this problem, I have removed the ExplodeMe property from my hierachy. And it works now.

  13. #38
    Desperately Dodgy Moderator
    Registered: Nov 2001
    Location: Fields of bluegrass
    Quote Originally Posted by R Soul View Post
    TrapKillEvents works, but if the player tries to look around while it's active, when the timer expires the view will instantly snap to the direction in which the player tried to look.
    Things go a bit haywire if the player is moving/rotating when the trap is activated. The motion will continue while the trap is active. In the case of moving, the player will keep going even after the timeout. Perhaps this trap could also issue a halt_player command, which works in Thief2.exe.
    This would be wonderful, if it works. I tried to manually do a halt_player in Deathmatch during the player respawn sequence, but it didn't work. I think what I did eventually was have every roombrush be concrete and do a halt_player on TrigPlayer. It was easy in that mission since it only had a few roombrushes, but it might work much better and be easier if the script did this itself.

    Quote Originally Posted by R Soul View Post
    TrapCamAttach: What does forcereturn do? I don't understand the description "Always return the camera". Return to what? When setting it to true, I can't see any difference in the object's behaviour.
    My understanding is that if the player takes combat damage, the view is returned to the player from the camera, so he has a chance to defend himself. I've never tested it in any release of the script though.


    PsymH - I always use a marker with TrapCamAttach, which shouldn't have that problem.

  14. #39
    Member
    Registered: Aug 2001
    Location: Virginia, USA
    I ask for feedback from Public Scripts and y'all start going on about tnhScript.

    Quote Originally Posted by R Soul View Post
    CommandControl sems to have stopped working. I tried a variety of triggers (frob button, enter boundstrigger etc) but the script doesn't seem to respond.
    Is your design note just "command"? It has to be "on=command". I used to let you make shortcuts but not anymore.

    TrapCamAttach: What does forcereturn do? I don't understand the description "Always return the camera". Return to what? When setting it to true, I can't see any difference in the object's behaviour.
    It has to do with more than one remote camera. Activate one camera than make TurnOff be sent to a different TrapCamAttach. This also affects the scouting orb.

    Quote Originally Posted by PsymH View Post
    I already use Public Scripts in my mission, bot only a few of them. What I noticed is TrapCamAttach. ...
    Again, this is tnhScript, not Public Scripts. (My apologies. Please continue.)
    If the object, that has this script, is hitten by a explosion (from a FireBolt or FireArrow) and I use this object again, the view origin is anymore from the object. It seems that the viewpoint is falling trough the solid space.
    Because I have no idea how I can get rid of this problem, I have removed the ExplodeMe property from my hierachy. And it works now.
    Does setting Physics\Controls\Location+Rotation help?

    Also, don't give the object a damage model. Remove the hit points property from the object and its archetypes. Note that it isn't enough to merely set hit points to 0. If the object does get damaged, at least set the EngineFeatures\SlayResult to Normal or Destroy.

  15. #40
    Member
    Registered: Aug 2007
    Location: LosAngeles: Between Amusements
    Quote Originally Posted by Telliamed View Post
    A while back I recall some talk about WindowShade. I've got that here, as well as ControlWindowShade. But I made a small tweak to how they act in TDP. When the game starts, I change the textures to match the current light state. But perhaps you have a perverse reason for the light and textures to be out of synch initially? I can't imagine why, so I'll do it this way unless someone speaks out.
    You may be thinking of this thread.

  16. #41
    Member
    Registered: Jan 2001
    Location: Formby, NW England
    Quote Originally Posted by Telliamed View Post
    I ask for feedback from Public Scripts and y'all start going on about tnhScript.
    Oops
    Sorry.

    Is your design note just "command"? It has to be "on=command". I used to let you make shortcuts but not anymore.
    It was just "command". I know it says "Inherits from GenericControl", but it didn't occur to me to follow the link.
    "on=command" works fine.

  17. #42
    Member
    Registered: Aug 2001
    Location: Virginia, USA
    Quote Originally Posted by Yandros View Post
    This would be wonderful, if it works. I tried to manually do a halt_player in Deathmatch during the player respawn sequence, but it didn't work. I think what I did eventually was have every roombrush be concrete and do a halt_player on TrigPlayer. It was easy in that mission since it only had a few roombrushes, but it might work much better and be easier if the script did this itself.
    "halt_player" only works in Dromed. The script service lets me stop to velocity control, but not rotation. (Not that anyone uses the keyboard for turning anyway, but...) And even then it's not very dependable.

    The root of the problem of course is losing the key-up events. Even when I can manage to stop the player movement, the game is still stuck believing that a key is pressed. Which could also be crouch, use weapon, use item, creep, jump, etc.

    What it comes down to is you're better off not using TrapKillEvents. I'm sorry I ever wrote the damn thing. (It was, I believe, my third or fourth script.) You could instead be using a camvator or TrapFreezePlayer, and TrapDisarmPlayer.

  18. #43
    Member
    Registered: Jan 2001
    Location: Formby, NW England
    I tested the scripts in the first section. Here are my comments:

    TimedStimulator
    device parameter not working? Tried device=1 and device="true"

    TrigDamageRTC
    Not sure what to do with this

    TrapPhantom
    The fade_time parameter didn't feel linear when no curve was set. The fade-in speed seemes to be quite fast up to maybe 0.5 alpha (or perhaps less), then it seemed to go at a slower rate for the remainder of the fade-in.

    TrapMotion
    Some motions will play, some won't. E.g. hippat played, humdie1, humwalks and humairpt1 didn't. I think it'll only play motions which have been referenced by at least one motion schema.

    TrigFlipFlop
    Should be TrapFlipFlop

    TrapQVarText, QVarPlaque, QVarScroll
    These need explaining in more detail, e.g. how do we tell it to substitute a qvar?

    TrapMissionQVar
    Could not get this to work.
    Marker: Scripts: TrapMissionQVar, Design note: initqv=5, Qvar: test
    TrigQVar: =5:test - didn't trigger

    Not sure what this is for though. Can't we just use quest_create_mis or edit mission quest data to set the initial value?

    TrapCampaignQVar
    Didn't test, but since this one is in tnhScript, this seems superfluous.

    TrigQuestVar
    Is this for TDP users?

    TrapRequireOne, TrapRequireOneOnly
    These work fine with CD links. What are the ScriptParms links meant for?

  19. #44
    Member
    Registered: Aug 2001
    Location: Virginia, USA
    Quote Originally Posted by R Soul View Post
    TimedStimulator
    device parameter not working? Tried device=1 and device="true"
    I really hate that script. :shakefist:

    TrigDamageRTC
    Not sure what to do with this
    "Return To Culprit" It's the vampire blade from Calendra's Legacy. Put spy on a sword and TrigDamageRTC on a victim.

    TrapPhantom
    The fade_time parameter didn't feel linear when no curve was set. The fade-in speed seemes to be quite fast up to maybe 0.5 alpha (or perhaps less), then it seemed to go at a slower rate for the remainder of the fade-in.
    Could be a quirk of the renderer. How does it compare to the old script?

    TrapMotion
    Some motions will play, some won't. E.g. hippat played, humdie1, humwalks and humairpt1 didn't. I think it'll only play motions which have been referenced by at least one motion schema.
    Curious. Don't think there's anything I can do about it.

    TrigFlipFlop
    Should be TrapFlipFlop

    But is anyone already using "TrigFlipFlop" in a mission?

    TrapQVarText, QVarPlaque, QVarScroll
    These need explaining in more detail, e.g. how do we tell it to substitute a qvar?
    Oops, I forgot the str files. And the documentation got skipped over by the automatic doku-maker.
    Code:
    /**
     * Script: BaseQVarText
     * Properties: Book\Text, Script\Use Message
     *
     * Displays text with substitutions using quest variables.
     * The string ''%{??qvar??}'' will be replaced with the value of the
     * quest variable. ''%?{??qvar??}[a][b]'' will print ''a'' if the qvar is 
     * non-zero and ''b'' otherwise. ''%>??num??{??qvar??}[a][b]'' is 
     * similar, but compares the value to a number. ''>'' can be 
     * one of ''>'', ''<'', ''=''. Whenever a conditional substitution 
     * is made, the string will be re-parsed, so you can have 
     * secondary (and tertiary...) substitutions.
     */
    TrapMissionQVar
    Could not get this to work.
    Marker: Scripts: TrapMissionQVar, Design note: initqv=5, Qvar: test
    TrigQVar: =5:test - didn't trigger

    Not sure what this is for though. Can't we just use quest_create_mis or edit mission quest data to set the initial value?

    TrapCampaignQVar
    Didn't test, but since this one is in tnhScript, this seems superfluous.

    TrigQuestVar
    Is this for TDP users?
    Yes. Rather, the standard qvar scripts are inconsistent and incomplete. These are the same in all the games with all the operations like " and #

    TrapMissionQVar is like TrapQuestVar so you need a full ''=0:foo'' property. The initqv param is for the benefit of TrapCampaignQVar since you can't create them in Dromed.

    TrapRequireOne, TrapRequireOneOnly
    These work fine with CD links. What are the ScriptParms links meant for?
    For tracking which objects have been turned on. All the requirement traps do this (but the original scripts didn't set link data to anything so you can't multiplex scripts)

    You noted that post-readers shouldn't be used with StdBook when a quest variable is being set... Why would you want to do it in any case? You'd end up reading the book twice! (BTW, ignore that button in the demo cow... )

    I had to overhaul TrigAIAwareShift. It wasn't working if the AI had to respond to more than one thing. And I had a lot of "fun" porting the demo cow to Thief 1. (Hint: old Dromed hates it when you change obj_max) Seems to be working for most of the scripts. Looking at the original fire elemental, the shrinking death seems less lame when combined with the death sound, so I guess I'll keep it in at the same speed as Thief 1.

    The traditional LinkTemplate test doesn't seem to work in Thief 1. Trying to set AIAttack on a non-AI has no effect. Is there some other way I can get the archer to shoot at a practice dummy?

    Also, though only NV will care, I keep forgetting that the reply parameter of ReceiveMessage may be NULL. Had to write myself a reminder in the source.

    And for no particular reason, why are some resource folders plural and others aren't? "books" and "strings", but "snd", "fam", and "mesh"... does it make more sense to put something in the "scripts" or "script" folder?
    Last edited by Telliamed; 7th May 2009 at 21:40.

  20. #45
    Member
    Registered: Jan 2001
    Location: Formby, NW England
    Quote Originally Posted by Telliamed View Post

    But is anyone already using "TrigFlipFlop" in a mission?
    What I mean is the documentation is wrong. There is no TrigFlipFlop.

    Quote Originally Posted by Telliamed View Post
    You noted that post-readers shouldn't be used with StdBook when a quest variable is being set... Why would you want to do it in any case?
    By accident. Books are a typical object this script would be used with, and at first I thought this script just handled the qvar and VO, letting StdBook do the text

  21. #46
    Member
    Registered: Aug 2007
    Location: LosAngeles: Between Amusements
    I'm using TrapFlipFlop from Public Scripts. But I never heard of TripFlipFlop. Have you renamed TrapFlipFlop? Do I need to find all my uses of TrapFlipFlop and change them to TripFlipFlop when installing these updated scripts?

  22. #47
    Member
    Registered: Jan 2001
    Location: Formby, NW England
    Quote Originally Posted by R Soul View Post
    What I mean is the documentation is wrong. There is no TrigFlipFlop.
    This

  23. #48
    Member
    Registered: Aug 2001
    Location: Virginia, USA
    Quote Originally Posted by R Soul View Post
    TimedStimulator
    device parameter not working? Tried device=1 and device="true"

    TrapPhantom
    The fade_time parameter didn't feel linear when no curve was set. The fade-in speed seemes to be quite fast up to maybe 0.5 alpha (or perhaps less), then it seemed to go at a slower rate for the remainder of the fade-in.
    Putting the new and old TrapPhantom side-by-side didn't show any significant difference. So I think you just saw an optical illusion. That said, it wasn't very obvious when I put a crate with curve=0 and curve=2 next to each other. This may turn out to be an underused feature. Ohwell.

    TimedStimulator is described wrong. The parameter is false to make it start on its own. But only when created in-game, not from Dromed. So...
    Created in Dromed: Wait to be turned on.
    Emitted, device=yes: Wait to be turned on.
    Emitted, device=no: Start immediately.

    I don't like it but I'm sure there's a mission out there using it. Trying to fix it now would break compatibility.

  24. #49
    Member
    Registered: Aug 2001
    Location: Virginia, USA
    Bump for 2nd pubscripts test. http://whoopdedo.org/projects.php?scripts#PublicScripts

    Please everyone run through the demo COW at least once. There's a copy for Thief 1 as well. Bonus cookies if you can manage to break something. (Try messing with the Hammerite at the end.)

    I stumbled into another fixable bug: "inflate buffer used before end". Or it may also show up as "inflate returned -5". It happens when you try to use a CRF compressed in a particular way. Zlib doesn't recognize the end of data even though the whole file has been decompressed.

    So I may as well make a new patch. While I'm at it, are there any other issues floating around that deserve attention?

  25. #50
    Member
    Registered: Mar 2001
    Location: Ireland
    I had some issues like that (though I don't recall the exact error) with the EP.crf. In the end, I had to use 7-zip to make the zip archive, rather than WinRAR, because the one made by WinRAR couldn't be read. I have no idea why just that particular combination of files resulted in an unreadable zip, when earlier versions of the same file created with WinRAR worked fine.

    I think people would be very pleased if you could increase the hard-coded onscreen poly (1024) or onscreen object (128) limits. Not sure if that's possible, though.

Page 2 of 3 FirstFirst 123 LastLast

Tags for this Thread

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •