Welcome to the Second Life Forums Archive

These forums are CLOSED. Please visit the new forums HERE

Check this out! LSL 1.0 code on the history wiki!

Eggy Lippmann
Wiktator
Join date: 1 May 2003
Posts: 7,939
05-25-2005 09:23
Robin just sent me a couple of emails with stuff for our museum.
I'm so excited!
Check out this ancient code from, oh, 4 years ago. It looks kinda like BASIC :D

http://history.secondserver.net/index.php/LSL1

CODE

This is the code for the 'slideshow' object that we used in presenting Second Life to the organizers of the DEMO conference in 2002. Originally dated 12/2001, and written in LSL version 1.0!


Slideshow

VARIABLES

Hello STRING "Hello"
frontslide S32 1
checktouch S32 0
ccount S32 0

command STRING ""
name STRING ""

lastslide S32 16

STATE HelloState

SENSORS

CODE
frontslide = 1
Say("Slideshow Init")
pushstate setSlide
@Forever
checktouch = Touched()

if (checktouch)
Say("Next slide")
frontslide = frontslide + 1
if (frontslide > lastslide)
frontslide = 1
endif
pushstate setSlide
endif


GetMessage(ccount, command, name)
if command == "back"
Say("Back one slide")
frontslide = frontslide - 1
if (frontslide < 1)
frontslide = lastslide
endif
pushstate setSlide
endif

if command == "start"
Say("First slide")
frontslide = 1
pushstate setSlide
endif

if command == "end"
Say("Last slide")
frontslide = lastslide
pushstate setSlide
endif
Sleep(0.5)
jump Forever


STATE setSlide

SENSORS
CODE

if (frontslide == 1)
Texture(1, 0.95, 0.71, 0.03, -0.01, 0, "adf08d20-f0b9-11d5-8a0a-00d0b7ac9404")
Texture(3, 0.95, 0.71, 0.03, -0.01, 0, "3a4e6b8a-f0d2-11d5-8c14-00d0b7ac9404")
endif
if (frontslide == 2)
Texture(1, 0.95, 0.71, 0.03, -0.01, 0, "3a4e6b8a-f0d2-11d5-8c14-00d0b7ac9404")
Texture(3, 0.95, 0.71, 0.03, -0.01, 0, "689c8026-f0d2-11d5-8c14-00d0b7ac9404")
endif
if (frontslide == 3)
Texture(1, 0.95, 0.71, 0.03, -0.01, 0, "689c8026-f0d2-11d5-8c14-00d0b7ac9404")
Texture(3, 0.95, 0.71, 0.03, -0.01, 0, "1967748a-f0fe-11d5-95ad-00d0b7ac9404")
endif
if (frontslide == 4)
Texture(1, 0.95, 0.71, 0.03, -0.01, 0, "1967748a-f0fe-11d5-95ad-00d0b7ac9404")
Texture(3, 0.95, 0.71, 0.03, -0.01, 0, "2e095f04-f0d4-11d5-8c14-00d0b7ac9404")
endif
if (frontslide == 5)
Texture(1, 0.95, 0.71, 0.03, -0.01, 0, "2e095f04-f0d4-11d5-8c14-00d0b7ac9404")
Texture(3, 0.95, 0.71, 0.03, -0.01, 0, "6b062b12-f0e8-11d5-95ad-00d0b7ac9404")
endif
if (frontslide == 6)
Texture(1, 0.95, 0.71, 0.03, -0.01, 0, "6b062b12-f0e8-11d5-95ad-00d0b7ac9404")
Texture(3, 0.95, 0.71, 0.03, -0.01, 0, "ae8e6e3a-f0e8-11d5-95ad-00d0b7ac9404")
endif
if (frontslide == 7)
Texture(1, 0.95, 0.71, 0.03, -0.01, 0, "ae8e6e3a-f0e8-11d5-95ad-00d0b7ac9404")
Texture(3, 0.95, 0.71, 0.03, -0.01, 0, "d979cf04-f0e8-11d5-95ad-00d0b7ac9404")
endif
if (frontslide == 8)
Texture(1, 0.95, 0.71, 0.03, -0.01, 0, "d979cf04-f0e8-11d5-95ad-00d0b7ac9404")
Texture(3, 0.95, 0.71, 0.03, -0.01, 0, "01bc949c-f0e9-11d5-95ad-00d0b7ac9404")
endif
if (frontslide == 9)
Texture(1, 0.95, 0.71, 0.03, -0.01, 0, "01bc949c-f0e9-11d5-95ad-00d0b7ac9404")
Texture(3, 0.95, 0.71, 0.03, -0.01, 0, "42c60c7e-f0fe-11d5-95ad-00d0b7ac9404")
endif
if (frontslide == 10)
Texture(1, 0.95, 0.71, 0.03, -0.01, 0, "42c60c7e-f0fe-11d5-95ad-00d0b7ac9404")
Texture(3, 0.95, 0.71, 0.03, -0.01, 0, "2cd11e1e-f0e9-11d5-95ad-00d0b7ac9404")
endif
if (frontslide == 11)
Texture(1, 0.95, 0.71, 0.03, -0.01, 0, "2cd11e1e-f0e9-11d5-95ad-00d0b7ac9404")
Texture(3, 0.95, 0.71, 0.03, -0.01, 0, "34d00bc4-f0ea-11d5-95ad-00d0b7ac9404")
endif
if (frontslide == 12)
Texture(1, 0.95, 0.71, 0.03, -0.01, 0, "34d00bc4-f0ea-11d5-95ad-00d0b7ac9404")
Texture(3, 0.95, 0.71, 0.03, -0.01, 0, "6748d996-f0ea-11d5-95ad-00d0b7ac9404")
endif
if (frontslide == 13)
Texture(1, 0.95, 0.71, 0.03, -0.01, 0, "6748d996-f0ea-11d5-95ad-00d0b7ac9404")
Texture(3, 0.95, 0.71, 0.03, -0.01, 0, "5c887768-f0eb-11d5-95ad-00d0b7ac9404")
endif
if (frontslide == 14)
Texture(1, 0.95, 0.71, 0.03, -0.01, 0, "5c887768-f0eb-11d5-95ad-00d0b7ac9404")
Texture(3, 0.95, 0.71, 0.03, -0.01, 0, "7e7b2848-f0eb-11d5-95ad-00d0b7ac9404")
endif
if (frontslide == 15)
Texture(1, 0.95, 0.71, 0.03, -0.01, 0, "7e7b2848-f0eb-11d5-95ad-00d0b7ac9404")
Texture(3, 0.95, 0.71, 0.03, -0.01, 0, "fe49f15c-f0d3-11d5-8c14-00d0b7ac9404")
endif
if (frontslide == 16)
Texture(1, 0.95, 0.71, 0.03, -0.01, 0, "a118c5f4-f0eb-11d5-95ad-00d0b7ac9404")
Texture(3, 0.95, 0.71, 0.03, -0.01, 0, "a118c5f4-f0eb-11d5-95ad-00d0b7ac9404")
endif
Sound("00000000-0000-0000-0000-000000000110", 1)
popstate



