Bright Rental Timer

Allows rented (or free) use of private areas on your land by the minute or hour!

DESCRIPTION

The Bright Rental Timer allows you to offer short-term, private use of areas on your land to your visitors.

Just rez a timer in each area, and set the range to be kept private: or use region coordinates to describe a "boxed" area. Set the rent (if any) and the period (eg. every 30 minutes). If the rental is paid, determine the 'preview time' tenants have to make up their mind. If it is free, set the minimum gap between visits (if any), and whether the area should revert to vacant if the renter leaves early.

Then rez ad-boards anywhere in the region, linking each to a timer. They will show "VACANT" or "OCCUPIED", and if vacant, will offer to teleport visitors who click them.

IMPORTANT NOTE: THIS IS NOT A TRADITIONAL RENTAL SYSTEM. It is designed for short stays - with or without charge - of minutes or hours rather than days or weeks: in hotel rooms, changing rooms, adult play areas, private gaming areas, and so forth. For longer rentals, use the Bright Rental System.

EXAMPLE USE

Buck Cherry runs "Blueberry Hill", a 50s music club. In addition to the Wurlitzer Jukebox and sprung wooden dance floor, he wishes to offer private rooms, which couples may rent for an hour (or a few) to enjoy each other's company after an evening's jiving.

He puts a timer in each room, and corresponding ad-board on the wall by the dance floor.

Visitor Sally LongTall clicks a "VACANT" ad-board. She is told the room costs L$10/hour, and accepts an offer to see it. The ad-board switches to "OCCUPIED".

On arrival, Sally is given five minutes 'preview' time - to rent or leave. If she does neither, she will be teleported away, and the ad-board will revert to "VACANT". But she pulls L$10 from her beehive hair, drops it in the timer, and sits on the bed to brighten her lipstick.

Meanwhile, Domino Fats is sneaking around, poking his quiff where it shouldn't be. He finds Sally's room. The timer tells him: "This is a private area: please leave." He doesn't. After a few seconds, the timer ejects him, and he lands head-first in the jukebox, seriously damaging his hairstyle. (We would teleport Domino away instantly, but SL "Terms of Service" insist on a warning.)

Sally is ready for company: just not Domino's. She clicks the timer, selects "ALLOW ENTRY", and sends a teleport offer to the dreamy Jonny Begood. Once he is there, she clicks the timer again and selects "FORBID ENTRY". Jonny gets to stay, but the timer will eject any new visitors.

As Sally and Jonny hug, she treads on his blue suede shoes. He is furious: they argue. Sally wants to be alone, clicks the timer, selects "Eject guest", and chooses Jonny's name from a menu. The timer asks him to leave. Rather than be ejected, he teleports off in a Brylcream-covered huff.

The hour is nearly up. Sally is asked if she wishes to pay for more time. She leaves: the evening hasn't gone well. Down in the club, Jonny is dancing with PeggySue Holly. He sees the ad-board is "VACANT", decides on some quality time with a girl who respects his footwear, and clicks the ad-board...

INSTRUCTIONS

Find the "Bright Rental Timer boxed" in your inventory, and drag it onto the ground to rez it. Right-click it, select "Open" to see its contents window, and click the "Copy To Inventory" button at the bottom. This will create a new folder called "Bright Rental Timer boxed" in your inventory.

SETTING UP EJECTORS

In each parcel where you plan to rez timers, rez exactly *one* "Bright Rental Timer ejector". This is the gadget which will eject avatars from the parcel when the timers ask them to.

It doesn't matter where it is within the parcel, and you only need one on each parcel regardless of the number of timers you plan to rez.

If the land is owned by a group, you need to "deed" the ejector to that group. Right-click the ejector and click "edit" to open its "edit window". Click the "General" tab, make sure the object is set to the land-owning group, click the "Share" box, and then click "Deed".

SETTING UP A TIMER

Choose an area you wish to rent out, and rez the "Bright Rental Timer".

