*Xelagot Worldscheduler ~ a sample setup*

by Lady NightHawk & Starheart
The links in our names above will take you directly to our worlds!
Below is the direct link the Xelag's *Worldscheduler Bot Script* page
http://www.imatowns.com/xelagot/xlgasex_worldschedule.html

This page is meant to clarify that page for use with skyboxes. Here you can
compare our world settings to the script used above. Mine is set for changing
skyboxes and cloud textures and movement.
I would like to thank Starheart of Mythopia world
for helping me, you can visit his website at
http://www.sh3d-design.com/
I'd also like to thank Elysium for his
FREE Skyboxes
,
one of which I used to change the texture to make my very first
*starry night* skybox! If you'd like my *starry night* skybox,
you can d/l it from my Freebies page!

Please NOTE: This page is only a *sample* of how I set mine up ...
it will be practically impossible to *copy to notepad* from this page.
If you want the actual scripts, Click Here!

OK here we go...
Leave purple text AS IS! You may change green text!



my WorldSchedule.txt looks like this:
[Head]
Type=Script
Version=2.0

[Settings]
Origin=0.000n 0.000w 0.00a 0.0°
Run

[Script]

                         ###################################
                         #     The WorldSchedule Bot       #
                         #        a Xelagot script         #
                         # (c) 2000 Alex Grigny de Castro  #
                         ###################################

   ##################################################################
   ###### Requires Xelagot 2.9999916 or higher
   ###### Help: www.imatowns.com/xelagot/xlgasex_worldschedule.html
   ##################################################################

var $World, $Universe
var /s_Schedule, $ScheduleFile
var /s_Attrib
var %Changes, %Pointer
var %ok, %okSchedule, %FileNotFound
var %okFiles, %okWorld, %HasUniverse, %okUniverse
var %myWorld
var !This, !Next
var $This, $Next
var $ThisFile, $NextFile
var !now
var $CRLF, $TAB

Label Start
  $ScheduleFile = "schedule.txt"
  Concat $CRLF #13 #10
  $TAB = #9
  Gosub Initialize
  IfInt %FileNotFound <> 0 Goto Error
  IfInt %Changes = 0 Goto Error
  IfInt %okSchedule = 0 Goto Error
  IfInt %okFiles = 0 Goto Error

  # now the Pointer is set to the right period
  # change the attributes
Label Main_Loop
  # check universe
  GetUniverse $u
  IfInt %HasUniverse = 0 %okUniverse = 1
  Else IfString $u = $Universe %okUniverse = 1
  Else %okUniverse = 0
  IfInt %okUniverse = 0 Goto WrongWorld
  # check the world
  GetWorld $w
  IfString $w <> $World Goto WrongWorld
  IfNotLoginWorld Goto WrongWorld
  # check the time
  GetTime !now
  IfTime !now IsBetween !This !Next Gosub ChangeAttributes
  Goto Main_Loop
Label WrongWorld
  GetUniverse $u
  IfInt %HasUniverse = 0 %okUniverse = 1
  Else IfString $u = $Universe %okUniverse = 1
  Else %okUniverse = 0
  IfInt %okUniverse = 0 Goto WrongWorld
  GetWorld $w
  IfString $w = $World IfLoginWorld Goto Start
  Goto WrongWorld
End
Label Error
  IfInt %FileNotFound <> 0 SecretConcat "File " $ScheduleFile " not found
  IfInt %Changes = 0 SecretConcat "Invalid schedule file " $ScheduleFile
  IfInt %Changes = 0 SayConcat "Invalid schedule file " $ScheduleFile
  IfInt %okWorld = 0 SecretConcat "Missing world name in " $ScheduleFile
  IfInt %okWorld = 0 SayConcat "Missing world name in " $ScheduleFile
  IfInt %okSchedule = 0 SecretConcat "Error in schedule file " $ScheduleFile
  IfInt %okSchedule = 0 SayConcat "Error in schedule file " $ScheduleFile
End