START HelloState

Stinky Queso
Second Life Resident
Join date: 29 Nov 2004
Posts: 53
05-25-2005 10:05
whoa, LSL has come a long way! I cant imagine scripting like that today
Ushuaia Tokugawa
Nobody of Consequence
Join date: 22 Mar 2005
Posts: 268
05-25-2005 10:25
All those texture UUIDs are still valid!

CODE

list textures = [
"adf08d20-f0b9-11d5-8a0a-00d0b7ac9404",
"3a4e6b8a-f0d2-11d5-8c14-00d0b7ac9404",
"3a4e6b8a-f0d2-11d5-8c14-00d0b7ac9404",
"689c8026-f0d2-11d5-8c14-00d0b7ac9404",
"689c8026-f0d2-11d5-8c14-00d0b7ac9404",
"1967748a-f0fe-11d5-95ad-00d0b7ac9404",
"1967748a-f0fe-11d5-95ad-00d0b7ac9404",
"2e095f04-f0d4-11d5-8c14-00d0b7ac9404",
"2e095f04-f0d4-11d5-8c14-00d0b7ac9404",
"6b062b12-f0e8-11d5-95ad-00d0b7ac9404",
"6b062b12-f0e8-11d5-95ad-00d0b7ac9404",
"ae8e6e3a-f0e8-11d5-95ad-00d0b7ac9404",
"ae8e6e3a-f0e8-11d5-95ad-00d0b7ac9404",
"d979cf04-f0e8-11d5-95ad-00d0b7ac9404",
"d979cf04-f0e8-11d5-95ad-00d0b7ac9404",
"01bc949c-f0e9-11d5-95ad-00d0b7ac9404",
"01bc949c-f0e9-11d5-95ad-00d0b7ac9404",
"42c60c7e-f0fe-11d5-95ad-00d0b7ac9404",
"42c60c7e-f0fe-11d5-95ad-00d0b7ac9404",
"2cd11e1e-f0e9-11d5-95ad-00d0b7ac9404",
"2cd11e1e-f0e9-11d5-95ad-00d0b7ac9404",
"34d00bc4-f0ea-11d5-95ad-00d0b7ac9404",
"34d00bc4-f0ea-11d5-95ad-00d0b7ac9404",
"6748d996-f0ea-11d5-95ad-00d0b7ac9404",
"6748d996-f0ea-11d5-95ad-00d0b7ac9404",
"5c887768-f0eb-11d5-95ad-00d0b7ac9404",
"5c887768-f0eb-11d5-95ad-00d0b7ac9404",
"7e7b2848-f0eb-11d5-95ad-00d0b7ac9404",
"7e7b2848-f0eb-11d5-95ad-00d0b7ac9404",
"fe49f15c-f0d3-11d5-8c14-00d0b7ac9404",
"a118c5f4-f0eb-11d5-95ad-00d0b7ac9404",
"a118c5f4-f0eb-11d5-95ad-00d0b7ac9404"
];

