'S' update as of 4/12/11

This forum is currently in read-only mode.
  • So I finally got around to building up the courage to install this thing and try it out.

    It's freaking amazing.

    I wanted a seed generator, and in less than 3 hours I had it installed and a working seed generator that builds my star-map for a project I am working on.

    I finally got a good collaboration partner, and we have been working non-stop... and "S" has just made our lives so much easier and better.

    Lucid... I love you man :D

    ~Sol

  • thank you sol

    glad you like it

    remember to ask if you run into weird nonsense

  • Hi,

    Thanks for the plugin Lucid, I would just like to point an issue I am having here.

    Following your first tutorial, that says to create a super array with the string "default!!!" as default value, I got an application crash. It seems that I am not able to set the text box content to the S array String. If you need further info, I will send it right away.

    Thanks in advance,

    ~solid

  • hmmm. I know this is messy, but for now, you have to download the versions you see on each page as you go through the tuts

    I never updated them all to work with the latest version

    let me know if this was your problem

  • I tried to use the version for download on the first tutorial post and still the same crash. I will try to skip this tutorial and see if I can proceed.

  • what is the latest stable version of 'S'? I can't download the one you put the link on page 12 of the topic.

  • It doesn't work for me either it's a shame since the consept is so appealing

  • Hi Lucid I read the whole thread, i'm interested on your pulgin it looks so wonderful, i'm working on a RTS project and to have S functionality will powerups my project 'cause solves many data management issues... well i'm so thanksful for the S... keep on working at S! this is great...

  • I'm having a problem with loops:

    ->Make Super Array {""}: "ASDF"

    ->Make String Array {"ASDF"}: "stringasdf" with default 0

    +"asdfloop" For Each String at {"ASDF"}

    This causes a crash.

  • Try Construct 3

    Develop games in your browser. Powerful, performant & highly capable.

    Try Now Construct 3 users don't see these ads
  • I'm having a problem with loops:

    ->Make Super Array {""}: "ASDF"

    ->Make String Array {"ASDF"}: "stringasdf" with default 0

    +"asdfloop" For Each String at {"ASDF"}

    This causes a crash.

    's' is very stable. That means, for me it is only crashing, if I did something wrong or illogical.

    Be careful of what you define and how:

    • You need a super to store some string arrays.
    • You need one string array to store some strings.
    • You need to tell the loop the complete path to the string array of interest to loop through.

    In the example above you added a string array with the name "stringasdf" to the super "ASDF", but you expect 's' to loop through "ASDF", which is no string array. The correct path would be

    "asdfloop" For Each String at {"ASDF", "stringasdf"}

    Of course, you should add some strings to "stringasdf" or else there is nothing to loop through ;)

    Here is an example cap: using_s_string_loop.cap

  • Double post because of "500 - Internal server error"

  • Thanks for the reply. And sorry for the late response, I do read and appreciate all help, but as I said in another thread, I work on my game on and off in a casual pace :) I will give it a shot, I misunderstood how S works with loops, but now I think I get it.

    But I was actually trying to loop through the string arrays that are part of "ASDF", so I guess instead I have to loop through using the Super loop right?

  • Hmm, how to reference the specific string array then?

    So I have a Super "ASDF"

    String array "stringasdf1"

    String array "stringasdf2"

    ...

    String array "stringasdfN"

    Each has 3 strings in it.

    I want to loop through the string arrays in "ASDF" (so not through the actual strings, but the arrays 1 to N themselves). However, I don't actually know the names ahead of time and there can be a wide variety of names, so I want some numerical or loop-based (e.g. current array in loop, loopindex, etc) way to access them. however, if I do:

    {"ASDF","stringasdf1",1} this works but

    {"ASDF",0,1} this doesn't work (or also loopindex instead of 0 doesn't work). How do i go about doing this?

    I also tried using "l" but it's also crashing so I must be doing something wrong. I did this:

    For Each Super in "ASDF"

    S.s({"ASDF","stringasdf1",0}) ####This works

    S.s({"l","loopname",0}) ####This crashes.

  • Ok I figured out how to do what I want. I didn't realize that array names and indices are not interchangeable (e.g. that if you want Value 3, in Array2, located in Array1, you don't do {"Array1",0,2} but you do {"Array1",0,"Array2",2}) but instead you specify the name of the array, and then the index you want. That was a bit confusing to me but I see why it was done the way it was and it is clearly the best way to do it even if unintuitive to noobs like me at first.

    However, it seems that "end" doesn't work in the {""} address method. Instead, I have to do something like {"Array1",0,"Array2",S.sule({"Array1","Array2"})) to get the last element in Array2 or to add elements to the last structure in Array2 (note that this is different from adding to the last element in Array2 in which case you can add to "end")

    Well it works, yay. If there's a better method to refer to the last element in {""} notation that would be great, I tried to parse the tutorials for the 50th time in figuring out my issues, but I seem to lose track and get confused of how this works :)

  • Hmm ran into another problem:

    Make Super Array {""}: "NPCDebuffs" with default 0

    For Each NonPlayers (this is a family)

    ->S: insert super "default" to {"NPCDebuffs"}

    ->S: Make Super Array {"NPCDebuffs", S.sule({"NPCDebuffs"})}: str(NonPlayers.UID)

    ->DebugText: Set text to DebugText.Text & str(S.sule({NPCDebuffs",str(NonPlayers.UID)})) & " "

    This will cause a crash. But if I put in the UID of the lowest NonPlayers object ("290" in this case), it works correctly. If I put in any of the other ones ("293", "296", "299" in this case), it will crash.

    However, if I check the Size-1 of the "NPCDebuffs" super, it is actually 3, which is correct. So I guess the arrays are not being named correctly for whatever reason. Is there some way I can check the names ?

    if I change ->S: Make Super Array {"NPCDebuffs", S.sule({"NPCDebuffs"})} to remove the S.sule, then it works. So I guess I'm still missing how this works conceptually speaking.

    One other issue, is that if I try to get the size-1 of an array that's empty, I get a very large number. Is there some other way to determine if an array is empty?

Jump to:
Active Users
There are 1 visitors browsing this topic (0 users and 1 guests)