Shard 0.4/dev - Page 39

Shard 0.4/dev

Here is where ideas can be collected for the skirmish AI in development

Moderators: hoijui, Moderators

User avatar
AF
AI Developer
Posts: 20687
Joined: 14 Sep 2004, 11:32

Re: Shard 0.4/dev

Post by AF »

I've added a post about creating copies of Shard for testing here http://shard.tomjn.com/2015/12/01/testi ... native-ai/ I also corrected a note about data vs ai folders in the previous forum reply

Also, for gadget support, see here https://github.com/Tarendai/Shard/tree/ ... ai/preload

The preload folder has 2 subfolders, spring_lua and spring_native, both of which implement the critical objects Shard uses. the spring_lua folder is loaded if Shard finds itself running inside a LuaAI, but the implementation is incomplete https://github.com/Tarendai/Shard/tree/ ... spring_lua
User avatar
AF
AI Developer
Posts: 20687
Joined: 14 Sep 2004, 11:32

Re: Shard 0.4/dev

Post by AF »

An idea I had necessitates some refactoring of how commands work. I'm going to keep the existing command API as is, but add a more Spring like Command model as an option, with command Identifiers and parameter lists.

This way I can modify the unit objects to hold an internal queue of commands, allowing me to intercept, filter, add, and queue commands up. I have no timeframe for the moment, but the ZK work going on would benefit greatly from this
User avatar
prandipadaro
Posts: 98
Joined: 19 Oct 2011, 22:38

Re: Shard 0.4/dev

Post by prandipadaro »

I wanted to understand how does shard to choose the correct folder to load modules of a particular game, in other words, how shard distinguishes between modules of balanced annihilation and those of kernel panik.

the intention is to begin adjusting shard for BAR?
User avatar
AF
AI Developer
Posts: 20687
Joined: 14 Sep 2004, 11:32

Re: Shard 0.4/dev

Post by AF »

Currently Shards lua instance is configured to search for files in a subdir first, the name of which is the mods shortgame. This way Shard lua files can be overriden by placing a file in the subfolder.

However, this won't work in the Gadget Lua AI environment, so I'm moving away from it. The subfolders will still work, but instead, the shard_include function will be used to load files. This should provide a lot more control as require can be used to include files normally, and shard_include can be used to allow overrides. shard_include will handle looking inside subfolders, you can see it's implementation here:

https://github.com/Tarendai/Shard/blob/ ... pi.lua#L19
User avatar
prandipadaro
Posts: 98
Joined: 19 Oct 2011, 22:38

Re: Shard 0.4/dev

Post by prandipadaro »

I try to improve the TaskQueueBehaviour:BestFactory() function inside BA configuration.
I'm searching a way to determinate in which mobNetworks area the builder is.
i can explane better with an example:
in the Shard-BAR-Small_Supreme_Battlefield_V2.lua, the maphandler output file of omonim map, they are listed the division of 'mobnetwork in this way:

Code: Select all

ai.mobNetworks = {
  ["sub"] = 2,
  ["veh"] = 4,
  ["shp"] = 2,
  ["bot"] = 3,
  ["hov"] = 1,
  ["amp"] = 1,
}
How you can see there are eg 2 ship networks.
So the question is:
how can I determine which of the two areas? there is an identifier for each area? how can I get it?
User avatar
AF
AI Developer
Posts: 20687
Joined: 14 Sep 2004, 11:32

Re: Shard 0.4/dev

Post by AF »

I'm not sure what you mean, you're using your own terminology but never explaining it, so i'm unsure what you mean by 'networks'. Also keep in mind that the BA specific code is not something I wrote or that I'm intimately familiar with
User avatar
prandipadaro
Posts: 98
Joined: 19 Oct 2011, 22:38

Re: Shard 0.4/dev

Post by prandipadaro »

AF wrote:I'm not sure what you mean, you're using your own terminology but never explaining it, so i'm unsure what you mean by 'networks'. Also keep in mind that the BA specific code is not something I wrote or that I'm intimately familiar with
Sorry AF I did not remember that you have not written the BA configuration & sorry for terminology.

So I'm not sure if the person to whom should I ask is you, or should I talk to those who wrote to the BA configuration.

So can you tell me who wrote the BA configuration? or if there is an official maintainer for it, to ask for explanations?

In any case I would try to explain what I mean by network:

As shown in the example above, for each map Shard creates a file that contains a certain data concerning the morphological configuration of the terrain. Shard divides the territory into areas that may be crossed by different types of units. For example Small_Supreme_Battlefield_V2 has 2 large water areas separated by a strip of land, each of these areas is a mobNetworks (mobility network) that is a space within which a ship can pass through, but not a terrestrial unit can go here.
I need a way to determinate in which of 2 water area, identifield by Shard maphandler, the builder is.
User avatar
AF
AI Developer
Posts: 20687
Joined: 14 Sep 2004, 11:32

Re: Shard 0.4/dev

Post by AF »

It doesn't appear that the code that figures that out tracks where these areas are, it simply counts them. You'd need to modify maphandler to store the location/shape of these areas.

As a side note, that way that methods such as BestFactory are implemented are counter to how that behaviour is intended to work. That behaviour is meant to simply execute tasks. More complex tasks that involve logic are meant to take 1 of 2 forms:

- A task in the queue that's actually a function not a string, that does the logic internally
- A separate behaviour that takes over from the task behaviour when it's deemed that a factory should be built, using whatever logic or system is desired

Re: MapHandler, most of the functions inside that file should be part of the module, rather than local functions in the global namespace. It should also store the mobnetworks in the module, not inserting them into the ai object. That way ai.maphandler.mobNetworks would be better than ai.mobNetworks
User avatar
AF
AI Developer
Posts: 20687
Joined: 14 Sep 2004, 11:32

Re: Shard 0.4/dev

Post by AF »

Ah before I forget, I believe Anarchid wrote most of that code
User avatar
prandipadaro
Posts: 98
Joined: 19 Oct 2011, 22:38

Re: Shard 0.4/dev

Post by prandipadaro »

new engine 101 with BA raises a error

Code: Select all

[ParseCmdLine] command-line args: "/home/pu/.spring/engine/101.0/spring "/home/pu/.springlobby/script.txt""
Using configuration source: "/home/pu/.config/spring/springsettings.cfg"
============== <User Config> ==============
3DTrees = 0
AdvUnitShading = 0
BumpWaterReflection = 0
BumpWaterRefraction = 0
BumpWaterShoreWaves = 0
BumpWaterTexSizeReflection = 0
BumpWaterUseDepthTexture = 0
CamMode = 5
Fullscreen = 0
GrassDetail = 0
GroundDecals = 0
GroundDetail = 40
HardwareCursor = 1
InputTextGeo = 0.26 0.73 0.02 0.028
LastSelectedMap = Comet Catcher Redux
LastSelectedMod = Balanced Annihilation Reloaded $VERSION
LastSelectedScript = Player vs. AI: Shard dev
MaxNanoParticles = 100
MaxParticles = 100
ReflectiveWater = 0
ShadowMapSize = 1024
Shadows = 0
ShowClock = 0
ShowPlayerInfo = 0
SmoothLines = 0
SmoothPoints = 0
TreeRadius = 600
UnitIconDist = 100
UnitLodDist = 100
VSync = -1
snd_volmaster = 52
snd_volmusic = 60
============== </User Config> ==============
Available log sections: SkyBox, UnitScript, Font, LuaSocket, Net, KeyBindings, CSMFGroundTextures, CregSerializer, RoamMeshDrawer, GameServer, BumpWater, DynWater, OBJParser, ArchiveScanner, ModelRenderContainer, CrashHandler, FarTextureHandler, Shader, Model, Path, Texture, GroundMoveType, Piece, AutohostInterface, Sound, VFS, DecalsDrawerGL4
Enabled log sections: Sound(Notice)
Enable or disable log sections using the LogSections configuration key
  or the SPRING_LOG_SECTIONS environment variable (both comma separated).
  Use "none" to disable the default log sections.
