Welcome to the Second Life Forums Archive

These forums are CLOSED. Please visit the new forums HERE

LSL-Editor

Imajica Hand
Registered User
Join date: 3 Feb 2006
Posts: 66
06-30-2007 01:10
Hi there,

Pressing F6 on my code, I get some messages for this instruction (messages translated from italian :):

dataserver(key query_id, string data)
{
...
list params = llParseString2List(data, [":"," "], []);
...

- A semicolon is expected
- 'params' is not valid on this expression

I dont know what to do with the first one.
About the second one, I've tried to declare "list params = [];" before assigning a value (just to check), but nothing is changed.
As well, I've checked if I have other uses of the same name somewhere on the script, but here is the only place where is used.

Another unwanted behaviour is that:

email(string time, string address, string subj, string message, integer num_left)
{
string message = llDeleteSubString(message, 0, llSubStringIndex(message, "\n\n";) + 1);
....

I get a message that say I cannot declare "message" in this context, because is already used. In this case, renaming "message", I solve this problem.

This script is properly working on SL, by the way :)
Alphons Jano
Dancer
Join date: 27 Sep 2006
Posts: 121
06-30-2007 01:47
Hello Imajica Hand,

Your first error is due to a reserved word. 'params' If you change it to something else it should work. But i hate reserved words, so it is on the 'CorrectReservedWords' routine to get it working in the next release.

The other problem is related to declaring 'message' for the second time in the same routine, first as an argument, second as a local var. Skip the second 'string' declaration and it also should work fine.

email(string time, string address, string subj, string message, integer num_left)
{
message = llDeleteSubString(message, 0, llSubStringIndex(message, "\n\n";) + 1);
....
}

To me it is good programming practice not to mix up argument en local var names. So a penalty for LindenLabs :mad: to let you declare and use it.

have fun

-A.
Imajica Hand
Registered User
Join date: 3 Feb 2006
Posts: 66
06-30-2007 01:57
Morning Alphons (better weather today, isn it? :)

About the three issues I've mentioned, I know was due to (a) reserved word, (b) declaring an already declared variable and (c) ...???

This code is working on SL: this was the purpose of reporting to you.

I hate as well reserved words :)

The big issue, instead, is on the first one, on the semicolon error, that block my debug and so far Iàve not found any workaround...

From: Myself :)

dataserver(key query_id, string data)
{
...
list params = llParseString2List(data, [":"," "], []);
...



Debugger: A semicolon is expected

Have a nice day, byt the way :)
Lee Ponzu
What Would Steve Do?
Join date: 28 Jun 2006
Posts: 1,770
help alphons day.,.,.
06-30-2007 08:31
I have an idea. While you work on LSL-editor, are there any in-world scripts you need? We can work on stuff for you so that you have more time to work on the editor 8-)
Alphons Jano
Dancer
Join date: 27 Sep 2006
Posts: 121
06-30-2007 08:53
Hello Imajica Hand,

If you are refering to the 'semicolon error' it should be gone when you change the name 'params' to 'somethingelse' :) its the same 'reserved words' issue. (its corrected on the beta release) But maybe I'm mistaken the problem... You can hit the Bugreport button on the Help menu... please do upload some code and I'll check it out for yah.

Lee Ponzu, thanks for the offer. ;) That would really be great. I'll keep it in mind if something pops-up.

regards.

-A.
Kyrah Abattoir
cruelty delight
Join date: 4 Jun 2004
Posts: 2,786
06-30-2007 09:04
can't peoples code without the .net crap?

other than that it looks like something i wished for ages
_____________________

tired of XStreetSL? try those!
apez http://tinyurl.com/yfm9d5b
metalife http://tinyurl.com/yzm3yvw
metaverse exchange http://tinyurl.com/yzh7j4a
slapt http://tinyurl.com/yfqah9u
Imajica Hand
Registered User
Join date: 3 Feb 2006
Posts: 66
06-30-2007 09:06
Alphons, you're right. Renaming "params" I've solved all my troubles :)
Thanks

