Zum Thema download:
Es ist moeglich, die Downloads extern zu legen -
haben wir z.b. auch, sonst würde es laggen wie sonst was...
Beiträge von [Vio]Zipper
-
-
Du meinst wohl die Marker vom Typ "corona" - das sind so
leuchtende Lichtbälle: -
MTA ~= SAMP,
Wrong Topic würd ich mal sagen... -
-
Joa hab mal ne Frage und zwar wie ging das nochmal mit dem Tabmenü?
also
[tabmenu]text
[/tabmenu]hab kein plan
Was meinst du genau?
Irgend eine Resource? -
Rechtschreibung ist hier nur Nebensache merk ich grade
Bitte nicht verallgemeinern...
-
In dem Fall würde beides gehen, das local davor würde
lediglich bedeuten, das man das Auto dann nur in diesem File
verwenden könnte - ohne local ist die Variabel,
in der das Fahrzeug gespeichert wird, dann Global ( d.h.
in jedem File des Scripts ) verfügbar.
http://wiki.multitheftauto.com…php?title=DE/Lua_Tutorial
- irgendwo da drin müsste es noch mal genauer stehen. -
kann auch an GTA liegen, wenn du einen Prozessor mit mehreren Kernen hast -
gabs irgendwo einen Patch gegen - wenn ich mich recht erinnere... -
Also mit normalen Mitteln San Andreas zu entfernen
ist - auch mit MTA - nicht moeglich, wenn muesste
das Spiel selbst "gemoddet" werden, z.b. wie in GTA United.
Natürlich könnte man auch einfach mitten auf dem Meer eine neue "Welt" mappen,
ich bezweifel aber, dass das jemand machen würde - schon mal versucht eine eigene,
auch nur kleine Insel zu mappen? Da wird man bekloppt im Kopf und braucht Stunden für ein paar m². -
Du kannst die Fahrzeuge auch einfach so in ein Script eintragen,
werden dann automatisch beim Serverstart erstellt -
z.b. erstell eine neue, Serverseitige .lua Datei
in der du einfach die createVehicle Funktion nutzt:
Würde z.b. einen Fortune in Wang Cars erstellen - hab grad nix anderes zur Hand.Wenn du das Fahrzeug noch weiter verwenden willst, setz einfach vor dem createVehicle einen
Namen und ein =, so z.b. würde ein unzerstoerbarer Fortune erstellt werden: -
hm würde nicht unbedingt sagen, dass n v-server reicht -
vielleicht für den Anfang, aber ab 30-40 Leute wirds laggen
wie bolle, besonders wenn du keinen externen download hast...
Weiß ja nicht, was du für ein Script verwenden willst -
aber ohne externen Download n V-Server mit genug Leistung
zu finden... -
Und MTA hat einen gewaltigen Trafficverbrauch. Wenn der Download beim Connect 10 MB groß ist und auf einmal 10 User connecten muss der Server schnell 100 MB mal ebend übertragen. Das passiert dann für jeden Connect immer wieder. Wenn der Server groß ist mit ~50-100 Usern ist es nicht wundernswert wenn man mal in einem Monat 100 GB Traffic verbraucht (Nur für Downloads!).
Sa-Reallife.org hat ~40.000 Connects pro Monat. Wenn man den Server in MTA macht und 10 MB Download beim Start kommt dann zieht das Ding für Downloads 400GB/Monat. Dann kommt noch der Spielablauf dazu. Kommen sicher mal ebend so 500 GB zusammen.
jap, wir mit unserem 600 KB script hatten - allein auf unserem Downloadserver - gut 60 GB Traffic,
wobei einige leute scheinbar dauerhaft gedownloadet haben...Ohne Freitraffic würde ich nix empfehlen...
-
ja, hast natürlich recht, wollte halt lediglich das ganze simpel halten,
damits nachvollziehbarer ist - aber deine Version ist natürlich eleganter. -
Naja, Sachlich gesehen, ist das Ding ja total falsch.
"Ein Callback ist eine Funktion, die einen Wert zurückliefert - ", nö.
Callbacks sind Funktionen, welche aufgerufen werden, wenn ein bestimmtes Ereignis eintritt.habs verbessert, danke für den Hinweis - habe mich da etwas vertan...
-
Weitere Beispiele:
1.
Code
Alles anzeigenfunction timestamp () local regtime = getRealTime() local year = regtime.year + 1900 local month = regtime.month+1 local day = regtime.monthday local hour = regtime.hou if hour == 24 then hour = 0 end local minute = regtime.minute local timestamp = tostring(day.."."..month.."."..year..", "..hour..":"..minute) return timestamp end
Liefert einen String mit Zeit/Datum zurück,
z.b. folgendes:
"14.2.2010, 19:14"Benutzung:
Zeigt Zeit und Datum für den ganzen Server an2.
Code
Alles anzeigenfunction getVehicleOccupantNames ( veh ) local driver = getVehicleOccupant ( veh, 0 ) if not driver then driver = "Keiner" else driver = getPlayerName( passanger1 ) end local passanger1 = getVehicleOccupant ( veh, 1 ) if not passanger1 then passanger1 = "Keiner" else passanger1 = getPlayerName( passanger1 ) end local passanger2 = getVehicleOccupant ( veh, 2 ) if not passanger2 then passanger2 = "Keiner" else passanger2 = getPlayerName( passanger2 ) end local passanger3 = getVehicleOccupant ( veh, 3 ) if not passanger3 then passanger3 = "Keiner" else passanger3 = getPlayerName( passanger2 ) end return driver, passanger1, passanger2, passanger3 end
Liefert bei Benutzung die jeweiligen Namen der Spieler auf den Sitzen.Anwendung:
Codelocal d, p1, p2, p3 = getVehicleOccupantNames ( veh ) outputChatBox ( "Fahrer:"..d..",Beifahrer"..p1..",Passagier 1:"..p2..",Passagier 2:"..p3 )
gibt die Namen Spieler aus.Sry wegen dem Einrücken, irgendwie spackt das bei mir...
-
Ersteinmal, dieses Tutorial ist eher optional,
es erleichtert euch die Arbeit und ist für alle gedacht,
die die Grundlagen verstanden haben und anwenden koennen.1. Was ist ein Callback?
Callbacks sind Funktionen, welche aufgerufen werden, wenn ein bestimmtes Ereignis eintritt.
Diese liefern dann bestimmte Werte usw. zurück, z.b.:
einen Integer ( Ganze Zahl, z.b. 1 oder -5 ),
einen String ( Zeichenkette, z.b. "Hallo" )
oder auch einen boolschen Ausdruck ( true oder false ).2. Callbacks in MTA
MTA verfügt bereits über verschiedenste Arten von Callbacks, z.b.
liefert die Funktion
x, y und z-Koordinate eines Objektes zurück.
Dieses Abfrage kann dann z.b. zum belegen von Variabeln
benutzt werden, damit das Script flexibel bleibt und man nicht jedes mal
neue Zahlen eintragen muss
Beispiel:
Die Variabeln x, y und z werden mit den Koordinaten des Elements "player" ( z.b. ein Spieler ) belegt
und anschliessend verwendet, um ein Fahrzeug an der Position zu erstellen.3. Callbacks selber schreiben
Nehmen wir nun an, dass man abfragen moechte, ob ein bestimmtes
Fahrzeug ein "Mesa" ( kleinerer Jeep ) ist.
Dazu muessen wir nun zunächst das Callback schreiben:Codefunction isVehicleAMesa ( theVehicle ) if getElementModel ( theVehicle ) == 500 then return true else return false end end
Wird nun die Funktion gerufen,
belegt die Funktion die Variabel aus dem "Kopf" mit dem ersten Argument, das weiter gegeben wurde:
Das Callback isVehicleAMesa wird gerufen und die Variabel theVehicle des Callbacks
mit dem Fahrzeug des Spielers gefuellt.
Wieder wird das Callback gerufen und die Variabel theVehicle mit dem Fahrzeug des Spielers
gefuellt, jedoch wird ebenfalls false als 2. Argument weitergegeben - da jedoch im "Kopf" des Callbacks
nur eine Variabel belegt werden soll, ist der Effekt der selbe, wie im oberen Beispiel.
Wollte man false ebenfalls weitergeben, so muesste man im Kopf des Callbacks
eine weitere Variabel angeben, die mit dem Wert gefuellt werden soll:Im Script wuerde man dann z.b. folgendes verwenden:
Codefunction checkIfItsAMesa ( vehicle ) -- Die Funktion, die gerufen wird, falls ein Spieler ein Fahrzeug betritt. if isVehicleAMesa ( vehicle ) then -- Unser Callback wird gerufen - falls das Fahrzeug ein Mesa ist, trifft der erste Fall zu, da das Callback isVehicleAMesa den Wert true zurückliefert outputChatBox ( "Das Fahrzeug ist ein Mesa.", source ) else -- Wenn das Fahrzeug kein Mesa ist, tritt der else-fall in Kraft outputChatBox ( "Das Fahrzeug ist kein Mesa.", source ) end end addEventHandler ( "onPlayerVehicleEnter", getRootElement(), checkIfItsAMesa )
Wird noch ergänzt, falls ich mich irgendwo vertippt habe, bitte sagen
-
echt gut gemacht nur leider crasht deine Resource den MTA Server
Edit: nvm, war ein MTA Bug. Hab die Resource umbenannt und nun gehts.
Edit 2: Also ich würde wenn schon nur funktionierende Resourcen hochladen und nicht welche mit BugsEdit 3: Gefixt und Wertung: 6/10
Gute Idee aber folgendes ist sehr schlecht: Autos haben keine Col am Magneten, Magnet hat keine Col, für Höhenänderung des Magneten muss man andauernd - oder + drücken anstatt sie auch gedrückt halten zu können.erstmal danke fürs Lob,
wird - wie gesagt - noch in folgenden punkten gefixt:
-Collision
-Rotation
-Gedrueckt halten
-Draw für alle -
http://community.mtasa.com/ind…esources&s=details&id=588
Wird die Tage noch verbessert,
ist für einen Magnet Helikopter wie
im single player, teilweise noch nicht zu 100% perfekt,
aber das kommt noch.Gebrauch:
/magnet zum spawnen eines fertigen Magnet Helikopters
Strg im Helikopter zum festmachen / loslassen eines Fahrzeugs
+/- auf dem Numblock zum aendern der MagnethoeheAussderm koennen mit folgender Funktion Fahrzeuge, die Leviathane sind,
zu Magnet-Leviathanen umgewandelt werden: -
Neider gibt es überall, Ich kann euch ein Angebot machen, was ihr nicht abschlagen könnt.
Dazu werde ich erstmal etwas bereden müssen!wie gesagt, ab mitte Märzhaben wir n neuen Root mit mehr Power & nem deutlich
zuverlässigeren Anbieter - bis dahin halten wir durch, trotzdem vielen dank fürs Angebot -
falls es etwas war, das nix mit dem Root zu tun hatte, bitte PM schreiben^^ -
Tut ihr den gar nichts gegen das Flooding ?
Wie wärs wenn ihr anfangt iptables zu verwenden,
dann auf die Angriffe reagiert ?
Wenn ich mich recht erinnere verwendet ihr sowieso Linux.Wäre Schade drum, auch wenn ich immer noch angestänkert bin wegen der Gui Geschichte^...
Naja sind dabei, aussdem ist unser Anbieter mal grob gesagt "Für den Arsch" - 5, 6 Crashes pro Tag sind da nicht
selten...
Jedoch haben wir ab mitte März wohl einen neuen Root, dann zuverlässiger und schneller.Danke übrigens für die Hilfe, weiß ich zu schätzen