again a simple workaround is to unionmount the base game dir together with the userdir into a directory for every user<br>the user directory has higher priority then the basegame dir. so if the user want a file with the same name it gets used bevore the file in the game basedir.<br>
now if you update the basedir (patch) of course the new content will be present in all the unionfs mounts.<br><br>i dont have the problem of running multiple servers i am just running one for personal pleasure... but if i get bored one evening ill test my suggested setup...<br>
<br>(i know this is more a ugly patch then a fix but it should work)<br><br>wkr<br>Imre<br><br><div><span class="gmail_quote">On 1/26/08, <b class="gmail_sendername">J. Miribel</b> &lt;<a href="mailto:admin@nitroserv.com">admin@nitroserv.com</a>&gt; wrote:</span><blockquote class="gmail_quote" style="margin-top: 0; margin-right: 0; margin-bottom: 0; margin-left: 0; margin-left: 0.80ex; border-left-color: #cccccc; border-left-width: 1px; border-left-style: solid; padding-left: 1ex">
Hi Elbandi,<br><br>Thanks for your help. I reply directly on the list cuz it may help<br>someone else around here.<br><br>In fact this can&#39;t help on my particular case because it won&#39;t allow me<br>to have more than one server setup using the same base install who will<br>
be able to load custom maps: the symlink links directly in one<br>particular server zone file and the link&#39;s target remains the same on<br>each server instance..<br><br>We definitly need a fix for this (Ryan ?)..<br><br>
I could symlink all the base install in the user&#39;s dir and launch the<br>server directly from user&#39;s dir, but this solution creates lots of<br>troubles in case of a game update.. And hey, thats why we have a<br>fs_basepath and fs_homepath no ? ;)<br>
<br>Regards,<br>Julian<br><br><br>Elbandi a écrit :<br>&gt; Hi!<br>&gt;<br>&gt; This is a bug:<br>&gt; Ryan use getcwd() in fopen, when open zone and usermap files.<br>&gt; Look at the first 2 lines from strace log:<br>&gt;<br>
&gt; --[begin]--<br>&gt; getcwd(&quot;/home/games/cod4&quot;, 255)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; = 17<br>&gt; open(&quot;/home/games/cod4/zone/english/code_post_gfx_mp.ff&quot;, O_RDONLY) = 25<br>&gt; fstat64(25, {st_mode=S_IFREG|0644, st_size=88764, ...}) = 0<br>
&gt; fstat64(25, {st_mode=S_IFREG|0644, st_size=88764, ...}) = 0<br>&gt; mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1,<br>&gt; 0) = 0xae1c5000<br>&gt; read(25,<br>&gt; &quot;IWffu100\5\0\0\0x\332\354\275\7@SI\3277&gt;\271I\350\275\212&quot;...,<br>
&gt; 262144) = 88764<br>&gt; read(25, &quot;&quot;, 172032)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;= 0<br>&gt; read(25, &quot;&quot;, 262144)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;= 0<br>&gt; write(2, &quot;Loaded zone \&#39;code_post_gfx_mp\&#39;\n&quot;, 31) = 31<br>
&gt; close(25)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; = 0<br>&gt; getcwd(&quot;/home/games/cod4&quot;, 255)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; = 17<br>&gt; open(&quot;/home/games/cod4/zone/english/localized_code_post_gfx_mp.ff&quot;,<br>&gt; O_RDONLY) = 25<br>
&gt; ...<br>&gt; --[end]--<br>&gt;<br>&gt; A workaround: symlink the zone file to userdir, and run cod4 from userdir:<br>&gt;<br>&gt; ln -s /usr/local/games/cod4/zone home/cod401/cod4/zone<br>&gt; cd home/cod401/cod4<br>&gt; /usr/local/games/cod4/cod4_lnxded +set fs_homepath /home/cod401/cod4/<br>
&gt; +set fs_basepath /usr/local/games/cod4/ ...<br>&gt;<br>&gt; Elbandi<br>&gt;<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp; ------------------------------------------------------------------------<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp; *From:* J. Miribel [mailto:<a href="mailto:admin@nitroserv.com">admin@nitroserv.com</a>]<br>
&gt;&nbsp;&nbsp;&nbsp;&nbsp; *To:* <a href="mailto:cod@icculus.org">cod@icculus.org</a><br>&gt;&nbsp;&nbsp;&nbsp;&nbsp; *Sent:* Fri, 25 Jan 2008 14:59:44 +0100<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp; *Subject:* COD4 Custom maps with shared game directory won&#39;t load<br>&gt;<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp; Hi everyone,<br>
&gt;<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp; I am facing a lot of troubles trying to launch custom maps on shared<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp; game dir installs:<br>&gt;<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp; Here is my startup line:<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp; /usr/local/games/cod4/cod4_lnxded +set fs_homepath /home/cod401/cod4/<br>
&gt;&nbsp;&nbsp;&nbsp;&nbsp; +set fs_basepath /usr/local/games/cod4/ +set loc_language 1 +set<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp; fs_game<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp; mods/modwarfare +exec server.cfg<br>&gt;<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp; If I place my usermaps/ dir in /usr/local/games/cod4/ I will be<br>
&gt;&nbsp;&nbsp;&nbsp;&nbsp; able to<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp; launch the custom map with no problem.<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp; If I move the usermaps/ folder in the user directory<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp; (/home/cod401/cod4/), the server will take the server.cfg in<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp; /home/cod401/cod4/mods/modwarfare/ but it won&#39;t be able to open the<br>
&gt;&nbsp;&nbsp;&nbsp;&nbsp; custom map and keeps saying the server must be modded when I try to<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp; launch one...<br>&gt;<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp; My usermaps/ tree is fine since it works when placed in the game<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp; directory<br>&gt;<br>
&gt;&nbsp;&nbsp;&nbsp;&nbsp; Any of you running setups like this and had it to work ? I might be<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp; missing something here...<br>&gt;<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp; Best regards<br>&gt;<br>&gt;<br>&gt;<br>&gt;<br><br>---<br>To unsubscribe, send a blank email to <a href="mailto:cod-unsubscribe@icculus.org">cod-unsubscribe@icculus.org</a><br>
Mailing list archives: <a href="http://icculus.org/cgi-bin/ezmlm/ezmlm-cgi?38">http://icculus.org/cgi-bin/ezmlm/ezmlm-cgi?38</a><br><br><br></blockquote></div><br><br clear="all"><br>-- <br>Sehen ob ich zeit habe: <a href="http://www.google.com/calendar/render?cid=imre.facchin%40gmail.com">http://www.google.com/calendar/render?cid=imre.facchin%40gmail.com</a>