SRL Archive - General News

What you can expect from Simba 1.0


Wizzup?

2011-07-26 13:54:44

With Simba 0.97 soon being released, we're getting very close to the version, 1.0.

I figured you might be wondering, what will version 1.0 bring that makes it so special?
In this thread we present a list of things that should be done before simba 1.0 sees the light of day.

Aside from bug fixes and other minor improvements, these things are a priority / major planned feature: (And hopefully some will appear at least in a crude form in Simba 0.98)

  • Script Manager. (We need this for Simba too, to automatically update extensions)
  • Settings User Interface. (Something nicer than the plain TTreeView of settings.)
  • Some code refactoring (+ CTS 3).
  • More complete documentation. (This is vague)

Hopefully we'll also have a crude form of debugging, something Dgby has been working on lately.

Things you probably won't see before Simba >1.0:

  • Tabbed debugging.
  • Python integration / pyMML.
  • Out of process plugins / scripts.

When lape enters Simba has yet to be seen; as this mainly depends on the development pace of lape. But we already have a working branch with lape support. :)

So the focus will be on making the UI a bit easier to use, and the underlying code easier to handle. Suggestions, comments, welcome.

Coh3n

2011-07-26 14:10:36

Nice! I haven't told you yet because I didn't know if I'd be able to, but there are two things I plan on doing when I fork Simba: export TTreeView to PS, and add FilterTPACustom. I know it's small, but it's a start. I'm hoping that will give me some more knowledge to do other small things. That's assuming my spare time doesn't change drastically.

About the User Settings Interface: I actually quite like the TTreeView. Easy to navigate through, easy to edit. I would say make it more obvious as to how to edit it (maybe have an edit button as well as double clicking). What else did you have in mind for it? Just a better layout in general?

In case you haven't noticed (:p), I love working with GUIs. I just like the design part of it, so that could be something I could get into in the future. But that being said, I don't want to make any commitments because I do have 1000 other plans on the go.

All in all, 1.0 looks nice. :)

Wizzup?

2011-07-26 14:54:34

From: Coh3n
Nice! I haven't told you yet because I didn't know if I'd be able to, but there are two things I plan on doing when I fork Simba: export TTreeView to PS, and add FilterTPACustom. I know it's small, but it's a start. I'm hoping that will give me some more knowledge to do other small things. That's assuming my spare time doesn't change drastically.

About the User Settings Interface: I actually quite like the TTreeView. Easy to navigate through, easy to edit. I would say make it more obvious as to how to edit it (maybe have an edit button as well as double clicking). What else did you have in mind for it? Just a better layout in general?

In case you haven't noticed (:p), I love working with GUIs. I just like the design part of it, so that could be something I could get into in the future. But that being said, I don't want to make any commitments because I do have 1000 other plans on the go.

All in all, 1.0 looks nice. :)


Adding FilterTPACustom should be pretty easy to do - have a look at Units/MMLCore/tpa.pas ; it's not really any different from adding it to WizzyPlugin. Once you've done that, simply edit Units/MMLAddon/PSInc/Wrappers/tpa.inc and add the procedure (with wrapper). Once that is done, edit Units/MMLAddon/PSInc/psexportedmethods.inc and add it to the appropriate section. If you get stuck let us know in the IRC and we can help you fix the problem.

About the form, my plan was actually to create a very simple settings form (a ``user friendly'' one) and wait for someone to pick it up and add more stuff to it. The hardest part is probably adding the form to Simba and making it work with the settings API, but that's one of the first steps and no longer a concern if we have a simple form. So extending it would be rather easy then. I too like the current settings form, but it's really not too user friendly. Sure, it's fast and stuff - but it doesn't show what the possible options are for each setting (for stuff like True and False it is trivial, for, say, TextFont not so much). So I think we need a more user friendly form, we can still keep the only one too. Call it ``expert mode''. ;)

Coh3n

2011-07-26 15:48:35

