Hallo zusammen,

da ich einmal schon hier nen Thread geschrieben habe, wie man Waffen bzw. Fahrzeuge restricten kann, hab ich schon eine Lösung gefunden wie man das in PS-Map Server macht.

Als erstes öffnet ihr die GameData.pak Datei per Winrar (Ort: Crysis/Game)

Dann geht ihr in Scripts/Gamerules und dortn müsste die PowerStruggleBuying.lua datei vorhanden siein, die entpack ihr z.B. auf dem Desktop.

Die .lua Datei öffnet ihr dann per Editor und dann sollte das kommen:

Code:
--------------------------------------------------------------------------
-- Crytek Source File.
--  Copyright (C), Crytek Studios, 2001-2006.
--------------------------------------------------------------------------
-- $Id$
-- $DateTime$
-- Description: GameRules implementation for Power Struggle
--  
--------------------------------------------------------------------------
--  History:
--  - 30/ 6/2006   12:30 : Created by Márcio Martins
--
----------------------------------------------------------------------------------------------------
 
-- buy flags
PowerStruggle.BUY_WEAPON   = 1;
PowerStruggle.BUY_VEHICLE  = 2;
PowerStruggle.BUY_EQUIPMENT = 4;
PowerStruggle.BUY_AMMO   = 8;
PowerStruggle.BUY_PROTOTYPE = 16;
PowerStruggle.BUY_ALL    = 32-1;
 
PowerStruggle.weaponList=
{
 { id="flashbang",     name="@mp_eFlashbang",      price=10,    amount=1, ammo=true, weapon=false, category="@mp_catExplosives", loadout=1},
 { id="smokegrenade",   name="@mp_eSmokeGrenade",    price=10,    amount=1, ammo=true, weapon=false, category="@mp_catExplosives", loadout=1 },
 { id="explosivegrenade", name="@mp_eFragGrenade",     price=25,    amount=1, ammo=true, weapon=false, category="@mp_catExplosives", loadout=1 },
 { id="empgrenade",   name="@mp_eEMPGrenade",     price=50,    amount=1, ammo=true, weapon=false, category="@mp_catExplosives", loadout=1 },
 
 { id="pistol",      name="@mp_ePistol",        price=50,    class="SOCOM",      category="@mp_catWeapons"},
 { id="claymore",     name="@mp_eClaymore",      price=25,    class="Claymore",     buyammo="claymoreexplosive", category="@mp_catExplosives", loadout=1 },
 { id="avmine",      name="@mp_eMine",        price=25,    class="AVMine",      buyammo="avexplosive",    category="@mp_catExplosives", loadout=1 },
 { id="c4",       name="@mp_eExplosive",       price=50,    class="C4",        buyammo="c4explosive",    category="@mp_catExplosives", loadout=1 },
 { id="shotgun",     name="@mp_eShotgun",       price=50,    class="Shotgun",      uniqueId=4,  category="@mp_catWeapons", loadout=1 },
 { id="smg",       name="@mp_eSMG",         price=75,    class="SMG",        uniqueId=5,  category="@mp_catWeapons", loadout=1 },
 { id="fy71",       name="@mp_eFY71",        price=125,    class="FY71",       uniqueId=6,  category="@mp_catWeapons", loadout=1 },
 { id="macs",      name="@mp_eSCAR",        price=150,    class="SCAR",       uniqueId=7,  category="@mp_catWeapons", loadout=1 },
 { id="rpg",       name="@mp_eML",         price=200,    class="LAW",        uniqueId=8,  category="@mp_catExplosives", loadout=1 },
 { id="dsg1",       name="@mp_eSniper" ,       price=200,    class="DSG1",       uniqueId=9,  category="@mp_catWeapons", loadout=1 },
 { id="gauss",      name="@mp_eGauss",        price=600,    class="GaussRifle",    uniqueId=10, category="@mp_catWeapons", loadout=1 },
};
 
