SRL Archive - General

SCAR Luna, backwards compatibility


Freddy1990

2009-12-03 14:47:50

Backwards compatibility, I've modified functions in SCAR quite often which kind of blew that concept… I'm however, hoping to make SCAR 3.5x versions 99.99% if not 100% backwards compatible with each other. However, the question I have for you is the following… Should I make 3.5x compatible with SCAR 3.2x scripts? There will probably be some loss of compatibility that can't be avoided in any case… However, seeing SCAR 3.50 is a complete rewrite of SCAR, this seems like the right time to start fresh and do things properly, a simple example: Ditch FindBitmap and rename FindBitmapIn to FindBitmap to correspond with the rest of the FindX function names… I could write an include that would, when included in 3.22 scripts allow for backwards compatibility, or mostly anyway in that case… I can however also make it as backwards compatible as possible. note that technically this wouldn't be an issue for includes like SRL because SCAR 3.50 will contain compiler directives like SCAR already does, which can indicate that it's 3.50+

Opinions are more than welcome.

senrath

2009-12-03 15:01:17

I'd "start fresh and do things properly" as you've put it. Backwards compatibility is nice, and all, but not if it keeps you from fixing things up as best you can.

Naike

2009-12-03 15:19:10

Freddy, are you going to break all the scripts made for SCAR?
That's a rather big move..

Freddy1990

2009-12-03 15:23:43

From: N1ke!
Freddy, are you going to break all the scripts made for SCAR?
That's a rather big move..


Hmm, as I said, if I don't go for backwards compatibility, I'll add an include to SCAR that will direct the calls towards the right functions, so it'll, for most scripts just be a case of adding that include to fix them… But I'm not sure what to do myself, hence I'm asking, after all, it's not me having to write the scripts…

Naike

2009-12-03 15:32:29

Backwards compatibility would be the best way to go, in my opinion..

Otherwise stuff will get rather messy.

Nava2

2009-12-03 15:53:39

Backwards compatibility, or nothing. I think you need to realize that if you do that, you are going to lose people based on the simple fact that there always seems to be errors with your new additions.

People won't completely jump on board with 3.50 especially if most of the developers team still uses 2.03/3.15b

MylesMadness

2009-12-03 16:00:21

Start over, Its better to make people rewrite to use the new features anyway.

mastaraymond

2009-12-03 16:06:45

I say, total rewrite from scratch. Perhaps an 'emulation' mode for the old one, but a fresh start would be the way to go.

Matsetst

2009-12-03 16:11:40

This thread is also for not SRL members right ?

All I'm saying is that nothing is so refreshing as a total new start.

But who am I to say that, I don't even know half of the fact how much time and effort people putted in their scripts.

But if your new version will accomplished the expectations your saying then everyone will be satisfied in the end ^^

Freddy1990

2009-12-03 16:12:57

Maybe I should've made a poll, lol…

From: mastaraymond
I say, total rewrite from scratch. Perhaps an 'emulation' mode for the old one, but a fresh start would be the way to go.


A compatibility mode is actually not such a bad idea, the way I built the entire platform, it could be implemented perfectly…

However, know that so far I haven't done anything to compromise backwards compatibility. I've added some functions I've been wanting to rename under a new name, like SetTolMode2Modifiers, but I've added a second one for each fo these functions, such as SetColorspeed2Modifiers. FindBitmapIn/FindBitmap is still the same for now, with brand-new routines if I may add that so far have preformed beyond my expectations.

Btw, note that removing the backwards compatibility as it is atm is a matter of erasing a few lines of code, the whole platform is fully modular :)

Bionicle

2009-12-03 16:20:33

From: Freddy1990
Maybe I should've made a poll, lol…


You should've :p

I'd say to weigh all the pros and cons. Imo, a total re-wright could lose some Jr Membs trying to learn scar. They would get frustrated, thinking that everything they did was for nothing. Also leechers would be freaking cause all their favorite scripts wouldn't work anymore. On the other hand, it'll give old SRL members and SRL members who know everything to spend some time learning, not necessarily a bad thing. Also, SRL needs to move along with Runescape. Runescape is updated all the time, things are turned around all the time, why shouldn't we do that here?

