Next up...holy water arrows. - by New Horizon
str8g8 on 16/9/2005 at 16:30
Well, it's just my opinion of course, but I think the timeout was a great piece of game design ... even though I didn't like it at the time ... in retrospect I can see that was the point; to make the player feel more vulnerable, to increase the tension ... like when you squeeze off that last shot just a little too early because you're nearly out of time, and then miss :)
SubJeff on 16/9/2005 at 17:16
Yes, that's true. But the same tension could have been achieved with very limited holy water arrows.
Bardic on 16/9/2005 at 17:35
Yeah, but there was nothing like leading 5-10 zombies to the fountain room, so you could try to take a couple out with each arrow. If you didn't get to the fountain in time you had just ticked off a bunch of zombies with no real way to defend yourself.
If you just had a number of arrows, you could lead them to a room with a ledge and pick them off as they walked in.
New Horizon on 16/9/2005 at 17:36
This is what I have tried so far.
In the gamesys, I have put a trigger script on the holy water flask that reads.
Condition:
When I am used in a way from the inventory.
Action:
Send Trigger Message[Holy Water Used]
Reset script conditions and actions.
On the WaterArrowStimExplosion, I have.
Condition:
Received Trigger Message [Holy Water Used]
Action:
[Can't find an appropriate action.
Apparently Weapon Stimulus isn't used for the player weapons anymore.
I know I'm probably missing something.
New Horizon on 16/9/2005 at 17:43
Quote Posted by Subjective Effect
Yes, that's true. But the same tension could have been achieved with very limited holy water arrows.
True, but at the same time. Have two water based arrows is redundant. The challenge for the player is to choose whether or not to deplete their supply of precious water arrows. I'm hoping to make this version more realistic...hopefully I'll be able to make the flask extend over four or five arrows...signifying the bottle is empty.
New Horizon on 16/9/2005 at 18:00
Damn, really don't know how I can do this. I can't seem to apply the stimulus to the water arrow when I use the holy water flask...so I guess the other option is to try and swap the water arrow and holy water arrow from inventory and back again.
Any thoughts?
New Horizon on 16/9/2005 at 21:17
Had another idea, I just don't know if the existing conditions/ actions will support it fully yet. I think this will be the easiest way to accomplish the goal and create some thread of independence between the two arrows.
On the holy water flask: Script 1
Condition:
When I am used in any way from the inventory.
Action:
Send Trigger Message [holywater used]
Reset Scripts and Actions.
On Holy Water Arrow:
Condition:
Received Trigger Message [Holy Water Used]
Action:
Add -3- [HolyWaterArrow] To player inventory.
On Water Arrow:
Condition:
Received Trigger Message [Holy Water Used]
Action:
Remove 3 Water Arrows from player inventory.
Basically a tit for tat method that will help balance the players inventory. The holywater arrows won't expire but if you use them you have still lost water arrows.
There are some holes in this method though...the player might not have 3 or more water arrows...so, I can either ignore this or try to find a way to Query if there are 3 or more arrows in the inventory before the system places 3 holy arrows. If there are less than three....you only get 1 holy arrow....again, just some auto balancing. Perhaps there is a better way, but I'm not sure what else to try.
Edit
I think I figured it out. I'll post the results once I have tested.
Shockeye on 17/9/2005 at 02:23
Quote Posted by New Horizon
The challenge for the player is to choose whether or not to deplete their supply of precious water arrows.
This gives me an interesting idea. Anyone played KOTOR2? There was this work bench which you used to modify weapons etc...
What if Garrett had to make all his special arrows and/or mines/bombs. He collects elemental crystals, HW etc and combines them with broadheads to build special arrows.
Adds this decision making element to planning a mission. Should I use my gas xtal to make a gas arrow or a gas mine? Water arrow or HW arrow
And maybe more comninations to make different arrows ... oily moss arrows that give off gas and explode :joke:
It always puzzled me why these castles had their armories stocked with thieving equipoment. Why does a castle guard have noisemaker arrows? Garrett should have to custom make these sort of things.
New Horizon on 17/9/2005 at 04:24
Gah, this is really starting to chap my ass. LOL
It 'sort of' works guys.
I've tried numerous script combinations but I just can't seem to get it to do what I need it to do. Perhaps someone can shed some light for me.
This is my existing...semi-working...setup.
Script On HolyWater Flask
Condition:
When I am used in a way from the inventory.
Action:
Send Trigger [HolyWaterUsed]
Reset Script Conditions and actions.
----------------------------------------------------------------------
Scripts On Water Arrow
Condition:
Received Trigger [HolyWaterUsed]
When [WaterArrow] count in inventory becomes [equal to] 0
Query if [MaxInventoryStack] is equal to 0 on any linked objects [Myself]
Action:
Add [0] [HolyWaterArrow] Objects to the player inventory
Delete [0] [WaterArrow] Objects from the player inventory
Reset Script Conditions and actions.
-----------------------------------------------------------------------
Condition:
Received Trigger [HolyWaterUsed]
When [WaterArrow] count in inventory becomes [equal to] 1
Query if [MaxInventoryStack] is equal to 1 on any linked objects [Myself]
Action:
Add [1] [HolyWaterArrow] Objects to the player inventory
Delete [1] [WaterArrow] Objects from the player inventory
Reset Script Conditions and actions.
------------------------------------------------------------------------
Condition:
Received Trigger [HolyWaterUsed]
When [WaterArrow] count in inventory becomes [equal to] 2
Query if [MaxInventoryStack] is equal to 2 on any linked objects [Myself]
Action:
Add [2] [HolyWaterArrow] Objects to the player inventory
Delete [2] [WaterArrow] Objects from the player inventory
Reset Script Conditions and actions.
-------------------------------------------------------------------------
Condition:
Received Trigger [HolyWaterUsed]
When [WaterArrow] count in inventory becomes [greater than equal to] 3
Query if [MaxInventoryStack] is [greater than equal to] 3 on any linked objects [Myself]
Action:
Add [3] [HolyWaterArrow] Objects to the player inventory
Delete [3] [WaterArrow] Objects from the player inventory
Reset Script Conditions and actions.
-------------------------------------------------------------------------
The 'when' before the 'query' is likely redundant but I thought I would try it as Krypt said that they should be paired. I had tried them separately and was able to get the same results as if they were paired.
The results I get are this.
Results
15 water arrows in my inventory.
I use the flask from inventory.
Gain 3 HolyWater Arrows, lose 3 Water Arrows. Success.
I then deplete my water Arrows to 2.
Use another flask from inventory.
Gain 3 HolyWater Arrows, lose remaining water arrows. Failure.
I then use one last Flask to see what happens.
No holywater arrows are gained. Success.
----------------------------------------------------------------------
The equal to 0 script isn't needed, since nothing will happen when I'm out of water arrows but as for when I'm down to 1 or 2 water arrows, I simply can't figure out how to make the game engine understand what I want it to do. I need it to give me 3 holywater arrows when I have three or more water arrows but only give 2 when I have 2 water arrows, or 1 when I have 1 water arrow.
Any thoughts or assistance is greatly appreciated at this point. I really don't know what I'm doing with these scripts...so there is probably a much more 'correct' way to do this. LOL If you're around Krypt, I could definately use your guidance. :)
Crispy on 17/9/2005 at 08:49
Quote Posted by str8g8
Well, it's just my opinion of course, but I think the timeout was a great piece of game design ... even though I didn't
like it at the time ... in retrospect I can see that was the
point; to make the player feel more vulnerable, to increase the tension ... like when you squeeze off that last shot just a little too early because you're nearly out of time, and then miss :)
Yeah, that's true, and the timeout did give more tension than a count would. If you know you have 3 holy water arrows, you can use them at your leisure, walk around to find the zombies you want to take out, and take time aiming. If you're allowed to let off however many you can manage in 30 seconds, time becomes crucial - you have to rush, taking less time to aim and possibly missing as a result. On the flip side, you can fire off 10 holy arrows in one go if you need to - assuming you're skilled enough!
NH - It sounds like "Received Trigger" is a When-type condition, which might be causing problems as you're not suppose to have two Whens in one script. Try deleting the second When condition, so you end up with:
Received Trigger [HolyWaterUsed]
Query if [MaxInventoryStack] is equal to 0 on any linked objects [Myself]
... and so on.