Welcome to the Second Life Forums Archive

These forums are CLOSED. Please visit the new forums HERE

llGiveInventory weirdness

Jon Marlin
Builder, Coder, RL & SL
Join date: 10 Mar 2005
Posts: 297
03-21-2006 04:12
Hi everyone,

I have a (self-written) vendor/server system, that has worked very well until recently. The vendors are working fine, but when someone tries to buy one of my "Marlin Shark" vehicles, the llGiveInventory is failing. My function looks like this:

CODE

///////////////////////////////////////////////////
//
// giveItem
//
// If we get here, we've already passed the security
// checks, so just give the buyer the item.
// The sales tramsaction is recorded elsewhere.
//

giveItem (string message) {

list salesRecordParts = llParseString2List (message, [":"], []);
string itemName = llList2String (salesRecordParts, SalesRecordProductNameIndex);
key buyerKey = (key)llList2String (salesRecordParts, SalesRecordBuyerKeyIndex);
llOwnerSay ("Giving item: " + itemName);
llGiveInventory (buyerKey, itemName);}


When I buy a Marlin Shark, I see the "Giving item: " line:

Marlin Server: Giving item: Marlin Shark

I've tried replacing the object in the server with another one, doing a reset on the server script, but neither of those have helped.

Any of my other vehicles can be bought with no trouble, and of course they all run the same code on the server.

Any thoughts?

- Jon
_____________________
Come visit Marlin Engineering at Horseshoe (222, 26) to see my line of flying vehicles.
Cid Jacobs
Theoretical Meteorologist
Join date: 18 Jul 2004
Posts: 4,304
03-21-2006 04:55
From: Jon Marlin
I've tried replacing the object in the server with another one, doing a reset on the server script, but neither of those have helped.

Same object, or a diff one? Did you try rezzing the vehicle? The asset server may have eaten it. Other than that I can't really see a problem.
_____________________
Jon Marlin
Builder, Coder, RL & SL
Join date: 10 Mar 2005
Posts: 297
03-21-2006 05:33
From: Cid Jacobs
Same object, or a diff one? Did you try rezzing the vehicle? The asset server may have eaten it. Other than that I can't really see a problem.


A different one. I rezzed it from inventory, re-took it, and then put that one into the server.

- Jon
_____________________
Come visit Marlin Engineering at Horseshoe (222, 26) to see my line of flying vehicles.
Strife Onizuka
Moonchild
Join date: 3 Mar 2004
Posts: 5,887
03-21-2006 05:39
You probably don't have copy permissions on it.

you should check the object permissions.
CODE

if((~llGetInventoryPermMask(item, MASK_OWNER)) & (PERM_COPY | PERM_TRANSFER))
llOwnerSay("You aint got no permission to copy or transfer dat");
_____________________
Truth is a river that is always splitting up into arms that reunite. Islanded between the arms, the inhabitants argue for a lifetime as to which is the main river.
- Cyril Connolly

Without the political will to find common ground, the continual friction of tactic and counter tactic, only creates suspicion and hatred and vengeance, and perpetuates the cycle of violence.
- James Nachtwey
Les White
sombish
Join date: 7 Oct 2004
Posts: 163
03-21-2006 05:58
I've had this trouble with 1.9. I use a llGiveInventory in my updater.

Change the name of your item and it may work. Why? ask LL.

I found I could not give "BMW R50 v1.4". "BMW R50 v1.3" works fine as does "BMW R50 version 1.4". This is the same item renamed.

The updater would tell people that it was giving out the item then silently fail.
Jillian Callahan
Rotary-winged Neko Girl
Join date: 24 Jun 2004
Posts: 3,766
03-21-2006 07:00
I had this... Silent llGiveInventory fail on an object the "server" prim had been delivering fine prior.

Replacing the object with one I'd renamed worked to get it delivering again. But a few days later it stopped delivering a second item...

I had to replace the "server" prim with a fresh-rezzed one. Just dragging over all the contents from the original prim was enough. This seems like some sort of "prim rot" due to the new intersim communications.
_____________________
Jon Marlin
Builder, Coder, RL & SL
Join date: 10 Mar 2005
Posts: 297
03-21-2006 07:56
From: Jillian Callahan
I had to replace the "server" prim with a fresh-rezzed one. Just dragging over all the contents from the original prim was enough. This seems like some sort of "prim rot" due to the new intersim communications.


Damn, that sucks. I was hoping to avoid replacing the prim, and thus getting a new server key. I will have to re-sync all my vendors with the new server... :mad:

Thanks Jillian :)

- Jon

ps - Les, while I see your solution, and it may even work, I don't want to rename my vehicle, and it will probably just crop up with another vehicle later. I think the right answer is to replace the server prim...
_____________________
Come visit Marlin Engineering at Horseshoe (222, 26) to see my line of flying vehicles.