When you rez the timer, it will be switched off, and while it is switched off, one face will be coloured red. This is to help you identify where prospective tenants will land when they are teleported into your area by the ad-boards (see below): they will land one metre in front of this face, whichever way it is pointing. So position, and if necessary rotate, your timer so as to make this a suitable landing point.

When the timer is switched on, all the sides will look the same.

Also, change the timer's name to something which describes the area. For instance, if you are offering a room for newlyweds, name it "HONEYMOON SUITE". Right-click the timer, click "Edit" to display the edit window, and type this into the "Name" field.

Then click the timer to display its settings menu.

---
This timer is OFF
Rent L$10 per 60min, preview 5min
Scan range 20m every 10s, give 10s grace
Scan limits: X 0-256, Y 0-256, Z 0-4096

[ON] [OFF] [Rent]
[Period] [Preview] [Grace time]
[Scan range] [Scan time] [Scan limits]
---

Click the buttons to configure your timer. Note that displaying the setting menu automatically switches the timer OFF. Once you have finished changing settings, click [ON] to restart it (or OFF to leave it switched off).

[Rent] displays a box into which you should type the number of Lindens payable for each period: 0 if you wish the rental to be free.

[Period] sets the length of each period in minutes: so for instance, set this to 60 to rent out your area by the hour. The minimum period is 10 minutes - any shorter, and the timer is in danger of spamming the tenant with payment requests.

[Preview] controls how many minutes a prospective tenant has to make their first payment (or leave) before being ejected. It should give them enough time to decide if they like the space, but not allow them to use it free. The minimum preview is 5 minutes. Note that if a visitor leaves during the preview period, the timer will automatically revert to "vacant".

[Grace time] controls the minimum number of seconds to elapse between an avatar being asked to leave (because, for instance, they have entered an area rented by someone else) and their being forcibly teleported away. Please bear in mind that this is a minimum: if you have set the scan time (see below) to 10s intervals, and set the grace time to 11s, then two scans (20s) will elapse between the an intruder being detected, and a grace time of 10s being exceeded. Also bear in mind that giving inadequate warning may constitute a violation of Linden Lab's "Terms of Service": you need to give people a little time to leave voluntarily when asked. The minimum grace time the system will accept is 5s, though we do not guarantee that this is sufficient to satisfy LL: and we recommend 10s or longer.

[Scan range] controls the size of the space the timer will keep private: that is, how close an avatar has to be to the timer to be turned away if it is occupied, or offered a rental if it is vacant. If you are renting out (say) a sky box, make sure the range is big enough to include the whole sky box: but don't make it any bigger that it needs to be. You don't want to waste time scanning lots of empty sky, or annoying people who are well outside your rental.

[Scan time] sets the time in seconds between security scans of the area. Our scripts are efficient, but naturally, the more frequently you scan, the more work the script is doing: we don't recommend scan times below 10s, because they create more work for an theoretically faster response which is barely noticeable. The minimum scan time is 5s.

[Scan limits] allow you to define the size and position of the rented area more precisely... see below.

The status of the timer will appear in "floating text". When the timer is on, it will read:

Timer: ON (192/11792)
Rent: L$10 per 60min
Tenant present, entry forbidden
Guests: 0, Intruders: 0
Time left: 5min, PAY TO EXTEND

Floating text isn't the prettiest, but this is deliberately designed to be prominently visible: in a rental timed by the minute, it is vital that the tenant should be able to see how much time they have left, and be instantly able to find the timer when payment is due. The numbers between the brackets represent the number of seconds since the script was last reset (192 seconds above) and the amount of memory free (11792 bytes above).

SETTING UP A *FREE* TIMER

If you set the rent to 0, the main menu will change slightly...

---
This timer is OFF
Free 60min stay, auto-vacate ON
Min absence 60min, group-only OFF
Min height 0cm, max height 0cm
Scan range 20m every 10s, give 10s grace
Scan limits: X 0-256, Y 0-256, Z 0-4096

[ON] [Rent] [Period]
[Auto-vacate] [Min absence] [Group only]
[Min height] [Max height] [Grace time]
[Scan range] [Scan time] [Scan limits]
---

