{"id":3330,"date":"2021-03-21T23:51:46","date_gmt":"2021-03-21T22:51:46","guid":{"rendered":"https:\/\/clonkspot.org\/blog\/?p=3330"},"modified":"2025-05-15T11:40:16","modified_gmt":"2025-05-15T09:40:16","slug":"legacyclonk-4-9-10-11-346","status":"publish","type":"post","link":"https:\/\/clonkspot.org\/blog\/2021\/03\/21\/legacyclonk-4-9-10-11-346\/","title":{"rendered":"LegacyClonk 4.9.10.11 [346]"},"content":{"rendered":"\n<p><strong>Download:<\/strong> <a rel=\"noreferrer noopener\" href=\"http:\/\/assets.maxmitti.tk\/lcupdate\/lc_full_346_win64.zip\" target=\"_blank\">Windows x64 (experimentell)<\/a>, <a rel=\"noreferrer noopener\" href=\"http:\/\/assets.maxmitti.tk\/lcupdate\/lc_full_346_win32.zip\" target=\"_blank\">Windows x86<\/a>, <a rel=\"noreferrer noopener\" href=\"http:\/\/assets.maxmitti.tk\/lcupdate\/lc_full_346_linux64.zip\" target=\"_blank\">Linux x64<\/a>, <a href=\"http:\/\/assets.maxmitti.tk\/lcupdate\/lc_full_346_linux.zip\" target=\"_blank\" rel=\"noreferrer noopener\">Linux x86<\/a>, <a href=\"http:\/\/assets.maxmitti.tk\/lcupdate\/lc_full_346_mac.zip\" target=\"_blank\" rel=\"noreferrer noopener\">macOS (experimentell)<\/a><\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Objektskalierung<\/h2>\n\n\n\n<p><em>Vergleichsbild ist in Arbeit.<\/em><\/p>\n\n\n\n<p>Hochaufl\u00f6sende Objektgrafiken in Clonk? Geht das?<br>Jetzt schon! Durch die neue DefCore-Eigenschaft <code>Scale<\/code> kann nun ein Skalierungsfaktor in Prozent bestimmt werden, in dem die Objektgrafiken vorliegen. Der Wert gibt an, bei welchem Spielskalierungsfaktor die Objektgrafik in Originalgr\u00f6\u00dfe dargestellt wird.<\/p>\n\n\n\n<p>Soll hei\u00dfen:<\/p>\n\n\n\n<ul class=\"wp-block-list\"><li><code>Scale=100<\/code> bedeutet, dass die Objektgrafik bei 100% Spielskalierung (in den Optionen einstellbar) in Originalgr\u00f6\u00dfe gerendert wird. Bei h\u00f6heren Spielskalierungen muss sie entsprechend raufskaliert werden. Dies ist das momentane und das Standardverhalten aller Objekte.<\/li><li><code>Scale=200<\/code> skaliert die Objektgrafik bei 100% Spielskalierung auf die H\u00e4lfte. Bei 200% Spielskalierung wird sie jedoch in Originalgr\u00f6\u00dfe dargestellt, wodurch die Unsch\u00e4rfe des Skalierens entf\u00e4llt.<\/li><\/ul>\n\n\n\n<p>Werte sind nicht auf ganze Zahlen (100%, 200%, 400%, &#8230;) beschr\u00e4nkt, allerdings k\u00f6nnen bei unsch\u00f6nen Werten Skalierungsartefakte auftreten.<\/p>\n\n\n\n<p>L\u00e4nge, Breite, ActMap-Angaben k\u00f6nnen wie gewohnt in den Ma\u00dfen angegeben werden, die das Objekt im Spiel haben soll. Eine Ausnahme besteht in der SolidMask &#8211; da die Pixel exakt den Pixeln der Grafik entsprechen m\u00fcssen, m\u00fcssen **nur** die Offsets in Grafikkoordinaten angegeben werden.<\/p>\n\n\n\n<p class=\"hide-this\">Beispiel: Ich m\u00f6chte der Stahlbr\u00fccke aus Codename: Modern Combat eine h\u00f6her aufl\u00f6sende Grafik verpassen. Ein Auszug aus den Grafikparametern der DefCore.txt lautet wie folgend:<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Neue Soundengine<\/h2>\n\n\n\n<p>Bisher wurde f\u00fcr Sounds auf Windows FMOD und auf anderen Plattformen SDL_mixer 1.2 verwendet. Dies brachte einige Probleme mit sich, etwa den MIDI-Bug mit FMOD, verschiedene SDL-Unsch\u00f6nheiten und, dass kein Windows-LC-Archiv komplett out-of-the-box l\u00e4uft, weil zuerst fmod.dll aus dem CR-Archiv kopiert werden muss, da diese aus Lizenzgr\u00fcnden nicht mitgeliefert werden darf.<br>Ab 346 wird <em>standardm\u00e4\u00dfig<\/em> f\u00fcr alle Plattformen SDL2_mixer verwendet, wie bereits in 344 versucht wurde. Dies bringt eine kleine Klang\u00e4nderung mit sich \u2013 wie stark, h\u00e4ngt von den Ohren der befragten Person und den verwendeten Sounds ab.<\/p>\n\n\n\n<p>Im Gegensatz zum letzten Versuch gibt es allerdings f\u00fcr Windows-Nutzer die M\u00f6glichkeit, weiterhin FMOD zu verwenden, indem die fmod.dll aus Clonk Rage in den Clonk-Ordner eingef\u00fcgt wird. F\u00fcr alle bestehenden Installationen m\u00fcsste dies also ohne zus\u00e4tzlichen Aufwand bereits der Fall sein.<br>Wenn FMOD korrekt geladen wird, erscheint beim Ladebildschirm noch vor dem Hauptmen\u00fc die Nachricht <code>Using dynamically loaded FMod for sound.<\/code><\/p>\n\n\n\n<p>Sollte allerdings SDL2_mixer verwendet werden und es bei Szenarien mit sehr vielen Sounds zu Problemen kommt, weil die mit 32-Bit zur Verf\u00fcgung stehenden 2 GB RAM nicht ausreichen, kann auf die (momentan experimentelle) 64 Bit-Version ausgewichen werden.<\/p>\n\n\n\n<p><strong>Achtung:<\/strong> Die fmod.dll von Clonk Rage funktioniert nur mit der 32-Bit-Version.<br>F\u00fcr die 64-Bit-Version ist zwar dieselbe Funktionalit\u00e4t m\u00f6glich, allerdings m\u00fcsste daf\u00fcr die 64 Bit-Version fmod64.dll vorhanden sein.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Verbesserung des authentischen Clonk-Planet-Erlebnisses<\/h2>\n\n\n\n<p>Die Landschaft von Szenarien, deren Versionsnummer kleiner als 4.6.5 ist, wird nun standardm\u00e4\u00dfig ohne 3D-Materialschattierung dargestellt, um dem Originalverhalten n\u00e4herzukommen. EntwicklerInnen k\u00f6nnen die Materialschatterierung f\u00fcr ihre Szenarien \u00fcber die Einstellung <code>ShadeMaterials<\/code> der <code>[Landscape]<\/code> &#8211; Sektion der <code>Scenario.txt<\/code> \u00e4ndern. Ein Wert von <code>true<\/code> schaltet es ein, ein Wert von <code>false<\/code> aus.<\/p>\n\n\n\n<p>Weiters wurden einige Bugs gefixt, die zu Scriptfehlern in alten Szenarien f\u00fchrten, etwa in der Clonk Planet &#8211; Forschungsstation.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Weitere neue Script- und Objektfeatures<\/h2>\n\n\n\n<ul class=\"wp-block-list\"><li>Mittels der DefCore-Eigenschaft <code>BaseAutoSell<\/code> kann nun gesteuert werden, ob ein Objekt in der Basis automatisch verkauft wird oder nicht. Standardwert ist <code>false<\/code>, au\u00dfer das Objekt hat die ID <code>GOLD<\/code>, damit Goldobjekte von Drittanbietern nicht kaputtgehen.<\/li><li>Mittels der DefCore-Eigenschaft <code>HideHUDElements<\/code> k\u00f6nnen nun bestimmte Elemente des Clonk-HUDs am linken Bildschirmrand in Crewmemberobjekten verborgen werden. Bitmaske. M\u00f6gliche Werte:<\/li><\/ul>\n\n\n\n<figure class=\"wp-block-table\"><table><tbody><tr><td>Name<\/td><td>Wert<\/td><td>Versteckt<\/td><\/tr><tr><td>Portrait<\/td><td>1<\/td><td>Clonkportrait<\/td><\/tr><tr><td>Captain<\/td><td>2<\/td><td>Kapit\u00e4nssymbol<\/td><\/tr><tr><td>Name<\/td><td>4<\/td><td>Clonkname<\/td><\/tr><tr><td>Rank<\/td><td>8<\/td><td>Rangname<\/td><\/tr><tr><td>RankImage<\/td><td>16<\/td><td>Rangsymbol<\/td><\/tr><tr><td>All<\/td><td>31<\/td><td>Alles davon<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<ul class=\"wp-block-list\"><li>Neuer Scriptoperator <code>??<\/code>. Ist der erste Operand <code>nil<\/code>, wird der zweite Operand zur\u00fcckgegeben, ansonsten der erste.<\/li><li>Neuer Scriptoperator <code>??=<\/code>. Setzt den ersten Operanden auf den zweiten, wenn der erste <code>nil<\/code> ist.<\/li><\/ul>\n\n\n\n<p>Weiter<strong>e Features<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\"><li>Der Netzwerkstack versucht nun nicht mehr, sich mit Nulladressen zu verbinden, was technisch nicht m\u00f6glich ist; dadurch erzeugte Nachrichten m\u00fcllen das Log nun nicht mehr voll.<\/li><li>Auf UNIX-Systemen werden etwaige auftretende Signale nach der Ausgabe des Stacktraces wieder ausgel\u00f6st, wodurch der Crashhandler des Systems aufgerufen wird.<\/li><li>Die Lobby zeigt nun die Anzahl der Spieler in der Lobby sowie der maximal m\u00f6glichen Spielerzahl in der Titelleiste der Spielerliste an.<\/li><li>Vorladen ist nun standardm\u00e4\u00dfig aktiviert und nicht mehr in der experimentellen Phase. Wir bedanken uns bei allen Spielerinnen und Spielern, die Feedback geliefert haben.<\/li><li><code>\/sound<\/code> f\u00e4llt nun auf die Dateiendung <code>.ogg<\/code> zur\u00fcck, wenn kein Sound mit passendem Namen und Endung <code>.wav<\/code> gefunden werden kann.<\/li><li><code>Alt + Enter<\/code> \u00f6ffnet im laufenden Spiel nun die Chateingabe f\u00fcr Nachrichten \u00fcber dem Clonk.<\/li><li>Leere Chateingabzeilen werden beim Dr\u00fccken der passenden Tastenkombinationen entsprechend ausgef\u00fcllt, ohne sie davor schlie\u00dfen zu m\u00fcssen.<\/li><li>experimenteller macOS-Support wie schon in 344<\/li><li>experimentelle 64-Bit-Windows-Anwendung<\/li><\/ul>\n\n\n\n<p><strong>Bugfixes<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\"><li>Bei Fehlern w\u00e4hrend des Spielstarts wird nun anstelle eines nicht existierenden Stringtable-Eintrages namens <code>IDS_PRC_FAIL<\/code> eine passende Fehlermeldung angezeigt.<\/li><li>Mit etwas Gl\u00fcck ist ein bei Netzwerkspielen und insbesonders in Lobbies auftretender Crash behoben. (Technischer Hintergrund: <code>StdStrBuf::AppendFormatV<\/code> mit seinen verschiedenen Implementierungen f\u00fcr Windows und Linux wurde durch eine neue Implementierung mittels variadic templates anstelle von <code>va_list<\/code> erstellt. Damit tritt auch der Bug, dass \u00fcber den Stack hinausgelesen wird, da die Argumentliste bei mehrfachen <code>vsnprintf<\/code> &#8211; Aufrufen nicht kopiert wird, nicht mehr auf, danke an Sharkigator aka Foaly f\u00fcrs Melden und den Pull Request.)<\/li><li>Die Performance von die Landschaft modifizierenden Funktionen wie <code>SetLandscapePixel<\/code> und <code>DrawMaterialQuad<\/code> wurde drastisch verbessert; <code>SetLandscapePixel<\/code> sollte nun etwa 10 &#8211; 20 Mal so schnell sein wie davor. (Technischer Hintergrund: Zur Landschaftsbearbeitung muss Clonk die Landschaft aus dem GPU-Speicher in den Hauptspeicher laden. Bisher wurde immer die ganze Landschaft geladen, egal, wie gro\u00df die \u00c4nderung war; mit 346 wird nur der ben\u00f6tigte Bereich geladen.)<\/li><li>F\u00e4lle, in denen Maps ihre Schl\u00fcssel referenziert haben, wurden entfernt.<\/li><li>Kann weder ein UDP-Socket erstellt noch der Referenzserver gestartet werden, crasht das Spiel nicht mehr. (Technischer Hintergrund: Schlug die Referenzservererstellung fehl, wurde f\u00e4lschlicherweise die Fehlermeldung des UDP-Sockets abgefragt.)<\/li><li>Die Landschaft z\u00e4hlt nun keine Pixel von ung\u00fcltigen Materialien mehr.<\/li><li>Verl\u00e4sst man die Lobby direkt am Anfang vom Vorladen, crasht das Spiel nicht mehr durch das versuchte Laden einer ung\u00fcltigen Ressource.<\/li><li>Der Bereit-Dialog kann nun nicht mehr mit Ja best\u00e4tigt werden, wenn alle Ressourcen noch nicht vollst\u00e4ndig herunterladen wurden.<\/li><li> <code>Hit(int xdir, int ydir)<\/code> wird nur noch in Objektdefinitionen ab Clonk Rage mit Argumenten abgerufen, da der Callback davor diese Parameter nicht hatte, was etwa in der Clonk Planet &#8211; Forschungsstation zu Scriptfehlern gef\u00fchrt hat.<\/li><li><code>Local(0)<\/code> in Szenarien aus Clonk Planet &#8211; Zeiten wird nun wieder korrekt geladen. (Technische Hintergrund: Der Wert wurde als Integer geladen, anstelle automatisch bestimmt zu werden.)<\/li><li>Das Spiel crasht unter Windows nicht mehr, wenn ein Fehler direkt beim Programmstart auftritt.<\/li><li>Der Referenzserver antwortet nun mit HTTP 405 Method Not Allowed, wenn eine nicht unterst\u00fctzte HTTP-Requestmethode verwendet wird.<\/li><li>Die Kompilieroption <code>USE_STAT<\/code> funktioniert wieder.<\/li><li>Aufnahmen werden nun gleich abgespielt, egal, ob mit oder ohne Vorladen aufgenommen wurde.<\/li><li>Updateknopf aus der Netzwerkliste entfernt. Die Architektur des Updatesystems hat zu Crashes gef\u00fchrt, wenn der Updateserver zu langsam geantwortet hat. (Technischer Hintergrund: Bis eine Antwort erhalten wird, wird die Mainloop im Netzwerkdialog ausgef\u00fchrt. Verl\u00e4sst man die Netzwerkliste, bevor eine Antwort erhalten worden ist, wird diese gel\u00f6scht; bei Erhalt der Antwort wird die Ausf\u00fchrung somit in einem gel\u00f6schten Objekt fortgesetzt.)<\/li><li>Tempor\u00e4re Standalone-Dateien des Netzwerks werden nun korrekt gel\u00f6scht.<\/li><li>Lokal verf\u00fcgbare, entpackte Ressourcen k\u00f6nnen nun nicht mehr in der Lobby gespeichert werden.<\/li><li>Startet der Host ein Netzwerkspiel mit entpackten Objektdefinitionen, verwendet er trotzdem die dadurch gepackten Versionen, um Desyncs durch andere Ladereihenfolgen vorzubeugen.<\/li><li>Jump and Run &#8211; Controls bleiben nicht mehr in gedr\u00fccktem Zustand, wenn die Taste w\u00e4hrend eines offenen Men\u00fcs \/ Dialogs losgelassen wird.<\/li><li>Neustartspielerwiederherstellungsinformationen werden nicht mehr gel\u00f6scht, wenn der &#8222;Spiel beenden&#8220; &#8211; Dialog aufgerufen wird, aber mit Nein zum Spiel zur\u00fcckgekehrt wird.<\/li><\/ul>\n","protected":false},"excerpt":{"rendered":"<p>Download: Windows x64 (experimentell), Windows x86, Linux x64, Linux x86, macOS (experimentell) Objektskalierung Vergleichsbild ist in Arbeit. Hochaufl\u00f6sende Objektgrafiken in Clonk? Geht das?Jetzt schon! Durch die neue DefCore-Eigenschaft Scale kann nun ein Skalierungsfaktor in Prozent bestimmt werden, in dem die Objektgrafiken vorliegen. Der Wert gibt an, bei welchem Spielskalierungsfaktor die Objektgrafik in Originalgr\u00f6\u00dfe dargestellt wird. [&hellip;]<\/p>\n","protected":false},"author":14,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[24,117,118],"class_list":["post-3330","post","type-post","status-publish","format-standard","hentry","category-allgemein","tag-clonk","tag-legacyclonk","tag-release"],"_links":{"self":[{"href":"https:\/\/clonkspot.org\/blog\/wp-json\/wp\/v2\/posts\/3330","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/clonkspot.org\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/clonkspot.org\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/clonkspot.org\/blog\/wp-json\/wp\/v2\/users\/14"}],"replies":[{"embeddable":true,"href":"https:\/\/clonkspot.org\/blog\/wp-json\/wp\/v2\/comments?post=3330"}],"version-history":[{"count":27,"href":"https:\/\/clonkspot.org\/blog\/wp-json\/wp\/v2\/posts\/3330\/revisions"}],"predecessor-version":[{"id":3380,"href":"https:\/\/clonkspot.org\/blog\/wp-json\/wp\/v2\/posts\/3330\/revisions\/3380"}],"wp:attachment":[{"href":"https:\/\/clonkspot.org\/blog\/wp-json\/wp\/v2\/media?parent=3330"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/clonkspot.org\/blog\/wp-json\/wp\/v2\/categories?post=3330"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/clonkspot.org\/blog\/wp-json\/wp\/v2\/tags?post=3330"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}