====== Creating an NPC that buffs ====== This guide will create a "buff bot" for my test instance, it will apply an "Attack Boost" to a player who clicks on it for 1 hour which modifies the Attack attribute by +5. This buff can only be obtained once per day (done by applying a "Recently Attack Boosted" effect for 24 hours) This could be expanded to provide one of a set of random buffs, a random chance of a buff, a puzzle rewarded with a buff or whatever your scriptable fancy may be. Firstly we create a couple of Effects: /1Effects.Create "Attack Boost" /1Effects.Create "Recently Attack Boosted" /1Configuration.SetEffect "Attack Boost" Characters.Attack 5 And an NPC: /1Characters.Create "Buff Wizard" /1Characters.MakeNPC "Buff Wizard" Create an object, name it, place the Objects (SL) script in it (''/1Objects.GetDriver Integer i=0; Integer duration=gsGetEffectDuration(TARGET,"Recently Attack Boosted"); if (duration>=0) { i=gsSayAsChar(CALLER,"Sorry, "+TARGET+", I have already helped you recently"); } else { i=gsSayAsChar(CALLER,"Greetings, "+TARGET+", allow me to lend you a hand!"); i=gsApplyEffect(TARGET,"Attack Boost",1800); i=gsApplyEffect(TARGET,"Recently Attack Boosted",60*60*23); // not quite a full day } Go to objects configuration, create a new object type called "Buff Wizard", set it up as an NPC with the recently created character and script. Connect your newly registered object to this object type. Example interaction: (Existing /1characters.show) [12:44:37] GPHUD: Character: test989 Played by:Iain Maltz Agility: 2 Attack: 2 Block: 0 Class: Thief (Existing /1effects.show) [12:44:40] GPHUD: OK : You have no effects applied (Click on the buff wizard) [12:44:44] GPHUD: You feel more powerful! [12:44:44] Buff Wizard: Greetings, test989, allow me to lend you a hand! (/1Characters.Show) [12:44:48] GPHUD: Character: test989 Played by:Iain Maltz Agility: 2 Attack: 7 Block: 0 Class: Thief (/1Effects.Show) [12:44:51] GPHUD: OK : Current Effects: Recently Attack Boosted (22h 59m 53s) Attack Boost (29m 53s) (Click on wizard again) [12:46:15] Buff Wizard: Sorry, test989, I have already helped you recently And the audit log: 19:44:45 Iain Maltz/Buff Wizard → Iain Maltz/test989 Add - Effect → Attack Boo... Applied effect Attack Boost for 30m 19:44:45 Iain Maltz/Buff Wizard → Iain Maltz/test989 Add - Effect → Recently A... Applied effect Recently Attack Boosted for 23h [[Category:Script]]