1. Dashboard
  2. Forum
    1. Unerledigte Themen
  3. Downloads
  4. Galerie
    1. Alben
  5. Toolbox
    1. Passwort Generator
    2. Portchecker
  6. Mitglieder
    1. Mitgliedersuche
    2. Benutzer online
    3. Trophäen
    4. Team
Di: 20 Mai 2025
  • Anmelden oder registrieren
  • Suche
Dieses Thema
  • Alles
  • Dieses Thema
  • Dieses Forum
  • Artikel
  • Forum
  • Dateien
  • Seiten
  • Bilder
  • Erweiterte Suche

Schön, dass du den Weg zu NodeZone.net gefunden hast! Aktuell bist du nicht angemeldet und kannst deshalb nur eingeschränkt auf unsere Community zugreifen. Um alle Funktionen freizuschalten, spannende Inhalte zu entdecken und dich aktiv einzubringen, registriere dich jetzt kostenlos oder melde dich mit deinem Account an.

Anmelden oder registrieren
    1. Nodezone.net Community
    2. Forum
    3. Gameserver & Hosting
    4. ArmA Series - ArmA 3 / Reforger
    5. Hilfeforum

    Abspielen von Hintergrundmusik auf dem Marktplatz über Lautsprecher

    • VincentB.
    • 22. November 2016 um 18:17
    • Geschlossen
    • Erledigt
    • VincentB.
      Frischling
      Reaktionen
      1
      Trophäen
      9
      Beiträge
      13
      • 22. November 2016 um 18:17
      • #1

      Hi,

      möchte im vorraus klar machen das ich im Bereich scripting für Arma 3 Altis Life bzw. scripten generell noch sehr neu bin.
      Ich möchte auf einem Server (Altis Version 4.5), den ich zusammen mit ein paar Freunden betreibe, auf meinem Marktplatz Hintergrundmusik über zwei im Editor platzierte Lautsprechertürme abspielen lassen,
      um genau zu sein eine (in der description schon richtig aufgeführte)sounddatei die im 46.6 Sekundentakt loopt.

      Meine Herangehensweise in der init der beiden entsprechenden Objekte im editor sah so aus:

      _dammage = getDammage this;
      while {_dammage < 1} do {
      this say3D "background";
      sleep 46.6;
      };

      Beim Joinen auf den Server bekam ich dann die Fehlermeldung "allgemeiner Fehler in Ausdruck".
      Ich habe sonst im Internet nichts Hilfreiches gefunden, und bin minimal pissed sowas simples nicht hin zu bekommen.
      Ich hoffe jemand von euch kann mir Helfen!

      LG Vinc

    • 0xBADC0DED
      Fortgeschrittener
      Reaktionen
      102
      Trophäen
      10
      Beiträge
      443
      • 22. November 2016 um 18:21
      • #2
      Zitat von VincentB.

      _dammage = getDammage this;
      while {_dammage < 1} do {
      this say3D "background";
      sleep 46.6;
      };


      Mach das:

      SQL
      while { (damage this) < 1 } do {
         this say3D "background";
         sleep 46.6;
      };

      Aber sicher das das damit wirklich alle Spieler hören?

      Einmal editiert, zuletzt von 0xBADC0DED (23. November 2016 um 17:32)

    • VincentB.
      Frischling
      Reaktionen
      1
      Trophäen
      9
      Beiträge
      13
      • 22. November 2016 um 18:23
      • #3

      Vielen Dank für die schnelle Hilfe :D
      Ich probier das sofort aus ;)

      Ja, es sollen alle Spieler hören :)

    • VincentB.
      Frischling
      Reaktionen
      1
      Trophäen
      9
      Beiträge
      13
      • 22. November 2016 um 18:30
      • #4

      Ok, jetz kommt der selbe Error den ich schon vorher bei nem anderen Versuch bekommen hab, er will, und zwar kommt die meldung schon im Editor, zwischen dem "getDamage" und "this" ein ";", warum auch immer, ich verstehs auch nicht...

      ps: sorry, ein ) will er, hab mich verlesen...

    • Barney
      Schüler
      Reaktionen
      33
      Trophäen
      11
      Beiträge
      105
      Bilder
      2
      • 22. November 2016 um 21:27
      • #5

      Du musst beim Benutzen von dem Befehl sleep sicherstellen, dass dein Code gespawnt wird bzw über execvm ausgeführt wird und nicht gecallt wird, da ich nicht weiß ob die Init gecallt wird, was ich allerdings stark annehme, rate ich dir den gesamten Code der init in den Spawnbefehl zu packen. Bsp: [] Spawn {while{deine Bedingung} do {this say3d "Songtitel"; sleep 46.6;}};. PS: Klüger wäre es wenn du Trigger Benutzen würdest zum abspielen, da aktuell der Client den Sound auch abspielt wenn der Player ihn gar nicht hört. So werden quasi Ressourcen des Rechners dann für Nichts und wieder Nichts benutzt. PPS: Hätte gerne mehr und ausführlicher geschrieben, geht grad aber nicht weil Handy

      view?username=B4rn3y_&style=normal 76561198018512569.png

      Arbeitsnachweis - BasenBau

    • Troublemaker2_0
      Schüler
      Reaktionen
      30
      Trophäen
      9
      Beiträge
      87
      • 22. November 2016 um 21:40
      • #6

      Das Problem ist, das in dem neuen Code getDamage steht, das müsste aber getDammage heißen ^^

    • VincentB.
      Frischling
      Reaktionen
      1
      Trophäen
      9
      Beiträge
      13
      • 24. November 2016 um 11:42
      • #7

      Danke für die ganzen Antworten, das mit dem trigger is ne SEHR gute idee! das mein Lautsprecher erstmal funktioniert hab ich sogar schon vorher dann doch auf anderem wege hinbekommen ;)
      Mit _sp = [] execVM "scripts\background.sqf"; und background.sqf :

      for "_i" from 0 to 1 step 0 do {
      speaker_1 say3D "background";
      sleep 46.6;
      };

      Den trigger werd ich save noch einbauen, jetz hab ich grad mal noch ne andere Frage, und zwar Hab ich gestern einen simples script für eine funktionierende Parkuhr geschrieben, nur weis ich nicht genau wie ich es hinbekommen soll, dass ich dem spieler der da "Geld hinein schmeisst" auch das Geld abgezogen wird...
      mein Ansatz im script war "CASH = CASH - 250;" hat nicht geklappt wegen undefinierte variable in ausdruck cash, naja, der rest vom script funktioniert einwandfrei...
      wenn mir da nochmal jemand schnell helfen kann wär mega ;)

    • Ling Ling
      Anfänger
      Reaktionen
      17
      Trophäen
      11
      Beiträge
      37
      • 24. November 2016 um 11:57
      • #8

      die variable ist doch life_cash , wenn ich nicht nicht irre

    • VincentB.
      Frischling
      Reaktionen
      1
      Trophäen
      9
      Beiträge
      13
      • 24. November 2016 um 16:30
      • #9

      Danke :D ;)

    • 0xBADC0DED
      Fortgeschrittener
      Reaktionen
      102
      Trophäen
      10
      Beiträge
      443
      • 24. November 2016 um 16:31
      • #10
      Zitat von Ling Ling

      die variable ist doch life_cash , wenn ich nicht nicht irre

      CASH ist nur ein macro, daher life_cash.

    • VincentB.
      Frischling
      Reaktionen
      1
      Trophäen
      9
      Beiträge
      13
      • 24. November 2016 um 18:16
      • #11

      Vielen Dank für alle Antworten ;)

    • Brizi Jaeger
      Profi
      Reaktionen
      291
      Trophäen
      11
      Beiträge
      1.025
      • 24. November 2016 um 21:25
      • #12

      Jetzt wäre für mich schön zu Wissen wie du das mit dem Lautsprecher gemacht hast so nen kleines Tut vielleicht? :D

    • VincentB.
      Frischling
      Reaktionen
      1
      Trophäen
      9
      Beiträge
      13
      • 29. November 2016 um 20:30
      • #13

      Sorry für die späte antwort, ich hab mein script sogar mittlerweile ein wenig verbessert :)


      if (isNil "ohrenkrebsTrigger") then //prevents double-executing the loop by simply running outside and then back inside the trigger instantly
      {
      while {playBackgroundMusic} do //also checks if or not the player is still inside the trigger
      {
      ohrenkrebsTrigger = true;
      speaker_1 say3D "background";
      sleep 46.6;
      ohrenkrebsTrigger = nil;
      };
      };

      in der background.sqf
      einen Lautsprecher auf der map aufstellen der speaker_1 heißt und einen trigger mit 150m oder auch 200m radius,

      {_x == vehicle player}count thisList > 0;

      in der bedingung,

      playBackgroundMusic = true;
      _nul = [] execVM "scripts\background.sqf" //oder was fürn pfad auch immer

      in der Aktivierung und

      playBackgroundMusic = false;

      in der Deaktivierung :)

      2 Mal editiert, zuletzt von VincentB. (29. November 2016 um 23:11)

    • Brizi Jaeger
      Profi
      Reaktionen
      291
      Trophäen
      11
      Beiträge
      1.025
      • 29. November 2016 um 22:51
      • #14

      probiere ich gleich mal morgen aus :D Danke

    Registrieren oder Einloggen

    Du bist noch kein Mitglied von NodeZone.net? Registriere dich kostenlos und werde Teil einer großartigen Community!

    Registrieren

    Tags

    • Altis Life
    • 4.5

    Benutzer online in diesem Thema

    • 1 Besucher

    Wichtige Links & Informationen

    Server & Hosting-Ressourcen

      Server Administration & Hosting Basics

      Windows Server Support & Guides

      Linux Server Configuration & Help

      Setting up TeamSpeak 3 & VoIP Servers

      Domains & Web Hosting for Beginners & Professionals

      Cloud Hosting, Docker & Kubernetes Tutorials

    Gameserver & Modding-Ressourcen

      ArmA 3 Tutorials & Script Collection

      Renting & Operating Gameservers

      DayZ Server Management & Help

      FiveM (GTA V) Server & Script Development

      Rust Server Modding & Administration

      Setting up & Optimizing ARK Survival Servers

    NodeZone.net – Deine Community für Gameserver, Server-Hosting & Modding

      NodeZone.net ist dein Forum für Gameserver-Hosting, Rootserver, vServer, Webhosting und Modding. Seit 2015 bietet unsere Community eine zentrale Anlaufstelle für Server-Admins, Gamer und Technikbegeisterte, die sich über Server-Management, Hosting-Lösungen und Spielemodding austauschen möchten.


      Ob Anleitungen für eigene Gameserver, Hilfe bei Root- und vServer-Konfigurationen oder Tipps zu Modding & Scripting – bei uns findest du fundiertes Wissen und praxisnahe Tutorials. Mit einer stetig wachsenden Community findest du hier Antworten auf deine Fragen, Projektpartner und Gleichgesinnte für deine Gaming- und Serverprojekte. Schließe dich NodeZone.net an und werde Teil einer aktiven Community rund um Server-Hosting, Gameserver-Management und Modding-Ressourcen.

    Wer jetzt nicht teilt ist selber Schuld:
    1. Nutzungsbestimmungen
    2. Datenschutzerklärung
    3. Impressum
    4. Urheberrechts- oder Lizenzverstoß melden
  • Trimax Design coded & layout by Gino Zantarelli 2023-2025©
    Community-Software: WoltLab Suite™