Note that the preview button has disappeared, as there is no need for a preview if no payment is required.

However, five new buttons are displayed, each of which is designed to allow you to regulate the use, and prevent misuse, of your free service...

[Auto-vacate] determines whether the timer will automatically revert to "VACANT" when it is empty: it is ON by default for free rentals. While you can switch it off, bear in mind that if you have set a period of 60 minutes, and disable auto-vacate, and a visitor arrives and leaves after just fifteen minutes, your free area will then be empty but inaccessible to anyone else for another three quarters of an hour.

[Min absence] determines how long must elapse between a tenant using your free space for the period specified, and the tenant using it again, if no one has used it in the meantime. This setting prevents a tenant monopolising the space, as it forces them to leave it vacant long enough for other people to use.

[Group only] limits timer use to members of the group the timer is set to - or removes this limit if it has been set.

[Min height] and [Max height] prevents avatars who are too short or too tall from using the area. They are specified IN CENTIMETRES - so for instance the height of "Ruth" (the original, default SL avatar) is 190. These settings might, for instance, be useful if your area is only likely to be of use to avatars of a certain size - for instance, an area for tinies, or using animations which work satisfactorily only with average sized avatars. Set either to 0 to disable it.

Bear in mind, though, that SL reports avatar heights rather erratically. The SL Wiki records that it provides "an estimate calculated from the avatar's current shape including shoes", and that "some third party viewers have a 'z modifier' setting that is intended to change animation heights" and finally, for some reason, that it is "smaller than the rendered height by a fixed amount. Add .17 to z for crown to sole standing height". We do add the 0.17 for you, but we have to rely on SL to provide the basic data, and given all this, it's not certain that the calculated height will exactly reflect the real, visible height of an avatar, as checked by standing them against an in-world prim.

Nor do we recommend using a minimum height to exclude child avatars: it is reliable neither in its positive nor in its negative results. Taller avatars may still be in-world children, and shorter avatars frequently will not be. Many non-human and therefore non-child avatars - tinies and so forth - are small: but more importantly, so are many human adults - in RL and in SL. It is a common frustration for short adults to be - sometimes unconciously - treated like children in real life: please consider how they may feel if they encounter the same problem in their Second Life.

SCAN LIMITS: SECURING A ROOM OR LIMITED AREA

Scan limits take a little care to set, and are not always necessary.

For instance, if you are renting out a skybox, which is floating in empty air with nothing nearby, you don't need them: just make sure the *scan range* is big enough to cover the whole sky box and you're done.

Nor do you need to worry if your timers range crosses your parcel's borders. The timer automatically excludes avatars on other parcels.

But imagine you wish to rent out a room 20m x 30m big and 5m high, right in the middle of your building. If you put in a timer, and set the scan range big enough to cover the whole room, then you'll also be scanning people in the rooms on the floors above and below - and you don't want them to be ejected. To solve this problem, you need to tell your timer where the room starts and stops - and scan limits let you do this.

Every position in a region can be described using three coordinates - X,Y,Z. The point 0,0,0 is low in the south-west corner of the region. X tells you how far east you are of that corner, Y tells you how far north, and Z tells you how high up in the sky. Regions are 256m x 256m, so X and Y can both be anywhere from 0 to 256. There is no theoretical limit to how high you can fly in Second Life, but you cannot build anything above 4096m, so in practice Z can be anywhere from 0 to 4096.

By looking at an avatars coordinates, and comparing them to the scan limits, the timer can work out who is in the room (and might need to be ejected) and who isn't (even if they are in range). For instance, if your room's floor is at Z=50 (50m high), and your room's ceiling is at Z=55 (5 metres above the floor), then an avatar who is at Z=57 obviously isn't in the room, and can be ignored.