From: Wizzup?
Adding FilterTPACustom should be pretty easy to do - have a look at Units/MMLCore/tpa.pas ; it's not really any different from adding it to WizzyPlugin. Once you've done that, simply edit Units/MMLAddon/PSInc/Wrappers/tpa.inc and add the procedure (with wrapper). Once that is done, edit Units/MMLAddon/PSInc/psexportedmethods.inc and add it to the appropriate section. If you get stuck let us know in the IRC and we can help you fix the problem.
That doesn't seem too bad. :)

From: Wizzup?

About the form, my plan was actually to create a very simple settings form (a ``user friendly'' one) and wait for someone to pick it up and add more stuff to it. The hardest part is probably adding the form to Simba and making it work with the settings API, but that's one of the first steps and no longer a concern if we have a simple form. So extending it would be rather easy then. I too like the current settings form, but it's really not too user friendly. Sure, it's fast and stuff - but it doesn't show what the possible options are for each setting (for stuff like True and False it is trivial, for, say, TextFont not so much). So I think we need a more user friendly form, we can still keep the only one too. Call it ``expert mode''. ;)
Ah okay, that sounds good.

Flight

2011-07-26 20:25:34

About the Script Manager and automatic extensions updater…

First of all, we need a Reflection 2 extension. This is just a must-have.

Secondly… I had an idea but I'm not sure if it's really needed with Simba and the ScriptManager, but it would sure be nice for scripters.

Here's my idea:

