示例#1
0
        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>());
        }
示例#2
0
        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>());
        }
示例#5
0
        protected override void PrepareZone(ZoneScripts scripts)
        {
            // minerals
            scripts
            .Add(GetScript <SpawnResourceClay>());

            // mobs
            scripts
            .Add(GetScript <SpawnMobsCloakedLizard>())
            .Add(GetScript <SpawnMobsCrawler>());
        }
示例#6
0
        protected override void PrepareZone(ZoneScripts scripts)
        {
            // minerals
            // none

            // loot
            scripts
            .Add(GetScript <SpawnLootStone>());

            // mobs
            // none
        }
示例#7
0
        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>());
        }
示例#9
0
        protected override void PrepareZone(ZoneScripts scripts)
        {
            // minerals
            scripts
            .Add(GetScript <SpawnResourceSand>());

            // loot
            scripts
            .Add(GetScript <SpawnLootStone>());

            // mobs
            scripts
            .Add(GetScript <SpawnMobsCrab>());
        }
示例#10
0
        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>());
        }
示例#12
0
        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>());
        }
示例#13
0
        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>());
        }
示例#14
0
        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);
            }
        }
示例#15
0
        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>());
        }
示例#16
0
        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>());
        }
示例#17
0
        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>());
        }
示例#18
0
 protected override void PrepareZone(ZoneScripts scripts)
 {
     scripts
     .Add(GetScript <SpawnMobsRuinsNormal>());
 }
示例#19
0
 protected override void PrepareZone(ZoneScripts scripts)
 {
     scripts
     .Add(GetScript <SpawnMobsSpitter>());
 }
示例#20
0
 protected override void PrepareZone(ZoneScripts scripts)
 {
     // minerals and mobs
     scripts
     .Add(GetScript <SpawnPragmiumWasteland>());
 }
示例#21
0
 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;
 }
示例#22
0
 protected override void PrepareZone(ZoneScripts scripts)
 {
 }
 protected override void PrepareZone(ZoneScripts scripts)
 {
     // Special zone - no logic here
 }
示例#24
0
 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.
 }
示例#27
0
 protected override void PrepareZone(ZoneScripts scripts)
 {
     // loot
     scripts
     .Add(GetScript <SpawnLootRuinsMilitary>());
 }
示例#28
0
 protected abstract void PrepareZone(ZoneScripts scripts);
示例#29
0
 protected override void PrepareZone(ZoneScripts scripts)
 {
     // loot
     scripts
     .Add(GetScript <SpawnLootRuinsIndustrial>());
 }
示例#30
0
 protected override void PrepareZone(ZoneScripts scripts)
 {
     scripts
     .Add(GetScript <SpawnMobsPsiGrove>());
 }