PowerStruggle.equipList=
{
 { id="binocs",   name="@mp_eBinoculars",       price=50,    class="Binoculars",    uniqueId=101,  category="@mp_catEquipment", loadout=1 },
 { id="nsivion",   name="@mp_eNightvision",       price=10,    class="NightVision",    uniqueId=102,  category="@mp_catEquipment", loadout=1 },
 { id="pchute",   name="@mp_eParachute",       price=25,    class="Parachute",    uniqueId=103,  category="@mp_catEquipment", loadout=1 },
 { id="lockkit",   name="@mp_eLockpick",       price=25,    class="LockpickKit",   uniqueId=110,  category="@mp_catEquipment", loadout=1 },
 { id="repairkit",  name="@mp_eRepair",        price=50,    class="RepairKit",     uniqueId=110,  category="@mp_catEquipment", loadout=1 },
 { id="radarkit",  name="@mp_eRadar",        price=50,    class="RadarKit",     uniqueId=110,  category="@mp_catEquipment", loadout=1 },
}
 
PowerStruggle.protoList=
{
 { id="moac",     name="@mp_eAlienWeapon",    price=300,   class="AlienMount",     level=50,  uniqueId=11, category="@mp_catWeapons", loadout=1 },
 { id="moar",     name="@mp_eAlienMOAR",     price=100,   class="MOARAttach",    level=50,  uniqueId=12, category="@mp_catWeapons", loadout=1 },
 
 { id="minigun",    name="@mp_eMinigun",      price=250,   class="Hurricane",      level=50,  uniqueId=13, category="@mp_catWeapons", loadout=1 },
 { id="tacgun",     name="@mp_eTACLauncher",    price=500,   class="TACGun",      level=100, energy=5, uniqueId=14, category="@mp_catWeapons", md=true, loadout=1 },
 { id="usmoac4wd",   name="@mp_eMOACVehicle",   price=300,   class="US_ltv",       level=50,  modification="MOAC",     vehicle=true, buildtime=20, category="@mp_catVehicles", loadout=0 },
 { id="usmoar4wd",   name="@mp_eMOARVehicle",   price=350,  class="US_ltv",       level=50,  modification="MOAR",     vehicle=true, buildtime=20, category="@mp_catVehicles", loadout=0 },
 { id="ussingtank",   name="@mp_eSingTank",     price=800,   class="US_tank",      level=100,  energy=10, modification="Singularity", vehicle=true, md=true, buildtime=60, category="@mp_catVehicles", loadout=0 },
 { id="ustactank",   name="@mp_eTACTank",     price=750,  class="US_tank",      level=100,  energy=10, modification="TACCannon",  vehicle=true, md=true, buildtime=60, category="@mp_catVehicles", loadout=0 },
}
PowerStruggle.vehicleList=
{ 
 { id="light4wd",    name="@mp_eLightVehicle",     price=0,   class="US_ltv",      modification="Unarmed",   buildtime=5,  category="@mp_catVehicles", loadout=0 },
 { id="us4wd",     name="@mp_eHeavyVehicle",    price=50,   class="US_ltv",      modification="MP",   buildtime=5,     category="@mp_catVehicles", loadout=0 },
 { id="usgauss4wd",  name="@mp_eGaussVehicle",   price=200,  class="US_ltv",       modification="Gauss", buildtime=10,     category="@mp_catVehicles", loadout=0 },
 { id="nktruck",    name="@mp_eTruck",      price=0,   class="Asian_truck",     modification="Hardtop_MP", buildtime=5,   category="@mp_catVehicles", loadout=0 },
 { id="ussupplytruck",  name="@mp_eSupplyTruck",    price=300,  class="Asian_truck",    modification="spawntruck", teamlimit=3, abandon=0, spawngroup=true, buyzoneradius=6, servicezoneradius=16, buyzoneflags=bor(bor(PowerStruggle.BUY_AMMO, PowerStruggle.BUY_WEAPON), PowerStruggle.BUY_EQUIPMENT),   buildtime=25,  category="@mp_catVehicles", loadout=0  },
 
 { id="usboat",     name="@mp_eSmallBoat",     price=0,   class="US_smallboat",    modification="MP", buildtime=5,    category="@mp_catVehicles", loadout=0 },
 { id="nkboat",     name="@mp_ePatrolBoat",     price=100,  class="Asian_patrolboat",   modification="MP", buildtime=5,    category="@mp_catVehicles", loadout=0 },
 { id="nkgaussboat",  name="@mp_eGaussPatrolBoat",   price=200,  class="Asian_patrolboat",   modification="Gauss", buildtime=10,  category="@mp_catVehicles", loadout=0 },
 { id="ushovercraft",  name="@mp_eHovercraft",     price=100,  class="US_hovercraft",   modification="MP", buildtime=20,   category="@mp_catVehicles", loadout=0 },
 { id="nkaaa",     name="@mp_eAAVehicle",     price=200,  class="Asian_aaa",     modification="MP", buildtime=20,   category="@mp_catVehicles", loadout=0 },
 
 { id="usapc",     name="@mp_eICV",       price=350,  class="US_apc",      buildtime=20,  category="@mp_catVehicles", loadout=0 },
 { id="nkapc",     name="@mp_eAPC",       price=450,  class="Asian_apc",     buildtime=20, [jeep]=true, category="@mp_catVehicles", loadout=0 },
 
 { id="nktank",     name="@mp_eLightTank",     price=400,  class="Asian_tank",    buildtime=30,  category="@mp_catVehicles", loadout=0 },
 { id="ustank",     name="@mp_eBattleTank",    price=450,  class="US_tank",      modification="GaussRifle",  buildtime=40,  category="@mp_catVehicles", loadout=0 },
 { id="usgausstank",  name="@mp_eGaussTank",    price=600,  class="US_tank",      modification="FullGauss",  buildtime=60,  category="@mp_catVehicles", loadout=0 },
 
 { id="nkhelicopter",  name="@mp_eHelicopter",     price=400,  class="Asian_helicopter",  modification="MP", buildtime=30,  category="@mp_catVehicles", loadout=0 },
 { id="usvtol",     name="@mp_eVTOL",       price=600,  class="US_vtol",      modification="MP", buildtime=30,  category="@mp_catVehicles", loadout=0 }, 
};
 