Sub Initialize
  # set error flags to 'no error'
  %FileNotFound = 0
  %Changes = 1
  %okWorld = 1
  %okSchedule = 1
  %okFiles = 1
  # load the schedule
  SListLoad /s_Schedule $ScheduleFile %FileNotFound
  IfInt %FileNotFound <> 0 EndSub
  # remove any empty lines
  SListNoBlanks /s_Schedule
  # world name must be included
  IfSListGetValue /s_Schedule "world" $World
  Else %okWorld = 0
  IfInt %okWorld = 0 EndSub
  SListDeleteName /s_Schedule "world"
  # universe name is optional
  IfSListGetValue /s_Schedule "universe" $Universe %HasUniverse = 1
  Else %HasUniverse = 0
  SListDeleteName /s_Schedule "universe"
  # count how may changes
  SListGetCount /s_Schedule %Changes
  IfInt %Changes = 0 EndSub
  Gosub CheckSchedule
  IfInt %okSchedule = 0 EndSub
  Gosub CheckFiles
  IfInt %okFiles = 0 EndSub
  Gosub SetPointer
EndSub

Sub CheckSchedule
  %okSchedule = 1
  %Pointer = 1
Label CheckSchedule_Loop
  IfInt %Pointer > %Changes EndSub
  Gosub GetThis
  Gosub GetNext
  IfTime !this IsAfter !next %okSchedule = 0
  Inc %Pointer
  # last entry should not be checked against first
  IfInt %Pointer < %Changes IfInt %okSchedule = 1 Goto CheckSchedule_Loop
EndSub

Sub CheckFiles
  GetMyDir $q
  %okFiles = 1
  %Pointer = 1
Label CheckFiles_Loop
  Gosub GetThis
  Concat $f $q $ThisFile
  IfFileExists $f
  Else Gosub NoFile
  Inc %Pointer
  IfInt %Pointer <= %Changes Goto CheckFiles_Loop
EndSub

Sub NoFile
  %okFiles = 0
  SecretConcat "Attributes file " $ThisFile " not found"
  SayConcat "Attributes file " $ThisFile " not found"
EndSub

Sub SetPointer
  %ok = 0
  %Pointer = 0
Label SetPointer_Loop
  Inc %Pointer
  IfInt %Pointer > %Changes %Pointer = 1
  Gosub GetThis
  Gosub GetNext
  GetTime !now
  IfTime !now IsBetween !this !next %ok = 1
  IfInt %ok = 0 Goto SetPointer_Loop
EndSub

Sub GetThis
  SItemGet /s_Schedule %Pointer $a
  Split $b $c $a ","
  GetTime !This $b
  Split $This $c $c ","
  Split $ThisFile $c $c ","
EndSub

Sub GetNext
  %p = %Pointer
  Inc %p
  IfInt %p > %Changes %p = 1
  SItemGet /s_Schedule %p $a
  Split $b $c $a ","
  GetTime !Next $b
  Split $Next $c $c ","
  Split $NextFile $c $c ","
EndSub

Sub ChangeAttributes
  SListClear /s_Attrib
  SListLoad /s_Attrib $ThisFile %i
  Replace /s_Attrib /s_Attrib "{newline}" $CRLF
  Replace /s_Attrib /s_Attrib "{tab}" $TAB
  IfInt %i = 0 ChangeAttributes /s_Attrib
  # Get next
  Inc %Pointer
  IfInt %Pointer > %Changes %Pointer = 1
  Gosub GetThis
  Gosub GetNext
EndSub

I believe this is unchanged from the original but I didn't check, I got this version from Starheart. WorldSchedule.txt is the file you *load* into your bot! This is the *control* file and it calls upon the others when it's time to do so.



my *schedule.txt* looks like this:

world=aeon

8,dawn,aeon_dawn.txt,
10 15,day,aeon_day.txt,
21 15,dusk,aeon_dusk.txt,
23,night,aeon_night.txt,

Green items are items you can change:
  • numbers represent VRT *military* time (8:00am, 10:15am, 21:15pm, 23:00pm)
  • the words (dawn, day, dusk and night) represent the *time of day*
  • the filenames (aeon_dawn.txt, etc) are what are called by the bot at the specified time and are the actual files that change the *time of day*. These MUST match the actual names of the files! 


