Jump to content

Proof that a player can fly in Skyrim well may be more like swimming


hex_ratt

Recommended Posts

  • Replies 304
  • Created
  • Last Reply

Top Posters In This Topic

I was just watching the new Skyrim mods episode and it seems it has a hover animation in it. Check it out:

 

http://skyrim.nexusmods.com/downloads/file.php?id=10809 (5:26)

 

Though it is for females, but I think for the start its better than a falling animation even for males...

 

Skyrim has animations that can be used for hovering player.

Edited by hex_ratt
Link to comment
Share on other sites

there are a few animations that could work with hovering, this one for example "IdleT02AscendMale" its very cool, and even plays a nice sound, but locks the player controls, but something you guys said spark something in my head, how about if a play that animation and do a SetPlayerControls(true,true,true,..), Ill tell you how that goes.

Conclussion: it does not work as I expected lol.

EDIT2: seems like the function does nothing at all, COOL.

Edited by porroone
Link to comment
Share on other sites

there are a few animations that could work with hovering, this one for example "IdleT02AscendMale" its very cool, and even plays a nice sound, but locks the player controls, but something you guys said spark something in my head, how about if a play that animation and do a SetPlayerControls(true,true,true,..), Ill tell you how that goes.

Conclussion: it does not work as I expected lol.

EDIT2: seems like the function does nothing at all, COOL.

 

How goes your progress?

Link to comment
Share on other sites

Its not like he's showing any proof of that, maybe he is just showing off, I actually got something on the riding dragon process, found out something peculiar. In my early attemps of trying to make the dragonmount I found out how to make it rideable, adding a saddlebone to the skeleton with nifskope. Well thing is there is a function called SplineTranslateToRefNode, turns out with this function I can create my own riding system without having to set the dragon as ActorHorse, so on Activate I tell the player to play the ride horse animation and Translate to the SaddleBone of the dragon, it actually works, you fly with the dragon, but its a bit jumpy, here is the code, maybe somebody could tell me why.

 

Scriptname _DragonFly extends Actor  

Actor property Player auto
import utility
import form
import game
import debug
import ObjectReference

float Ride
float bearing
float elevation
float speed
float posx
float posy
float posz

auto State Idle
Event OnActivate(ObjectReference akSelf)
	Utility.SetIniFloat("fInAirFallingCharGravityMult:Havok",0)
	Player = Game.GetPlayer()
	Ride = 1
	self.SetMotionType(self.Motion_Fixed)
	if Ride == 1
		Fly()
		GoToState("Deactivate")
	endIf
endEvent
endState

function Fly()
while Ride == 1
	SendAnimationEvent(Player,"HorseEnter")
	
	self.SetAngle(Player.GetAngleX(),0,Player.GetAngleZ())
	if Player.IsRunning() || Player.IsSprinting()
		
		posx = Player.GetPositionX()
		posy = Player.GetPositionY()
		posz = Player.GetPositionZ()
		bearing = Player.GetAngleZ()
		elevation = Player.GetAngleX()
		if Player.IsSprinting()
			speed = 2000
		else
			speed = 1000
		endIf
		

		if bearing < 90 
			posx += (bearing)*speed
			posy += (90 - bearing)*speed
			
		elseif bearing > 90 && bearing < 180
			posx +=(180 - bearing)*speed
			posy +=(90 - bearing)*speed
			
		elseif bearing > 180 && bearing < 270
			posx += (180 - bearing)*speed
			posy += (bearing - 270)*speed
			
		elseif bearing > 270
			posx += (bearing - 360)*speed
			posy += (bearing - 270)*speed
			
		endif
		posz = Player.GetPositionZ() - (elevation*(speed*2))
		Player = Game.GetPlayer()
		
		
		Player.SplineTranslateToRefNode(self, "SaddleBone",0, speed,1)
		self.TranslateTo(posx,posy,posz,elevation,0,bearing,speed,1)
	else
		Player.SplineTranslateToRefNode(self, "SaddleBone",0, speed,1)
		self.StopTranslation()
	endIf
	
endWhile
endFunction

State Deactivate
Event OnActivate(ObjectReference akSelf)
	Debug.MessageBox("sup")
	self.StopTranslation()
	Player.StopTranslation()
	Ride = 0
endEvent
endState		

 

So basically what im doing here is use my flight code to move the dragon around while at the same time I tell the player to translate to the SaddleBone of the dragon, but its very jumpy, I think it doesnt handle 2 translate at once properly, so my idea is to play them at the same time, I just dont know how.

Link to comment
Share on other sites

  • Recently Browsing   0 members

    • No registered users viewing this page.

×
×
  • Create New...