LogOutput initialized.
Spring 101.0
Build Environment: boost-105600, GNU libstdc++ version 20150623
Compiler Version:  gcc-4.8.5
Operating System:  Linux 4.2.0-27-generic #32-Ubuntu SMP Fri Jan 22 04:49:08 UTC 2016 x86_64
Word Size:         64-bit (native mode)
         CPU Clock: std::chrono::high_resolution_clock
Physical CPU Cores: 4
 Logical CPU Cores: 8
[CMyMath::Init] CPU SSE mask: 127, flags:
	SSE 1.0:  1,  SSE 2.0:  1
	SSE 3.0:  1, SSSE 3.0:  1
	SSE 4.1:  1,  SSE 4.2:  1
	SSE 4.0A: 0,  SSE 5.0A: 0
	using streflop SSE FP-math mode, CPU supports SSE instructions
Supported Video modes on Display 1 x:0 y:0 1920x1080:
	320x240, 400x300, 512x384, 680x384, 576x432, 720x450, 640x480, 640x512, 800x512, 700x525, 840x525, 960x540, 800x600, 960x600, 896x672, 928x696, 960x720, 1024x768, 1360x768, 1152x864, 1440x900, 1280x960, 1280x1024, 1600x1024, 1400x1050, 1680x1050, 1920x1080
SDL version:  linked 2.0.2; compiled 2.0.1
GL version:   4.5.0 NVIDIA 352.63
GL vendor:    NVIDIA Corporation
GL renderer:  GeForce GTX 970M/PCIe/SSE2
GLSL version: 4.50 NVIDIA
GLEW version: 1.9.0
Video RAM:    total 6144MB, available 5756MB
SwapInterval: 1
FBO::maxSamples: 32
GL info:
	haveARB: 1, haveGLSL: 1, ATI hacks: 0
	FBO support: 1, NPOT-texture support: 1, 24bit Z-buffer support: 1
	maximum texture size: 16384, compress MIP-map textures: 0
	maximum SmoothPointSize: 190, maximum vec4 varying/attributes: 31/16
	maximum drawbuffers: 8, maximum recommended indices/vertices: 1048576/1048576
	number of UniformBufferBindings: 84 (64kB)