First file is dawn (aeon_dawn.txt or whatever you choose to name it):
Aeon @ Dawn ~ looking east into the sunrise!
Skybox=skyaw3
WorldLightRed=245
WorldLightGreen=225
WorldLightBlue=225
WorldAmbientLightRed=220
WorldAmbientLightGreen=200
WorldAmbientLightBlue=200
Clouds1Texture=cloud_strat1
Clouds1Mask=
Clouds1SpeedX=1.01
Clouds1SpeedZ=1.1
Clouds1Tile=2.1
Clouds1Opacity=149
Clouds2Texture=cloud_strat1
Clouds2Mask=
Clouds2SpeedX=-1.003
Clouds2SpeedZ=-1.2
Clouds2Tile=2.0
Clouds2Opacity=152
Clouds3Texture=
Clouds3Mask=
Clouds3SpeedX=0.0
Clouds3SpeedZ=0.0
Clouds3Tile=0.0
Clouds3Opacity=255
TerrainAmbient=0.2
TerrainDiffuse=1.0
OK this is big LOL, or looks it here, but is simple to use.
Again I got the original files from Starheart.
I changed only what is bold or blank but you can change anything that is
green
to match your world's settings. Play with the skybox and cloud layers to
see what works best for you. Do so IN your *Options / World / Features* first.
Once satisfied, move those same figures to your aeon_day.txt (or whatever you called it),
etc, files. If you don't want to use a feature (such as Cloud1Mask), leave it blank
(ex: Cloud1Mask=) as seen above. Each file such as: aeon_dawn, aeon_day, etc,
will likely look best with it's own cloud settings, if the skyboxes differ that is!
OK three more text files, all basically the same but with different names,
each will change the skybox and it's cloud layer settings...



The next file is day (aeon_day.txt or whatever you choose to name it):
Aeon @ Day!
Skybox=skyo33
WorldLightRed=255
WorldLightGreen=255
WorldLightBlue=255
WorldAmbientLightRed=219
WorldAmbientLightGreen=219
WorldAmbientLightBlue=219
Clouds1Texture=alterng4
Clouds1Mask=cloud_strat1m
Clouds1SpeedX=1.01
Clouds1SpeedZ=1.2
Clouds1Tile=2.1
Clouds1Opacity=149
Clouds2Texture=alterng5
Clouds2Mask=cloud_strat1m
Clouds2SpeedX=-1.003
Clouds2SpeedZ=-2.2
Clouds2Tile=3.0
Clouds2Opacity=250
Clouds3Texture=alterng9
Clouds3Mask=cloud_strat1m
Clouds3SpeedX=1.003
Clouds3SpeedZ=1.1
Clouds3Tile=3.0
Clouds3Opacity=201
TerrainAmbient=0.2
TerrainDiffuse=1.0
Again, same as above only I changed to the skybox used and to the
cloud textures and movement. Bold is what I changed from Starheart's version
but you can change anything green to suit your liking.


The next file is dusk (aeon_dusk.txt or whatever you choose to name it):
Aeon @ Dusk ~ looking west into the sunset!
Skybox=skyaw1
WorldLightRed=245
WorldLightGreen=225
WorldLightBlue=225
WorldAmbientLightRed=220
WorldAmbientLightGreen=200
WorldAmbientLightBlue=200
Clouds1Texture=alterng4
Clouds1Mask=cloud_strat1m
Clouds1SpeedX=1.01
Clouds1SpeedZ=1.2
Clouds1Tile=1.1
Clouds1Opacity=149
Clouds2Texture=alterng5
Clouds2Mask=cloud_strat1m
Clouds2SpeedX=-0.003
Clouds2SpeedZ=-1.2
Clouds2Tile=2.0
Clouds2Opacity=149
Clouds3Texture=alterng9
Clouds3Mask=cloud_strat1m
Clouds3SpeedX=0.002
Clouds3SpeedZ=0.003
Clouds3Tile=2.0
Clouds3Opacity=100
TerrainAmbient=0.2
TerrainDiffuse=1.0

Same as above, just changed the skybox again, and the cloud textures,
movements, etc.


