erste Annäherung

Nun, es gilt eine Aufgabe zu bewältigen, und diese heißt: Verlinken soll funktionieren. Wesentlich – wie immer im Bereich des (manchmal lästigen ;)) Reverse-Engineerings – ist, dass man langsam genug voranschreitet um einzelne Effekte auch klar einer bestimmten Ursache zuzuordnen.

Erste Aktion war, die mit dem Fehler behaftete Version standalone zum Laufen zu bringen. Das ist soweit geglückt, es sind einige Parameter in der OpenSim.ini und eine Standalone-Common.ini im config-include Bereich zu bestücken. Aktuelle Version an der ich bastele ist ja die 0.6.9er. Der standalone-Test ergibt – und in diesem Fall glücklicherweise – dass der Fehler auch dort auftritt. Das ist beruhigend, somit liegt es an der Grundversion und nicht an der falschen Implementierung ins Grid.
erste Annäherung weiterlesen

Welten einfach laden

Gestern und heute habe ich mal ein bisschen auf einem lokalen Grid mit Terrains herumexperimentiert. Über den Viewer kann man – sofern man der Boss einer Region ist – das Terrain über World → Region/Estate → Reiter „Terrain“ exportieren. Beim Klick auf „Export Terrain“ wählt man einen Pfad auf der Festplatte aus und nach einem kleinen Moment Wartezeit wurden die Terrain-Informationen als RAW-Datei abgespeichert, die man dann über einen weiteren Menüpunkt wieder importieren kann. Eine elegante Möglichkeit, ein mühsam geformtes Terrain wieder zu importieren.

Eine wesentlich umfassendere Möglichkeit bietet das Konsolen-Kommando „save oar“ (und „load oar“), dass es nicht nur ermöglicht, Terraininformationen zu speichern, sondern auch sämtliche Objekte, die sich auf der Region befinden. Lädt man sie dann wieder, ist der Besitzer der Region automatisch auch Besitzer/Ersteller der Objekte.

Das OAR-Kommando funktioniert folgendermaßen.

Welten einfach laden weiterlesen

Schaffe, schaffe, Möbel packe

Nachdem ich meine Hütte auf Utopia mit einem zweiten Geschoss versehen habe, fiel mir heute Nachmittag auf, dass die zweite Etage ja ziemlich leer und ungemütlich ist. Dabei bietet gerade sie sich als Platz zum Hocken an. Leider sind Möbelläden auf Metropolis noch Mangelware, aber ich wollte nicht auch noch die nächste Etage mit Baumstämmen ausstatten.

Also habe ich mein Second Inventory angeworfen. Das hatte ich ursprünglich mal angeschafft, um Objekte von SL auf die OpenSim zu transportieren, aber mit seiner restriktiven Rechtehandhabung erlaubt SL das nicht außer für vollkommen eigene Objekte.

Anders verhält sich das bei Open Sim, und so habe ich mal einen tollen Relax-Stuhl, den Bert vor Kurzem mal gebastelt hat, rübertransferiert. Das Ganze ging problemlos mitsamt Skripten und Animation.

Allerdings bin ich jetzt auf Utopia laut Eigenschaften der Creator – was natürlich nicht stimmt.

Basteln, basteln, basteln

Nun, es wird allmählich etwas belebt auf meinem Stück Land mit Namen ‚Vanaltens Restplace‘. Diese Parzelle erstreckt sich ja hier – anders als in unterteilten Regionen üblich – auf die gesamte Region ‚Vanalten‘. Erste Bäume hab ich heute ‚gepflanzt‘ und zwei Treppen an das Grundgerüst vom Haus angeflanscht. Ich mag diese Technik mit den cut-path-Zylindern die dann einen angenehmen Zugang ermöglichen aus jeder Richtung. Bin ja nicht so der Typ der Enge mag wie bekannt 😉