There's a 'script dump' on this site (Villavu, or wherever necessary) that we can upload our scripts to and every script should have a name, version, and category. And through our ScriptManager (on Simba) we could browse this giant library of scripts by name, category, rating, ect… and download them directly through Simba. Having the version included in every script would make it easy for both the scripters and users to release and use the most current version of a script, simply if it's been updated then prompt a message if we'd like to update. (Very similar to extensions). Of course this would be limited to the user's forum rank. (You must log in on Simba through your Villavu User/Pass and that will determine which scripts you are able to use). But the biggest problem with this is, can we trust the scripter? What stops them from uploading some bad scripts that might send the username/password to their emails? Perhaps we have a team of appointed people (or already a few ranked SRL'ers) who could check these for suspicious code, and if authorized, upload the script.

Probably not much to do with the Simba development itself, but I sure think it would be a neat feature and handy feature for everyone.

Narcle

2011-07-26 20:50:07

From: Flight

First of all, we need a Reflection 2 extension. This is just a must-have.

This is easy, just have to change the current one to Ref 2 and such.

From: Flight

But the biggest problem with this is, can we trust the scripter? What stops them from uploading some bad scripts that might send the username/password to their emails? Perhaps we have a team of appointed people (or already a few ranked SRL'ers) who could check these for suspicious code, and if authorized, upload the script.


This was already planned. We discussed it when the Script Manager idea came up. I believe one of the suggestions was to allow people to upload regardless but have a symbol next to it verifying its trusted or clean of suspicious code.

Flight

2011-07-26 20:57:13

Ah right, good idea. I do updates to my scripts quite rapidly so an instant upload would be good for me, but I really prefer to have my scripts checked by higher authorities just to prove it's safe to use. If it's stable or not, that's my own fault. :p

Geo

2011-07-26 22:23:17

I edited SRL.sex to download/extract Ref2 all it needs is the tar.bz2 as whenever I try to update it, it'll download fine, but fail to extract. I'm guessing I compressed/uploaded it incorrectly.

Dgby714

2011-07-27 00:05:08

From: Geo
I edited SRL.sex to download/extract Ref2 all it needs is the tar.bz2 as whenever I try to update it, it'll download fine, but fail to extract. I'm guessing I compressed/uploaded it incorrectly.


Wizzup has a script on his server to generate the archive and version files. Wait for him to add Refl2 and Extensions to the list =)

also you use
'http://geosrl.freeiz.com/ReflectionTwo.tar.bz2', 'http://wizzup.org/static/srl/srl_refl_version'

You need to use a different version file =P It's just a simple text file with the current version in it.

Dgby714

2011-07-27 00:30:05

Double Postin =P

Wizzup, How does this look as a header for Extensions? or even Scripts (Script Manager)?
If you don't mind it I can redesign the Extension form and stuff to use this for updating =)
It's valid JSON. Also uses {} (Valid object) so becomes a comment in PS.

{
"Name": "Updater",
"Author": "Dgby714",
"License": "WTFPL",
"Version": 1.0,
"Description": "Include for Updaters.",
"Depends": []
}

Wizzup?

2011-07-27 05:50:15

From: Geo
I edited SRL.sex to download/extract Ref2 all it needs is the tar.bz2 as whenever I try to update it, it'll download fine, but fail to extract. I'm guessing I compressed/uploaded it incorrectly.


Are you sure it handles the plugin properly too?

E: I could add the Reflection 2 plugin to SRL plugins.

Yago

2011-07-27 11:40:09

From: Flight
Ah right, good idea. I do updates to my scripts quite rapidly so an instant upload would be good for me, but I really prefer to have my scripts checked by higher authorities just to prove it's safe to use. If it's stable or not, that's my own fault. :p


We do have script Mods (Harry and Home)…

Flight

2011-07-27 12:36:13

From: Yago
We do have script Mods (Harry and Home)…


:duh: I'm quite aware of this…

Coh3n

2011-07-27 15:11:14

I'm not sure if the script mods go through each script to check for malicious code, though.

Awkwardsaw

2011-07-27 15:14:24

It can't be hard to make an extension to check for malicious code.

Yago

2011-07-27 16:01:12

From: Awkwardsaw
It can't be hard to make an extension to check for malicious code.


Not even an extension… just another script. If the password is repeated twice in the script or if its found outside of the whole declare players thing then look into it or something

Edit: A simple Ctrl + f

Coh3n

2011-07-27 16:02:27

I'm sure it can be done, but it will never be the same as someone actually going through and checking it out.

Yago

2011-07-27 16:33:28

From: Coh3n
I'm sure it can be done, but it will never be the same as someone actually going through and checking it out.


Im thnking this should happen or you can use some sort of github system where the commits shows the differences… You can even use paste.villavu.com and compare patses or scripts… So you dont have to review the script again… Just check the updates

Coh3n

2011-07-27 16:53:42

From: Yago
Im thnking this should happen or you can use some sort of github system where the commits shows the differences… You can even use paste.villavu.com and compare patses or scripts… So you dont have to review the script again… Just check the updates
Yeah there'll be some kind of security system for sure. Kind of related -> http://villavu.com/forum/showthread.php?p=822406#post822406

Wizzup?

2011-07-28 05:56:51

If we're talking about how to send scripts to the script manager repository, you'll need to get them verified by a team of git maintainers. (The script manager is/will be a git repos)

Script sales are not yet planned, but they MIGHT come later on.
The point of the Script Manager is distribution, and not DRM.

Wizzup?

2011-07-29 07:39:33

From: Dgby714
Double Postin =P

Wizzup, How does this look as a header for Extensions? or even Scripts (Script Manager)?
If you don't mind it I can redesign the Extension form and stuff to use this for updating =)
It's valid JSON. Also uses {} (Valid object) so becomes a comment in PS.

{
"Name": "Updater",
"Author": "Dgby714",
"License": "WTFPL",
"Version": 1.0,
"Description": "Include for Updaters.",
"Depends": []
}


Sure, but why JSON and why change a working system? For the Script Manager it might make sense, but not so much for the extension updater?

Dgby714

2011-07-29 11:34:16

From: Wizzup?
Sure, but why JSON and why change a working system? For the Script Manager it might make sense, but not so much for the extension updater?


We don't currently have a extensions updater?

Wizzup?

2011-07-31 18:33:42

From: Dgby714
We don't currently have a extensions updater?


We do now. :)