Jump to content

Estimated

Resident
  • Posts

    4
  • Joined

  • Last visited

Posts posted by Estimated

  1. Thanks for the suggestions Malestorm, however having objects send me a message is just as useless as waiting for the person that didn't receive it to message me.

    My objects handle about 30000-50000 transactions daily, some of them fail not because of debit perms nor insufficient funds, but due to SL not being able to handle the amount of transactions.

     

    I need a framework that will auto-retry (maybe after a small delay) infinitely until it succeeds. Because doing it manually completely removes the point of the llTransferLindenDollars ERROR event. 

     

    If someone would comment on the code above or give some ideas how to do it SAFELY, would be greatly appreciated. Thank you very much!

  2. is the following implementation 100% proof against doublespending ?

    list transactions;key userID;integer paymentamount = 1; default{    state_entry()    {        userID = llGetOwner();        llRequestPermissions(llGetOwner(),PERMISSION_DEBIT);    }    touch_start(integer n)    {        transactions += [llTransferLindenDollars(userID,paymentamount),paymentamount,userID];    }    transaction_result(key id, integer success, string data)    {        integer i = llListFindList(transactions, id);        if (i == -1) return;        integer amount = llList2Integer(transactions,i + 1);        key recipient = llList2Key(transactions,i + 2);        transactions = llDeleteSubList(transactions,i,i+2);        if (!success)        {            // Boo it failed            llOwnerSay("Error giving L$" + (string)amount + " to " + (string)recipient + ": " + data);             transactions += [llTransferLindenDollars(recipient,amount),amount,recipient];        }    }}

     

  3. Going by Kelly Lindens example, i need to know if failed transactions automatically get paid later or if i need to edit it and if so how would i do that and avoid "double spending",

    list transactions;
     
    // This is not a complete script and assumes PERMISSION_DEBIT has been granted.
    default
    {
        touch_start(integer n)
        {
            transactions += [llTransferLindenDollars(llDetectedKey(0),1),1,llDetectedKey(0)];
        }
         
        transaction_result(key id, integer success, string data)
        {
            integer i = llListFindList(transactions, id);
            if (i == -1)
            {
                // Unexpected transaction id!
                return;
            }
             
            // Extra data for this transaction
            integer amount = llList2Integer(transactions,i + 1);
            key recipient = llList2Key(transactions,i + 2);
             
            // Cleanup
            transactions = llDeleteSubList(transactions,i,i+2);
             
            if (success)
            {
                // Yay it succeeded
                llSay("Gave L$" + (string)amount + " to " + (string)recipient); 
            }
            else
            {
                // Boo it failed
                llSay("Error giving L$" + (string)amount + " to " + (string)recipient + ": " + data); 
            }
        }
    }

    I've tried in the past to use a simplier approach and put in if (!success) llTransferLindenDollars(towhoever,whateveramount); but that created double, triple spending.

     

    Any help would be greatly appreciated, thank you.

     

  4. Hello, ive been pulling my hair out last few days over 3d studio not allowing me to have mutliple faces on meshes i try to import to sl. Something i used to have working fine on v2012 with the 2011.3 exporter app only a few months ago. I've tried the following versions:

    v2009 w/ 2011.3 exporter app.

    v2012 w/ 2011.3 exporter app. and also with built in collada exporer

    v2013 w/ 2011.3 exporter app. and also with built in collada exporer

    My test object is a simple Poly Box, with Multi-Sub material and a couple of sub materials, here's the one thing that happens in all version of my 3d studio, when i edit the .dae file in notepad the <material> -tags are completely gone and therefore the object remains one sided :(

    Any suggestions would be greatly appreciated. 

×
×
  • Create New...