VSync disabled
[InitOpenGL] video mode set to 1920x1080:24bit @60Hz (windowed)
[WatchDogInstall] Installed (HangTimeout: 10sec)
[WatchDog] registering controls for thread [main]
[ThreadPool::SetThreadCount][1] #wanted=4 #current=1 #max=4
[ThreadPool::SetThreadCount][2] #threads=3
Using read-write data directory: /home/pu/.config/spring/
Using read-only data directory: /home/pu/.spring/
Using read-only data directory: /home/pu/.spring/engine/101.0/
Scanning: /home/pu/.spring/engine/101.0/base
Scanning: /home/pu/.spring/maps
Scanning: /home/pu/.spring/games
Scanning: /home/pu/.spring/packages
Scanning: /home/pu/.config/spring/maps
Scanning: /home/pu/.config/spring/games
Error: Found a "/home/pu/.config/spring/maps/comet_catcher_redux.sd7" already in "/home/pu/.config/spring/maps/Comet_Catcher_Redux.sd7", ignoring.
Error: Found a "/home/pu/.spring/games/BAR.sdd" already in "/home/pu/.config/spring/games/BAR.sdd", ignoring.
Error: Found a "/home/pu/.spring/maps/1944_BocageSmall.sd7" already in "/home/pu/.config/spring/maps/1944_BocageSmall.sd7", ignoring.
Error: Found a "/home/pu/.spring/maps/8862_Cooper_Hill_TNM02-V1.sd7" already in "/home/pu/.config/spring/maps/8862_Cooper_Hill_TNM02-V1.sd7", ignoring.
Error: Found a "/home/pu/.spring/maps/Altair_Crossing.sd7" already in "/home/pu/.config/spring/maps/Altair_Crossing.sd7", ignoring.
Error: Found a "/home/pu/.spring/maps/1944_Kiev_V4.sd7" already in "/home/pu/.config/spring/maps/1944_Kiev_V4.sd7", ignoring.
Error: Found a "/home/pu/.spring/maps/comet_catcher_redux.sd7" already in "/home/pu/.config/spring/maps/Comet_Catcher_Redux.sd7", ignoring.
[f=-000001] [Sound] OpenAL info:
[f=-000001] [Sound]   Available Devices:
[f=-000001] [Sound]               Audio interno Stereo analogico
[f=-000001] [Sound]   Device:     OpenAL Soft
[f=-000001] [Sound]   Vendor:         OpenAL Community
[f=-000001] [Sound]   Version:        1.1 ALSOFT 1.16.0
[f=-000001] [Sound]   Renderer:       OpenAL Soft
[f=-000001] [Sound]   AL Extensions:  AL_EXT_ALAW AL_EXT_DOUBLE AL_EXT_EXPONENT_DISTANCE AL_EXT_FLOAT32 AL_EXT_IMA4 AL_EXT_LINEAR_DISTANCE AL_EXT_MCFORMATS AL_EXT_MULAW AL_EXT_MULAW_MCFORMATS AL_EXT_OFFSET AL_EXT_source_distance_model AL_LOKI_quadriphonic AL_SOFT_block_alignment AL_SOFT_buffer_samples AL_SOFT_buffer_sub_data AL_SOFT_deferred_updates AL_SOFT_direct_channels AL_SOFT_loop_points AL_SOFT_MSADPCM AL_SOFT_source_latency AL_SOFT_source_length
[f=-000001] [Sound]   ALC Extensions: ALC_ENUMERATE_ALL_EXT ALC_ENUMERATION_EXT ALC_EXT_CAPTURE ALC_EXT_DEDICATED ALC_EXT_disconnect ALC_EXT_EFX ALC_EXT_thread_local_context ALC_SOFTX_device_clock ALC_SOFTX_HRTF ALC_SOFT_loopback ALC_SOFTX_midi_interface ALC_SOFT_pause_device
[f=-000001] [Sound]   EFX Enabled: yes
[f=-000001] [Sound]   Max Sounds: 128
[f=-000001] [WatchDog] registering controls for thread [audio]
[f=-000001] Joysticks found: 0
[f=-000001] [ThreadPool::SetThreadCount][1] #wanted=3 #current=4 #max=4
[f=-000001] [ThreadPool::SetThreadCount][2] #threads=2
[f=-000001] [Threading] Main thread CPU affinity mask set: 252
[f=-000001] [StartScript] Loading StartScript from: /home/pu/.springlobby/script.txt
[f=-000001] Hosting on: :8452
[f=-000001] Connecting to local server
[f=-000001] [AddGameSetupArchivesToVFS] using map: Small Supreme Battlefield V2
[f=-000001] Binding UDP socket to IP (v6) :: () port 8452
[f=-000001] [UDPListener] successfully bound socket on port 8452
[f=-000001] PreGame::StartServer: 13 ms
[f=-000001] [InitOpenGL] video mode set to 1855x1056:24bit @60Hz (windowed)
[f=-000001] [AddGameSetupArchivesToVFS] using map: Small Supreme Battlefield V2
[f=-000001] [AddGameSetupArchivesToVFS] using game: Balanced Annihilation V9.33 (archive: 887cbb0422e9f700b0781fbffadccd00.sdp)
[f=-000001] Recording demo to: /home/pu/.config/spring/demos/20160229_224457_Small Supreme Battlefield V2_101.sdfz
[f=-000001] PreGame::GameDataReceived: 21 ms
[f=-000001] [PreGame::UpdateClientNet] user number 0 (team 0, allyteam 0)
[f=-000001] [LuaIntro] Searching for new Widgets
[f=-000001] [LuaIntro] Scanning: LuaIntro/Addons/
[f=-000001] [LuaIntro] Scanning: LuaIntro/Widgets/
[f=-000001] [LuaIntro] Scanning: LuaIntro/SystemAddons/
[f=-000001] [LuaIntro] Scanning: LuaIntro/SystemWidgets/
[f=-000001] [LuaIntro] Scanning: LuaIntro/chili/
[f=-000001] [LuaIntro] Found new widget "SpringLogo"
[f=-000001] [LuaIntro] Found new widget "LoadTexture"
[f=-000001] [LuaIntro] Found new widget "LoadProgress"
[f=-000001] [LuaIntro] Found new widget "Main"
[f=-000001] [LuaIntro] Found new widget "Music"
[f=-000001] [LuaIntro] Loading widgets   <>=vfs  **=raw  ()=unknown
[f=-000001] [LuaIntro] Loading widget:      Engine Taskbar Stuff   <engine_taskbar_control.lua>
[f=-000001] [LuaIntro] Loading widget:      LoadProgress           <loadprogress.lua>
[f=-000001] [LuaIntro] Loading widget:      Main                   <main.lua>
[f=-000001] [LuaIntro] Loading widget:      Music                  <music.lua>
[f=-000001] [LuaIntro] Loading widget:      LoadTexture            <bg_texture.lua>
[f=-000001] [LuaIntro] LuaIntro v1.0 (Lua 5.1)
[f=-000001] [WatchDog] registering controls for thread [load]
[f=-000001] Parsing Map Information
[f=-000001] Loading SMF
[f=-000001] Loading Map (103 MB)
[f=-000001] Loading Radar Icons
[f=-000001] Loading GameData Definitions
[f=-000001] [defs.lua] loading all *Defs tables: 84ms
[f=-000001] Game::LoadDefs (GameData): 106 ms
[f=-000001] Loading Sound Definitions
[f=-000001] [Sound]  parsed 28 sounds from gamedata/sounds.lua
[f=-000001] Game::LoadDefs (Sound): 0 ms
[f=-000001] Creating Smooth Height Mesh
[f=-000001] SmoothHeightMesh::MakeSmoothMesh: 48 ms
[f=-000001] Creating QuadField & CEGs
[f=-000001] [CDamageArrayHandler] number of ArmorDefs: 11
[f=-000001] [RegisterAssimpModelFormats] supported Assimp model formats: *.3ds;*.blend;*.dae;*.lwo;
[f=-000001] Creating Unit Textures
[f=-000001] Creating Sky
[f=-000001] Loading Weapon Definitions
[f=-000001] Loading Unit Definitions
[f=-000001] Warning: too many unit categories (32), skipping sub
[f=-000001] Loading Feature Definitions
[f=-000001] [IPathManager::GetInstance] using DEFAULT path-manager
[f=-000001] Initializing Map Features
[f=-000001] Creating ShadowHandler & DecalHandler
[f=-000001] Creating GroundDrawer
[f=-000001] Loading Map Tiles
[f=-000001] Loading Square Textures
[f=-000001] CSMFGroundTextures::ConvolveHeightMap: 2 ms
[f=-000001] Switching to ROAM Mesh Rendering
[f=-000001] Creating TreeDrawer
[f=-000001] Creating ProjectileDrawer & UnitDrawer
[f=-000001] Creating Projectile Textures
[f=-000001] Creating Water
[f=-000001] Game::LoadInterface (Camera&Mouse): 18 ms
[f=-000001] Game::LoadInterface (Console): 0 ms
[f=-000001] [KeyBindings] Warning: Bind: could not parse key: SquadWait
[f=-000001] [KeyBindings] Warning: Bind: could not parse key: timewait
[f=-000001] InfoTexture: shaders
[f=-000001] Loading LuaRules
[f=-000001] Loaded synced gadget:  Metalspot Finder Gadget  <mex_spot_finder.lua>
[f=-000001] Loaded synced gadget:  Rez Exp             <unit_rez_exp.lua>
[f=-000001] Loaded synced gadget:  Stats               <api_damage_stats.lua>
[f=-000001] Loaded synced gadget:  ranks api           <api_ranks.lua>
[f=-000001] gaia_critters.lua: gadget:Initialize() Game.mapName=Small Supreme Battlefield V2
[f=-000001] no critter config for this map
[f=-000001] Loaded synced gadget:  gaia critter units  <gaia_critters.lua>
[f=-000001] Loaded synced gadget:  CameraBroadcast     <camera_lockcamera.lua>
[f=-000001] Loaded synced gadget:  Awards              <gui_awards.lua>
[f=-000001] Loaded synced gadget:  Newbie Info         <gui_newbie_info.lua>
[f=-000001] Loaded synced gadget:  Air Release         <unit_air_release_manager.lua>
[f=-000001] Loaded synced gadget:  Air Transports Handler  <air_transports.lua>
[f=-000001] Loaded synced gadget:  Air Transports fix  <air_transports_fix.lua>
[f=-000001] Loaded synced gadget:  AirPlantParents     <unit_air_plants.lua>
[f=-000001] Loaded synced gadget:  Ally Selected Units  <cmd_selected_units.lua>
[f=-000001] Loaded synced gadget:  Bet Engine          <cmd_bet_engine.lua>
[f=-000001] Loaded synced gadget:  Bomber Control      <unit_bomber_control.lua>
[f=-000001] Loaded synced gadget:  Cancel orders on share  <unit_cancel_orders_on_share.lua>
[f=-000001] Loaded synced gadget:  Com Counter         <mo_com_counter.lua>
[f=-000001] Loaded synced gadget:  Commander Blast     <unit_commander_blast.lua>
[f=-000001] Loaded synced gadget:  Commando Watch      <unit_commando_watch.lua>
[f=-000001] Loaded synced gadget:  Cursor Broadcast    <cmd_mouse_pos_broadcast.lua>
[f=-000001] Loaded synced gadget:  DGun CmdType Fix    <unit_dgun_cmdtype_fix.lua>
[f=-000001] Loaded synced gadget:  Death Messages      <game_death_messages.lua>
[f=-000001] Loaded synced gadget:  Debris Damage       <unit_debris_damage.lua>
[f=-000001] Loaded synced gadget:  Depthcharge splash  <fx_depthcharge_splash.lua>
[f=-000001] Loaded synced gadget:  Dev Helper Cmds     <cmd_dev_helpers.lua>
[f=-000001] Loaded synced gadget:  DirectControl       <unit_direct_control.lua>
[f=-000001] Loaded synced gadget:  Don't target flyover nukes  <unit_interceptors.lua>
[f=-000001] Loaded synced gadget:  DragonsDisguise     <unit_set_neutral.lua>
[f=-000001] Loaded synced gadget:  Dynamic collision volume & Hitsphere Scaledown  <unit_dynamic_collision_volume.lua>
[f=-000001] Loaded synced gadget:  Energy Conversion   <game_energy_conversion.lua>
[f=-000001] Loaded synced gadget:  FinishedBuilding    <unit_finished_building.lua>
[f=-000001] Loaded synced gadget:  Fortification Walls  <unit_fort_walls.lua>
[f=-000001] Loaded synced gadget:  Game End            <game_end.lua>
[f=-000001] Loaded synced gadget:  Initial Spawn       <game_initial_spawn.lua>
[f=-000001] Loaded synced gadget:  Juno Damage         <unit_juno_damage.lua>
[f=-000001] Loaded synced gadget:  Lightning Spash Damage  <unit_lightning_splash_dmg.lua>
[f=-000001] Loaded synced gadget:  Lua unit script framework  <unit_script.lua>
[f=-000001] Loaded synced gadget:  LuaUI Reload        <cmd_luaui_reload.lua>
[f=-000001] Loaded synced gadget:  Maverick Exp        <unit_maverick_exp.lua>
[f=-000001] Loaded synced gadget:  Merc/Scr stockpile control  <unit_mercscr_stockpile_limit.lua>
[f=-000001] Loaded synced gadget:  Napalm              <lups_napalm.lua>
[f=-000001] Loaded synced gadget:  No Land Damage      <unit_no_land_damage.lua>
[f=-000001] Loaded synced gadget:  No Self Pwn         <unit_noselfpwn.lua>
[f=-000001] Loaded synced gadget:  No Share Self-D     <unit_prevent_share_self_d.lua>
[f=-000001] Loaded synced gadget:  Nonblocking mines   <unit_nonblocking_mines.lua>
[f=-000001] Loaded synced gadget:  Paralyze Damage Multiplier  <unit_paralyze_damage_multiplier.lua>
[f=-000001] Loaded synced gadget:  Passive Builders v3  <unit_passive_builders.lua>
[f=-000001] Loaded synced gadget:  PopUpWaterStructures  <unit_pop_up_water_structures.lua>
[f=-000001] Loaded synced gadget:  Prevent Excessive Share  <game_prevent_excessive_share.lua>
[f=-000001] Loaded synced gadget:  Prevent Lab Hax     <unit_prevent_lab_hax.lua>
[f=-000001] Loaded synced gadget:  Prevent Load Hax    <unit_prevent_load_hax.lua>
[f=-000001] Loaded synced gadget:  Prevent Range Hax   <unit_prevent_range_hax.lua>
[f=-000001] Loaded synced gadget:  Prevent Strange Orders  <unit_prevent_strange_orders.lua>
[f=-000001] Loaded synced gadget:  Prevent Unload Hax  <unit_prevent_unload_hax.lua>
[f=-000001] Loaded synced gadget:  Prevent outside-of-map hax  <unit_prevent_aircraft_hax.lua>
[f=-000001] Loaded synced gadget:  Reclaim Fix         <unit_reclaim_fix.lua>
[f=-000001] Loaded synced gadget:  Reclaim flash       <gfx_reclaim_flash.lua>
[f=-000001] Loaded synced gadget:  Shockwaves          <lups_shockwaves.lua>
[f=-000001] Loaded synced gadget:  Stealthy Passengers  <unit_stealthy_passengers.lua>
[f=-000001] Loaded synced gadget:  Stun Control        <unit_stun_control.lua>
[f=-000001] Loaded synced gadget:  Stun Energy Storage  <unit_stun_energy_storage.lua>
[f=-000001] Loaded synced gadget:  Stun Metal Storage  <unit_stun_metal_storage.lua>
[f=-000001] Loaded synced gadget:  Target on the move  <unit_target_on_the_move.lua>
[f=-000001] Loaded synced gadget:  Team Resourcing     <game_team_resources.lua>
[f=-000001] Loaded synced gadget:  Transportee Hider   <unit_transportee_hider.lua>
[f=-000001] Loaded synced gadget:  Unally on demand    <cmd_alliance_break.lua>
[f=-000001] Loaded synced gadget:  Unit transportable nanos  <unit_transportable_nanos.lua>
[f=-000001] Loaded synced gadget:  Watereffects        <fx_watersplash.lua>
[f=-000001] Loaded synced gadget:  fx_reclaim_shards   <fx_reclaim_shards.lua>
[f=-000001] Loaded synced gadget:  fx_wreck_shards     <fx_wreck_shards.lua>
[f=-000001] Loaded synced gadget:  game_no_share_to_enemy  <game_no_share_to_enemy.lua>
[f=-000001] Loaded synced gadget:  gfx_dynamic_lighting.lua  <gfx_dynamic_lighting.lua>
[f=-000001] Loaded synced gadget:  lib_startpoint_guesser.lua  <lib_startpoint_guesser.lua>
[f=-000001] Loaded synced gadget:  lups_wrapper.lua    <lups_wrapper.lua>
[f=-000001] Loaded synced gadget:  mo_preventcombomb   <mo_preventcombomb.lua>
[f=-000001] Loaded synced gadget:  subMissile splash   <fx_submissile_splash.lua>
[f=-000001] Loaded synced gadget:  transportfix        <unit_transportfix.lua>
[f=-000001] Loaded synced gadget:  unit_combomb_full_damage  <unit_combomb_full_damage.lua>
[f=-000001] Loaded synced gadget:  Area Attack         <unit_areaattack.lua>
[f=-000001] Loaded synced gadget:  CustomUnitShaders   <gfx_customunitshaders.lua>
[f=-000001] Loaded synced gadget:  Take Manager        <cmd_idle_players.lua>
[f=-000001] Loaded synced gadget:  Team Com Ends       <game_team_com_ends.lua>
[f=-000001] Loaded synced gadget:  Substitution        <game_replace_afk_players.lua>
[f=-000001] Loaded synced gadget:  resurrected param   <unit_resurrected.lua>
[f=-000001] Loaded synced gadget:  LupsSyncedManager   <lups_manager.lua>
[f=-000001] Loaded synced gadget:  Mex Upgrader Gadget  <unit_mex_upgrader.lua>
[f=-000001] Loaded synced gadget:  Mobile Unit Paralyze Damage Handler  <unit_paralyze_damage_limit.lua>
[f=-000001] Loaded synced gadget:  Crashing Aircraft   <unit_crashing_aircraft.lua>
[f=-000001] Loaded synced gadget:  Version Warning     <version_warning.lua>
[f=-000001] <LockCamera>: Sorry for the camera switch spam, but this is the only reliable way to list camera states other than hardcoding them
[f=-000001] Switching to Spring style camera
[f=-000001] Switching to Free style camera
[f=-000001] Switching to Rotatable overhead camera
[f=-000001] Switching to Overhead (TA) style camera
[f=-000001] Switching to FPS style camera
[f=-000001] Switching to Overview style camera
[f=-000001] Loaded unsynced gadget:  Metalspot Finder Gadget  <mex_spot_finder.lua>
[f=-000001] Loaded unsynced gadget:  Stats               <api_damage_stats.lua>
[f=-000001] Loaded unsynced gadget:  ranks api           <api_ranks.lua>
[f=-000001] Loaded unsynced gadget:  CustomIcons         <unit_customicons.lua>
[f=-000001] Loaded unsynced gadget:  CameraBroadcast     <camera_lockcamera.lua>
[f=-000001] Loaded unsynced gadget:  Awards              <gui_awards.lua>
[f=-000001] Loaded unsynced gadget:  Newbie Info         <gui_newbie_info.lua>
[f=-000001] Loaded unsynced gadget:  Air Release         <unit_air_release_manager.lua>
[f=-000001] Loaded unsynced gadget:  Air Transports Handler  <air_transports.lua>
[f=-000001] Loaded unsynced gadget:  Air Transports fix  <air_transports_fix.lua>
[f=-000001] Loaded unsynced gadget:  AirPlantParents     <unit_air_plants.lua>
[f=-000001] Loaded unsynced gadget:  Ally Selected Units  <cmd_selected_units.lua>
[f=-000001] Loaded unsynced gadget:  Bet Engine          <cmd_bet_engine.lua>
[f=-000001] Loaded unsynced gadget:  Cancel orders on share  <unit_cancel_orders_on_share.lua>
[f=-000001] Loaded unsynced gadget:  Cursor Broadcast    <cmd_mouse_pos_broadcast.lua>
[f=-000001] Loaded unsynced gadget:  Debris Damage       <unit_debris_damage.lua>
[f=-000001] Loaded unsynced gadget:  Dev Helper Cmds     <cmd_dev_helpers.lua>
[f=-000001] Loaded unsynced gadget:  DragonsDisguise     <unit_set_neutral.lua>
[f=-000001] Loaded unsynced gadget:  Dynamic collision volume & Hitsphere Scaledown  <unit_dynamic_collision_volume.lua>
[f=-000001] Loaded unsynced gadget:  FinishedBuilding    <unit_finished_building.lua>
[f=-000001] Loaded unsynced gadget:  Fortification Walls  <unit_fort_walls.lua>
[f=-000001] Loaded unsynced gadget:  Initial Spawn       <game_initial_spawn.lua>
[f=-000001] Loaded unsynced gadget:  Juno Damage         <unit_juno_damage.lua>
[f=-000001] Loaded unsynced gadget:  Lightning Spash Damage  <unit_lightning_splash_dmg.lua>
[f=-000001] Loaded unsynced gadget:  LuaUI Reload        <cmd_luaui_reload.lua>
[f=-000001] Loaded unsynced gadget:  Merc/Scr stockpile control  <unit_mercscr_stockpile_limit.lua>
[f=-000001] Loaded unsynced gadget:  Napalm              <lups_napalm.lua>
[f=-000001] Loaded unsynced gadget:  No Share Self-D     <unit_prevent_share_self_d.lua>
[f=-000001] Loaded unsynced gadget:  Opacity control     <api_opacity.lua>
[f=-000001] Loaded unsynced gadget:  PopUpWaterStructures  <unit_pop_up_water_structures.lua>
[f=-000001] Loaded unsynced gadget:  Prevent Unload Hax  <unit_prevent_unload_hax.lua>
[f=-000001] Loaded unsynced gadget:  Reclaim Fix         <unit_reclaim_fix.lua>
[f=-000001] Loaded unsynced gadget:  Reclaim flash       <gfx_reclaim_flash.lua>
[f=-000001] Loaded unsynced gadget:  Shockwaves          <lups_shockwaves.lua>
[f=-000001] Loaded unsynced gadget:  Target on the move  <unit_target_on_the_move.lua>
[f=-000001] Loaded unsynced gadget:  Transportee Hider   <unit_transportee_hider.lua>
[f=-000001] Loaded unsynced gadget:  Unally on demand    <cmd_alliance_break.lua>
[f=-000001] Loaded unsynced gadget:  fx_reclaim_shards   <fx_reclaim_shards.lua>
[f=-000001] Loaded unsynced gadget:  fx_wreck_shards     <fx_wreck_shards.lua>
[f=-000001] Loaded unsynced gadget:  game_no_share_to_enemy  <game_no_share_to_enemy.lua>
[f=-000001] Loaded unsynced gadget:  gfx_dynamic_lighting.lua  <gfx_dynamic_lighting.lua>
[f=-000001] Loaded unsynced gadget:  lib_startpoint_guesser.lua  <lib_startpoint_guesser.lua>
[f=-000001] Loaded unsynced gadget:  mo_ffa              <mo_ffa.lua>
[f=-000001] Loaded unsynced gadget:  transportfix        <unit_transportfix.lua>
[f=-000001] Loaded unsynced gadget:  Area Attack         <unit_areaattack.lua>
[f=-000001] [Texture] Warning: [LoadTexture] could not load texture "ANTREFd.dds" from model "objects3d/critter_ant.s3o"
[f=-000001] [Texture] Warning: [LoadTexture] could not load texture "Spring unit" from model "objects3d/critter_duck.s3o"
[f=-000001] [Texture] Warning: [LoadTexture] could not load texture "chicken2.dds" from model "objects3d/meteor.s3o"
[f=-000001] Loaded unsynced gadget:  CustomUnitShaders   <gfx_customunitshaders.lua>
[f=-000001] Loaded unsynced gadget:  Take Manager        <cmd_idle_players.lua>
[f=-000001] Loaded unsynced gadget:  Substitution        <game_replace_afk_players.lua>
[f=-000001] Loaded unsynced gadget:  resurrected param   <unit_resurrected.lua>
[f=-000001] Loaded unsynced gadget:  LupsSyncedManager   <lups_manager.lua>
[f=-000001] Loaded unsynced gadget:  Mex Upgrader Gadget  <unit_mex_upgrader.lua>
[f=-000001] Loaded unsynced gadget:  Crashing Aircraft   <unit_crashing_aircraft.lua>
[f=-000001] Loaded unsynced gadget:  Lups                <lups_wrapper.lua>
[f=-000001] Loaded unsynced gadget:  Version Warning     <version_warning.lua>
[f=-000001] Loading LuaGaia
[f=-000001] Loading LuaUI
[f=-000001] LuaUI Entry Point: "luaui.lua"
[f=-000001] LuaUI Access Lock: enabled
[f=-000001] LuaSocket Enabled: yes
[f=-000001] Using LUAUI_DIRNAME = LuaUI/
[f=-000001] Reloading GUI config from file: LuaUI/ctrlpanel.txt
[f=-000001] LuaUI: bound F11 to the widget selector
[f=-000001] LuaUI: bound CTRL+F11 to tweak mode
[f=-000001] LuaUI: Allowing User Widgets
[f=-000001] Loading widget from mod:   Widget Selector     <widget_selector.lua> ...
[f=-000001] Loading widget from mod:   Spy move/reclaim defaults  <unit_default_spy_move_cloaked.lua> ...
[f=-000001] Loading widget from mod:   Defense Range       <gui_defenserange.lua> ...
[f=-000001] Loading widget from mod:   Red_UI_Framework    <red_ui_framework.lua> ...
[f=-000001] Loading widget from mod:   Metalspot Finder    <api_metalspot_finder.lua> ...
[f=-000001] Loading widget from mod:   Shadow Quality Manager  <gfx_shadow_quality_manager.lua> ...
[f=-000001] Loading widget from mod:   MexUpg Helper       <cmd_mex_upgrade_helper.lua> ...
[f=-000001] Loading widget from mod:   Red Tooltip         <gui_red_tooltip.lua> ...
[f=-000001] Loading widget from mod:   Faction Change      <gui_faction_change.lua> ...
[f=-000001] Loading widget from mod:   Snow                <gfx_snow.lua> ...
[f=-000001] Loading widget from mod:   Red Minimap         <gui_red_minimap.lua> ...
[f=-000001] Loading widget from mod:   Ally Selected Units   <gui_allyselectedunits.lua> ...
[f=-000001] Loading widget from mod:   Health Bars         <gui_healthbars.lua> ...
[f=-000001] Loading widget from mod:   Map Info            <gui_mapinfo.lua> ...
[f=-000001] Loading widget from mod:   Ally Resource Bars  <gui_ally_res.lua> ...
[f=-000001] Loading widget from mod:   AdvPlayersList      <gui_advplayerslist.lua> ...
[f=-000001] Loading widget from mod:   Unit Info           <gui_unit_info.lua> ...
[f=-000001] Loading widget from mod:   BuildETA            <gui_build_eta.lua> ...
[f=-000001] Loading widget from mod:   Changelog Info      <gui_changelog_info.lua> ...
[f=-000001] Loading widget from mod:   Commands info       <gui_commands_info.lua> ...
[f=-000001] Loading widget from mod:   Ecostats            <gui_ecostats.lua> ...
[f=-000001] Ecostats: widget loaded in spectator mode
[f=-000001] Loading widget from mod:   Keybind/Mouse Info  <gui_keybind_info.lua> ...
[f=-000001] Loading widget from mod:   Projectile lights   <gfx_projectile_lights.lua> ...
[f=-000001] Loading widget from mod:   Initial Queue       <unit_initial_queue.lua> ...
[f=-000001] Loading widget from mod:   AllyCursors         <gui_ally_cursors.lua> ...
[f=-000001] Loading widget from mod:   Alternate Chat Keys  <cmd_old_style_chat_keys.lua> ...
[f=-000001] Loading widget from mod:   Auto First Build Facing  <unit_autofirstbuildfacing.lua> ...
[f=-000001] Loading widget from mod:   Autoquit            <cmd_autoquit.lua> ...
[f=-000001] Loading widget from mod:   BA LOS colors       <gui_ba_los_colors.lua> ...
[f=-000001] Loading widget from mod:   Blast Radius        <gui_blast_radius.lua> ...
[f=-000001] Loading widget from mod:   BuildBar            <gui_buildbar.lua> ...
[f=-000001] Loading widget from mod:   Camera Remember     <camera_remember_mode.lua> ...
[f=-000001] Warning: you have Overview camera as default. This camera is not intended to start game with. Switching to TA camera.
[f=-000001] Switching to Overhead (TA) style camera
[f=-000001] Loading widget from mod:   Build Split         <cmd_buildsplit.lua> ...
[f=-000001] Loading widget from mod:   CameraFlip          <camera_flip.lua> ...
[f=-000001] Loading widget from mod:   Com Counter         <gui_comcounter.lua> ...
[f=-000001] Loading widget from mod:   Comblast & Dgun Range  <gui_comblast_dgun_range.lua> ...
[f=-000001] Loading widget from mod:   Darken map          <gfx_darken_map.lua> ...
[f=-000001] Loading widget from mod:   DontMove            <unit_dontmove.lua> ...
[f=-000001] Loading widget from mod:   EMP + decloak range  <gui_emp_decloak_range.lua> ...
[f=-000001] Loading widget from mod:   Energy Conversion Info  <gui_energy_conversion.lua> ...
[f=-000001] Loading widget from mod:   Ghost Site          <unit_ghostsite.lua> ...
[f=-000001] Loading widget from mod:   Group Label         <gui_group_label.lua> ...
[f=-000001] Loading widget from mod:   Highlight Geos      <gui_highlight_geos.lua> ...
[f=-000001] Loading widget from mod:   Easy Facing         <gui_easyfacing.lua> ...
[f=-000001] Loading widget from mod:   Holdfire Fix        <cmd_holdfire_fix.lua> ...
[f=-000001] Loading widget from mod:   Ignore List API     <api_ignore.lua> ...
[f=-000001] Loading widget from mod:   LOS View            <gfx_los_view.lua> ...
[f=-000001] Loading widget from mod:   Ghost Radar         <unit_ghostradar.lua> ...
[f=-000001] Loading widget from mod:   Load Own Moving     <unit_load_own_moving.lua> ...
[f=-000001] Loading widget from mod:   Loop Select         <unit_loop_select.lua> ...
[f=-000001] Loading widget from mod:   Mex Snap            <cmd_mex_snap.lua> ...
[f=-000001] Loading widget from mod:   Passive builders v5  <unit_passive_builders.lua> ...
[f=-000001] Loading widget from mod:   Pause Screen        <gui_pausescreen.lua> ...
[f=-000001] Loading widget from mod:   Persistent Build Spacing  <cmd_persistent_build_spacing.lua> ...
[f=-000001] Loading widget from mod:   ReclaimInfo         <gui_reclaiminfo.lua> ...
[f=-000001] Loading widget from mod:   Red Build/Order Menu  <gui_red_buildordermenu.lua> ...
[f=-000001] Loading widget from mod:   Red Console         <gui_red_console.lua> ...
[f=-000001] Loading widget from mod:   Red Resource Bars   <gui_red_resourcebars.lua> ...
[f=-000001] Loading widget from mod:   Red_Drawing         <red_ui_framework_drawing.lua> ...
[f=-000001] Loading widget from mod:   Rejoin Progress Bar  <gui_rejoin_progress.lua> ...
[f=-000001] Loading widget from mod:   RelativeMinimap     <minimap_relative.lua> ...
[f=-000001] Loading widget from mod:   SelectionButtons    <gui_selbuttons.lua> ...
[f=-000001] Loading widget from mod:   Share Tracker       <unit_share_tracker.lua> ...
[f=-000001] Loading widget from mod:   Show Orders         <gui_show_orders.lua> ...
[f=-000001] Loading widget from mod:   SmartSelect         <unit_smart_select.lua> ...
[f=-000001] Loading widget from mod:   SmoothCam           <camera_smoothcam.lua> ...
[f=-000001] Loading widget from mod:   Spectate Selected   <gui_spectate_selected.lua> ...
[f=-000001] Loading widget from mod:   State Reverse Toggle  <cmd_state_reverse_toggle.lua> ...
[f=-000001] Loading widget from mod:   Statistics Collection  <stats_damage.lua> ...
[f=-000001] Loading widget from mod:   Stop means Stop     <cmd_stop_selfd.lua> ...
[f=-000001] Loading widget from mod:   Take Proxy          <cmd_take_proxy.lua> ...
[f=-000001] Loading widget from mod:   Unit Finished Sounds  <snd_unit_finished.lua> ...
[f=-000001] Loading widget from mod:   Volume OSD          <snd_volume_osd.lua> ...
[f=-000001] Loading widget from mod:   Wind Speed          <gui_winddisplay.lua> ...
[f=-000001] Loading widget from mod:   gui_transport_weight_limit  <gui_transport_weight_limit.lua> ...
[f=-000001] Loading widget from mod:   GameTypeInfo        <gui_game_type_info.lua> ...
[f=-000001] Loading widget from mod:   Auto group          <unit_auto_group.lua> ...
[f=-000001] Loading widget from mod:   Com DontBreakCloak  <unit_com_dontbreakcloak.lua> ...
[f=-000001] Loading widget from mod:   ImmobileBuilder     <unit_immobile_builder.lua> ...
[f=-000001] Loading widget from mod:   NoDuplicateOrders   <cmd_no_duplicate_orders.lua> ...
[f=-000001] Loading widget from mod:   Specific Unit Reclaimer  <unit_specific_unit_reclaimer.lua> ...
[f=-000001] Loading widget from mod:   Stockpiler (dynamic)  <unit_stockpile_dynamic.lua> ...
[f=-000001] Loading widget from mod:   Attack AoE          <gui_attack_aoe.lua> ...
[f=-000001] Loading widget from mod:   Attack and Move Notification  <unit_attackmovenotification.lua> ...
[f=-000001] Loading widget from mod:   BA Hotkeys          <cmd_ba_hotkeys.lua> ...
[f=-000001] Loading widget from mod:   Bet-Frontend        <gui_bet_frontend.lua> ...
[f=-000001] Loading widget from mod:   Context Build       <cmd_context_build.lua> ...
[f=-000001] Loading widget from mod:   Prospector          <gui_prospector.lua> ...
[f=-000001] Loading widget from mod:   Commander Name Tags  <gui_com_nametags.lua> ...
[f=-000001] Loading widget from mod:   Commands FX         <gui_commands_fx.lua> ...
[f=-000001] Loading widget from mod:   Mapmarks FX         <gui_mapmarks_fx.lua> ...
[f=-000001] Loading widget from mod:   Mouse FX            <gui_mouse_fx.lua> ...
[f=-000001] Loading widget from mod:   Anti Ranges         <gui_anti_ranges.lua> ...
[f=-000001] Loading widget from mod:   Bomber control      <unit_bomber_control.lua> ...
[f=-000001] Loading widget from mod:   CommandInsert       <cmd_commandinsert.lua> ...
[f=-000001] Loading widget from mod:   EnemySpotter        <gui_enemy_spotter.lua> ...
[f=-000001] Loading widget from mod:   Given Units         <gui_given_units.lua> ...
[f=-000001] Loading widget from mod:   Highlight Unit      <gui_highlight_unit.lua> ...
[f=-000001] Loading widget from mod:   Rank Icons          <gui_xp.lua> ...
[f=-000001] Loading widget from mod:   Resurrection Halos  <gui_resurrection_halos.lua> ...
[f=-000001] Loading widget from mod:   Self-Destruct icons  <gui_selfd_icons.lua> ...
[f=-000001] Loading widget from mod:   Waypoint Dragger    <unit_waypoint_dragger_2.lua> ...
[f=-000001] Loading widget from mod:   Select n Center!    <gui_center_n_select.lua> ...
[f=-000001] Loading widget from mod:   Unit Stats          <gui_unit_stats.lua> ...
[f=-000001] Loading widget from mod:   LupsManager         <gfx_lups_manager.lua> ...
[f=-000001] Loading widget from mod:   replay buttons      <gui_replaybuttons.lua> ...
[f=-000001] replaycontrol: Not a replay, removing myself.
[f=-000001] Loading widget from mod:   Highlight Selected Units  <gui_highlight_selectedunits.lua> ...
[f=-000001] Reloaded cmdcolors from file: cmdcolors.tmp
[f=-000001] Loading widget from mod:   Mouse Buildspacing  <gui_buildspacing.lua> ...
[f=-000001] Loading widget from mod:   Lups                <gfx_lups_wrapper.lua> ...
[f=-000001] Loading widget from mod:   CustomFormations2   <cmd_customformations2.lua> ...
[f=-000001] LuaUI v0.3
[f=-000001] [LoadFinalize] finalizing PFS
[f=-000001] [Path] [PathEstimator::ReadFile] hash=3045129509
[f=-000001] Reading Estimate PathCosts [8]
[f=-000001] [Path] [PathEstimator::ReadFile] hash=3045129533
[f=-000001] Reading Estimate PathCosts [32]
[f=-000001] [LoadFinalize] finalized PFS (81ms, checksum 2a0ee518)
[f=-000001] Loading Skirmish AIs
[f=-000001] SkirmishAI (ID = 0, team ID = 0) is using cheats!
[f=-000001] ResourceMapAnalyzer by Krogothe, initialized for resource 0(Metal)
[f=-000001] <SkirmishAI: Shard dev (team 0)>: Shard by AF - playing:BA on:Small Supreme Battlefield V2
[f=-000001] <SkirmishAI: Shard dev (team 0)>: adding Sleep module
[f=-000001] <SkirmishAI: Shard dev (team 0)>: adding MapHandler module
[f=-000001] <SkirmishAI: Shard dev (team 0)>: adding EconHandler module
[f=-000001] <SkirmishAI: Shard dev (team 0)>: adding AttackHandler module
[f=-000001] <SkirmishAI: Shard dev (team 0)>: adding BomberHandler module
[f=-000001] <SkirmishAI: Shard dev (team 0)>: adding RaidHandler module
[f=-000001] <SkirmishAI: Shard dev (team 0)>: adding BuildSiteHandler module
[f=-000001] <SkirmishAI: Shard dev (team 0)>: adding CountHandler module
[f=-000001] <SkirmishAI: Shard dev (team 0)>: adding TurtleHandler module
[f=-000001] <SkirmishAI: Shard dev (team 0)>: adding TacticalHandler module
[f=-000001] <SkirmishAI: Shard dev (team 0)>: adding LosHandler module
[f=-000001] <SkirmishAI: Shard dev (team 0)>: adding TargetHandler module
[f=-000001] <SkirmishAI: Shard dev (team 0)>: adding DamageHandler module
[f=-000001] <SkirmishAI: Shard dev (team 0)>: adding ScoutHandler module
[f=-000001] <SkirmishAI: Shard dev (team 0)>: adding AssistHandler module
[f=-000001] <SkirmishAI: Shard dev (team 0)>: adding DefendHandler module
[f=-000001] <SkirmishAI: Shard dev (team 0)>: adding UnitHandler module
[f=-000001] [WatchDog] deregistering controls for thread [load]
[f=-000001] Loaded DecalsDrawer: Legacy
[f=-000001] GameID: d9bbd456a43539790e331378370c9950
[f=-000001] Connection attempt from Player
[f=-000001]  -> Version: 101.0
[f=-000001]  -> Connection established (given id 0)
[f=-000001] Skirmish AI "Bot1" (ID:0, Short-Name:"Shard", Version:"dev") took over control of team 0
[f=-000001] Spectator Player finished loading and is now ingame
[f=-000001] <SkirmishAI: Shard dev (team 0)>: ...0/AI/Skirmish/Shard/dev/ai/BA/taskqueuebehaviour.lua:17: attempt to perform arithmetic on field 'income' (a nil value)
stack traceback:
	[C]: ?
	[C]: ?
	...0/AI/Skirmish/Shard/dev/ai/BA/taskqueuebehaviour.lua:17: in function 'GetEcon'
	...0/AI/Skirmish/Shard/dev/ai/BA/taskqueuebehaviour.lua:212: in function 'Init'
	.../101.0/AI/Skirmish/Shard/dev/ai/behaviourfactory.lua:22: in function 'AddBehaviours'
	...ngine/101.0/AI/Skirmish/Shard/dev/ai/unithandler.lua:38: in function 'UnitCreated'
	....spring/engine/101.0/AI/Skirmish/Shard/dev/ai/ai.lua:60: in function <....spring/engine/101.0/AI/Skirmish/Shard/dev/ai/ai.lua:51>
