Puppets
Puppet tool
Vanaf de rang W/K 9 kun je een puppet starten in BSW (vanaf rang W/K 8 voor SimplePuppets). Dit doe je met het commando /puppet CommandPuppet NAAM URL of met /puppet start NAAM voor geregistreerde Puppets (zie /puppetdef) en eventueel een wachtwoord erachter als dat nodig is.
De Puppet tool openen
Door het klikken op de knop "Puppets" wordt de tool geopend.
Dit venster kun je sluiten met de rode X rechtsboven in de hoek. De context-help voor puppets verkrijg je door het aanklikken van het blauwe vraagteken ernaast.
Met het configuratiescherm kan je de knop in de Toolbar tonen of weghalen.
Nog geen Puppet opgestart
Als je nog geen puppet hebt opgestart verschijnt een lijst van puppets die je eventueel in je .prop file ingevoerd hebt. Is daar niets ingevuld dan zie je de hier links getoonde voorbeelden.
Het invoeren in je .prop file moet in het volgende format:
PuppetTYPE-NAAM = URL
waarbij het TYPE weggelaten kan worden als het om een CommandPuppet gaat.
Deze lijst wordt aangevuld door een alfabethische lijst van geregistreerde Puppets, waarbij je als mogelijke starter bent opgegeven.
Een voorgeconfigureerde puppet kan je starten als je op de betreffende regel in het venster klikt.
De voorbeeld opties zouden ook als volgt gedefinieerd kunnen worden in de .prop file:
PuppetHelloUngeheuer = http://www.meinwebspace.de/Puppets/test.prog
PuppetTutorPuppet
Contexthulp
In de context hulp van de puppet tool zijn de links naar de belangrijkste hulp pagina's over puppets bij elkaar gezet. De "Puppet FAQ" bevat algemene informatie over puppets(in het bijzonder SimplePuppets). Als je een eigen puppet wilt programmeren dan heb je de "Duitstalige lijst van alle Puppet Commando's" en eventueel de "Duitstalige Puppet-Tutorial met voorbeelden" nodig, waarin je ook wat voorbeeldprogramma's vindt. De lijst met "Lijst van Tutor-Puppets" bevat de puppets die specifiek voor een spel (in het Duits) uitleg kunnen geven.
Overzicht van door jezelf gestarte puppets
Hiernaast worden drie actieve puppets getoond: SoloHelper, Kussgeber en rechner. Deze bevinden zich in de kamers 43, C1-1 en C1 en de derde puppet heeft gebruiker SLC als bezitter.
Klik je op de eerste regel klikt dan kan je een geprogrammeerde puppet opstarten. Als je klikt op een actieve puppet dan krijg je de details over deze puppet te zien.
De details van een puppet
Met het klikken op een actieve puppet in het overzicht krijg je dus een overzicht van de details van deze puppet. Deze zijn onderverdeeld in tabbladen.
In het bovenste deel van de tool wordt naast het puppettype en de naam van puppet ook de naam van het bronbestand getoond tussen haakjes. Klik je hierop dan ga je terug naar het overzicht.
Je kunt in het onderste deel van tabblad wisselen door op de gele tabs te klikken.
Voorgeconfigureerde Puppets starten
Hier vind je nogmaals de lijst van in de BrettspielWelt.prop voor geconfigureerde Puppets en de alfabetische lijst van geregistreerde Puppets, voor welke je als starter staat aangegeven, of als alternatief de voorbeeldpuppet.
In dit scherm kom je overigens ook als je in het overzicht in het begin op "<< Voorgeconfigureerde Puppet starten >>" klikt.
Als je op de naam van een puppet klikt start je deze op. Als de puppet reeds (door jezelf) gestart is dan toont het venster je de details van deze puppet.
Basisinformatie
Op het tabblad Info vind je een rij met 4 vakjes waarmee je de puppet kan besturen. Deze kun je normaal gesproken aanzetten door er op te klikken.
Met de optie "Bezit" kan je puppet overnemen (/own) of vrijlaten (/unown). Met "Geluid" kan je instellen of de puppet ook geluiden aan je 'overdraagt' (dit gebeurt alleen als je de puppet ook bezit) De optie "TWindow" zorgt ervoor dat de puppet alles wat hij hoort en zegt aan je doorgeeft in een tell venster. Met "eruit gooien" schop je de puppet uit BSW (net als met /kick NAAM).
Vervolgens worden wat gegevens over de puppet in een tabel getoond die in principe duidelijk zouden moeten zijn...
Links zie je wat er gebeurt als je het vakje met "eruit gooien" aanklikt.
Bovenin wordt een melding gegeven dat de puppet uit BSW wordt gegooid. Het duurt nog enige seconden (ongeveer 2-3) voordat een puppet ook daadwerkelijk weg is. Gedurende deze tijd kan de puppet nog zijn gegevens opslaan.
Als je genoeg rechten bezit om de puppet uit BSW te gooien schakelt de tool naar het overzicht terug van lopende puppets nadat de puppet BSW verlaten heeft.
Debugging modi
Het tabblad "debug" vergemakkelijkt het besturen van de debug meldingen voor een CommandPuppet. Voor SimplePuppets is dit tabblad niet beschikbaar. Debug meldingen worden in een apart chatvenster gegeven genaamd "Debugging PUPPETNAAM"
De eerste twee keuzevakjes bepalen of het programma respectievelijk debug meldingen (zie hieronder) doorgeeft of dat debugging eigenlijk wel actief is (zie ook @@debug ON respectievelijk @@debug OFF).
- @@debug ALL: Schakelt alle modi aan die eronder staan (alle meldingen).
- @@debug NONE: Schakelt alle modi uit.
- @@debug ACTION: Meldt wanneer een ACTION in de code wordt opgeroepen.
- @@debug EVENT: Meldt gebeurtenissen zoals chatmeldingen, binnenkomende spelers, TIMER gebeurtenissen, etc die eventuele ACTIONs oproepen.
- @@debug VARIABLES: Toont wijzigingen in variabelen, echter alleen voor het deel dat in de code is omsloten met DEBUG ON/OFF (wegens grote hoeveelheden gegevens).
- @@debug SINGLESTEP: Modus waarbij stap voor stap de informatie van elk commando wordt getoond, ook weer in het aangegeven deel van de code.
- @@debug LOCAL: Toont plaats en waarde van lokale variabelen (LOCAL commando) aan het begin en einde van hun levensduur.
- @@debug SCOPE: Elke deelactie van ACTION en BEGIN-END blokken worden automatisch genummerd. Hier zie je dan hoe het programma tussen deze blokken heen en weer springt.
Statistieken huidige toestand (Snapshot)
Op het tabblad "Statistiek" worden enkele statistieken getoond.
Vragen over de details kan je stellen in /channel puppets.
De statistieken tonen de stand van een bepaald moment. Om deze stand te verversen moet je ergens in dit deel van het scherm klikken.
@-Commando's van de Puppet
Het tabblad "Commando's" toont de in de code geprogrammeerde @ commando's.
Links staan telkens de commando's (bijvoorbeeld @list) die iemand kan geven die in dezelfde kamer is als de puppet. Rechts staat de bijbehorende ACTION die in dat geval wordt aangeroepen.
Met het klikken op de bijbehorende regels kan je deze ACTION vervolgens ook uitvoeren, waarbij eventuele parameters (op dit moment) niet ondersteund worden.
Gebruikelijke @-commando's die eigenlijk elke Puppet zou moeten hebben zijn:
@info - Geeft de gebruiker informatie over de Puppet en zijn gebruik.
@home - Stuurt een rondlopende Puppet terug naar zijn standaard kamer.
Puppet registratie
Het tabblad "Definitie" draait om het commando /puppetdef. Met dit commando kan je gegevens over een puppet vastleggen op de server. Normaal gesproken geef je de parameters op dezelfde manier op als bij /puppet:
/puppetdef CommandPuppet NAAM URL
Hiermee registreer je een puppet die daarna eenvoudig met
/puppet start NAAM
kan worden opgestart. /puppetdef kent nog wat extra opties, zoals:
- /puppetdef list: Geeft een lijst van alle Puppets, die je geregistreert hebt of voor welke ke als starter staat aangegeven.
- /puppetdef info NAAM: Toont de gegevens van een registratie.
- /puppetdef delete NAAM: Verwijdert een registratie.
- /puppetdef set NAME public pwd=PWD
Na de optie "set" kunnen meerdere waarden tegelijkertijd worden ingevoerd. Dit telkens met NAAM=WAARDE (zonder spaties!). Bevat de waarde wel spaties dan moet hiervoor aanhalingstekens worden gebruikt: NAAM="WAARDE".
- /puppetdef set NAAM public (of "public=On"): Ook andere gebruikers dan die bij "Starter:" staan, kunnen de puppet opstarten zonder bijvoorbeeld de URL te kennen. In dit geval worden de URL, wachtwoord (PWD), Levelpunten en Stack niet getoond. De tabbladen "Debug" en "Statistiek" blijven inactief.
- /puppetdef set NAAM priv (of "public=Off"): Alleen de aangeven starter mag de puppet opstarten.
- /puppetdef set NAAM type=TYPE (bijvoorbeeld "type=CommandPuppet"): Dit verandert het type van de puppet. Mogelijke types zijn SimplePuppet (SP), CommandPuppet (CP), TutorPuppet (TP) en AutoStartPuppet (ASP). Om een puppet als AutoStartPuppet te definieren heb je een speciale bevoegdheid nodig.
- /puppetdef set NAAM url=URL: Hiermee bepaal je het WWW-adres voor de broncode van de puppet (het programma in de programmeertaal voor de BSW-puppets). Deze moet als pure ASCII gegevens op een webserver geplaatst worden.
- /puppetdef set NAAM pwd=PWD: Hiermee bepaal je een wachtwoord voor de toegang tot de puppet. Alleen de aangegeven starter kan het wachtwoord zien.
- /puppetdef set NAAM info="INFO": Hiermee geef je korte informatie op voor de puppet registratie.
Enkele aanvullende opties zijn voorbehouden aan de admins.
Als je een puppet als AutoStartPuppet wil zetten kan je het best een mailtje met de aanvraag hiervoor sturen naar SLC@brettspielwelt.de.