Welcome to the Second Life Forums Archive

These forums are CLOSED. Please visit the new forums HERE

LSL-Editor

Dimentox Travanti
DCS Coder
Join date: 10 Sep 2006
Posts: 228
06-13-2007 12:24
Well On the events thing.
For collision id be happy with inputing the vars like you do for link message.

On the link message could you not allow grouping of scripts into a virtual object. and then pass teh messages? Kinda like your doing for say and listen but limited between the two scripts.

That would indeed give you an object that yuo can use for future use to defin the object and its link objects. You dont have to get to detailed just enough for that functionality to work..


About http request that should be easily done by a real http request.

Thoes 3 things would make it perfect for me to use about 80% of the time for development w/o having to be in world.

Other devs have enjoied my funding for things (like a non gui sl client Whoot) id be mroe than happy to throw some insperation your way.
_____________________
LSL Scripting Database - http://lsl.dimentox.com
Imajica Hand
Registered User
Join date: 3 Feb 2006
Posts: 66
06-14-2007 05:51
oh, well... that is what happen when people asks without trying before :)

lol

and before asking "what about linked messages?", I will go immediately to check that ;)

Thanks,
Ima

From: Alphons Jano
Hello Cherry,

Imajica,

The "Ability to debug two (or more) concurrent scripts" is working!! The chat / listen functionality is working as of release 2.1 For chat, whisper, shout, even llRegionSay and user typing works. There is a listen example on the website:
Alphons Jano
Dancer
Join date: 27 Sep 2006
Posts: 121
06-14-2007 08:33
Hi Imajica,

On "what about linked messages?"

It is working in the beta release..... ;-)

have fun.

-Alphons.

ps. The "linked messages" was implemented because of a generous donation of Dimentox Travanti!!
Very Keynes
LSL is a Virus
Join date: 6 May 2006
Posts: 484
llList2xxxx causing Exception Errors / workaround
06-17-2007 14:14
Hi Alphons,

First off *WOW* what a program / Package - It is by far the most useful progarm I have found since I joined SL and a great tool for Learning LSL as well as testing ideas. Since I downloaded it I have been inworld only once in over 48 hours as opposed to my normal 12 - 16 hours a day :) and have spent most of that time working in LSL-Editor.

I seem to have a problem, on my system, where the use of llList2String and llList2Integer course an exception in the runtime environment, I know you are probably working on it but thought others with the same problem may benefit form the work arround I am using.

MyString = (string)llList2List(MyList,Item,Item)

returns the same result as MyString = llList2String(Mylist, Item) whilst

MyInt = (integer)(string)llList2List(MyList,Item,Item) == llList2Integer(MyList,Item)

Hope that helps somebody else to use this great program. :)

Very

p.s. Just downladed the Beta Version and I see the issue is resolved
Cryas Tokhes
Great Googley Moogley...
Join date: 8 Feb 2006
Posts: 124
06-17-2007 15:18
I still am a very big fan of Scite. However, the thought put behind this is absolutely amazing. With the ability to debug MULTIPLE scripts at the same time and how they interact with each other! I am literally floored... My co-worker thought I was have a seizure. :D
Very Keynes
LSL is a Virus
Join date: 6 May 2006
Posts: 484
06-17-2007 18:26
Hi Cryas,

I agree, and if you are working with Muliple scripts you may find this little Debuging tool helpful. Just edit the list to the channels your scripts work on and load it up allong with the scripts you are testing. It returns the script name, in chevrons, and the channel name in the console window for each message passed :)

// Packet Sniffer V2 - Very Keynes
// Designed for LSL-Editor but use freely as you wish

list Channels = ["<NetCh>",-874635213,"<PubCh>",69,"<PriCh>",8292638423,"<BugCh>",-293752193,"<ErrCh>",DEBUG_CHANNEL];

default
{
state_entry()
{
for(integer x = 1; x <= llGetListLength(Channels); x = x + 2)
{
llListen((integer)(string)llList2List(Channels,x,x),"",NULL_KEY,"";);
llSay(0, "listening on channel " + llList2CSV(llList2List(Channels,x - 1,x)));
}
}
listen(integer channel, string name, key id, string message)
{
integer x = llListFindList(Channels,[(string)channel])- 1;
llSay(PUBLIC_CHANNEL,(string)llList2List(Channels,x,x) + "<" + name + "> " + message);
}
}
Lee Ponzu
What Would Steve Do?
Join date: 28 Jun 2006
Posts: 1,770
06-18-2007 07:40
Brilliant!!
Lee Ponzu
What Would Steve Do?
Join date: 28 Jun 2006
Posts: 1,770
06-18-2007 07:42
I think this channel sniffer thing should be a built in.

In fact, maybe there should be a menu of built in tools that ship with the Editor itself.