[f=0000227] [QuitBox] user exited to system
[f=0000227] [SpringApp::ShutDown][1]
[f=0000227] [ThreadPool::SetThreadCount][1] #wanted=0 #current=3 #max=4
[f=0000227] [ThreadPool::SetThreadCount][2] #threads=0
[f=0000227] [SpringApp::ShutDown][2]
[f=0000227] [KillLua][1]
[f=0000227] [KillLua][2]
[f=0000227] [KillLua][3]
[f=0000227] Red_UI_Framework>> last processed widget was "Red Tooltip"
[f=0000227] Red_Drawing>> last processed widget was "Red Tooltip"
[f=0000227] Reloaded cmdcolors from file: cmdcolors.tmp
[f=0000227] [KillLua][4]
[f=0000227] [~CGame]1]
[f=0000227] [KillLua][1]
[f=0000227] [KillLua][2]
[f=0000227] [KillLua][3]
[f=0000227] [KillLua][4]
[f=0000227] [KillMisc][1]
[f=0000227] [KillMisc][2]
[f=0000227] [KillRendering][1]
[f=0000227] [KillInterface][1]
[f=0000227] [KillInterface][2]
[f=0000227] [KillSimulation][1]
[f=0000227] [KillSimulation][2]
[f=0000227] [CCollisionHandler] dis-/continuous tests: 0/1034805
[f=0000227] [KillSimulation][3]
[f=0000227] [~CPathCache(32x32)] cacheHits=0 hitPercentage=0% numHashColls=0 maxCacheSize=0
[f=0000227] [~CPathCache(32x32)] cacheHits=0 hitPercentage=0% numHashColls=0 maxCacheSize=0
[f=0000227] [~CPathCache(128x128)] cacheHits=0 hitPercentage=0% numHashColls=0 maxCacheSize=0
[f=0000227] [~CPathCache(128x128)] cacheHits=0 hitPercentage=0% numHashColls=0 maxCacheSize=0
[f=0000227] Statistics for RectangleOptimizer: 0%
[f=0000227] Statistics for RectangleOptimizer: 0%
[f=0000227] LosHandler stats: total instances=4; shared=0%; from cache=25%
[f=0000227] [KillSimulation][4]
[f=0000227] [~CGame][2]
[f=0000227] [~CGame][3]
[f=0000227] [SpringApp::ShutDown][3]
[f=0000227] Statistics for local connection:
Received: 1495 bytes
Sent: 2776 bytes