Apropos Bäume, wenn wir das Problem mit den Links in den Griff bekommen haben – das hat zunächst Priorität – dann möchte ich auch gerne die geliebten Copses wieder implementieren, so nenn ich sie immer: Es handelt sich um selbst wachsende und sich vermehrende Bäume, ein nettes Feature. Man sollte allerdings darauf achten das Ganze etwas zu begrenzen, sonst hat man schnell ein nahezu undurchdringliches Dickicht (gut, es ist alles phantom, insofern ^^). Diese sich selbst fortpflanzenden Teile sind tatsächlich nett, denn es kehrt etwas virtuelles Leben ein und die Situation die man vorfindet ist nicht immer dieselbe. Es kann sehr erstaunlich sein was es bedeutet wenn manchmal 100 unerwartete Bäume irgendwo rumstehen, ganz abgesehen davon dass man auch unter Umständen damit konfrontiert wird zumindest temporär im Wohnzimmer die Äste einer Eiche durch die Wände kommen zu sehen.

Die Geschichte mit den linked-Prims ist wirklich lästig, nun ich hab das Verzeichnis mal kopiert und eingefroren, werde übersichtliche Versionen der Config-Files erzeugen und dann in einen exakten Vergleich einsteigen um festzustellen, was da jetzt so anders ist im Vergleich zu unserer sauberen 0.6.6er (die übrigens immer noch stabil läuft, siehe hier). Im Moment müssen wir halt zur Not auf die Sandbox ausweichen, denn wie Roland mir erzählt hat klappt das Übertragen dort verlinkter Objekte zu unseren Regionen einwandfrei und der Verbund bleibt auch erhalten.

Geschmeidig, schnell und freundlich

Seit rund einer Woche treiben wir uns jetzt im Metropolis-Grid herum und die bisherigen Erfahrungen sind durchweg positiv. Sicher gibt es noch das eine oder andere technische Problemchen, das gelöst werden will (zurzeit z.B. grübeln wir, warum es auf unseren Sims nicht möglich ist, Prims zu verlinken – eine Lösung dafür gibt es aber sicherlich), aber dafür sind die Leute, die wir bisher getroffen haben, nett und hilfsbereit und die Performance ist einfach super. Nicht nur, dass der Hippo-Viewer super schnell ist, auch die Sims selbst haben durchweg eine gute Performance.

Das liegt mit Sicherheit auch daran, dass die Landschaften auf Metropolis nicht so zugemüllt sind wie in SL – und das, wobwohl eine vielfache Menge an Prims möglich ist (und teilweise auch schon reichhaltig genutzt wird).

Ich habe damit begonnen, Utopia, „meine“ Sim ein wenig auszubauen. Neben einem Berghäuschen habe ich mal ein paar Bäume aufgestellt und Feuer gemacht. Die Objekte auf der Sim versuche ich nach Möglichkeit copyable zu machen (geht natürlich nur bei eigenen und selbst hochgeladenen Objekten). Die Skripte, z.B. das Sitzskript in dem Holz-Log, auf dem man sitzen kann oder in dem Feuer habe ich teilweise von entsprechenden Seiten, die freie Skripte für SL und Open Sim anbieten. Sie sind dann jeweils auf das entsprechende Objekt angepasst.

Heute habe ich mit Bert darüber gesprochen, dass wir mal eine kleine Galerie aufbauen wollen mit selbst erstellten Texturen. Das Projekt wird wohl ein wenig Zeit in Anspruch nehmen, da die Texturen ja erst mal erstellt werden müssen (nein, wir sind keine Grafik-Profis, aber mit fotografierten Dingen in der Natur kann man auch schon ganz gute Resultate erzielen).

Was meiner bisherigen Erfahrung nach nicht so gut funktioniert, ist der Transport in andere Grids, zum Beispiel ins OSGrid. Hatte das zunächst mal ganz gut geklappt, komme ich auf bestimmte Sims nicht mehr drauf, zum Beispiels Snoopies Freebie-Shop (da gabs eigentlich ganz gute Sachen). Kennt vielleicht jemand die Ursache?

Objekte (Prims) im Hippo Viewer exportieren und wieder importieren

Der Hippo Viewer (Download-Link übrigens hier) bietet eine elegante Möglichkeit, Objekte aus einem Grid zu exportieren und in ein anderes wieder zu importieren:

