(Testprojekt) Aufräumen in den Konfigurationsdateien

Mareta Dagostino
Mareta Dagostino
 Member in Improvements
Hinweis vorab: Dieser Thread ist für TesterInnen gedacht. Was auch immer hier an Einstellungen debattiert werden, das sind keine Anleitungen oder Hilfestellungen!

------------------------------------------------------

Ich teste mich gerade durch die Beispiele der Ini-Dateien, u.a. weil die Anleitung auf meiner Homepage inzwischen arg in die Jahre gekommen ist. Schritt 1 ist Beispiel-Dateien zu erzeugen, die nur genau das Notwendige enthalten. In Schritt 2 möchte ich (nur) solche Variablen auskommentiert (!) ergänzen, die für gewöhnliche Regionenbetreiber zusätzlich interessant sein könnten. Also:
  1. Was über die Jahre hinweg abgeschrieben wurde und keine Wirkung mehr hat, kann weg.
  2. Was im Beispiel auf dem Defaultwert steht, soll dort auskommentiert sein.
  3. Absolut nerdige Stellschrauben, deren Nutzen für normale Regionen niemand so richtig erklären kann, haben in einem Beispiel nichts verloren.
Mein Traum: Neue Bespiel-ini-Dateien, wo man nicht das kalte Grausen bekommt, weil Einsteins Relativitätstheorie verständlicher ist. B)
Thanked by: Pius Noel
«13

