SRL Archive - General News

SRL 4 compiles with Simba!


mastaraymond

2010-02-05 21:42:26

Yeah it does, you will require some adjusted DLL's though, I attached them to my post.

You probably have to set the plugin path / include path in the settings form, but then it should work fine :-).


Be aware that the interpreter is still not working.. Most of the functions that result an array-type will fail :(.. I made wrappers for most of these functions, there might be a few left though.

EDIT:

http://www.villavu.com/forum/showthread.php?t=54786

Function

2010-02-05 21:48:07

Awesome!!! How do you set it to work? I extracted the rar into Simba/Plugins but it still doesn't seem to work :/ Sorry to be a bother I'm just new to this :)

WT-Fakawi

2010-02-06 03:27:45

Darn! Thats a short night, ray!

Incredible work!

Sir R. M8gic1an

2010-02-06 09:01:30

Win :)

~RM

mastaraymond

2010-02-06 11:15:27

Hell yeah!

There are still a lot of bugs left, but currently I can get my player to login and do most of the basic SRL stuff. It looks like the OCR does a good job!

mastaraymond

2010-02-06 11:40:53

Oh. Besides, it appears that SRL compiles almost 4 times faster than in SCAR.. I've no idea why, but it does.

SCAR: Successfully compiled (1786 ms)
Simba: Compiled succesfully in 484 ms.

Oh, and here is some ouput after running a scipt with just SetupSRL;


DTM [0] was not freed
BMP[0] has not been freed in the script, freeing it now.
BMP[1] has not been freed in the script, freeing it now.
You forgot to free a file... (Path = C:\Remake\Includes\SRL\Logs\SRL Log 06-02-10 0.txt)
You forgot to free a file... (Path = C:\Remake\Includes\SRL\Logs\SRL Log 06-02-10 1.txt)
You forgot to free a file... (Path = C:\Remake\Includes\SRL\Logs\SRL Log 06-02-10 2.txt)
You forgot to free a file... (Path = C:\Remake\Includes\SRL\Logs\SRL Log 06-02-10 3.txt)
You forgot to free a file... (Path = C:\Remake\Includes\SRL\Logs\SRL Log 06-02-10 4.txt)
You forgot to free a file... (Path = C:\Remake\Includes\SRL\Logs\SRL Log 06-02-10 5.txt)
You forgot to free a file... (Path = C:\Remake\Includes\SRL\Logs\SRL Log 06-02-10 6.txt)
You forgot to free a file... (Path = C:\Remake\Includes\SRL\Logs\SRL Log 06-02-10 7.txt)
You forgot to free a file... (Path = C:\Remake\Includes\SRL\Logs\SRL Log 06-02-10 8.txt)
You forgot to free a file... (Path = C:\Remake\Includes\SRL\Logs\SRL Log 06-02-10 9.txt)
You forgot to free a file... (Path = C:\Remake\Includes\SRL\Logs\SRL Log 06-02-10 10.txt)
You forgot to free a file... (Path = C:\Remake\Includes\SRL\Logs\SRL Log 06-02-10 11.txt)
You forgot to free a file... (Path = C:\Remake\Includes\SRL\Logs\SRL Log 06-02-10 12.txt)
You forgot to free a file... (Path = C:\Remake\Includes\SRL\Logs\SRL Log 06-02-10 13.txt)

Seems like SRL has got some leaks..

Function

2010-02-06 13:19:59

Am I doing something wrong? I got the srl includes and I put your new plugins in Simba\Plugins. But when I run this.

program new;
{.include srl\srl.scar}

begin
end.

I get this

[Error] (1:1): Unable to register function function Leo_AnalyzeGraveStone(var StoneName: PChar; ImageClient: TTarget_Exported): Boolean; at line 1

Wanted

2010-02-06 13:24:09

From: Function
Am I doing something wrong? I got the srl includes and I put your new plugins in Simba\Plugins. But when I run this.

program new;
{.include srl\srl.scar}

begin
end.

I get this

[Error] (1:1): Unable to register function function Leo_AnalyzeGraveStone(var StoneName: PChar; ImageClient: TTarget_Exported): Boolean; at line 1


You need the plugins.

Function

2010-02-06 13:26:37

From: IceFire908
You need the plugins.


I dled the one that he posted and extracted it to Simba/Plugins. Am I not doing it right?

Wizzup?

2010-02-06 13:47:35

From: Function
Am I doing something wrong? I got the srl includes and I put your new plugins in Simba\Plugins. But when I run this.

program new;
{.include srl\srl.scar}

begin
end.

I get this

[Error] (1:1): Unable to register function function Leo_AnalyzeGraveStone(var StoneName: PChar; ImageClient: TTarget_Exported): Boolean; at line 1


You may need a newer Simba build. Let's see if Ray and I can build one tonight.

Function

2010-02-06 13:49:11

From: Wizzup?
You may need a newer Simba build. Let's see if Ray and I can build one tonight.


Dang I wanna get into scripting :P But I understand that you guys are trying your best! Thanks a lot Wizzup?!

Nava2

2010-02-06 15:12:01

May seem like a silly question, but is your plugin path set?

Markus

2010-02-06 15:13:41

The file-freeing is intentional and might be a Simba bug: those files are probably the ones it couldn't open thus freeing them is useless (they aren't actually opened, just tried to, and it'd probably crash when freeing something which isn't opened).
Those two bitmaps and DTMs are also intended: they are used throughout the entire runtime of a script, and will be automatically freed when the script stops (and shouldn't be freed before that!).
Maybe something like a 'persistent' flag or w/ever is useful.

Function

2010-02-06 15:14:56

From: Nava2
May seem like a silly question, but is your plugin path set?




If thats what you mean.

Wizzup?

2010-02-06 15:20:39

From: Nava2
May seem like a silly question, but is your plugin path set?


Obviously not, as it failed to load a plugin functions. It's not like those functions are known if the plugins aren't being loaded.

mastaraymond

2010-02-06 16:50:38

From: Markus
The file-freeing is intentional and might be a Simba bug: those files are probably the ones it couldn't open thus freeing them is useless (they aren't actually opened, just tried to, and it'd probably crash when freeing something which isn't opened).
Those two bitmaps and DTMs are also intended: they are used throughout the entire runtime of a script, and will be automatically freed when the script stops (and shouldn't be freed before that!).
Maybe something like a 'persistent' flag or w/ever is useful.

No, there clearly is a leak in SRL Logs->


TempFile := OpenFile(BaseFileName+inttostr(i)+'.txt', true);
if (TempFile > 0) then
if (FileSize(TempFile) = 0) then
begin
CloseFile(TempFile);
try
TheFile := RewriteFile(BaseFileName+inttostr(i)+'.txt', false);
result := (TheFile >= 0);
if (result) then
exit
else
CloseFile(TheFile);
except end;
end

Should be

TempFile := OpenFile(BaseFileName+inttostr(i)+'.txt', true);
if (TempFile >= 0) then
if (FileSize(TempFile) = 0) then
begin
CloseFile(TempFile);
try
TheFile := RewriteFile(BaseFileName+inttostr(i)+'.txt', false);
result := (TheFile >= 0);
if (result) then
exit
else
CloseFile(TheFile);
except end;
end else
CloseFile(TempFile);