In fact, maybe this isn't an "editor". Maybe it is a mini-runtime LSL environment 8-)

Maybe I am getting to excited...
Alphons Jano
Dancer
Join date: 27 Sep 2006
Posts: 121
06-20-2007 03:18
Hey Guys,

Thanks for your remarks. It keeps me and LSLEditor going. ;-)

-Alphons.
Alphons Jano
Dancer
Join date: 27 Sep 2006
Posts: 121
LSLEditor 2.5
06-20-2007 03:21
Hello all,

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

LSL-Editor: is a standalone Windows "Editor / Compiler / Debugger" for Second Life scripts, based on .NET. 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 LSL scripts, but also the code completion features make it a "must have" .

Release 2.5 contains small bugfixes but also llMessageLinked / link_message is implemented. There were some issues on backspace and are corrected. Indenting if/else constructions has improved a lot. And the "forgotten" function llStringTrim made it to this release.

I'm working on a solution/project implementation, to organize scripts, objects and other items, therefore in this release, some menu items are disabled, because the work is not finished. Don't worry about it.

A special word on my donation friends, thanks, it is much appreciated.

http://www.lsleditor.org/

The best thing, it is for free, but don't forget to donate if you find my work useful.

Enjoy!!

-Alphons.
Imajica Hand
Registered User
Join date: 3 Feb 2006
Posts: 66
A little bit OT
06-21-2007 02:32
I'm very intersted about one thing: debug message are localized (!).
I'm Italian and when I make some kind of mistake (e.g. a casting error), I get a nice italian error message.

I'm very interested: how that its possible? Is not something really important, as I can understand properly english messages, but its nice :)

Oh, by the way: thank you for link_message support!

I love that tool each day more... I guess its time to make a donation :)
Gregory McLeod
Registered User
Join date: 21 Oct 2006
Posts: 278
OT only slightly
06-21-2007 07:06
Sorry to jump in here cold but I have been evaluating various editors and had heard that LSL Editor had an execution facility which would allow you to step through your code.
Is this facility in the 2.5 version or was I misled?
Alphons Jano
Dancer
Join date: 27 Sep 2006
Posts: 121
LSLEditor can compile and execute LSL scripts!!
06-21-2007 08:58
Hey Gregory,

No, you are not misled, the LSLEditor can do runtime compiling and executing LSL script code. You have to hit F5 to compile en start the script, or multiple scripts, if you like.

And Imajica, yes, the build-in compiler produces error/debug messages in the language of the operating system. When i started the project i had some doubt if people had problems on having 'Dutch' error messages :D but when i received some bug reports, they contained English errors. Did not see any Italian bug report, so far. ;) but thats okay, i guess....

have fun

-A.
Lee Ponzu
What Would Steve Do?
Join date: 28 Jun 2006
Posts: 1,770
but...
06-21-2007 11:30
it does not have breakpoints, or stepping. (But it could, right??)

Break points are proabably easiest, and more useful anyway.
Alphons Jano
Dancer
Join date: 27 Sep 2006
Posts: 121
06-21-2007 14:32
Lee, the breakpoint and stepping is not easy to build, i have some ideas, and they are on the todo list, but have low prio at the moment. The multiple objects containing multiple scripts are giving me headaches at the moment. :( But it can be done. :)

cheers.

-A.

ps. Did you notice the "Tools" menu item?
Cryas Tokhes
Great Googley Moogley...
Join date: 8 Feb 2006
Posts: 124
06-21-2007 17:55
In the SimProperties, what is the reason for the Inventory tab? Also is there anyway to make a mockup 'Content' so if a script does reference to content material, it could find the needed information instead of giving a Windows Error with the Continue and Cancel Options?
(This was in version 2.4, I have noted no Windows Error in 2.5, but still no way to reference notecards specifically.)

Something else, since there are so many new revisions that are coming out. Is there anyways for the app to create an external .INI (or like) type file so that it will keep the options (4-space tabbing, color, Sim Name, keys, etc) for future versions to be able to access and use?
Alphons Jano
Dancer
Join date: 27 Sep 2006
Posts: 121
06-22-2007 07:11
Hello Cryas,

As i replied in my email, but also for readers of this forum, the Inventory is for future use. There are no 'Content' hooks in the editor......

And that annoyed me :mad:

Because there were a few requests about Notecards, just updated the beta-release containing:

- llGetNumberOfNotecardLines(...);
- llGetNotecardLine(...);

The directory at wich the LSL-Editor resides is taken as a path to the notecard. So putting "test.txt" in the same directory as the editor, you could call
llGetNumberOfNotecardLines("test.txt";); the result is in a dataserver event.

Don't use 'llGetInventoryName' because it is not implemented yet, because of the Inventory issue above.

