Moin Leute,
zunächst einmal bin ich mir bewusst, dass einige Probleme mit Addons auf Linux-Servern auftreten wegen der, soweit ich das sehe, Case-Sensitivity.
Hab mich jetzt allerdings schon ne Zeit lang mit auseinader gesetzt und wollte mal meinen Linuxserver testen für sowas. Bin auch relativ weit und hab interessante Probleme nun.
Also zunächst einmal laufen alle möglichen Addons als SVN auf dem Server:
Code:
source@h1001715:~/orangebox/garrysmod/addons$ ls
adv duplicator gmod-build-tools portal stargate atlantis props
aoc gravityhull rd3 stargate extras
hl2_ep2 stargate_resources
caf left4dead svntest.sh
catdaemon_stargate left4dead2 sb3 tf2
ced ls3c sbep_entities toybox
counter-strike ls3e sbep_experimental wire
day-of-defeat moe_glados sbep_fortifications wire extras
diprip sbep_models wire model pack 1
dynamic_gibs sbep_weapons zeno_clash
dystopia pewpew zps
gassystems2 playx stargate
source@h1001715:~/orangebox/garrysmod/addons$
Das mal der Inhalt vom Addons Ordner. Ok, sieht grad etwas zerstückelt aus... aus Putty grad rauskopiert.
die svntest.sh ist halt ne Scriptdatei, die mir automatisch alle SVNs updatet/runterläd.
Hab alle Addons runtergeladen und dann Server gestartet erstmal. Probleme lagen dann im Stargate Pack, bei allen SBEP Sachen eigentlich und Lifesupport gingen paar Sachen, paar gingen nicht. Nungut. Ich gegoogelt wie nen blöder und irgendwann das hier gefunden: http://wiki.garrysmod.com/?title=Mov..._JFS_partition
Klingt sehr Sinnig und sollte, so wie ich das sehe, eigentlich alle Probleme beseitigen. Also hey, ausprobieren! Leider scheint der Kernel vom Server kein JFS Modul zu haben trotz Ubuntu 10.04 LTS... Naja ok, gegoogelt gegoogelt gegoogelt und dann das hier gefunden: http://www.brain-dump.org/projects/ciopfs/
DAS hab ich dann tatsächlich auch zum laufen gebracht, habe mir dafür ein addons_2 Ordner angelegt, auf dem ich die SVNs runterlade und der, ich nenns mal umgewandelte Ordner, ist dann der Addons Ordner. Case-Sensitivity sollte also nun im Addons Ordner komplett irrelevant sein.
Und siehe da, meine Stargates und die SBEP Sachen funktionieren nun Problemlos. Dacht ich mir, kann ja nix mehr im Weg stehen dem Linux Server, wenn die anderen Sachen, die vorher gingen, jetzt auch noch gehen würden Oo
Lifesupport geht gar nicht mehr, zumindest nicht die LS3E Sachen. Aber z.B. die Tools scheinen zu gehen (ob sie den Funktionen nachgehen, konnte ich antürlich nicht ohne Ressourcenodes oder so testen).
Der komplette Serverstart sieht etwa so aus:
Code:
source@h1001715:~/orangebox$ ./srcds_run -console -game garrysmod +map sb_gooniverse +maxplayers 8 +port 27077 +fps_max 60
Auto detecting CPU
Using default binary: ./srcds_linux
Server will auto-restart if there is a crash.
Running a benchmark to measure system clock frequency...
Finished RDTSC test. To prevent the startup delay from this benchmark, set the environment variable RDTSC_FREQUENCY to 1908.000000 on this system. This value is dependent upon the CPU clock speed and architecture and should be determined separately for each server. The use of this mechanism for timing can be disabled by setting RDTSC_FREQUENCY to 'disabled'.
Using breakpad minidump system
Using breakpad crash handler
Console initialized.
ConVarRef mat_dxlevel doesn't point to an existing ConVar
Game.dll loaded for "Garry's Mod"
Setting breakpad minidump AppID = 4000
Forcing breakpad minidump interfaces to load
Looking up breakpad interfaces from steamclient
Calling BreakpadMiniDumpSystemInit
Installing breakpad exception handler for appid(4000)/version(4659)
Mounting hl2.. OK
Mounting cstrike.. OK
Mounting dod.. OK
Mounting ep2.. Not downloaded fully? Try playing it first.
Mounting tf.. Not downloaded fully? Try playing it first.
Mounting episodic.. Not downloaded fully? Try playing it first.
Mounting hl2mp.. Not downloaded fully? Try playing it first.
Mounting portal.. OK
Mounting lostcoast.. Not downloaded fully? Try playing it first.
Mounting hl1.. Not downloaded fully? Try playing it first.
Mounting hl1mp.. Not downloaded fully? Try playing it first.
Mounting zeno_clash.. OK
Mounting left4dead2.. OK
Mounting left4dead.. OK
Mounting diprip.. OK
Mounting zps.. OK
Mounting pvkii.. Not downloaded fully? Try playing it first.
Mounting dystopia.. OK
Mounting ageofchivalry.. Not downloaded fully? Try playing it first.
Garry's Mod server.dll Build #126 - Linux
[Aug 16 2011 12:00:46]
maxplayers set to 8
Unknown command "sv_allow_wait_command"
Unknown command "cl_cmdrate"
Unknown command "cl_updaterate"
Unknown command "rate"
maxplayers set to 8
Unknown command "port"
WARNING: Port 27005 was unavailable - bound to port 27007 instead
WARNING: Port 27020 was unavailable - bound to port 27022 instead
WARNING: Port 27040 was unavailable - bound to port 27042 instead
Network: IP 81.169.181.227, mode MP, dedicated Yes, ports 27077 SV / 27007 CL
Lua initialized (Lua 5.1)
WireMod Installed. Version: 2478
=======================================================
StarGate Pack: Initializing
Version: 47
Loading: stargate/shared/init.lua
Loading: stargate/shared/tracelines.lua
Loading: stargate/shared/print_r.lua
Loading: stargate/shared/matrix.lua
Loading: stargate/shared/lib.lua
Loading: stargate/shared/bullets.lua
Loading: stargate/server/init.lua
": No node specified!se error in file stargate/config.ini at line 60 near "
INIParser:new - File stargate/user_config.ini does not exist!
Loading: stargate/server/wire_rd.lua
Loading: stargate/server/tool.lua
Loading: stargate/server/teleport.lua
Loading: stargate/server/spawner.lua
Loading: stargate/server/protection.lua
Loading: stargate/server/ini_parser.lua
Loading: stargate/server/entity.lua
=======================================================
Contraption Engine: Initialising Damage Engine
Contraption Damage Engine: Initialising Server Convars
Contraption Damage Engine: CVar Initialisation Completed Successfully
Contraption Engine: Effects Library Present
Contraption Engine: Damage Engine Init Finished
-english-
[@addons/caf/lua/CAF/Core/shared/sh_general_caf.lua:393] Can't create non-existing class <base2>
ERROR! Module 'zlib_b64' not found!
Registering gamemode 'sandbox' derived from 'base'
ScriptEnforce is disabled
[@addons/gassystems2/lua/weapons/gmod_tool/stools/gas_storage.lua:23] Please Install Resource Distribution Addon.'
[@addons/gassystems2/lua/weapons/gmod_tool/stools/gas_generator.lua:23] Please Install Resource Distribution Addon.'
Loading CAF Tools
Skipping E2 extension 'tracesystem'.
Skipping E2 extension 'propcore'.
Skipping E2 extension 'holoanim'.
[addons/pewpew/lua/entities/gmod_wire_expression2/core/custom/pewpewfunctions.lua:6] '=' expected near 'number'
[addons/sbep_experimental/lua/entities/mannedturret/init.lua:1] unexpected symbol near '`'
Compressing lua files into data pack..
Skipped. Datapack exists.
ConVarRef room_type doesn't point to an existing ConVar
Executing dedicated server config file
Precache of sprites/animglow02 ambigious (no extension specified)
Setting CSprite to non-sprite model sprites/animglow02
Precache of sprites/animglow02 ambigious (no extension specified)
Setting CSprite to non-sprite model sprites/animglow02
Contraption Damage Engine: Commencing Override Preload
Contraption Damage Engine: GCombat Detected
Contraption Damage Engine: CDS NOT Detected
Contraption Damage Engine: PewPew Detected
Contraption Damage Engine: Commencing Function Override
Contraption Damage Engine: Function Override Completed
Hook 'Dynamic_Gibs_LoadConfig' Failed: [addons/dynamic_gibs/lua/autorun/server/sv_dynamic_gibs.lua:227] attempt to index local 'ENT' (a nil value)
Starting CAF Addons
Loading Level 1 Addons
Loading Level 2 Addons
Loading Level 3 Addons
Loading Level 4 Addons
Loading Level 5 Addons
Looking up breakpad interfaces from steamclient
Calling BreakpadMiniDumpSystemInit
Failed to load Steam ServiceServiceStart: failed to startUnknown command "sbox_maxwire_turret"
Unknown command "sb_planetnocliponly"
Unknown command "sbox_maxshield_dome"
Unknown command "sbox_maxshield_conform"
Connection to Steam servers successful.
VAC secure mode is activated.
Man sieht, dass sich eigentlich die Fehlermeldungen im Rahmen halten. Gut, aber den Tag, wo ich nen GMod Server fehlerfrei starten sehe, muss erst erfunden werden.
Aber die eigentliche Frage ist, liegen meine Addonprobleme immernoch an Linux? Ich mein, durch das beheben des Case-Sensitivity müsste es sich doch für GMod wie auf Windows nun anfühlen? Ich hab für das Lifesupport auch schon die dev-svn getestet, jedoch ohne Erfolg bei mir.
Kann es sein, dass dem System noch was anderes fehlt? Weiß grad echt nicht so wirklich weiter...
Erst geht die erste hälfte und die zweite nicht, nun geht die zweite hälfte und die erste streikt? Das MUSS sich doch kombinieren lassen!
Gruß
Chaot
//Edit
Mir is grad noch was eingefallen:
Ich bin ja momentan soweit, dass ein paar Addons mit dem Trick super gehen und die anderen nicht. Wäre es nich möglich, mit drei Verzeichnissen zu arbeiten irgendwie?
Also quasi etwa so:
-addons
-addons_nonCS
-addons_CS
im addons_cs hätte ich alle Addons, die nach dem Trick alle kleingeschrieben sind drinnen und die restlichen Addons hau ich direkt in /addons" rein
Hab ich dann ne möglichkeit, irgendwie beide Verzeichnisse zu mergen? Also quaso addons = addons + addons_cs?