[f=0000227] Writing demo: /home/pu/.config/spring/demos/20160229_224457_Small Supreme Battlefield V2_101.sdfz
[f=0000227] [SpringApp::ShutDown][4]
[f=0000227] [WatchDog] deregistering controls for thread [audio]
AL lib: (WW) FreeDevice: (0x7f0564007e90) Deleting 249 Buffer(s)
[f=0000227] [SpringApp::ShutDown][5]
[f=0000227] [SpringApp::ShutDown][6]
[f=0000227] [SpringApp::ShutDown][7]
[LuaSocket] Dumping luasocket rules:
[LuaSocket] TCP_CONNECT ALLOW * -1
[LuaSocket] TCP_LISTEN  ALLOW * -1
[LuaSocket] UDP_LISTEN  ALLOW * -1
[SpringApp::ShutDown][8]
[WatchDog] deregistering controls for thread [main]
[WatchDog::Uninstall][1] hangDetectorThread=0x31cae50
[WatchDog::Uninstall][2]
[WatchDog::Uninstall][3]
[SpringApp::ShutDown][9]
[SpringApp::Run] exitCode=0

i'm in searching of the problem
User avatar
AF
AI Developer
Posts: 20687
Joined: 14 Sep 2004, 11:32

Re: Shard 0.4/dev