--us4wd,nk4wd,nktruck,ustank,ustactank,usgausstank,usapc,nktank,nktactank,nkgausstank,usspawntruck,usammotruck
 
PowerStruggle.ammoList=
{
 { id="",          name="@mp_eAutoBuy",    price=0,            category="@mp_catAmmo", loadout=1 },
 { id="bullet",       name="@mp_eBullet",      price=5,   amount=30,    category="@mp_catAmmo", loadout=1 },
 { id="fybullet",      name="@mp_eFYBullet",      price=5,   amount=30,    category="@mp_catAmmo", loadout=1 },
 { id="shotgunshell",    name="@mp_eShotgunShell",  price=5,   amount=8,     category="@mp_catAmmo", loadout=1 },
 { id="smgbullet",      name="@mp_eSMGBullet",    price=5,   amount=40,    category="@mp_catAmmo", loadout=1 }, 
 { id="lightbullet",     name="@mp_eLightBullet",    price=5,   amount=40,    category="@mp_catAmmo", loadout=1 },
 
 { id="sniperbullet",    name="@mp_eSniperBullet",   price=10,   amount=10,    category="@mp_catAmmo", loadout=1 },
 { id="scargrenade",     name="@mp_eRifleGrenade",   price=20,   amount=1,     category="@mp_catAmmo", loadout=1 },
 { id="gaussbullet",     name="@mp_eGaussSlug",    price=50,   amount=5,     category="@mp_catAmmo", loadout=1 },
 
 { id="incendiarybullet",                 price=50,   amount=30,  invisible=true,  category="@mp_catAmmo", loadout=1 }, 
 
 { id="hurricanebullet",   name="@mp_eMinigunBullet",  price=50,   amount=500,    category="@mp_catAmmo", loadout=1 },
 
 { id="claymoreexplosive",                price=25,   amount=1,   invisible=true,  category="@mp_catAmmo", loadout=1 },
 { id="avexplosive",                   price=25,   amount=1,   invisible=true,  category="@mp_catAmmo", loadout=1 },
 { id="c4explosive",                   price=50,  amount=1,   invisible=true,  category="@mp_catAmmo", loadout=1 },
 { id="Tank_singularityprojectile",name="@mp_eSingularityShell",   price=200,  amount=1,     category="@mp_catAmmo", loadout=0 }, 
 
 { id="towmissile",     name="@mp_eAPCMissile",    price=50,   amount=2,     category="@mp_catAmmo", loadout=0 },
 { id="dumbaamissile",    name="@mp_eAAAMissile",   price=50,   amount=4,     category="@mp_catAmmo", loadout=0 },
 { id="tank125",      name="@mp_eTankShells",   price=100,  amount=10,    category="@mp_catAmmo", loadout=0 },
 { id="helicoptermissile",   name="@mp_eHelicopterMissile", price=100,  amount=7,     category="@mp_catAmmo", loadout=0 },
 { id="tank30",       name="@mp_eAPCCannon",   price=100,  amount=100,    category="@mp_catAmmo", loadout=0 },
 { id="tankaa",       name="@mp_eAAACannon",   price=100,  amount=250,    category="@mp_catAmmo", loadout=0 },
 { id="a2ahomingmissile",  name="@mp_eVTOLMissile",   price=100,  amount=6,     category="@mp_catAmmo", loadout=0 },
 { id="gausstankbullet",   name="@mp_eGaussTankSlug",  price=100,  amount=10,    category="@mp_catAmmo", loadout=0 },
Ich hab jetzt nicht die ganze Datei zur Anschau erstellt, da der Rest net wichtig ist.

Das sind die ganzen Befehle was man so in einer PowerStruggle Map einstellen könnt.

So jetzt zum Sperren / Preis ändern

Wir nehmen z.B. den VTOl, den die meisten glaub ich sperren wollen

Dazu sucht ihr einfach per Editor nach "VTOL"

Dann sollte das kommen:

Code:
 { id="usvtol",     name="@mp_eVTOL",       price=600,  class="US_vtol",      modification="MP", buildtime=30,  category="@mp_catVehicles", loadout=0 },
Wenn ihr den sperren wollt, dann löscht einach diese Zeile.

Wenn ihr den Preis ändern wollt, dann ändert ihr den z.B. "price=1200".

ACHTUNG!!! Die veränderten Preise werden nicht in Kaufmenü in Crysis angezeigt!

Teamlimit pro Fahrzeug geben

Dazu geht ihr wieder z.B. beim VTOl und gebt dann nach "modification="MP"," z.B. teamlimit=2 an, d.h. es dürfen nur 2 leute aus einen Team einen VTOL nutzen.

Wichtig dabei ist, dass nach dem teamlimit=2 ein "," stehen muss, sonst funktioniert der Server bzw. die .lua datei nicht!

das sollte dann so aussehen:

Code:
 { id="usvtol",     name="@mp_eVTOL",       price=600,  class="US_vtol",      modification="MP",teamlimit=2, buildtime=30,  category="@mp_catVehicles", loadout=0 },
Hochladen der Mod

Um den Preiswechsel oder Sperrung auch nutzen zu können muss man diese natürlich auch in den Server hochladen bzw. einfügen.

Dazu macht ihr zuerst eine Textdatei mit dem Namen "protect".

Die öffnet ihr und gebt folgendes ein

Code:
<protect override="1">
<exclude level="1" file="Game/Scripts/GameRules/PowerStruggleBuying.lua"/>
</protect>
Dann müsst ihr die Datei in eine .xml Datei umschreiben, damit das auch beim Server funktinert und hat den Zweck, dass der Server funktioniert

So jetzt zum großen Teil

Jetzt erstellt ihr eine RAR Ordner mit dem Namen "zzsupermod1.0" und dortn erstellt ihr einen Ordner mit "Scripts", in den Ordner dann wieder einen Ordner mit "GameRules" und dort fügt ihr dann eure "PowerStruggleBuying.lua" Datei ein.

Dann umschreibt ihr den RAR Ordner ind einen .pak Ordner.

Nun für die, die einen Server gemietet haben:

Ihr ladet die protect.xml in den Cryis Hauptordner von Crysis und die .pak Datei in den /Game Ordner

Für die, die den Server selber betreiben kann ich das noch net sagen, da ich es noch net weis wo genau man die einfügen muss.

Damit das noch einfach wird, hab ich schonmal für die, die das noch net ganz gerafft haben einen Ordner gemacht, wo das schon alles vorhanden ist.

ACHTUNG!!! Es sind keinerlei Daten bei dem Ordner verändert worden.

Hier ist der Downloadlink:

http://rapidshare.de/files/39280751/ServerMod_by_Crysis2142.rar.html

Viel Spaß damit

MfG
Crysis2142