YoHoJo

2009-12-03 16:23:24

From: Freddy1990
Maybe I should've made a poll, lol…


If you really want one, tell me the questions/options and ill do it.

Freddy1990

2009-12-03 16:27:37

From: bionicle1800
You should've :p

I'd say to weigh all the pros and cons. Imo, a total re-wright could lose some Jr Membs trying to learn scar. They would get frustrated, thinking that everything they did was for nothing. Also leechers would be freaking cause all their favorite scripts wouldn't work anymore. On the other hand, it'll give old SRL members and SRL members who know everything to spend some time learning, not necessarily a bad thing. Also, SRL needs to move along with Runescape. Runescape is updated all the time, things are turned around all the time, why shouldn't we do that here?


I do intend to provide better documentation (though not entirely sure how I'm going to handle that yet). Loosing leechers isn't something I'm that concerned about though, I care about the scripters, they did the effort to learn how to script, that's admirable, leeching scripts, not so much :p

From: YoHoJo
If you really want one, tell me the questions/options and ill do it.


Heh, I can mod the SCAR section, so I can add polls, I just prefer replies though, people tend to write more that way :)

Wanted

2009-12-03 16:31:12

Revamp!

Bionicle

2009-12-03 16:40:40

From: Freddy1990
Loosing leechers isn't something I'm that concerned about though, I care about the scripters, they did the effort to learn how to script, that's admirable, leeching scripts, not so much :p


I meant more about their annoying whining :p "Z0mG THEEZ SCRIPT DOONT WOORK! WAT TO IZ DO0??" But yea… lol

noidea

2009-12-03 17:06:15

Total Revamp :)

Wanted

2009-12-03 17:38:31

It's not like you are changing the syntax SCAR uses. I don't get why people are saying stuff like 'rewrite' we're talking changing the name of a few functions and how the inputs/outputs are arranged.

weequ

2009-12-03 17:45:58

rewrite

lordsaturn

2009-12-03 18:00:25

what happened to scar 4? wasnt that a rewrite from scratch?

Freddy1990

2009-12-03 18:27:08

From: IceFire908
It's not like you are changing the syntax SCAR uses. I don't get why people are saying stuff like 'rewrite' we're talking changing the name of a few functions and how the inputs/outputs are arranged.


Not sure why they're all yelling rewrite either… SCAR 3.50 is a complete rewrite from scratch, that was kind of the point in making it in the first place…

From: lordsaturn
what happened to scar 4? wasnt that a rewrite from scratch?


That's still coming, SCAR 3.50 is just to bridge the gap. SCAR 4 will take a seriously longer time to develop than 3.50 because the entire concept of the program will be redone, it'll get a new script engine, the layout will be quite different, etc… 3.50 is supposed to provide a stable platform to work with until SCAR 4 is ready for release.

Dan Cardin

2009-12-03 19:20:49

non-backwards compatibility is the way to go. fixing the scripts seems like it would generally just be a couple "replace all"s and done (probably not that easy, but easy enough). Especially if it makes things easier or less silly. Along with the fact that an include should fix any non compatible things that you do, unless you change syntax, which is a different matter.

Freddy1990

2009-12-04 04:07:09

From: Dan Cardin
non-backwards compatibility is the way to go. fixing the scripts seems like it would generally just be a couple "replace all"s and done (probably not that easy, but easy enough). Especially if it makes things easier or less silly. Along with the fact that an include should fix any non compatible things that you do, unless you change syntax, which is a different matter.


Syntax will only change in SCAR 4, SCAR 3.5 is just the same as 3.2x in that matter, however, another difference will be that you need to include plugins in scripts for them to be activated, like {.plugin SMART.dll} That way not all plugins are just activated when a script runs, which is both safer and less messy.

Boreas

2009-12-04 16:06:10

Out with the old, in with the new. Legacy code leads to bloat.

Mr. Doctor

2009-12-04 16:10:38

What I'm reading is that 3.5x won't be compatible with 3.2x? I'm with Nava.

Freddy1990

2009-12-04 16:59:47

Thanks for your input. :)