ascottk on 5/3/2006 at 00:05
We know physics have no effect on the player but we could simulate water with elevators. This post is only a starting point and this idea is not functional yet.
So far I added a series of MUSFloorPanelElevators to a subtracted "pool".
(
http://www.ttlg.com/wiki/wikka.php?wakka=WilloWisps)
Follow that tutorial to get the elevators moving. You only need triggerscripts: WillowStart, Willow2, and Willow1from2 on the elevators.
You will also need waypointmarkers near the top & bottom of the pool & name the links (elevatorfloormarker) "1" & "2" for each elevator
On the elevator properties you need to disable the ElevatorCrushStim, & Render>CastShadows=ShadowCasting_False and Transparency=1.0.
You need a PlayerStart at the bottom of the pool & add Teleport>TeleportDestName=begin (or whatever). Then add volume near the top of the pool and make an association link from the volume to each elevator with the script "WaterTransport" on the volume:
When linked volume(s) MYSELF are breached by object(s) at the end of [Association]
Teleport the object(s) at the end of [Association] to DestinationTeleporter=[begin]
Reset script conditions and actions
This might work better if the (semi-stacked: 2+ elevators about 100 unreal units from each other) elevators were transported at random times to the bottom of the pool.
Crispy on 5/3/2006 at 00:53
So basically the elevators just go up continually, getting teleported down to the bottom of the pool when they reach the top? So the player can go up and down but has no control of vertical movement, or am I misunderstanding?
If we could get the player to control the elevators directly somehow...
Perhaps there could be a volume attached to the elevator so that it's always just above Garrett's head when he's standing on the elevator. Then when Garrett breaches the volume (by jumping up), the elevator moves up a floor (with the height of a "floor" being about as high as Garrett). However, when it's finished moving up, the elevator starts moving down slowly. So the player floats downwards but can hit the jump key in order to swim upwards.
I have no idea if that would actually work though. :P
Rantako on 5/3/2006 at 09:59
Sounds promising...
*rushes off to T3ed*
By the way, can volumes be attached to things and moved ingame? I assumed they couldn't since they are more like brushes than smeshes, but I've never actually tried.
EDIT: Volumes can be moved. I tried attaching one to an elevator and it worked.
nomad of the pacific on 5/3/2006 at 13:52
Quote:
Originally posted by Rantako:Volumes can be moved. I tried attaching one to an elevator and it worked.
Wow! I never would have thought that would work! :idea: That opens up a lot of new possibilities! :ebil:
Rantako on 5/3/2006 at 15:38
I tried Crispy's idea (with a few changes) and it worked nicely!
I rigid attached a volume to the elevator. When the player enters the volume, the elevator goes down slowly. When the player leaves the volume, the elevator goes back up to its original position. The volume is low enough that jumping takes you out of it. So to swim upward, you have to jump continuously, and to swim downwards, you just stop jumping.
Combined with the underwater vision from (
http://www.ttlg.com/forums/showthread.php?t=94559) this thread and some sound effects it does feel like proper water! Yay! :)
GlasWolf on 5/3/2006 at 16:01
Wow, cool! Any chance of a quick demo mission?
ascottk on 5/3/2006 at 17:29
Cool, excellent job Crispy & Rantanko :thumb: A demo would be cool & a tutorial would be great :D
Rantako on 5/3/2006 at 17:50
I'm working on scripts for breath at the moment, which could take a while.
So far I've only tried this in a small area using one elevator, so it might not work very well in more complex water. And also, having to jump all the time is probably not the best solution...
But it's a start, and it works!
Once I get breath working I'll upload a unr.
ascottk on 5/3/2006 at 17:57
Quote Posted by Rantako
I'm working on scripts for breath at the moment, which could take a while.
So far I've only tried this in a small area using one elevator, so it might not work very well in more complex water. And also, having to jump all the time is probably not the best solution...
But it's a start, and it works!
Once I get breath working I'll upload a unr.
Jumping was part of the original plans to scale rope arrows so jumping around in water isn't too far off :joke:
Rantako on 5/3/2006 at 20:49
Here's a demo map:
(
http://rapidshare.de/files/14784521/TDSWaterTest1.zip.html) TDSWaterTest1.zip
Just extract it into your TDS folder but make sure to BACK UP FILES FIRST!
It's all very basic at the moment; each pool uses only one elevator, with no other tunnels or anything. The elevators are also quite slow, they will probably need to be made faster later.
To swim up, jump continuously. To swim down, stop jumping. Both pools wotk the same. If I've included all the right files, when you enter the water you
should hear a splash, start sinking, hear an underwater sound playing, the screen should tint blue and the base FOV should change. When you come out of the water, all this should be turned off.
Breath: There is no visual indicator of how much air you have left (yet). Instead you need to open the console and enter 'globaldiag filter=Test*' (without quotes). The int 'Test_BreathCounter' increases by one every second when you are under water. When it reaches 30 you will begin taking damage (so you have 30 seconds of air). Coming out of the water resets this counter to 0.