Einfach das gewünschte Objekt mit Rechtsklick/Edit auswählen und im Menü dann über „More“ weiterhangeln, bis der Menüpunkt „Export“ erscheint. Dort draufklicken. Nun öffnet sich ein Speicherfenster und das Objekt kann als XML exportiert werden (standardmäßig schlägt er „untitled.xml“ als Dateinamen vor, aber das „untitled“ kann auch umbenannt werden.

Nun im anderen Grid einfach über die Menüleiste „File/Import“ gehen und das Objekt wieder importieren. Es rezzt dann unmittelbar neben dem Avatar. Das funktioniert auch mit verlinkten Objekten! Was er nicht kann, ist Texturen, Animationen und Skripte importieren. D.h., sofern die Objekte z.B. keine Standard-Texturen haben muss dann noch einmal nachgearbeitet werden.

Ob das Ganze auch mit SL funktioniert, habe ich noch nicht getestet. Dort gilt aber beim Export sicher auf jeden Fall, dass man nur eigene Kreationen exportieren darf.

Hippo-Viewer vs. Second Life Viewer 2

Vor längerer Zeit schon einmal hatte ich den Hippo Open Sim Viewer ausprobiert, und ich kann gar nicht mehr sagen, aus welchem Grund ich ihn nicht mochte. Jedenfalls bot der Test mit dem Metropolis-Grid einen guten Anlass, ihn mal wieder zu installieren. Dazu muss ich sagen, dass ich bis dahin den Second Life Viewer 2 für Second Life und den Open Sim Viewer für Open Sim in Benutzung hatte.

Nachdem ich nun den Hippo Viewer ein paar Tage benutzt habe, bin ich ganz begeistert davon. Der Viewer bietet im Login-Screen nicht nur die Möglichkeit, relativ Problemlos zwischen verschiedenen Grids und Sims zu wechseln (darunter auch lokalen), er ist auch wesentlich flotter als alles, was ich bislang in Benutzung hatte. gegenüber dem Open Sim Viewer hebt er sich außerdem damit ab, dass er einige kleine, nette Zusatzfeatures bietet. Zum Beispiel eine über den Bildschirm einstellbare Sichtweite (dazu muss man in anderen Viewern immer in die Optionen), sofern man die Kamera-Optionen aktiviert hat.

Gegenüber dem Secondlife-Viewer 2 (der alte Viewer funktioniert ja leider nicht mehr in Second Life) hebt sich der Hippo aber besonders wohltuend ab, indem er nicht nur wensentlich schneller startet und arbeitet als der auf Web2.0 getrimmte SL-Client. Er bietet auch die liebgewonnene „alte“ Optik – und trotzdem kann man ihn mit Second Life nutzen.

So kann ich schon nach ein paar Tagen Nutzung sagen: Der Hippo Viewer ist der Client meiner Wahl!

Neue Version geplant bei Metropolis

Wie aus Insider-Kreisen bekannt wurde, ist geplant am kommenden Sonntag auf die 0.7er Version von OpenSim umzustellen. Wir werden sehen inwieweit das die bestehenden Regionen beeinflußt und ob es dann Empfehlungen für die Konfiguration geben wird. Wie schon früher berichtet ist man mit der Standard-Config der 0.7.0.2er ja nicht in der Lage sich dort anzubinden. Hier mögen spezifische Anpassungen notwendig sein, die dann sicherlich publiziert werden.

„Einige Nachbarn sind vorbei gekommen …

… um dich zu begrüssen.“ So heißt es doch immer so nett bei den Sims. Und so war es denn auch heute, und es gab schon Gastgeschenke: Baumstämme zum sitzen, ein Planierscript (das ich nicht wirklich brauche, aber es ist ja gut gemeint) und einen Prim mit einer Status-Seite. Letzteres ist wirklich nett, da man damit eine Übersicht gewinnt wer gerade online ist. Die Gemeinde ist noch sehr klein von Metropolis, aber ich bin beeindruckt von ihrer Freundlichkeit. Dass es sich um überwiegend Deutsche handelt ist nicht nur nicht schlimm, sondern tatsächlich ganz angenehm. Man erspart sich die Zwischentöne in anderer Sprache die man nicht beherrscht. 🙂

Erste Bearbeitungen des neuen Lands liefen auch sehr problemfrei, die Maschine verhält sich trotz der zwei Sims die sie jetzt parallel betreiben muss anstandslos.

Aber zurück zum Thema: Es ist interessant, dass sich Leute in solch wachsenden Computer-Umgebungen sehr verhalten wie Pioniere im echten Leben. Man hilft sich gerne gegenseitig, ist aber auch auf gewisse Grenzen bedacht, „seine Claims abstecken“ sozusagen. Geht es um gemeinsame Probleme ist man füreinander da. Auch Zeit zum Sitzen und Reden hat eigentlich fast immer jeder. Auch sind Stippvisiten angesagt, und das nicht nur aus Freundlichkeit, sondern auch aus Neugierde, ob sich der Neue wohl richtig verhält? Tut er irgendwelche Dinge die die Gemeinschaft abschrecken könnten? Ist er brauchbar? Ist er ein Aufschneider? Unterstützt er die gemeinsame Sache?

Verständlich, dass das die Leute umtreibt die am Kern der Sache mitwirken. Und Metropolis scheint tatsächlich in den Startlöchern zu stehen als einer derjenigen, der das Erbe von SL antreten wird. Nachdem die Beschränkungen dort anfangs noch wirkten, sind sie mittlerweile nur noch albern. Und eine Gemeinschaft die daraus besteht, dass sozusagen ein „Gesellschafts-Server“ betrieben wird der den Zusammenhalt regelt, in der aber ansonsten jeder seinen eigenen Claim für sich selbst organisieren muss – keine Beschwerden über schlechte Performance bitte 😉 – könnte Zukunft haben. Die Weite des Landes macht es möglich viel toleranter zu sein, als wenn du nur 1024qm hast und neben dir jemand einen 100m hohen Wolkenkratzer hochzieht. Findet das mit 200m Distanz statt ist es schon etwas ganz anderes, mal davon zu schweigen, dass durch die Einschränkung der Sichtweite solche Gebäude eh kaum auffallen.

So muss ich zugeben, dass diese kleine Gemeinde einen gewissen Charme hat. Man lässt sich überwiegend in Ruhe („ich will dich jetzt nicht weiter stören, du hast ja noch viel zu tun“) und die bisherigen Kontakte waren ausnahmslos angenehm. Demnächst werde ich mal die Umgebung etwas erkunden und meinerseits nachbarschaftliche Besuche abstatten. Anders als Besucher bei den SIMs geht man dort glücklicherweise nicht gleich zum Kühlschrank oder benutzt ohne zu fragen die Toilette. Gut – die Auswirkungen bei den sanitären Einrichtungen im Simland sind auch unter Umständen drastischer. 😉

Gehorcht der Dackel nicht …

… dann vielleicht der Bobtail. So oder ähnlich könnte man sagen ist der Weg, den ich gerade beschreite, um zu einem konsistenten Verhalten zu kommen innerhalb von Metropolis. Aber gemach mit den Analogien, wir sind ja im Bereich ‚Technisches‘ ^^

Ein versuchter Umstieg auf die aktuelle 0.7.0.2 scheiterte kläglich daran, dass diese Version nicht in der Lage ist, sich vollständig mit den Metagrid-Servern zu verständigen. Im Standalone-Mode läuft sie wunderbar, und hier konnte auch schön getestet werden was die Ursache für die fehlenden Permissions ist, denn die ’serverside_permissions‘ sollten beibehalten werden, sonst ist jeder Estate-Manager, jeder kann alles erzeugen auch wenn es verboten ist. Das ist – bei aller Freude am Teilen – nicht das was man möchte. Auch nicht in virtuellen Welten 😉 Aber damit ist es im GridMode nicht getan, denn dann läuft die 0.7.0.2er auf eine Exception wegen fehlender Friends-Module, eine schnelle Recherche hierzu brachte keine Workarounds, lediglich den lapidaren Hinweis darauf, dass alles ab 0.7 nicht im Gridmode lauffähig ist, bzw. es strengstens empfohlen wird die aktuell angebotene Version zu benutzen (das ist die 0.6.8er, +räusper+ …) Schade eigentlich, denn ansonsten macht sie einen fitten und flotten Eindruck. Und schade auch, dass die viele Arbeit die beiden Konfigurationen der 0.6.8er und der 0.7er zu mischen vergeblich war, denn – hey Leute – wenn etwas dazu kommt ist das ja kein Problem, aber im Bereich von 1000 Zeilen wild Parameter hinzuzufügen, wegzulassen oder zu ersetzen … Gäbe es nicht wunderbare Unix-Tools eine von Kommentaren und Leerzeilen bereinigte Version herzustellen (danke grep, und insbesondere egrep mit seinen regulären Ausdrücken) dann käme man so schnell nicht zum Ziel.

Die 0.6.8er wird zwar offiziell empfohlen, hat aber ihre Tücken in anderer Richtung: Schaltet man nämlich die Serverside-Permissions an (will heißen, der RegionsServer, also derjenige auf dem der SIM eigentlich läuft hat noch die Kontrolle über die Rechte), dann sieht zunächst alles gut aus, weil Fremde nichts mehr dürfen. Das Problem ist aber, dass auch man selbst kaum noch etwas kann, das fängt schon dabei an die Parzelle zu benennen, und schaut man in die Land-Infos wird schnell klar warum: Noone ist der Owner, nun gut, dann ist einiges klar. Außerdem will die Region sich partout nicht anständig beim Login verständigen, so dass man immer darauf angewiesen ist zunächst irgendwo anzukommen und dann per Flug oder Teleport nach Hause zu gelangen, nicht die ideale Art. Wer will schon immer den Nachbar fragen, ob man mal gerade den Trampelpfad benutzen darf, da die Strasse zum eigenen Grundstück noch nicht fertig ist. Obwohl das natürlich zugegebenermaßen die Kontakte intensiviert (wie gehabt, danke Paul von FluffyIsland 🙂 ).

Da schon aufgefallen ist, dass einige Nachbarn die 0.6.9er am laufen haben (seltsamerweise FluffyIsland nicht, aber die 0.6.8er dort wird nicht die offizielle sein schätze ich mal ;)), obwohl diese – wie gesagt – noch nicht empfohlen wird, mal eben schnell von SourceForge diese gezogen (wget ist wirklich so genial wie simpel), ein kleines Script aufgesetzt, das es ermöglicht die Konfigurationen flott zu übertragen, und in der Standard-Config gestartet: Siehe da, sie läuft. Ein versuchter Login: Yeah, jetzt kommt man auch direkt auf die eigene Region. Es wird. Und nachdem die serverside_permissions wieder eingeschaltet wurden – oh Wunder – jetzt ist es wie es sein soll: Der Owner bleibt erhalten, andere sind keine Estate-Manager mehr und erzeugte Objekte werden geschützt. Dann noch schnell das Ganze an screen übergeben, denn es macht keine Laune den eigenen Rechner laufen lassen zu müssen damit die Konsole erhalten bleibt. Außerdem sind hiermit nächtliche automatisierte Neustarts möglich, mono bläht sich im Laufe der Zeit gerne etwas auf, aber da es sich um eine Interpretation von Windows-Bibliotheken handelt hab ich volles Verständnis für ein tägliches Frischmachen der Windeln :P. Aber das soll jetzt nicht böse klingen, die Kombination von mono und nant (Compiler) um das originär für .net-libs geschriebene Zeugs zum Rennen zu bringen ist schon sehr tauglich. Fast könnte man Lust bekommen sich in c# einzuarbeiten 🙂

Insgesamt zwar ein seltsamer aber erfolgreicher Weg zum Ziel. Bobtails find ich eh netter, wer mag schon Wadenbeisser? 😉