Page 2 of 8

Posted: Tue Mar 15, 2005 10:24 pm
by Master-Of-Fungus-Foo-D
hey, The west was practically built on thebacks of animals like horses and cattle...
if i had 90 sum USD i would model it but i cant :(

Posted: Tue Mar 15, 2005 10:27 pm
by wacko
lizardkid wrote:well.. i think horses is overboard. but tumbleweeds are a good idea i think. you dont need tornadoes of them, just maybe 2 or 3 a minute.
k :wink: , I'll give it a try

Oh F***, what is happening to this forum?? Each time I enter, it looks different :shock:

Horses? I'd love to. I'd be glad to have a cow :lol: Anybody able to give me one of CoD? There were some. Couldn'T they be borrowed?

Posted: Tue Mar 15, 2005 10:33 pm
by Master-Of-Fungus-Foo-D
I'd be glad to have a cow
jsst calm down man :wink: :P

Posted: Tue Mar 15, 2005 11:16 pm
by wacko
Master-Of-Fungus-Foo-D wrote:
I'd be glad to have a cow
jsst calm down man :wink: :P
sheep? :lol:

Posted: Tue Mar 15, 2005 11:26 pm
by Master-Of-Fungus-Foo-D
well, it depends.. are you a female sheep? :P

ok ok ill quit spamming before bjarne comes and breaks this up...

Posted: Wed Mar 16, 2005 12:47 am
by wacko
regarding the tumbleweed...

how can I make it follow a path and additonally have a rotation? So far, my attempts failed and I know u easily can tell me :wink:
Setting the angles of each info_splinepath is a pain in u know where. Why can't I make it 'rotateX #' and 'followpath' both? Or why can't I make it 'rotateX', bind it to another script_object and let this one follow the path?

Posted: Wed Mar 16, 2005 12:51 am
by Master-Of-Fungus-Foo-D
make it a script object, bind/glue it to a script origin and rotate it while the script origin iss mving along... or did you already try that :?

Posted: Wed Mar 16, 2005 12:55 am
by wacko
Master-Of-Fungus-Foo-D wrote:or did you already try that :?
errr, yes, I did. But maybe I did it wrong?! How would the script look like in ur eyes? I did s/th like

Code: Select all

tw_run:
$tw_0 time 0.5 //the path following thingie
$tw_1 time 0.5 //the tumbleweed
while(1)
	{
	$tw_1 bind $tw_0
	$tw_1 rotateX 90
	$tw_0 followpath $tw_path
	$tw_1 move
	$tw_0 waitmove
	}
end

Posted: Wed Mar 16, 2005 12:56 am
by lizardkid
i would think setting it on a path and rotating it like this should work. otherwise you may need to thread both, since threads dont wait on each other.

1 way:

Code: Select all

$tumbleweed moveto path1
wait 1
$tumbleweed rotateZ 100
wait .2
$tumbleweed rotateY 100
actually, i think two threads is a good idea.

Code: Select all

thread1:

self moveto path1

end

thread2:

self rotateX 200
wait .3
self rotateY 100
wait .2
self rotateZ 100
or the like. it ought to work, getting it to look semi-natural is the big problem though.

i'd experiement but i g2g now. :'(

Posted: Wed Mar 16, 2005 1:00 am
by wacko
lizardkid wrote:... it ought to work, getting it to look semi-natural is the big problem though. i'd experiement but i g2g now. :'(
yeah, me too. it's 2 a.m. here :shock:
but, u're using info_waypoints instead of info_splinepaths, do u?!

Posted: Wed Mar 16, 2005 1:02 am
by Master-Of-Fungus-Foo-D
i would just try using glue instead of bind[/code]

2am! its only 8 here :P
(wow.. germany...)

Posted: Wed Mar 16, 2005 2:36 am
by lizardkid
would just try using glue instead of bind
glueing and binding stuff to script_objects does nothing but make it look weird. you're moving one object unecessarily.

moving the base object has the same effect.

i was thinking of waypoints when i said that, but splinepaths would work as well. just have to factor in that when making the rotaions.

Posted: Wed Mar 16, 2005 6:30 am
by Grassy
Is the tumble weed going to follow a circular path? that would look strange indeed. I would use waypoints scatered in a wobly sort of line from one side of the map to the other, at map start the weed is hidden on one side of the map, then is shown, moved from waypoint to waypoint while rotating until it hits the last waypoint, then hide it, make notsolid and return it to the starting point back on the other side of the map, and repeat the process, This would look more realistic IMHO.

**Note** the waypoints would have to be above the ground so they line up with the centre origin of your tumbleweed otherwise the weed will appear to have a flat bottom or plough through the ground texture.

Code: Select all

main:
....
level waittill prespawn
....
level waittill spawn

thread weed1_init

level waittil roundstart

thread weed1_control

end

//---------------------------------------------------------------------------
weed1_init:
//---------------------------------------------------------------------------
  $weed1 hide
  $weed1 notsolid
end


//---------------------------------------------------------------------------
weed1_control:
//---------------------------------------------------------------------------
while (1)
{  
  $weed1 show  
  $weed1 speed 35
  $weed1 rotateZ 60
  $weed1 moveto $wp1
  $weed1 waitmove
  $weed1 speed 50
  $weed1 rotateZ 30
  $weed1 moveto $wp2
  $weed1 waitmove
  $weed1 speed 100
  $weed1 rotateZ 80
  $weed1 moveto $wp3
  $weed1 waitmove
  $weed1 speed 20
  $weed1 rotateZ 30
  $weed1 moveto $wp4
  $weed1 waitmove
  //add more waypoints
  //and vary speed of travel
  //and rotation to make look more random if required
  //at the last waypoint now
  $weed1 hide
  $weed1 speed 900 //move it back quick if ya want :-)
  $weed1 moveto $start
  $weed1 waitmove
}
Grassy

Posted: Wed Mar 16, 2005 9:31 am
by wacko
Thanks for ur help! :D So I'll have to split the movement into one moveto command for each bl**dy waypoint? Ouch. Don't understand why I can't do it similar to how I tried, but if this is the way to go, ok. I was planning to set up several paths which would have been choosen randomly... I will try a for next loop and addressing the waypoints like

Code: Select all

main:
	level waittill spawn

	thread tw_run
end

tw_run:
while (1) 
{ 
local.path = randomint 3 + 1 //for having 3 paths 
for (local.i = 0; local.i <=6; local.i++) 
{ 
iprintln_noloc local.path " - " local.i
//  $tw_1 speed 35 //maybe randomized
  $tw_1 time 1 
  $tw_1 rotateX 270 //maybe randomized 
  $tw_1 moveto $("twp" + local.path + "_" + local.i) 
  $tw_1 waitmove 
} 
wait 2
$tw_1 speed 2000
$tw_1 moveto $twp0_0
$tw_1 waitmove
wait 2
}
end

Posted: Wed Mar 16, 2005 10:03 am
by bdbodger
You can also try turning the physics on as well

local.x = randomint( 100)
local.y = randomint(100)
local.z = randomint(50)

local.velocity = ( local.x local.y local.z )
$tw_1 physics_on
$tw_1 physics_velocity (local.velocity)

you will have to play with the numbers JV says that velocity is the change in origin x y and z times 20 over 1 game frame so a change in x of 10 units over 1 game frame is 200 when use with velocity this will make it look a bit like the wind is blowing it and it should bounce when it hits the ground.