The last file is night (aeon_night.txt or whatever you choose to name it):
Aeon @ Night!
Skybox=lnh-stars3c
WorldLightRed=190
WorldLightGreen=190
WorldLightBlue=190
WorldAmbientLightRed=150
WorldAmbientLightGreen=150
WorldAmbientLightBlue=150
Clouds1Texture=cloud_strat1
Clouds1Mask=cloud_strat1m
Clouds1SpeedX=1.01
Clouds1SpeedZ=1.2
Clouds1Tile=3.1
Clouds1Opacity=100
Clouds2Texture=alterng5
Clouds2Mask=cloud_strat1m
Clouds2SpeedX=-1.003
Clouds2SpeedZ=-1.2
Clouds2Tile=2.0
Clouds2Opacity=100
Clouds3Texture=cloud_strat1
Clouds3Mask=cloud_strat1m
Clouds3SpeedX=0.002
Clouds3SpeedZ=0.003
Clouds3Tile=2.0
Clouds3Opacity=11
TerrainAmbient=0.2
TerrainDiffuse=1.0

This again is pretty much the same kind of file as the other three, just change the skybox &/or cloud layers and movements.


*Things that differ from the Xelagot WorldScheduler page*
  1. I did NOT use the WorldMessage= ... not only did I leave it blank but I deleted the whole line in each of the four files (aeon_dawn.txt, etc) because it changes the world's Immigration Officer greeting as well. If you choose to use that line, perhaps do something like this: Your world's standard IM greeting followed by bot time change (ex: WelcomeMessage=Welcome to Aeon :o} owned by Lady NightHawk and her husband AerHawk! The world began on 06/11/03, thanks to Belfalest (my host)! Enjoy your stay and come back often! AV DUMP may be necessary if you were here before 09/29/03. The world's atmosphere setting is now ... Dawn!). The Day file would be similar only change the word Dawn to Day! And so on. The WelcomeMessage=whatever you have to say here! goes at the first line of each of the four files! 
  2. Again, this page is in regards to using a skybox and therefore it uses Skybox=    not the Backdrop as seen on the Xelagot page. 
  3. Here we are using WorldLight & WorldAmbient, none of which I changed from Starheart's originals. 
  4. Notice ALL cloud layers have names indicating which is which (ex: Cloud1Texture, Cloud2Texture, etc). It's very easy to copy the settings from your *features* directly to the four files. Also, in ALL of my 2nd cloud layers I'm using a negative (-) number so that the middle layer of clouds goes the opposite direction of the top and bottom layers ... I like it ... you may not LOL, just pointing it out. For cloud layers, you can use just one or all three for each of the four files, again ... play with those settings and see what you like and once you've settled on something for each time of day change it's file to match. 
  5. I did not change any of the four files TerrainAmbient or TerrainDiffuse settings, they are set at the standard ... but you can change those if you have a clue about what they are/do LOL.
  6. Again, remember that IF you change the filenames (aeon_dawn.txt) the you MUST put the new filename in it's appropriate place in the schedule.txt file also!
  7. IF you get errors, check your filenames in the schedule.txt and the other four to be sure they match. Check that you put the right skybox name, or right cloud texture name (the extensions .zip, .rwx or .jpg do NOT need to be used)! If you are still getting errors, check your OP to see if you actually have those skyboxes and cloud textures loaded up and in the correct folders! 
Things to note about *Cloud Layers*: 
  • Cloud speeds (X & Z): the lower the numbers the slower the movement speed, higher is faster. 
  • Cloud tile is for giving your clouds more or less bulk/wrap. The higher the number the more the *cloud* layer wraps (duplicates) ... compare a setting of 1 to a setting of 10 for instance, the lower numbers  generally look better and more natural. 
  • Cloud opacity is how visible or invisible the cloud layer is, the higher the number (up to 255) the more visible the cloud layer. Lower numbers would make the clouds lighter, less visible. I noticed that if you set the first layer to a higher number like 100 or more, it makes the sky in general appear lighter. The next two layers would be lower like 75 and 50 respectively. If you don't want a brighter sky then set the first layer down to 50 or so. You can use one or all of the cloud layers depending on your preferences. 
  • I have not played with any of the WorldAmbient, WorldLight, nor Terrain settings because I'm not sure what they do LOL. If you are a brave soul ... go for it!
  • A word of advice ... write down your starting settings BEFORE you make ANY changes!!! Have fun!


I hope this page helps! If you need assistance please
GRAM ME ... I'd be happy to help you!

Lady NightHawk
Uploaded: Dec 2/03; Revised: Feb 3, 2005