protected override void PrepareZone(ZoneScripts scripts) { if (!PveSystem.ServerIsPvE) { // spawn resource deposits on PvP servers scripts .Add(GetScript <SpawnDepositOilSeep>()); } // plants scripts .Add(GetScript <SpawnTreesBarren>()) .Add(GetScript <SpawnBushesBarren>()) .Add(GetScript <SpawnShrubs>()); // minerals scripts .Add(GetScript <SpawnResourcePragmium>()) .Add(GetScript <SpawnResourceCopper>().Configure(densityMultiplier: 0.10)) .Add(GetScript <SpawnResourceIron>().Configure(densityMultiplier: 0.10)) .Add(GetScript <SpawnResourceStone>().Configure(densityMultiplier: 0.10)) .Add(GetScript <SpawnResourceSaltpeter>().Configure(densityMultiplier: 0.10)) .Add(GetScript <SpawnResourceSulfur>().Configure(densityMultiplier: 0.10)); // mobs scripts .Add(GetScript <SpawnMobsCloakedLizard>().Configure(densityMultiplier: 0.5)) .Add(GetScript <SpawnMobsHoneyBadger>()) .Add(GetScript <SpawnMobsPangolin>()) .Add(GetScript <SpawnMobsSnakeBrown>()) .Add(GetScript <SpawnMobsHyena>()) .Add(GetScript <SpawnMobsThumper>()) // mutants .Add(GetScript <SpawnMobsMutantHyena>()); }
protected override void PrepareZone(ZoneScripts scripts) { // minerals scripts .Add(GetScript <SpawnResourcesGeneric>().Configure(densityMultiplier: 0.30)) .Add(GetScript <SpawnResourceStone>().Configure(densityMultiplier: 0.20)); // other vegetation scripts .Add(GetScript <SpawnBushesForestTropical>().Configure(densityMultiplier: 0.5)) .Add(GetScript <SpawnMushroomsTemperate>().Configure(densityMultiplier: 0.25)) .Add(GetScript <SpawnResourceHerbs>().Configure(densityMultiplier: 0.25)); // trees scripts .Add(GetScript <SpawnTreesTropical>()); // loot scripts .Add(GetScript <SpawnLootGeneric>()); // loot (stone, grass, twigs) // mobs scripts // passive .Add(GetScript <SpawnMobsChicken>()) .Add(GetScript <SpawnMobsPangolin>()) // aggressive .Add(GetScript <SpawnMobsTropicalBoar>().Configure(densityMultiplier: 0.8)) .Add(GetScript <SpawnMobsSnakeGreen>().Configure(densityMultiplier: 0.5)); }
protected override void PrepareZone(ZoneScripts scripts) { // deposits scripts .Add(GetScript <SpawnDepositGeothermalSpring>().Configure(densityMultiplier: 0.5)); // minerals scripts .Add(GetScript <SpawnResourcesGeneric>().Configure(densityMultiplier: 0.35)) .Add(GetScript <SpawnResourceStone>().Configure(densityMultiplier: 0.1)); // trees scripts .Add(GetScript <SpawnTreesBoreal>()) // tree stumps, fallen trees, basically decorations that behave like trees in terms of chopping wood .Add(GetScript <SpawnStumpsTemperate>().Configure(densityMultiplier: 0.75)); // other vegetation scripts .Add(GetScript <SpawnBushesForestBoreal>().Configure(densityMultiplier: 0.5)) .Add(GetScript <SpawnMushroomsBoreal>().Configure(densityMultiplier: 0.30)) .Add(GetScript <SpawnResourceHerbs>().Configure(densityMultiplier: 0.30)); // loot scripts .Add(GetScript <SpawnLootGeneric>()); // loot (stone, grass, twigs) // mobs scripts // aggressive .Add(GetScript <SpawnMobsWolf>()) .Add(GetScript <SpawnMobsWildBoar>()) .Add(GetScript <SpawnMobsSnakeBlue>()) .Add(GetScript <SpawnMobsBear>()); }
protected override void PrepareZone(ZoneScripts scripts) { // deposits scripts .Add(GetScript <SpawnDepositOilSeep>()); // plants scripts .Add(GetScript <SpawnTreesBarren>()) .Add(GetScript <SpawnBushesBarren>()) .Add(GetScript <SpawnShrubs>()); // minerals scripts .Add(GetScript <SpawnResourcePragmium>()) .Add(GetScript <SpawnResourceCopper>().Configure(densityMultiplier: 0.10)) .Add(GetScript <SpawnResourceIron>().Configure(densityMultiplier: 0.10)) .Add(GetScript <SpawnResourceStone>().Configure(densityMultiplier: 0.10)) .Add(GetScript <SpawnResourceSaltpeter>().Configure(densityMultiplier: 0.10)) .Add(GetScript <SpawnResourceSulfur>().Configure(densityMultiplier: 0.10)); // mobs scripts .Add(GetScript <SpawnMobsLizard>().Configure(densityMultiplier: 0.5)) .Add(GetScript <SpawnMobsHoneyBadger>()) .Add(GetScript <SpawnMobsPangolin>()) .Add(GetScript <SpawnMobsSnakeBrown>()) .Add(GetScript <SpawnMobsHyena>()); }
protected override void PrepareZone(ZoneScripts scripts) { // minerals scripts .Add(GetScript <SpawnResourceClay>()); // mobs scripts .Add(GetScript <SpawnMobsCloakedLizard>()) .Add(GetScript <SpawnMobsCrawler>()); }
protected override void PrepareZone(ZoneScripts scripts) { // minerals // none // loot scripts .Add(GetScript <SpawnLootStone>()); // mobs // none }
protected override void PrepareZone(ZoneScripts scripts) { // minerals scripts .Add(GetScript <SpawnResourceCopper>().Configure(densityMultiplier: 0.25)) .Add(GetScript <SpawnResourceIron>().Configure(densityMultiplier: 0.25)) .Add(GetScript <SpawnResourceStone>().Configure(densityMultiplier: 0.25)) .Add(GetScript <SpawnResourceSaltpeter>().Configure(densityMultiplier: 0.25)) .Add(GetScript <SpawnResourceSulfur>().Configure(densityMultiplier: 0.25)); // mobs scripts .Add(GetScript <SpawnMobsVolcanic>()); }
protected override void PrepareZone(ZoneScripts scripts) { // minerals scripts .Add(GetScript <SpawnResourceSand>().Configure(densityMultiplier: 0.75)); //slightly less sand for lakes // loot scripts .Add(GetScript <SpawnLootStone>()); // mobs scripts .Add(GetScript <SpawnMobsCrab>()); }
protected override void PrepareZone(ZoneScripts scripts) { // minerals scripts .Add(GetScript <SpawnResourceSand>()); // loot scripts .Add(GetScript <SpawnLootStone>()); // mobs scripts .Add(GetScript <SpawnMobsCrab>()); }
protected override void PrepareZone(ZoneScripts scripts) { // minerals scripts .Add(GetScript <SpawnResourceCopper>()) .Add(GetScript <SpawnResourceIron>()) .Add(GetScript <SpawnResourceStone>().Configure(densityMultiplier: 0.5)) .Add(GetScript <SpawnResourceCoal>()) .Add(GetScript <SpawnResourceSaltpeter>()) .Add(GetScript <SpawnResourceSulfur>()); // mobs scripts .Add(GetScript <SpawnMobsCloackedLizard>()) .Add(GetScript <SpawnMobsCrawler>()); }
protected override void PrepareZone(ZoneScripts scripts) { // minerals scripts .Add(GetScript <SpawnResourceSand>()); // loot scripts .Add(GetScript <SpawnLootStone>()); // mobs scripts .Add(GetScript <SpawnMobsCrab>().Configure(densityMultiplier: 0.8)) .Add(GetScript <SpawnMobsStarfish>()) .Add(GetScript <SpawnMobsTurtle>()); }
protected override void PrepareZone(ZoneScripts scripts) { if (!PveSystem.ServerIsPvE) { // spawn resource deposits on PvP servers scripts .Add(GetScript <SpawnDepositGeothermalSpring>().Configure(densityMultiplier: 0.3)); } // minerals scripts .Add(GetScript <SpawnResourcesGeneric>().Configure(densityMultiplier: 0.30)) .Add(GetScript <SpawnResourceStone>().Configure(densityMultiplier: 0.1)); // trees scripts // trees (in the end, because they're very dense and will interfere with spawn of other stuff) .Add(GetScript <SpawnTreesTemperate>()) // tree stumps, fallen trees, basically decorations that behave like trees in terms of chopping wood .Add(GetScript <SpawnStumpsTemperate>()); // other vegetation scripts .Add(GetScript <SpawnBushesForestTemperate>().Configure(densityMultiplier: 0.5)) .Add(GetScript <SpawnMushroomsTemperate>().Configure(densityMultiplier: 0.25)) .Add(GetScript <SpawnResourceHerbs>().Configure(densityMultiplier: 0.25)) .Add(GetScript <SpawnBushJelly>().Configure(densityMultiplier: 0.15)); // loot scripts .Add(GetScript <SpawnLootGeneric>()) // loot (stone, grass, twigs) .Add(GetScript <SpawnLootPileWood>()) .Add(GetScript <SpawnLootPileStone>().Configure(densityMultiplier: 0.2)); // mobs scripts // passive .Add(GetScript <SpawnMobsChicken>()) // aggressive .Add(GetScript <SpawnMobsWolf>().Configure(densityMultiplier: 0.8)) .Add(GetScript <SpawnMobsWildBoar>().Configure(densityMultiplier: 0.8)) .Add(GetScript <SpawnMobsSnakeGreen>().Configure(densityMultiplier: 0.8)) // mutants .Add(GetScript <SpawnMobsMutantWolf>()) .Add(GetScript <SpawnMobsMutantBoar>()); }
protected override void PrepareZone(ZoneScripts scripts) { if (!PveSystem.ServerIsPvE) { // spawn resource deposits on PvP servers scripts .Add(GetScript <SpawnDepositOilSeep>().Configure(densityMultiplier: 0.7)); } // minerals scripts .Add(GetScript <SpawnResourcesGeneric>().Configure(densityMultiplier: 0.30)) .Add(GetScript <SpawnResourceStone>().Configure(densityMultiplier: 0.1)) .Add(GetScript <SpawnResourceCoal>().Configure(densityMultiplier: 0.1)); // trees scripts .Add(GetScript <SpawnTreesSwamp>()); // other vegetation scripts .Add(GetScript <SpawnBushesForestTemperate>().Configure(densityMultiplier: 0.25)) .Add(GetScript <SpawnMushroomsTemperate>().Configure(densityMultiplier: 0.25)) .Add(GetScript <SpawnResourceHerbs>().Configure(densityMultiplier: 0.25)) .Add(GetScript <SpawnSugarcane>().Configure(densityMultiplier: 0.20)) .Add(GetScript <SpawnBushJelly>().Configure(densityMultiplier: 0.5)); // swamp exclusive blue herb scripts .Add(GetScript <SpawnResourceHerbBlue>()); // loot scripts .Add(GetScript <SpawnLootGeneric>().Configure(densityMultiplier: 0.5)); // loot (stone, grass, twigs) // mobs scripts // passive .Add(GetScript <SpawnMobsRiverSnail>()) // aggressive .Add(GetScript <SpawnMobsBlackBeetle>()) .Add(GetScript <SpawnMobsBurrower>()) .Add(GetScript <SpawnMobsSnakeGreen>()) .Add(GetScript <SpawnMobsWildBoar>()); }
protected sealed override void PrepareProto() { if (IsClient) { return; } var scripts = new ZoneScripts(); this.PrepareZone(scripts); this.AttachedScripts = scripts.ToReadOnly(); // register zone scripts foreach (var zoneScript in this.AttachedScripts) { zoneScript.ServerRegisterZone(this); } }
protected override void PrepareZone(ZoneScripts scripts) { // minerals scripts .Add(GetScript <SpawnResourceCopper>()) .Add(GetScript <SpawnResourceIron>()) .Add(GetScript <SpawnResourceStone>()) .Add(GetScript <SpawnResourceCoal>().Configure(densityMultiplier: 0.7)) // less coal than boreal, but still still available .Add(GetScript <SpawnResourceSaltpeter>()) .Add(GetScript <SpawnResourceSulfur>()); // loot scripts .Add(GetScript <SpawnLootPileMinerals>()); // mobs scripts .Add(GetScript <SpawnMobsCrawler>()); }
protected override void PrepareZone(ZoneScripts scripts) { // different vegetation scripts .Add(GetScript <SpawnBushesForestTemperate>()) .Add(GetScript <SpawnMushroomsTemperate>()) // default density for herbs compared to forest, we want them to spawn here a lot .Add(GetScript <SpawnResourceHerbs>()); // loot scripts .Add(GetScript <SpawnLootGeneric>().Configure(densityMultiplier: 1.35)); // loot (stone, grass, twigs) // mobs scripts .Add(GetScript <SpawnMobsWolf>()) .Add(GetScript <SpawnMobsChicken>()) .Add(GetScript <SpawnMobsWildBoar>()) .Add(GetScript <SpawnMobsSnakeGreen>()); }
protected override void PrepareZone(ZoneScripts scripts) { // no pvp resources spawn, this area is a quiet "haven" // minerals scripts .Add(GetScript <SpawnResourceStone>().Configure(densityMultiplier: 0.15)); // trees scripts .Add(GetScript <SpawnTreesArctic>()); // loot scripts .Add(GetScript <SpawnLootPileWood>()) .Add(GetScript <SpawnLootPileStone>().Configure(densityMultiplier: 0.2)); // mobs scripts .Add(GetScript <SpawnMobsWolfPolar>()) .Add(GetScript <SpawnMobsBearPolar>()) .Add(GetScript <SpawnMobsBroodNest>()); }
protected override void PrepareZone(ZoneScripts scripts) { scripts .Add(GetScript <SpawnMobsRuinsNormal>()); }
protected override void PrepareZone(ZoneScripts scripts) { scripts .Add(GetScript <SpawnMobsSpitter>()); }
protected override void PrepareZone(ZoneScripts scripts) { // minerals and mobs scripts .Add(GetScript <SpawnPragmiumWasteland>()); }
protected override void PrepareZone(ZoneScripts scripts) { // Special zone - no logic here, it is handled by external implementation // Used to restrict building in certain map areas. Instance = this; }
protected override void PrepareZone(ZoneScripts scripts) { }
protected override void PrepareZone(ZoneScripts scripts) { // Special zone - no logic here }
protected override void PrepareZone(ZoneScripts scripts) { scripts // when it's used separately by iself and not in ruins zone - we don't need such a high density, so set it lower .Add(GetScript <SpawnMobsScorpion>().Configure(densityMultiplier: 0.5)); }
protected override void PrepareZone(ZoneScripts scripts) { // Special zone - no logic here // See StatusEffectRadiation which uses this zone to determine what characters are affected by radiation }
protected override void PrepareZone(ZoneScripts scripts) { // Special zone - no logic here // See ServerPlayerSpawnManager which uses this zone as the players spawn positions provider. }
protected override void PrepareZone(ZoneScripts scripts) { // loot scripts .Add(GetScript <SpawnLootRuinsMilitary>()); }
protected abstract void PrepareZone(ZoneScripts scripts);
protected override void PrepareZone(ZoneScripts scripts) { // loot scripts .Add(GetScript <SpawnLootRuinsIndustrial>()); }
protected override void PrepareZone(ZoneScripts scripts) { scripts .Add(GetScript <SpawnMobsPsiGrove>()); }