integer count;

default {
state_entry() {
llSetTexture(llList2Key(textures, count), ALL_SIDES);

count++;
}

touch_start(integer touches) {
llSetTexture(llList2Key(textures, count), ALL_SIDES);

count++;

if (count >= llGetListLength(textures)) count = 0;
}
}


An interesting look into LL's vision for this thing from 2001.
Keknehv Psaltery
Hacker
Join date: 11 Apr 2005
Posts: 1,185
05-25-2005 11:18
Wow, that is amazing. I bet incorrect formatting caused horrific errors with that language!

It looks almost like Pascal or FORTRAN with indentation...

Does that language still work in SL? I've noticed how it says "... has given you an lsl2 script". So, can we still use lsl1 scripts?
Strife Onizuka
Moonchild
Join date: 3 Mar 2004
Posts: 5,887
05-25-2005 12:56
i'm willing to bet the bytecode for LSL1 & LSL2 are *very* similar.
_____________________
Truth is a river that is always splitting up into arms that reunite. Islanded between the arms, the inhabitants argue for a lifetime as to which is the main river.
- Cyril Connolly

Without the political will to find common ground, the continual friction of tactic and counter tactic, only creates suspicion and hatred and vengeance, and perpetuates the cycle of violence.
- James Nachtwey
Torley Linden
Enlightenment!
Join date: 15 Sep 2004
Posts: 16,530
05-25-2005 13:07
Oooh. Nice. This code should be on a scroll in some inworld museum. Hehehe.
_____________________
Strife Onizuka
Moonchild
Join date: 3 Mar 2004
Posts: 5,887
05-25-2005 13:35
according to the slides, SL isn't profitable yet.
_____________________
Truth is a river that is always splitting up into arms that reunite. Islanded between the arms, the inhabitants argue for a lifetime as to which is the main river.
- Cyril Connolly

Without the political will to find common ground, the continual friction of tactic and counter tactic, only creates suspicion and hatred and vengeance, and perpetuates the cycle of violence.
- James Nachtwey
Ushuaia Tokugawa
Nobody of Consequence
Join date: 22 Mar 2005
Posts: 268
05-25-2005 13:42
:) I started a new thread with screenshots of these slides so as not to hijack Eggy's thread about LSL 1.0.
Logan Bauer
Inept Adept
Join date: 13 Jun 2004
Posts: 2,237
05-25-2005 15:49
From: Strife Onizuka
according to the slides, SL isn't profitable yet.


And should be by 2004. Gee, did they make that mark? ;)
Lordfly Digeridoo
Prim Orchestrator
Join date: 21 Jul 2003
Posts: 3,628
05-25-2005 16:09
From: Logan Bauer
And should be by 2004. Gee, did they make that mark? ;)


Not yet, but barely, apparently.

They're aiming to be profitable by this year, and I bet they'll make it...

These original design specs were done before land tier was even a concept... prior to this, everyone paid a flat monthly fee (around 15 bucks a month, less if you paid ahead)... so, conceivably, if LLab continues keeping the rather huge amount of money people are paying for this game (some folks paying several hundred a month), they should be profitable very soon :)

LF
_____________________
----
http://www.lordfly.com/
http://www.twitter.com/lordfly
http://www.plurk.com/lordfly
Dragon Steele
Artist/conservationist
Join date: 3 Jan 2005
Posts: 183
05-28-2005 07:34
Pascal, FORTRAN BASIC Ah the good ol' Days If only ssl Where Basic I could do anything. Basic was the first Computer language class brought into my Data processing lab Class in High School. I Aced it right after I had mastered the punch card system. Ah, Basic and an Apple II
and i thought i could rule the computing world. *Sigh* Hand Grand Ma her Cain Dear she needs to head up the stairs for a nap.
_____________________
Boycot the spam farms and the ads on them. Ban the spamers from your land. Look for the clocktower network for a blacklist to put on you land that is grid wide.