Server AI Behaving Randomly

    Joined
    May 17, 2014
    Messages
    56
    Reaction score
    66
    • Legacy Citizen 2
    • Community Content - Bronze 1
    • Purchased!
    Hey folks,

    I've had a lengthy google-fu session and dug around on the forums but I can't seem to find any mention of the problem I'm encountering on my private server right now. I built a turret following a youtube tutorial and noticed that the AI wasn't doing anything it should have been. AI is enabled on the server and the gun's AI module was set to turret and tested with various targeting options, it didn't respond to anything at all. It has power and can move, but simply doesn't.

    I then tried spawning a group of pirates to see if it would attack them. Alas, nothing, but stranger was that the pirates did nothing either. They're just hovering there menacing and red by the shop, not even moving. Going to a nearby base, the turrets there do attack and one AI ship (a neutral) that was spawned randomly came to life and flew off somewhere at no apparent provocation.

    In short, I don't know what I'm doing wrong but my AI in both turrets and in ships seems to be behaving in a way I can't seem to predict or control.

    My server.cfg is here:
    WORLD = Dandalore's Exploration //set world to use (set 'old' for using the old world). if no world exists a new one will be set automatically
    PROTECT_STARTING_SECTOR = true //Protects the starting sector
    ENABLE_SIMULATION = true //Universe AI simulation
    CONCURRENT_SIMULATION = 256 //How many simulation groups may be in the universe simultaniously (performance)
    ENEMY_SPAWNING = true //Enables enemy spawing
    SECTOR_SIZE = 10000 //Sets the size of sectors in the universe **WARNING** scaling the size of an existing universe down may cause issues
    BLUEPRINT_DEFAULT_PRIVATE = true //If true, set blueprints private as default (else they are public)
    FLOATING_ITEM_LIFETIME_SECS = 600 //How much seconds items floating in space should be alive
    SIMULATION_SPAWN_DELAY = 420 //How much seconds between simulation spawn ticks
    SIMULATION_TRADING_FILLS_SHOPS = true //Trading guild will deliver stock to shops
    SECTOR_INACTIVE_TIMEOUT = 20 //Time in secs after which sectors go inactive (-1 = off)
    SECTOR_INACTIVE_CLEANUP_TIMEOUT = 10 //Time in secs after which inactive sectors are completely removed from memory (-1 = off)
    USE_STARMADE_AUTHENTICATION = true //allow star-made.org authentication
    REQUIRE_STARMADE_AUTHENTICATION = false //require star-made.org authentication (USE_STARMADE_AUTHENTICATION must be true)
    PROTECTED_NAMES_BY_ACCOUNT = 10 //How many player names a player may protect with his account (if exceeded, the player name, that was logged in the longest time ago gets unprotected)
    DEFAULT_BLUEPRINT_ENEMY_USE = false //Default option for blueprints not in catalog yet
    DEFAULT_BLUEPRINT_FACTION_BUY = true //Default option for blueprints not in catalog yet
    DEFAULT_BLUEPRINT_OTHERS_BUY = true //Default option for blueprints not in catalog yet
    DEFAULT_BLUEPRINT_HOME_BASE_BUY = true //Default option for blueprints not in catalog yet
    LOCK_FACTION_SHIPS = true //If true, ships of other factions cant be edited, activated, or entered
    DEBUG_FSM_STATE = false //transfer debug FSM state. Turning this on may slow down network
    PHYSICS_SHAPE_CASTING_TUNNELING_PREVENTION = false //Makes a convex cast for hight speed object to prevent clipping. High Cost. (Bugged right now, so dont turn it on)
    CATALOG_SLOTS_PER_PLAYER = -1 //How many slots per player for saved ships (-1 for unlimited)
    UNIVERSE_DAY_IN_MS = -1 //how long is a 'day' (stellar system rotation) in milliseconds (-1 to switch off system rotation)
    FORCE_DISK_WRITE_COMPLETION = false //forces writing operations of raw data to disk directly after operation. For some OS this prevents raw data corruption
    ASTEROIDS_ENABLE_DYNAMIC_PHYSICS = true //enables asteroids to be able to move in space
    ENABLE_BREAK_OFF = false //debug (don't activate unless you know what you're doing)
    COLLISION_DAMAGE = false //colliding into another object does damage
    COLLISION_DAMAGE_THRESHOLD = 2.0 //Threshold of Impulse that does damage (the lower, the less force is needed for damage)
    SKIN_ALLOW_UPLOAD = true //if off, skin uploading to server is deactivated
    CATALOG_NAME_COLLISION_HANDLING = false //if off, saving with an existing entry is denied, if on the name is automatically changed by adding numbers on the end
    SECTOR_AUTOSAVE_SEC = 300 //Time interval in secs the server will autosave (-1 for never)
    PHYSICS_SLOWDOWN_THRESHOLD = 40 //Milliseconds a collision test may take before anti-slowdown mode is activated
    THRUST_SPEED_LIMIT = 300 //How fast ships, etc. may go in m/s . Too high values may induce physics tunneling effects
    MAX_CLIENTS = 32 //Max number of clients allowed on this server
    SUPER_ADMIN_PASSWORD_USE = false //Enable super admin for this server
    SUPER_ADMIN_PASSWORD = mypassword //Super admin password for this server
    SERVER_LISTEN_IP = all //Enter specific ip for the server to listen to. use "all" to listen on every ip
    SOCKET_BUFFER_SIZE = 65536 //buffer size of incoming and outgoing data per socket
    PHYSICS_LINEAR_DAMPING = 0.05 //how much object slow down naturally (must be between 0 and 1): 0 is no slowdown
    PHYSICS_ROTATIONAL_DAMPING = 0.05 //how much object slow down naturally (must be between 0 and 1): 0 is no slowdown
    AI_DESTRUCTION_LOOT_COUNT_MULTIPLIER = 0.9 //multiply amount of items in a loot stack. use values smaller 1 for less and 0 for none
    AI_DESTRUCTION_LOOT_STACK_MULTIPLIER = 0.9 //multiply amount of items spawned after AI destruction. use values smaller 1 for less and 0 for none
    CHEST_LOOT_COUNT_MULTIPLIER = 0.9 //multiply amount of items in a loot stack. use values smaller 1 for less and 0 for none
    CHEST_LOOT_STACK_MULTIPLIER = 0.9 //multiply amount of items spawned in chests of generated chests. use values smaller 1 for less and 0 for none
    USE_WHITELIST = false //only names/ips from whitelist.txt are allowed
    FILTER_CONNECTION_MESSAGES = false //don't display join/disconnect messages
    USE_UDP = false //Use 'User Datagram Protocol' (UDP) instead of 'Transmission Control Protocol' (TCP) for connections
    AUTO_KICK_MODIFIED_BLUEPRINT_USE = false //Kick players that spawn modified blueprints
    AUTO_BAN_ID_MODIFIED_BLUEPRINT_USE = false //Ban player by name that spawn modified blueprints
    AUTO_BAN_IP_MODIFIED_BLUEPRINT_USE = false //Ban player by IP that spawn modified blueprints
    AUTO_BAN_TIME_IN_MINUTES = 60 //Time to ban in minutes (-1 for permanently)
    REMOVE_MODIFIED_BLUEPRINTS = false //Auto-removes a modified blueprint
    DEBUG_SEGMENT_WRITING = false //Debugs correctness of writing of segments (costs server performance)
    TCP_NODELAY = true //Naggles algorithm (WARNING: only change when you know what you're doing)
    PING_FLUSH = false //flushes ping/pong immediately (WARNING: only change when you know what you're doing)
    RECIPE_BLOCK_COST = 5000 //How much blocks have to be invested to create a recipe (min 0)
    SHOP_SPAWNING_PROBABILITY = 0.1 //(must be between 0 and 1): 0 is no shops spawned in asteroid sectors, 1 is shop spawned in everyone (default: 8% -> 0.08)
    RECIPE_REFUND_MULT = 0.5 //how much blocks are refunded from selling a recipe (must be between 0 and 1): 0 no refund, 1 full refund
    RECIPE_LEVEL_AMOUNT = 4000 //On how much created blocks will a recipe level up (base value) (min 0)
    DEFAULT_SPAWN_SECTOR_X = 2 //DEFAULT Spawn Sector X Coordinate
    DEFAULT_SPAWN_SECTOR_Y = 2 //DEFAULT Spawn Sector Y Coordinate
    DEFAULT_SPAWN_SECTOR_Z = 2 //DEFAULT Spawn Sector Z Coordinate
    MODIFIED_BLUEPRINT_TOLERANCE = 0.1 //Tolerance of modified blueprint trigger (default = 10%)
    TURNING_DIMENSION_SCALE = 1.1 //Scaling of tuning speed VS ship dimension (default = 1.1)
    DEFAULT_SPAWN_POINT_X_1 = 8.0 //First Rotating Spawn: Local Pos X Coordinate
    DEFAULT_SPAWN_POINT_Y_1 = -6.5 //First Rotating Spawn: Local Pos Y Coordinate
    DEFAULT_SPAWN_POINT_Z_1 = 0.0 //First Rotating Spawn: Local Pos Z Coordinate
    DEFAULT_SPAWN_POINT_X_2 = 15.0 //Second Rotating Spawn: Local Pos X Coordinate
    DEFAULT_SPAWN_POINT_Y_2 = -6.5 //Second Rotating Spawn: Local Pos Y Coordinate
    DEFAULT_SPAWN_POINT_Z_2 = 8.0 //Second Rotating Spawn: Local Pos Z Coordinate
    DEFAULT_SPAWN_POINT_X_3 = 8.0 //Third Rotating Spawn: Local Pos X Coordinate
    DEFAULT_SPAWN_POINT_Y_3 = -6.5 //Third Rotating Spawn: Local Pos Y Coordinate
    DEFAULT_SPAWN_POINT_Z_3 = 15.0 //Third Rotating Spawn: Local Pos Z Coordinate
    DEFAULT_SPAWN_POINT_X_4 = 0.0 //Forth Rotating Spawn: Local Pos X Coordinate
    DEFAULT_SPAWN_POINT_Y_4 = -6.5 //Forth Rotating Spawn: Local Pos Y Coordinate
    DEFAULT_SPAWN_POINT_Z_4 = 8.0 //Forth Rotating Spawn: Local Pos Z Coordinate
    PLAYER_DEATH_CREDIT_PUNISHMENT = 0.1 //players credits lost of total on death (must be between 0 and 1): 1 = lose all, 0 = keep all
    PLAYER_DEATH_CREDIT_DROP = false //drop credits lost on death into space instead
    PLAYER_DEATH_BLOCK_PUNISHMENT = false //player will drop all his blocks into space on death
    PLAYER_DEATH_PUNISHMENT_TIME = 300 //Time interval in seconds after death of a player in which the player is not punished
    PLAYER_DEATH_INVULNERABILITY_TIME = 5 //Time the player is invulnerable after death in sec
    PLAYER_HISTORY_BACKLOG = 30 //How many login history objects (with name, IP, account-name, and time) should be saved by player state
    PROJECTILES_ADDITIVE_VELOCITY = false //initial projectile speed depend on relative linear velocity of object fired from
    PROJECTILES_VELOCITY_MULTIPLIER = 1.0 //multiplicator for projectile velocity
    IGNORE_DOCKING_AREA = true //ignores docking area size
    ALLOW_UPLOAD_FROM_LOCAL_BLUEPRINTS = true //enables clients being able to upload their pre-build-blueprints to the server
    SHOP_NPC_STARTING_CREDITS = 1000000000 //how much credits do shops start with
    SHOP_NPC_RECHARGE_CREDITS = 10000000 //how much credits do shops gain about every 10 min
    AI_WEAPON_AIMING_ACCURACY = 200 //how accurate the AI aims (the higher the value the more accurate vs distance. 10 = about 99% accuracy at 10m)
    BROADCAST_SHIELD_PERCENTAGE = 5 //percent of shields changed for the server to broadcast a shield synch
    BROADCAST_POWER_PERCENTAGE = 50 //percent of power changed for the server to broadcast a power synch (not that critical)
    ADMINS_CIRCUMVENT_STRUCTURE_CONTROL = true //admins can enter ships of any faction
    STAR_DAMAGE = true //suns dealing damage to entities
    SQL_NIO_FILE_SIZE = 256 //megabyte limit of .data file when to use NIO (faster) (must be power of 2)
    PLANET_SIZE_MEAN = 250.0 //Planet size mean (normal gaussian distribution) (min 50)
    PLANET_SIZE_DEVIATION = 100.0 //Planet size standard deviation. Note: normal gaussian distribution graph scaled horizontally by 1/3 (min 0)
    ASTEROID_RADIUS_MAX = 64 //Asteroid max radius in blocks (from -x to +x)
    PLAYER_MAX_BUILD_AREA = 100 //max area a player may add/remove in adv. build mode
    NT_SPAM_PROTECT_TIME_MS = 30000 //period of spam protection
    ASTEROID_SECTOR_REPLENISH_TIME_SEC = -1 //seconds until a sector that is mined down to 0 asteroids is replenished (-1 = never)
    NT_SPAM_PROTECT_MAX_ATTEMPTS = 30 //max attempts before refusing connections in spam protect period (default is 1/sec for 30 sec)
    NT_SPAM_PROTECT_EXCEPTIONS = 127.0.0.1 //ips excepted from spam control (separate multiple with comma) (default is localhost)
    NT_SPAM_PROTECT_ACTIVE = true //enables connection spawn protection (flooding servers with login attempts)
    USE_PERSONAL_SECTORS = false //will spawn a player in a locked sector sandbox (warning, don't use unless you know what you do)
    BATTLE_MODE = false //turn on battlemode (warning, don't use unless you know what you're doing)
    BATTLE_MODE_CONFIG = battleSector=0,0,0,Physics.smsec;battleSector=15,15,15,Physics.smsec;countdownRound=300;countdownStart=30;maxMass=-1;maxDim=300;maxMassPerFaction=-1; //General config for battlemode
    BATTLE_MODE_FACTIONS = [TeamA, fighters, 500,500,500, 0.5,0.1,0.9];[TeamB, fighters, -500,-500,-500, 0.5,0.9,0.2];[TeamFFA,ffa, 0,0,-500, 0.2,0.9,0.9];[Spectators,spectators, 0,500,0,0.8,0.4,0.8] //Faction config for battlemode
    LEADERBOARD_BACKLOG = 24 //time in hours to keep leaderboard backlog (the more time, the more data has to be sent to client)
    ANNOUNCE_SERVER_TO_SERVERLIST = false //announces the server to the starmade server list so clients can find it. Hostname must be provided for HOST_NAME_TO_ANNOUNCE_TO_SERVER_LIST!
    HOST_NAME_TO_ANNOUNCE_TO_SERVER_LIST = //this must be a valid hostname (either ip or host, e.g. play.star-made.org)
    SERVER_LIST_NAME = DandyVerse //max length 64 characters
    SERVER_LIST_DESCRIPTION = Dandy's SM Server //max length 128 characters
    MISSILE_DEFENSE_FRIENDLY_FIRE = false //can shoot down own or missiles from own faction
    USE_DYNAMIC_RECIPE_PRICES = true //use recipe based prices (the price is the price of the parts it is made out of in crafting)
    MAKE_HOMBASE_ATTACKABLE_ON_FP_DEFICIT = true //Home bases become attackable if a faction's Faction Points are in the minus and the faction doesn't own any territory
    PLANET_SPECIAL_REGION_PROBABILITY = 240 //one out of thisValue chance of a special region spawning per planet plate (cities, pyramids, etc) (changing this value migth change some plates, but won't change any plates that are already modified by a player)
    NT_BLOCK_QUEUE_SIZE = 1024 //How many blocks are sent per update. Huge placements will shot faster, but it will consume more bandwidth and is subject to spamming players
    CHUNK_REQUEST_THREAD_POOL_SIZE_TOTAL = 25 //Thead pool size for chunk requests (from disk and generated)
    CHUNK_REQUEST_THREAD_POOL_SIZE_CPU = 3 //Available threads of total for CPU generation. WARNING: too high can cause cpu spikes. About the amount of available cores minus one is best
    BUY_BLUEPRINTS_WITH_CREDITS = false //buy blueprints directly with credits
    SHOP_USE_STATIC_SELL_BUY_PRICES = false //shop buy and sell price change depending on stock (shop prices will always stay the same if true)
    SHOP_SELL_BUY_PRICES_UPPER_LIMIT = 1.2 //maximum of base price a shop will want depending on its stock (e.g. max 120 credits if the normal cost is 100)
    SHOP_SELL_BUY_PRICES_LOWER_LIMIT = 0.8 //minimum of base price a shop will want depending on its stock (e.g. max 80 credits if the normal cost is 100)
    MINING_BONUS = 1 //general multiplier on all mining
    MAX_LOGIC_SIGNAL_QUEUE_PER_OBJECT = 250000 //max logic trace queue allowed
    MAX_COORDINATE_BOOKMARKS = 20 //coordinate bookmarks per player allowed
    ALLOWED_STATIONS_PER_SECTOR = 1 //How many stations are allowed per sector
    STATION_CREDIT_COST = 1000000 //how much does a station or station blueprint cost
    SKIN_SERVER_UPLOAD_BLOCK_SIZE = 256 //how fast should skins be transferred from server to clients (too high might cause lag) [default 256 ~ 16kb/s]
    ALLOW_OLD_DOCKING_BEAM = false //enables old docking beam
    WEIGHTED_CENTER_OF_MASS = true //if on, the center of mass for each structured will be calculated based on block mass. On 'false', the center of mass is always the core position
    SECURE_UPLINK_ENABLED = false //dedicated servers can be registered on the StarMade registry
    SECURE_UPLINK_TOKEN = //uplink token, provided when registering a dedicated server
    USE_STRUCTURE_HP = true //ships and other structures use the hitpoint system. if off, a ship will overheat when the core gets taken out (old)
    SHOP_REBOOT_COST_PER_SECOND = 100.0 //Cost to reboot a ship at a shop (per second it would take to reboot in space)
    SHOP_ARMOR_REPAIR_COST_PER_HITPOINT = 1.0 //Cost to repair a ship's armor at a shop
    MAX_SIMULTANEOUS_EXPLOSIONS = 10 //the more the faster explosions at the same time are executed (costs in total about 20MB RAM each and of course CPU because it's all threaded) (10 is default for a medium powered singleplayer)
    REMOVE_ENTITIES_WITH_INCONSISTENT_BLOCKS = false //This will remove ships that have blocks that are normally disallowed (e.g. space station blocks on ships)
    OVERRIDE_INVALID_BLUEPRINT_TYPE = true //If a loaded blueprint is invalid, it's type will be overridden
    FACTION_FOUNDER_KICKABLE_AFTER_DAYS_INACTIVITY = 30 //Days of inactivity after which a founder may kick another founder
    DEBUG_BEAM_POWER_CONSUMPTION = false //server will send notifications on power consumed (not counting power given from supply) on server (costs performance, so only use for debugging)
    DEBUG_BEAM_TICKS_DONE = false //server will send notifications on ticks done on server (costs performance, so only use for debugging)
    DEBUG_BEAM_POWER_PER_TICK = false //server will send notifications on beam power per tick on server (costs performance, so only use for debugging)
    DEBUG_MISSILE_POWER_CONSUMPTION = false //server will send notifications on missiles on server (costs performance, so only use for debugging)
    BLUEPRINT_SPAWNABLE_SHIPS = true //enables or disables blueprint spawning from item
    BLUEPRINT_SPAWNABLE_STATIONS = true //enables or disables blueprint spawning from item
    USE_OLD_GENERATED_PIRATE_STATIONS = false //enables spawning of old style pirate stations
    CARGO_BLEED_AT_OVER_CAPACITY = false //cargo is ejected every minute if storage is at over capacity
    ALLOW_PERSONAL_INVENTORY_OVER_CAPACITY = false //Personal Inventory can go over capacity
    ONLY_ALLOW_FACTION_SHIPS_ADDED_TO_FLEET = false //only allows faction ships to be added to fleet
    MAX_CHAIN_DOCKING = 25 //maximal deepness of docking chains (may cause glitches depending on OS (path and filename length) at high numbers)
    SHOP_RAILS_ON_ADV = true //Advanced shops will have 4 rails dockers that can be used like a neutral homebase (anything docked is safe)
    SHOP_RAILS_ON_NORMAL = false //Normal shops will have 4 rails dockers that can be used like a neutral homebase (anything docked is safe)
    ALLOW_FLEET_FORMATION = true //Allows fleet formation
    BACKUP_WORLD_ON_MIGRATION = true //Back up world when migrating to a new file format
    BACKUP_BLUEPRINTS_ON_MIGRATION = true //Back up blueprints when migrating to a new file format

    Any advice or insight would be appreciated.

    Cheers,

    Dan
     
    Joined
    Jul 17, 2013
    Messages
    1,429
    Reaction score
    205
    • Tester
    PROTECT_STARTING_SECTOR = true //Protects the starting sector

    are you doing that at Spawn ?

    nothing is going to happen there i guess then ^^
     
    Joined
    May 17, 2014
    Messages
    56
    Reaction score
    66
    • Legacy Citizen 2
    • Community Content - Bronze 1
    • Purchased!
    Protected sector disables AI too then? I thought it only prevented weapons from doing any damage.
     
    Joined
    Jul 17, 2013
    Messages
    1,429
    Reaction score
    205
    • Tester
    not sure .. but why would they shoot without being able to damage a thing ?
    just try it a few sectors away again and see if it works there then
     
    Joined
    May 17, 2014
    Messages
    56
    Reaction score
    66
    • Legacy Citizen 2
    • Community Content - Bronze 1
    • Purchased!
    Well. That explained it. I didn't know the AI ignored things in protected zones, I thought the protection only affected weapon damage. Thanks for the help!