[[http://www.siedler-games.de|{{:sg-link.jpg|}}]] Auf dieser Seite befindet sich zu Testzwecken das [[http://www.siedler-portal.de/vb3/showthread.php?t=3380|RequireVersion]] Script. Dieses wurde unten auch zu Testzwecken als Datei angehängt. -- Wenn die eigene Version "1.05.0216 Extra1" ist (wirds rechts unten im Hauptmenü angezeigt)... -- ..dann kommt in die FirstMapAction folgender Aufruf vor den eigenen Code: RequireVersion( 1, 05, 0216, 1 ); -- Ist die Version des Spielers zu alt, wird eine Warnung angezeigt aber das Spiel läuft normal weiter. -- Alternativ kann sich die Karte auch beenden, wenn die Version zu alt ist: -- RequireVersion( 1, 05, 0216, 1, true ); function RequireVersion( _major, _minor, _build, _addon, _forcequit ) assert( type( _major ) == "number" ) assert( type( _minor ) == "number" ) assert( type( _build ) == "number" ) assert( type( _addon ) == "number" ) local restext; local action; local dummy, dummy, nMajor, nMinor, nBuild, nAddon = string.find( Framework.GetProgramVersion(), "^(%d+)%.(%d+)%.(%d+) Extra(%d+)$" ); if dummy then nMajor = tonumber( nMajor ); nMinor = tonumber( nMinor ); nBuild = tonumber( nBuild ); nAddon = tonumber( nAddon ); local tooOld = false; if _addon > nAddon or _major > nMajor then tooOld = true; elseif _major == nMajor then if _minor > nMinor then tooOld = true; elseif _minor == nMinor then if _build > nBuild then tooOld = true; end end end if tooOld then restext = "Ihre Spielversion ist zu alt! @cr Die Karte benoetigt: " .. _major .. "." .. _minor .. "." .. _build .. " Extra" .. _addon .. " @cr Sie haben: " .. nMajor .. "." .. nMinor .. "." .. nBuild .. " Extra" .. nAddon .. " @cr Bitte installieren sie das aktuelle Update von www.siedler.de"; action = _forcequit and Framework.CloseGame; end else restext = "Die Spielversion konnte nicht ermittelt werden. Die Karte wird eventuell nicht normal spielbar sein! @cr Die Karte benoetigt: " .. _major .. "." .. _minor .. "." .. _build .. " Extra" .. _addon; end if restext then restext = restext .. string.rep( " ", 200 ); StartBriefing{ finished = action, { title = "@color:255,0,0 ACHTUNG!", text = restext } }; end end Wie man sehen kann, ist es vernünftig formatiert, und auch automatisch in Farbe dargestellt.\\ In welcher Farbe/Formatierung welche Zeichen/Wörter angezeigt werden sollen, kann man natürlich einstellen. Hier das Script als Datei: {{:requireversion.rar}}