From: Alphons Jano

If you are refering to the 'semicolon error' it should be gone when you change the name 'params' to 'somethingelse' :) its the same 'reserved words' issue.
Cryas Tokhes
Great Googley Moogley...
Join date: 8 Feb 2006
Posts: 124
07-01-2007 12:37
From: Alphons Jano
Hello Cryas Tokhes,

I did reply on your email 2 days ago. I have this great spam stopper, so don't reply on any of my emails directly. Use the contact form, or better, use the Bug Report option on the Help menu. You can send comment and script directly by using Bug Report. Keeps me all information channelled.


I must have a good spam stopper too.. I didnt get your reply. Anyways I sent that code for you to try out. Trying to see if you get the same freezing llDialogs. Let me know.
Alphons Jano
Dancer
Join date: 27 Sep 2006
Posts: 121
07-01-2007 16:26
From: Cryas Tokhes
I must have a good spam stopper too.. I didnt get your reply. Anyways I sent that code for you to try out. Trying to see if you get the same freezing llDialogs. Let me know.


Just replied on your email.

In short, get the beta release, I fixed some internals, changed the threading model, and has a huge impact on everything :( , but is necessary to go to the next level of the editor :cool: . So notice, some things can be broken, i did not test much. But the script you send, runs. Don't know what it does, but hey.... thats your job!!! :D

take care.

-A.
Alphons Jano
Dancer
Join date: 27 Sep 2006
Posts: 121
Release 2.7 of LSL-Editor
07-04-2007 04:33
Hello all,

As of today release 2.7 of LSL-Editor can be downloaded.

LSL-Editor: is a standalone Windows "Editor / Compiler / Debugger / Syntax checker / Runtime environment" for Second Life scripts, based on .NET framework. Because it does not need Second Life grid nor viewer, it is very useful when the grid is down for maintenance, or when you are not connected to it. It can compile and execute many LSL scripts, but also the code completion, features make it a "must have".

What has changed:

Editor:
- A smart auto indent feature is added to the editor, which formats LSL script code every time you hit enter or closing parenthesis. This is additional to the auto format features already present in prior releases.
- TAB / Shift TAB can be used for block indenting
- Home button goes to beginning of a line

Syntax checker:
- As of 2.7 there is the check-syntax only feature , just hit F6

Compiler:
- The reserved words problems is almost eliminated. This is really an internal issue but is annoying when writing a script, compiling it, and finding the you cant use words like ‘params’ or ‘public’. They are all gone.
- The parsing of vectors and rotation has improved a lot, it accepts arguments containing functions containing commas and more.
- Compiler errors are showing on a list view. Every error is made clickable, and jumps right at the line of code at the position the compiler thinks the error is located.

Runtime:
- Because of the asynchronous execution nature of Second Life the runtime has been redesigned using a ‘task queue’ of its own. Prior releases used the user interface thread to execute command and that’s ugly and wrong.

Solution/Project explorer:
- I'm still working on a solution/project implementation, to organize scripts, objects and other items. It is needed for example to execute scripts using inventory. Because it is not finished yet, some menu items are disabled. Don't worry about it.

Application:
- There is an ‘Download update’ option on the Help menu. It checks versions, downloads, extracts and executes new releases of the LSL-Editor application.


http://www.lsleditor.org/

The best thing, it is for free and updated on regular intervals, don't forget to donate if you find my work useful.

Have fun!!

-Alphons.
Shane Oherlihy
Registered User
Join date: 11 Jan 2007
Posts: 17
07-04-2007 11:16
From: someone
can't peoples code without the .net crap?
.NET is not crap. It's basically Java Done Right. Yes, yes, I'm a C aficionado myself, but .NET abstracts away the annoying parts and lets you work conceptually to get things done instead of worrying about file descriptors and all of that crap that is almost always the same.

Alphons, I have a suggestion. You did say that you don't want the code to be open-sourced--which I respect--but a logical next step, I would think, would be an integration of libsecondlife.

What I'd love to see is a way to make an "empty sim", solely on your computer, for testing purposes. Of course, LL will never allow this, as the next step is free-hosted servers...
Alphons Jano
Dancer
Join date: 27 Sep 2006
Posts: 121
07-06-2007 02:53
From: Shane Oherlihy
a logical next step, I would think, would be an integration of libsecondlife


I am certainly looking for integration of other projects, libsecondlife could be one of them. It is also written in C#, which makes integration very attractive. But first i want to have an inventory mechanism, and implement all of the ll functions. Next, dig into porting some code of the LSL-Editor to Linux (Mono) would also be nice. But hey, time to make a roadmap... ;)
Alphons Jano
Dancer
Join date: 27 Sep 2006
Posts: 121
Manual update
07-06-2007 10:09
Hello All,

There seems to be a problem on the 'Download update' feature of LSL-Editor 2.7 released wednesday (how ironically). The MD5 check is broken. It is fixed, but you have to download the new update manualy.

sorry for this bug.

-Alphons.
Shane Oherlihy
Registered User
Join date: 11 Jan 2007
Posts: 17
07-06-2007 11:48
From: someone
I am certainly looking for integration of other projects, libsecondlife could be one of them. It is also written in C#, which makes integration very attractive. But first i want to have an inventory mechanism, and implement all of the ll functions. Next, dig into porting some code of the LSL-Editor to Linux (Mono) would also be nice. But hey, time to make a roadmap...


I'm a professional programmer, with plenty of experience with C# and .NET in general. I could probably help you out.

(Also, inventory and such--doesn't libsl have hooks for that sort of thing?)
Alphons Jano
Dancer
Join date: 27 Sep 2006
Posts: 121
07-08-2007 15:55
From: Shane Oherlihy
I'm a professional programmer, with plenty of experience with C# and .NET in general. I could probably help you out.
(Also, inventory and such--doesn't libsl have hooks for that sort of thing?)


Thanks for the offer, I’ll keep it in mind.

To my knowledge, the libsecondlife is a project which studies the Viewer/Server communication and stuff by reversed engineering. libsecondlife has not got any implementation of ll functions. In the near future there should be an LSL compiler which can do some compiling to LSO or CIL. On the other end, there could be some Opensim implementation. I don’t know if that’s the path LSL-Editor has to go.

The LSL-Editor project is build from the ground up. No reversed engineering and no code borrowed from the Lindens. It does runtime compiling, and real execution. Delivers a runtime environment, does message pumping and event handling. Next is, inventory (dealing with notecards etc.) and implementing all the ll functions and events.
Deckard Starbrook
Registered User
Join date: 2 May 2007
Posts: 1
07-09-2007 05:28
Hello Alphons,

Great work on the editor :)
I just don't understand something, in the Simulator properties, when I enter my inworld name and click on "key", the key that appears is different than my official key. Is this more a feature than a bug? :)
Also, my llDetectedName seems to be "Jane Doe 0"
I know the editor is standalone, but I don't understand why this name appears... can you please explain to me in a few words?

Thanks again for your work,

Deckard
Alphons Jano
Dancer
Join date: 27 Sep 2006
Posts: 121
07-09-2007 06:10
Hello Deckard Starbrook,

Thanks for your questions.

There seems to be a problem on the name-cache of the SecondLife viewer. The LSL-Editor searches through this cache, if the name is found it uses the key specified.

But you are right, mine is also not my current key... So I have to do some research on this problem. If anyone can help me on this, I'm very grateful. Also on finding the location of this key cache. Now it is specified as:

ApplicationData \ SecondLife \ cache \ name.cache

Got some bugreport, on alternative cache location.

On the "Jane Doe 0" issue.... :D the llDetectName is not implemented yet, but it returns some dummy name.
Strife Onizuka
Moonchild
Join date: 3 Mar 2004
Posts: 5,887
07-09-2007 10:24
From: Alphons Jano
Hello Deckard Starbrook,

Thanks for your questions.

There seems to be a problem on the name-cache of the SecondLife viewer. The LSL-Editor searches through this cache, if the name is found it uses the key specified.

But you are right, mine is also not my current key... So I have to do some research on this problem. If anyone can help me on this, I'm very grateful. Also on finding the location of this key cache. Now it is specified as:

ApplicationData \ SecondLife \ cache \ name.cache

Got some bugreport, on alternative cache location.

On the "Jane Doe 0" issue.... :D the llDetectName is not implemented yet, but it returns some dummy name.


Entries in the name cache are xored with 33333333-3333-3333-3333-333333333333 last I heard.
_____________________
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
Alphons Jano
Dancer
Join date: 27 Sep 2006
Posts: 121
07-09-2007 23:50
From: Strife Onizuka
Entries in the name cache are xored with 33333333-3333-3333-3333-333333333333 last I heard.


Thanks Strife Onizuka, I think your hearing is great :D (C attached image)

The keys from cache, in the Runtime Properties window is fixed in the beta release, goes into the stable release of wednesday.
Alphons Jano
Dancer
Join date: 27 Sep 2006
Posts: 121
release 2.8 of LSL-Editor
07-11-2007 04:14
Hello all,

As of today release 2.8 of LSL-Editor can be downloaded.

LSL-Editor: is a standalone Windows "Editor / Compiler / Debugger / Syntax checker / Runtime environment" for Second Life scripts, based on .NET framework. Because it does not need Second Life grid nor viewer, it is very useful when the grid is down for maintenance, or when you are not connected to it. It can compile and execute many LSL scripts, but also the code completion, features make it a "must have".

This is a minor update. Only small things have changed. The “SimProperties” are changed to “Runtime Properties” (Tool menu). There are more options added to the Editor Properties (Tool menu). See attached image.

Many thanks to all the bug reports. They are on the TODO list. I’m thinking about a feedback mechanism to get/set the status of an uploaded bug report.

Work is concentrating on the Solution Explorer. It is almost finished. It can handle more keys, more notecards, more anything in a manageable way.

Implementation and testing of all LL functions is the most imported thing TODO.

Linux(?!)
At this moment I have an openSUSE 10.2 running on VMWare supporting Mono. One of the roadmap milestones is to have a LSL-Editor Lite running on a Linux box. Some research is done using SharpDevelop 2.1 to compile on WindowsXp and execute on Linux. But the Editor has a long long way to go.


http://www.lsleditor.org/

The best thing, it is for free and updated on regular intervals, don't forget to donate if you find my work useful.

Keeping you updated.

-Alphons.
Alphons Jano
Dancer
Join date: 27 Sep 2006
Posts: 121
07-13-2007 06:44
It is not released yet (only Alpha) but I want to share a picture of the Solution Explorer, and LSL-Editor executing some functions... have a nice weekend.
Milambus Oh
Registered User
Join date: 6 Apr 2007
Posts: 224
07-13-2007 07:42
Looking good.

One suggestion for the chat outputs it may be helpful to see what channel the message is being broadcast upon.

Example:
Object on channel 0: Hello Avatar.
Object on channel Owner: Debug stuff

Or maybe some shorthand would be better to reduce the output...
Object: Say 0: Hello Avatar.
Object: Owner: Debug stuff
Object: Whisper 1: Short range message
Object: Region 12345: Broadcasting this message to everyone!
Object: InstantMessage: This is a provate message.

Hmm... for an IM you may want the key of the receiver as part of the output also.

Anyway, just some ideas.
Imajica Hand
Registered User
Join date: 3 Feb 2006
Posts: 66
07-16-2007 03:04
Looks nice!
Will contemplate also object's inventory?
I mean, if an object should send one or more items, will be us ebabled to handle that?

Example (I guess too complicated for this editor :):

Object1: Dispender
Object2: Food
Object3/Avatar: Eater

Object2 is be on Object1 inventory.
Object1 should send to Object3/Avatar a copy of Object2, and should store on its memory the new Object2's ID + Object3/Avatar ID, for further jobs. Of course, Object2 as well contains a script that run when is rezzed, to communicate its new ID.

mmm... Its all doable, except the fact that Object2 is on Object1's inventory...
Alphons Jano
Dancer
Join date: 27 Sep 2006
Posts: 121
release 2.9 of LSL-Editor
07-18-2007 08:21
As of today release 2.9 of LSL-Editor can be downloaded.

LSL-Editor: is a standalone Windows "Editor / Compiler / Debugger / Syntax checker / Runtime environment" for Second Life scripts, based on .NET framework. Because it does not need Second Life grid nor viewer, it is very useful when the grid is down for maintenance, or when you are not connected to it. It can compile and execute many LSL scripts, but also the code completion, features make it a "must have".

First of all, thanks again for all bug-reports, and feature requests.

This is a minor update. All changes are related to the editor itself. The compiler and runtime are not changed.

A really old bug is fixed, where the tooltips showed bold text on some high-res machines. ;)

The font used by the editing pane and the tooltips can be changed now (C attachments). This is quite handy for the slightly vision-impaired people :cool: . The images on the auto completion do scale, and also a Tab alignment bug is fixed. It took me half a day to figure out the relationship between one tab space and measuring the 'width' of a few mono spaced chars :confused: ..... now it works like a charm, tested on all font-sizes between 8-pt to (don't try this at home) 72-pt.

The weather is getting better over here. I love to go dancing on outdoor festivals, so don't be alarmed if the progression on the Editor slows down a bit. :D

http://www.lsleditor.org

Have fun.

-Alphons.

ps. Milambus Oh and Imajica Hand, thanks for your great remarks, I think it is doable. Gave me new ideas how to implement things.
Alphons Jano
Dancer
Join date: 27 Sep 2006
Posts: 121
release 2.10 of LSL-Editor
07-25-2007 06:01
As of today release 2.10 of LSL-Editor can be downloaded.

LSL-Editor: is a standalone Windows "Editor / Compiler / Debugger / Syntax checker / Runtime environment" for Second Life scripts, based on .NET framework. Because it does not need Second Life grid nor viewer, it is very useful when the grid is down for maintenance, or when you are not connected to it. It can compile and execute many LSL scripts, but also the code completion, features make it a "must have".

This is the first release having a Solution Explorer exposed. Because of lack of time, I did not test it much, so be gentile on submitting bug reports. The bug report feature has some feedback option added to it. So you can track your submitted problems. However old problems (submitted before 2.10) are not traceable.

Some people reported the LSL-Editor window appears to be off-screen in some cases. For those, I have added a 'Reset All' option on the Editor Menu. (See picture attached). This can also be used by a '/reset' command line option. you can start the Editor using "LSLEditor.exe /reset" doing the same thing. This is also handy for other mixed up settings of the editor returning to default.

The Solution Explorer can be used by the File menu. File-> New Project. It opens the Solution Explorer on the right, containing a Default Solution and an empty project. Right clicking Project, you can add an object, right clicking this object, you can add a new script, or add a new notecard. Attached I have a screen dump of a script and notecard using this to querie Objects inventory and show some lines from a notecard.

http://www.lsleditor.org


The best thing, it is for free and updated on regular intervals, don't forget to donate if you find my work useful. Also inworld donations to my Second Life "Alphons Jano" are appreciated.


Have fun.

-Alphons.
1 2 3 4 5 6 7 8 9 ... 13