Post by AF »

Code: Select all

Skirmish/Shard/dev/ai/BA/taskqueuebehaviour.lua:17: attempt to perform arithmetic on field 'income' (a nil value)
I'm unsure what you have at that line, but it would appear a lua fatal error can trigger a shard fatal error under some circumstances, not that either should ever happen, can you get me more details? Is this Shard bundled with 101, or Shard from GitHub, or Shard with a BA config modified by you?
User avatar
AF
AI Developer
Posts: 20687
Joined: 14 Sep 2004, 11:32

Re: Shard 0.4/dev

Post by AF »

A cursory read of the code suggests that the energy and metal values have not been retrieved at this point for whatever reason, it is the first frame afterall, have you modified the initial value of lastFrame or the update interval used?
abma
Spring Developer
Posts: 3798
Joined: 01 Jun 2009, 00:08

Re: Shard 0.4/dev

Post by abma »

AF wrote:A cursory read of the code suggests that the energy and metal values have not been retrieved at this point for whatever reason, it is the first frame afterall, have you modified the initial value of lastFrame or the update interval used?
https://github.com/spring/spring/blob/m ... og.txt#L46

"start simulation at frame 0, not at 1"
User avatar
AF
AI Developer
Posts: 20687
Joined: 14 Sep 2004, 11:32