....'so many new revisions'.... I try to release a stable version of the editor once a week (wednesday) and release a beta version every day, but you are absolutely right about user settings. The good news, the next release will import user settings automatically. And it will have a 'Recent Files' list.


LSL-Editor is an ongoing project, fixing bugs and implementing more (new) stuff every day :)

happy programming.

-Alphons.
Very Keynes
LSL is a Virus
Join date: 6 May 2006
Posts: 484
06-22-2007 07:32
Hi Alphons,

Thanks for the updates :) but the last 2 releases have started giving me some strange errors the main one being "Line 130 Character 8: Class, struct, or interface method must have a return type" when it is actualy a user defined function that neither accepts or returns values, I created a null function to test like so:

process_list ()
{
;//List Processing code goes here
}

and it generates the error, whilst the program runs happily within SL.

If I revert to a verison prior to 2.4 it comples and runs fine.
p.s. Glad you liked the channel sniffer :)
Alphons Jano
Dancer
Join date: 27 Sep 2006
Posts: 121
06-22-2007 07:36
Hello Very Keynes,

If you remove the space character between 'process_list' and '()' it compiles again.

But you are right. I have to look into the parser, thanks for your remark.

greetings.

-A.
Very Keynes
LSL is a Virus
Join date: 6 May 2006
Posts: 484
06-22-2007 07:46
Thanks Alphons,

Slightly embarresed here for not noticing the space :(, you are correct it compiles fine :)

Just one other point whilst you are looking into the parser though.

The command:

if (~llListFindList(lx,llList2List(ly,x,x)));
else lz = lz + llList2List(ly,x,x);

returns 2 errors
Line 74 Character 53: Possible mistaken empty statement
Line 74 Character 13: Cannot implicitly convert type 'int' to 'bool'

the command:
if (-1 == llListFindList(lx,llList2List(ly,x,x))){;}
else lz = lz + llList2List(ly,x,x);

compiles fine, and is probably a beter use of structure, but the messages are confusing.

Could you make the first a warning, as it is an intentionaly empty statement, and let the compile to continue and the second, I think, is an annomaly as LSL has no bool type that I am aware of, it just sees integer 0 as FALSE and ~-1 == 0.

Cheers
Very
Alphons Jano
Dancer
Join date: 27 Sep 2006
Posts: 121
06-22-2007 08:10
Hello Again,

Don't be embarresed, it was a glitch in the parser, it is corrected in the beta-release.

Nice example:

if (~llListFindList(lx,llList2List(ly,x,x)));
else lz = lz + llList2List(ly,x,x);

:eek:

The 'int' and 'bool' things are internals, and you are not supposed to see them :( but it brought me to attention the '~' operator on integer was missing. You are the first one, pointing me towards this problem. I have added it to the integer class. The empty statement is als gone by implementing this fix. It does compile without errors.

If you can't wait on the release next Wednesday, you can download the beta-release containing these fixes. :)

Have fun.

-A.
Very Keynes
LSL is a Virus
Join date: 6 May 2006
Posts: 484
06-22-2007 08:15
Thanks again,

I added the working version of my code fragment to my post so as not to confuse others and to show a work arround :), I will go downlad the beta. I think I am now more hooked on LSLEditor than I am on SL :)
Meghan Forder
Registered User
Join date: 20 Jun 2007
Posts: 1
Printing bug
06-23-2007 18:30
I don't know where else you are taking change requests or where else to post bug reports, but I found one. I was printing out some of my code to read and evaluate offline and found that if the script was more than a page long, then it would not print the rest of the script. I only get 1 page of code printed out.

Thanks for the tool though!!
Meghan
Alphons Jano
Dancer
Join date: 27 Sep 2006
Posts: 121
06-24-2007 03:12
Hello Meghan,

I was thinking of making a bugtracker accessible within the LSLEditor :) but anyway, the printbug was reported a few times. The problem will be fixed in the upcoming release of Wednesday.

greetings.

-Alphons.
Cryas Tokhes
Great Googley Moogley...
Join date: 8 Feb 2006
Posts: 124
06-24-2007 15:29
From: Alphons Jano

The directory at wich the LSL-Editor resides is taken as a path to the notecard. So putting "test.txt" in the same directory as the editor, you could call
llGetNumberOfNotecardLines("test.txt";); the result is in a dataserver event.


I'm pretty sure that I speak for all of us here, but you are doing a great job on this.

I tried that trick with the .txt file. I tried using a string variable, txt file name in quotes, txt file name without quotes, the works... still isnt pulling. I also made sure that it is in the same directory as the editor. I even made a copy and put it in the same dir as the script.

Any other ideas?

// I take that back

I checked out the BETA. That was able to do it just fine. But one other issue... Now my listens arent working... :(
1 2 3 4 5 6 7 8 9 ... 13