(Note though that your range still needs to be big enough. If you set limits of X = 100-200, Y= 100-200, Z = 100-200, then you've defined a huge area, 100m cubed. But if your range is only 10m, the timer will not be able to cover it all.)

If you're an experienced builder, you be familiar with all this, and be able to set your scan limits easily just by checking the position of your wall and floor prims.

But if you aren't sure of the coordinates of your room, we provide a simple gadget which may help. Go into your room and rez the "Bright Rental Timer corner-marker". It's a small, spinning box, with floating text to make it easy to see. Drag it into one corner of your room, as tightly as you can, exactly where the walls meet, and down at *floor* level.

Then rez another corner-marker, and drag it into the *opposite* corner of the room, where the *other* two walls meet, and up at *ceiling* level.

Then click either of them: you will hear a message like this one.

Measurements (to nearest metre)...
Area: 24m west-east, 30m south-north, & 5m high
Clicked corner: 100,60,55
Other corner: 124,90,50.0
Min X: 100, Max X: 124
Min Y: 60, Max Y: 90
Min Z: 50, Max Z: 55

Check the reported area to make sure it looks right: if the report says your room is 0m wide, for instance, you may have put your one of your markers in the wrong corner.

Once you are satisfied, make a note of these numbers, and delete your corner-markers from the room: they aren't needed there any more.

Then click your timer, and click the [Scan Limits] on the main menu. You will see a menu like this...

---
This timer is OFF: Rent L$10 per 60min
Preview 5min, auto-vacate OFF, min gap 60min
Scan range 20m every 10s, give 10s grace
Scan limits: X 0-256, Y 0-256, Z 0-4096
Exclusions: group only OFF
Min height 0m, max height 0m

[Min X] [Max X] [NO LIMITS]
[Min Y] [Max Y] [MAIN MENU]
[Min Z] [Max Z] [ON]
---

Click each setting button in turn, and enter the number you've noted down. Then click [ON] to implement your new settings.

SETTING UP AD-BOARDS

Rez an ad-board where your potential tenants will see it: choose a public, busy place. It can be anywhere in the same region, and doesn't need to be on the same parcel as the timer.

The ad-board will initially display the message "STARTING", and after a few seconds will display "OFFLINE". This means that it is ready for use, but hasn't yet been linked to a timer. Click it, and it will display a menu of the timers in the region. (If any lines appear which say "unresponsive", it means that a timer which was present when your ad-board was rezzed is not responding - usually because it has been deleted. ClicK the 'Reset" button on the menu to bring the list up to date.) Choose one by clicking the corresponding numbered button.

The ad-board will then display "VACANT" or "OCCUPIED", reflecting the status of the timer.

You may link as many ad-boards as you like to each timer.

Once you have linked an ad-board to a timer, if you click it you will see a menu with two options: "Test" and "Reset". Click "Test" to see the message your visitors will see when they click the board. Click "Reset" to break the link between the ad-board and the timer, so that you can then link it to a new one as you did above.

Note that the ad-board stores the key or "UUID" of the timer. If you delete the timer, the ad-board will go offline - even if you then replace the timer with another one of the same name, in the same place. So if you replace a timer, be sure to relink your ad-boards.

Also bear in mind that you need to let people know the nature of the area you are offering. You can do this by putting a sign next to the ad-board, or by dropping a texture onto the main, lower pane of the ad-board (underneath the "vacant"/"occupied" indicator). See below for more information.

CUSTOMISING YOUR SYSTEM TEXTURES

(NOTE: This section is entirely optional: if you are happy with the textures on the system's objects - which should be suitable most situations - skip it.)

All three system components - timers, ad-boards, and ejectors - are modifiable. If you want to put your own textures on them, please go ahead: simply drag them from your inventory onto the surface in question. However, two of these textures contain multiple images, so they must be replaced with textures laid out the same way...

1. The timer's texture is divided into four quarters - 2 rows by 2 columns - and the timer only shows one quarter at a time.

The TOP LEFT is shown when the timer is off ("offline").
The TOP RIGHT is shown when the rent is 0, ("free stay").
The BOTTOM LEFT is shown when the rent is not 0 ("just pay to stay").
The BOTTOM RIGHT is shown when the timer has expired ("expired - please leave").

2. The ad-board's texture is also divided into four - 4 rows by 1 column - and again, only one is shown at a time. The layour is like this:

The TOP quarter is shown when the ad-board is "STARTING".
The SECOND quarter is shown when the ad-board is "OFFLINE".
The THIRD quarter is shown when the ad-board's rental is "VACANT".
The FOURTH quarter is shown when the ad-board's rental is "OCCUPIED".

The advantage of these combined textures is that once they has been downloaded to a visitor's viewer, subsequent changes in the status of the timer or the ad-board can be seen instantly, as the whole texture is in the viewer's memory, it is merely that a different part is shown. If these objects switched to an entirely new texture on each status change, this new texture would have to be downloaded to a visitors viewer, and the changed image would remain blurry and unreadable until this was complete.

Both textures are included in the box for you to examine, called "Bright Rental Timer texture" and "Bright Rental Timer ad-board texture".

CUSTOMISING YOUR SYSTEM MESSAGES

(NOTE: This section is entirely optional: if you are happy with the messages sent by the system - which should be suitable in almost all situations - skip it.)

Your timer contains a notecard called "MESSAGES". You can change the MESSAGES notecard if you wish to change the words spoken by the timer.

The timer sends messages to an avatar when they...

1. ...arrive at a timer
2. ...are warned about auto-vacate
3. ...are invited to rent more time
4. ...are close to the expiry of their timer
5. ...are being asked to leave until the minimum absence has expired
6. ...are being asked to leave as they are not a group member
7. ...are being asked to leave as they are under the minimum height
8. ...are being asked to leave as they are over the maximum height
9. ...are being asked to leave for any other reason

In the MESSAGES notecard, you will find nine lines of text - corresponding to the situations above. Change them as you wish, but don't change the number or order of the lines in the notecard.

Messages may be up to 256 characters long, and contain 'tokens', which are automatically replaced before a message is sent...

| A line break
<name> The name of the timer object
<rate> "L$10 per 1hr 10min", or "FREE for 2hr 60min"
<period> Period rented, eg. 130 yields "for 2hr 10min".
<minheight> The minimum allowed avatar height, eg. "120cm"
<maxheight> The maximum allowed avatar height, eg. "300cm"
<left> The time left on timer, eg. "15min"
<wait> The time left before a minimum absence has expired, eg. "10min"

As supplied, the messages read...

|*** is exclusively yours for <left> ***|Other avatars will be ejected.|Click timer for a menu...|...to leave, LEAVE|...to let others join you, ALLOW ENTRY.|...to prevent entry again, select FORBID ENTRY.|...to eject someone, select EJECT GUEST.
(If you leave, it will be made available to someone else.)
TO STAY LONGER: Right-click timer and 'Pay' (<rate>).
REMINDER: <left> left before everyone in area is teleported away.
You must wait <wait> before you can stay again, please leave.
You must have our group membership activated to stay here, please leave.
You must be over <minheight> to stay here, please leave.
You must be under <maxheight> to stay here, please leave.
This is a private area: please leave.

TIPS

* Keeping the periods short may encourage trade - and this is very much in the spirit of the Bright Rental Timer. Rather than asking L$120/day, ask L$5/hour. Those who want to rent for a day may still do so, but those looking for a shorter stay won't be frightened away by the price.

* If the area you are renting out is detailed and gorgeous, allow a slightly longer preview time so that your visitors can take it all in. If it is rented by the hour, allow perhaps a 10 or even a 15 minute preview. If they find themselves enjoying the space, they are more likely to rent.

* Consider limiting your free area to an open group, and putting a group inviter sign near the teleport sign. You can then use the group to post information about improvements in the free area, and (of course) about your venue or business in general.

* Be imaginative. Are there features of your venue which might be more popular if they could be reserved and kept private? If you run a race track, for instance, might it be possible to create smaller, private, 'practise' tracks for individuals or small groups of friends to enjoy for an hour or two? If you own a club, what about a few smaller rooms for private parties?

FOR MORE INFORMATION CONTACT...

Shan Bright
Chief Executive Officer