Re: Shard 0.4/dev

Post by AF »

Changing to -17 rather than -16 as the initial value would confirm the above is the cause
User avatar
prandipadaro
Posts: 98
Joined: 19 Oct 2011, 22:38

Re: Shard 0.4/dev

Post by prandipadaro »

AF wrote:

Code: Select all

Skirmish/Shard/dev/ai/BA/taskqueuebehaviour.lua:17: attempt to perform arithmetic on field 'income' (a nil value)
I'm unsure what you have at that line, but it would appear a lua fatal error can trigger a shard fatal error under some circumstances, not that either should ever happen, can you get me more details? Is this Shard bundled with 101, or Shard from GitHub, or Shard with a BA config modified by you?
is shard bundled with 101
income is a variable created by the file ecohandler.lua
User avatar
prandipadaro
Posts: 98
Joined: 19 Oct 2011, 22:38

Re: Shard 0.4/dev

Post by prandipadaro »

abma wrote:
AF wrote:A cursory read of the code suggests that the energy and metal values have not been retrieved at this point for whatever reason, it is the first frame afterall, have you modified the initial value of lastFrame or the update interval used?
https://github.com/spring/spring/blob/m ... og.txt#L46

"start simulation at frame 0, not at 1"
ok, thanks a lot , now it work!
User avatar
Anarchid
Posts: 1384
Joined: 30 Nov 2008, 04:31

Re: Shard 0.4/dev

Post by Anarchid »

Just to clear things up,
Ah before I forget, I believe Anarchid wrote most of that code
Is incorrect. I did a ZK config (though i read the excellent BA config for inspiration).
User avatar
prandipadaro
Posts: 98
Joined: 19 Oct 2011, 22:38

Re: Shard 0.4/dev

Post by prandipadaro »

Any idea on how to update the /BA/unittable.lua
anyone have a script?
thanks in advance
User avatar
Forboding Angel
Evolution RTS Developer
Posts: 14673
Joined: 17 Nov 2005, 02:43

Re: Shard 0.4/dev

Post by Forboding Angel »

Why can't shard read configs included in the game (or has this been added?)? I feel like we've been over this, but if it could that would expand it's utility by orders of magnitude.

If you want the user to be able to override, just give the local folders precedence.
Post Reply

Return to “AI”