Comments

  • Mareta Dagostino
    Mareta Dagostino
     Member edited April 20
    Hier habe ich einen Kandidaten aus der GridCommon.ini, er wird in den Beispieldateien sowohl der Metro als auch des OSgrid auf "false" gesetzt, soll laut Kommentarzeilen den Defaultwert "true" haben.
    [HGInventoryAccessModule]
        ;; Send visual reminder to local users that their inventories are unavailable
        ;; while they are traveling and available when they return. True by default.
        RestrictInventoryAccessAbroad = false
    Wenn ich von meiner Region weg teleportiere, kommt keine blaue Box oder ähnliches, egal ob das auf "false" oder "true" oder gar auskommentiert ist. Weiß jemand das Sollverhalten bzw. ein gültiges Testszenario?
  • Mareta Dagostino
    Mareta Dagostino
     Member edited April 22
    OpenSim.ini, Sektion [Startup]

    Viele Variablen stehen auf den Defaultwerten. Sofern kein Grund besteht, warum normale Regionenbetreiber daran herumdrehen müssen, würde ich die entsprechenden Abschnitte komplett streichen. (Fortgeschrittene können ja aus der OpenSimDefaults.ini Blöcke kopieren, bis der Arzt kommt.)

    async_call_method = SmartThreadPool
    MaxPoolThreads = 300
    JobEngineEnabled = true
    ConsolePrompt = "Region (\R) "
    ConsoleHistoryFileEnabled = true
    ConsoleHistoryFile = "OpenSimConsoleHistory.txt"
    ConsoleHistoryFileLines = 100
    region_info_source = "filesystem"
    MaxPrimUndos = 20
    NonPhysicalPrimMin = 0.001
    NonPhysicalPrimMax = 256
    PhysicalPrimMin = 0.01
    PhysicalPrimMax = 64
    ClampPrimSize = false
    AllowScriptCrossing = true
    MinimumTimeBeforePersistenceConsidered = 60
    MaximumTimeBeforePersistenceConsidered = 600
    physical_prim = true
    meshing = Meshmerizer
    physics = BulletSim
    DefaultScriptEngine = "XEngine"
    SpawnPointRouting = closest

    Mein Vorschlag für eine [Startup] Sektion wäre dann wie im Zitatblock. Dabei sind die Pflichteinträge oben und danach folgen optionale Einstellungen. Interessant wären da Meinungen, ob weitere optionale Einstellungen erwähnt werden sollten.
    ;; Opensim 0.9.1 requires
    ;; Windows minimum .NET Framework >= 4.6
    ;; Linux minimum MONO >= 5.12

    [Startup]
        ;; ----- optional settings start here -----

        ;; Sets the method that OpenSim will use to fire asynchronous
        ;; events. Valid values are UnsafeQueueUserWorkItem,
        ;; QueueUserWorkItem, BeginInvoke, SmartThreadPool, and Thread.
        ;; SmartThreadPool is reported to work well on Mono/Linux, but
        ;; UnsafeQueueUserWorkItem has been benchmarked with better
        ;; performance on .NET/Windows. Default: SmartThreadPool
        ; async_call_method = "SmartThreadPool"

        ;; Min. and max. threads to allocate on the FireAndForget thread pool
        ;; when running with the SmartThreadPool option above.
        ;; On powerful machines performance may increase with higher values.
        ;; Defaults: MinPoolThreads = 2, MaxPoolThreads = 300
        MinPoolThreads = 32
        ; MaxPoolThreads = 300

        ;# {allow_regionless} {} {Allow simulator to start up with no regions configured.} {true false} false
        ;; Allow the simulator to start up if there are no region configuration
        ;; available from the selected region_info_source.
        allow_regionless = true

        ;# {TelehubAllowLandmark} {} {Allow users with landmarks to override telehub routing} {true false} false
        ;; TelehubAllowLandmark allows users with landmarks to override telehub
        ;; routing and land at the landmark coordinates when set to true.
        TelehubAllowLandmark = true

        ;# {InworldRestartShutsDown} {} {Shutdown instance on region restart?} {true false} false
        ;; If you have only one region in an instance, or to avoid the many bugs
        ;; that you can trigger in modules by restarting a region, set this to
        ;; true to make the entire instance exit instead of restarting the region.
        ;; This is meant to be used on systems where some external system like
        ;; Monit will restart any instance that exits, thereby making the shutdown
        ;; into a restart.
        ; InworldRestartShutsDown = false
  • Mareta Dagostino
    Mareta Dagostino
     Member edited April 22
    OpenSim.ini, Sektion [AccessControl]

    Alles steht auf Default, die Sektion kann meiner Meinung nach komplett entfallen.

    OpenSim.ini, Sektion [Map]

    Alles steht auf Default. Wer für die Region selber Bilder von der Region machen und in der Map darstellen will, wird aber dort was verstellen wollen. Zumindest einmalig beim Start könnte sogar das Warp3DImageModule trotz Memory-Leak vertretbar sein, insbesondere zusammen mit RenderMeshes = true sieht das nämlich total klasse aus (braucht aber auch was Zeit beim Start). Deshalb habe ich in meinem Vorschlag einige interessante Abschnitte trotz Defaultwerten beibehalten - allerdings die Settings auskommentiert, weil sie auf Defaultwerten stehen.

    Und ja: DrawPrimOnMapTile = true ist der Defaultwert, obwohl es in der OpenSim.ini.example anderes steht. Siehe OpenSimDefaults.ini ;)
    [Map]
        ;; ----- optional settings start here -----

        ;# {GenerateMaptiles} {} {Generate map tiles?} {true false} true
        ;; Map tile options.
        ;; If true, then maptiles are generated using the MapImageModule selected below.
        ;; If false then the texture referenced by MaptileStaticUUID is used instead, which can also be overridden
        ;; in individual region config file(s).
        ; GenerateMaptiles = true

        ;# {MapImageModule} {} {The map image module to use} {MapImageModule Warp3DImageModule} MapImageModule
        ;; The module to use in order to generate map images.
        ;; MapImageModule is the default. Warp3DImageModule is an alternative experimental module that can generate
        ;; better images, but has a memeory leak. Do not use Warp3DImageModule together with MaptileRefresh!
        ; MapImageModule = "MapImageModule"

        ;# {MaptileRefresh} {GenerateMaptiles} {Maptile refresh period?} {} 0
        ;; If desired, a running region can update the map tiles periodically
        ;; to reflect building activity. This makes no sense of you don't have
        ;; prims or other mesh on maptiles. Value is in seconds.
        ; MaptileRefresh = 0

        ;# {MaptileStaticUUID} {} {Asset ID for static map texture} {} 00000000-0000-0000-0000-000000000000
        ;; If not generating maptiles, use this static texture asset ID
        ;; This may be overridden on a per region basis in Regions.ini
        ; MaptileStaticUUID = "00000000-0000-0000-0000-000000000000"

        ;# {DrawPrimOnMapTile} {} {Draw prim shapes on map tiles?} {true false} true
        ;; Draw objects on maptile.  This step might take a long time if you've
        ;; got a large number of objects, so you can turn it off here if you'd like.
        ; DrawPrimOnMapTile = true

        ;# {TexturePrims} {} {Texture prims on map tiles?} {true false} true
        ;; Texture the faces of the prims that are rendered on the map tiles.
        ; TexturePrims = true

        ;# {TexturePrimSize} {} {Size of prims to texture faces?} {} 48
        ;; Only texture prims that have a diagonal size greater than this number
        ; TexturePrimSize = 48

        ;# {RenderMeshes} {} {Render meshes and sculpties on map tiles?} {true false} false
        ;; Warp3DImageModule only: Experimental attempt to render meshes and sculpties on the map.
        ; RenderMeshes = false
  • Mareta Dagostino
    Mareta Dagostino
     Member edited April 22
    OpenSim.ini, Sektion [Permissions]

    Einige Variablen stehen auf den Defaultwerten. Hier sehe ich keinen Grund, warum normale Regionenbetreiber daran herumdrehen müssen, würde die entsprechenden Abschnitte also komplett streichen. permissionmodules = "DefaultPermissionsModule" ist Default, also hier auskommentiert. Auf Sandboxen o.ä. kann das PrimLimitsModule interessant sein, weshalb ich den Absatz nicht ganz gestrichen habe.

    serverside_object_permissions = true
    automatic_gods = false
    implicit_gods = false
    region_owner_is_god = true
    [Permissions]
        ;; ----- optional settings start here -----

        ;# {permissionmodules} {} {Permission modules to use (may specify multiple modules, separated by comma} {} DefaultPermissionsModule
        ;; Permission modules to use, separated by comma.
        ;; Possible selections actally are "DefaultPermissionsModule" or "DefaultPermissionsModule,PrimLimitsModule"
        ; permissionmodules = "DefaultPermissionsModule"

        ;# {allow_grid_gods} {} {Allow grid gods?} {true false} true
        ;; This allows grid users with a UserLevel of 200 or more to assume god
        ;; powers in the regions in this simulator.
        allow_grid_gods = false

        ;# {region_manager_is_god} {} {Allow region manager gods} {true false} false
        ;; Allow region managers to assume god powers in regions they manage
        region_manager_is_god = true


  • Mareta Dagostino
    Mareta Dagostino
     Member
    OpenSim.ini, Sektion [Estates]

    Alles steht auf Default, die Sektion kann meiner Meinung nach komplett entfallen.

    OpenSim.ini, Sektion [SMTP]

    Alles steht auf Default, die Sektion kann meiner Meinung nach komplett entfallen.

    OpenSim.ini, Sektion [Network]

    shard = "OpenSim" wird bereits in der OpenSimDefaults.ini gesetzt => also Default.
    [Network]
        ;# {http_listener_port} {} {TCP Port for this simulator to listen on? (This must be unique to the simulator!)} {} 9000
        ;; Simulator HTTP port. This is not the region port, but the port the
        ;; entire simulator listens on. This port uses the TCP protocol, while
        ;; the region ports use UDP.
        ; http_listener_port = 9000

        ;# {ExternalHostNameForLSL} {} {Hostname to use for HTTP-IN URLs. This should be reachable from the internet.} {}
        ;; Hostname to use in llRequestURL/llRequestSecureURL
        ;; must be a valid hostname for the ssl cert.
        ;; if not defined - llRequestURL/llRequestSecureURL are disabled  
        ; ExternalHostNameForLSL = "my.external.domain.or.ipv4.address"

        ;; What is reported as the "User-Agent" when using llHTTPRequest, defaults to not
        ;; send User-Agent info if not set here. See the notes section in the wiki at
        ;; http://wiki.secondlife.com/wiki/LlHTTPRequest for comments on adding
        ;; " (Mozilla Compatible)" to the text where there are problems with a web server.
        user_agent = "OpenSim LSL (Mozilla Compatible)"

        ;; ----- optional settings start here -----
  • Mareta Dagostino
    Mareta Dagostino
     Member edited April 23
    OpenSim.ini, Sektion [XMLRPC]

    Alles steht auf Default, die Sektion kann meiner Meinung nach komplett entfallen.

    OpenSim.ini, Sektion [ClientStack.LindenUDP]

    Im Quellcode von OpenSim 0.9.1 konnte ich keinen Zugriff auf "async_packet_handling" finden. Deshalb vermute ich sehr, dass dieses Setting einfach nur noch aus alten Konfigurationsdateien abgeschrieben wurde. Defaultwerte sind wieder auskommentiert.
    [ClientStack.LindenUDP]
        ;; ----- optional settings start here -----

        ;; The time to wait before disconecting an unresponsive client.
        ;; The time is in seconds. The default is 60 (one minute).
        AckTimeout = 600

        ;# {DisableFacelights} {} {Stop facelights from working?} {true false} false
        ;; Quash and remove any light properties from attachments not on the
        ;; hands. This allows flashlights and lanterns to function, but kills
        ;; silly vanity "Facelights" dead. Sorry, head mounted miner's lamps
        ;; will also be affected.
        ;; This is especially important in artistic builds that depend on lights
        ;; on the build for their appearance, since facelights will cause the
        ;; building's lights to possibly not be rendered.
        ; DisableFacelights = "false"

        ;; Maximum outbound bytes per second for a single scene. This can be used to
        ;; throttle total outbound UDP traffic for a home simulator with low bandwidth.
        ;; The default value is 0, meaning no throttling at the scene level.
        ;; Example for 20 megabits is 2500000.
        ; scene_throttle_max_bps = 0

        ;; Maximum bytes per second to send to any single client. This will override
        ;; the user's viewer preference settings to distribute the traffic fairer
        ;; between the avatars present on home simulators. The default value is 0,
        ;; meaning no aggregate throttling on clients (only per-category throttling).
        ;; Example for 1.5 megabits is 187500.
        ; client_throttle_max_bps = 0
    OpenSim.ini, Sektion [ClientStack.LindenCaps]

    Alles steht auf Default, und für eine Beispieldatei sind die möglichen Einstellungen hier arg nebulös. Die Sektion kann meiner Meinung nach komplett entfallen.

    OpenSim.ini, Sektion [SimulatorFeatures]

    Alles steht auf Default, die Sektion kann meiner Meinung nach komplett entfallen.

    OpenSim.ini, Sektion [Chat]

    Alles steht auf Default. Allerdings könnte es meiner Meinung nach für Veranstaltungssims o.ä. durchaus interessant sein, an den Distanzen was zu verstellen. Also kein Nerdspielzeug, Vorschlag: bleibt (auskommentiert) drin.
    [Chat]
        ;; ----- optional settings start here -----

        ;# {whisper_distance} {} {Distance at which a whisper is heard, in meters?} {} 10
        ;; Distance in meters that whispers should travel.
        ; whisper_distance = 10

        ;# {say_distance} {} {Distance at which normal chat is heard, in meters?} {} 20
        ;; Distance in meters that ordinary chat should travel.
        ; say_distance = 20

        ;# {shout_distance} {} {Distance at which a shout is heard, in meters?} {} 100
        ;; Distance in meters that shouts should travel.
        ; shout_distance = 100

    OpenSim.ini, Sektion [EntityTransfer]

    Alles steht auf Default, die Sektion kann meiner Meinung nach komplett entfallen.

  • Mareta Dagostino
    Mareta Dagostino
     Member edited April 29
    OpenSim.ini, Sektion [Messaging]
    [Messaging]
        ;# {OfflineMessageModule} {} {Module to use for offline message storage} {OfflineMessageModule "Offline Message Module V2" *}
        ;; Module to handle offline messaging. The core module requires an external web service to do this, see OpenSim wiki.
        ;; Disabled if not set.
        OfflineMessageModule = "OfflineMessageModule"

        ;# {OfflineMessageURL} {OfflineMessageModule:OfflineMessageModule Offline Message Module V2:Offline Message Module V2} {URL of offline messaging service} {}
        ;; URL of web service for offline message storage. Leave it commented if your service is local to the sim.
        OfflineMessageURL = "https://api.metro.land/messaging/offline.php"

        ;# {MuteListModule} {OfflineMessageModule:OfflineMessageModule} {} {} MuteListModule
        ;; Mute list handler (Requires OpenSimMuteList module). MUST BE SET to allow offline messages to work.
        MuteListModule = "MuteListModule"

        ;; ----- optional settings start here ----

        ;; Control whether group messages are forwarded to offline users.  Default is true.
        ;; On high traffic regions one may set this to false to reduce data load.
        ; ForwardOfflineGroupMessages = true
  • Mareta Dagostino
    Mareta Dagostino
     Member edited April 22
    OK, nachdem es in der OpenSim.ini bisher chillige Fleißarbeit war, kommt jetzt ein Brecher. :#

    ==> Hilfe benötigt! <==

    Es geht um die Sektion [Search]. Dort haben die Metro-Admins brav ihre Search-URL eingetragen:

    Aber: Ich kann da eintragen was ich will, die Suche (inworld) z.B. nach Avataren oder Gruppen funktioniert wunderbar! Also auch mit: https://halligalli.hastenichgesehn/query.php
    Bezüglich der SearchURL ist leider auch der Quellcode Kraut und Rüben, ich würde das ehrlich gesagt lieber durch Testen lösen als durch Quellcodeanalyse. :s

    Wie im zweiten Beitrag (zur GridCommon.ini) wäre ich auch hier sehr dankbar für Hinweise. Weiß jemand das Sollverhalten bzw. ein gültiges Testszenario?
  • Sheera Khan
    Sheera Khan
     Member
    Hallo Mareta,

    Dienstags findet ab 20:00 in OSGrid auf der Region Dev Outreach das Developer-Meeting statt. Dort ist auch Ubit regelmäßig anwesend, so dass Du den "Schuldigen" direkt ansprechen kannst.

    Die Leute dort sind recht dankbar für Hinweise auf Fehler oder Versäumnisse in den INI-Dateien :-)

    Ciaoo

    Sheera

    Thanked by: Mareta Dagostino
  • Christoph Balhaus
    Christoph Balhaus
     Member
    Alternativ sind Ubit und andere Entwickler auch fast immer abends im irc Channel #opensim-dev auf freenode.net anzutreffen.

    /Chris
    Thanked by: Mareta Dagostino
  • Data Rossini
    Data Rossini
     Member edited April 23
    Hallo Mareta,
    die SearchURL in der Section [Search] der OpenSim.ini wird meines Wissens  für die "Websuche" im Viewer verwendet.
    Für die Websuche wird in der Regel php-Code(Java) vom Webserver des Gridbetreibers aufgerufen, der die Suchfunktion nach Objekten oder Land/Parcels unterstützt. Vorher müssen die zu suchenden Objekte mit einem Häkchen bei "In Suche Anzeigen" markiert werden.
    Die somit markierten Objekte müssen natürlich vorher für die Websuche gesammelt werden.
    Das wird unter Section [DataSnapshot] festgelegt. Hier kommt wieder php/Java Code vom Gridbetreiber zum tragen.
    Ich habe natürlich andere URL eingetragen, da ich zur Zeit noch mit einem eigenem Grid fahre.
    Unter Metro 0.8, da war ich noch bei Euch, hatte die Websuche eigentlich funktioniert.
    Wäre in dem Zusammenhang interessant, ob "Find Freebies"  (https://metro.land/metropolis/obj_search.php) nach der Umstellung noch läuft.

    Ansonsten, super Idee von Dir, mit dem Entrümpeln der ini-Dateien.

    Gruß
    Data






    Thanked by: Mareta Dagostino
  • Lena Vanilli
    Lena Vanilli
     Administrator
    Huhu Mareta,

    den Worten von Data schliesse ich mich an: tolle Sache mit der Entrümpelung! :)

    Das Tool für die Freebies ( https://metro.land/metropolis/obj_search.php ) funzt auch im neuen Grid. Aber wir haben den Parser erst einmal abgeschaltet. Wir haben festgestellt, dass auch Objekte aufgeführt sind, die nicht explizit für die Suche freigeschaltet wurden. Das müssen wir erst klären. Anschliessend werden wir den Parser wieder anwerfen. :)

    Liebe Grüße
    Lena


  • Mareta Dagostino
    Mareta Dagostino
     Member edited April 23
    Danke, Data und Lena! Ich habe jetzt die Suche auf meinen Webserver umgebogen und dort ein Script laufen, das Zeitstempel bei Zugriffen ausgibt.

    Weiterhin kann ich keinen Nachweis erzeugen, dass der Link aufgerufen wird.
    EDIT: Es geht speziell um die Sektion [Search] und den Link bei  "SearchURL =...", nicht um den Eintrag bei [DataSnapshot] oder gar um den Eintrag, den das Grid dem Viewer mitteilt. Mein Verdacht geht halt dahin, dass dieser Eintrag obsolet ist außer man benutzt das OpenSimSearch Modul (da kommt er drin vor).

    @Lena : Mit welchem Modul soll das denn aufgerufen werden? Ich frage so blöd, weil OpenSimSearch in den Binärdateien 091_DEV_PLUS [020] nicht enthalten ist.

    EDIT: Ich werde dann erst mal weitermachen und das Searchproblem vorerst offen lassen. Wenn die Websuche wieder geht, kann ich immer noch ausprobieren, ob  sie nicht mehr geht wenn ich den Link lösche....
  • Mareta Dagostino
    Mareta Dagostino
     Member edited April 24
    OpenSim.ini, Sektion [BulletSim]

    "AvatarToAvatarCollisionsByDefault = true" ist der Default. Dass Avatare beim Zusammenstoßen ein Hindernis darstellen, ist sicherlich auch allgemein erwünscht.
    [BulletSim]
        ;; ----- optional settings start here ----

        ;; BulletSim can run on its own thread independent of the simulator's heartbeat thread.
        ;; Enabling this will not let the physics engine slow down avatar movement, etc. Default is false.
        ; UseSeparatePhysicsThread = false
    OpenSim.ini, Sektion [ODEPhysicsSettings]

    Die einzige Nennung von "use_NINJA_physics_joints" im Quellcode ist auskommentiert, da war wohl früher mal was.
    "mesh_sculpted_prim = true" ist die Defaulteinstellung, und anscheinend gibt es damit auch seit langem keine Probleme mehr? Würde man das auf false stellen, könnten Avatare nicht über die Oberfläche von Sculpies laufen oder würden schon weit entfernt vom sichtbaren Objekt gegen eine unsichtbare Wand stoßen. Veteranen unter uns kennen den Effekt noch aus der Zeit vor der Mesh-Einführung.

    Gute Nachricht: Der Hack mit "av_density = 3" ist nicht mehr erforderlich, selbst die Füße einer 200 kg Mareta versinken nicht mehr im Sand!

    Alles kann auf Default stehen, die Sektion also meiner Meinung nach komplett entfallen.

    OpenSim.ini, Sektion [RemoteAdmin]

    Alles steht auf Default, die Sektion kann meiner Meinung nach komplett entfallen.

    OpenSim.ini, Sektion [Sun]

    Die Funktion hinter "year_length" ist nicht fertig programmiert, also wirkungslos. Es war mal angedacht, Jahreszeiten darzustellen. Das "update_interval" hat sich wohl über die Jahre bewährt.

    day_night_offset = <irgendwas> ist gemäß meinen Inworld-Messungen wirkungslos.

    Achtung! Gemessen habe die doppelte Tageslänge wie angegeben, also ergibt 12.0 einen realen 24-Stunden-Tag.

    So bleibt aus meiner Sicht also nur:
    [Sun]
        ;; ----- optional settings start here ----

        ;; Number of wall clock hours * 2 for an opensim day, 12.0 would mean realtime. Default is 4.
        day_length = 12
  • Eryn Galen
    Eryn Galen
     Member edited April 24
    OpenSim.ini, Sektion [Messaging]

    ForwardOfflineGroupMessages = true ist Defaultwert. Ich kann mir auch keinen Grund vorstellen, warum jemand das auf einzelnen Regionen des Grids deaktivieren sollte, deshalb habe ich diesen Abschnitt nicht aufgenommen.

    Hallo Mareta, ich kenne mindestens einen Fall, in dem es günstig sein kann, den Wert umzustellen: Bei Veranstaltungen. Das war bei Doro damals immer eine der Variablen, die den Server zum Glühen bringen konnten ;-)

    Ansonsten eine tolle Idee!
    Thanked by: Mareta Dagostino
Sign In or Register to comment.

Welcome

It looks like you're new here. If you want to get involved, click one of these buttons!

Discussions

© Copyright 2019 - Metropolis Metaversum
All times are GMT