.:: Bots United ::.

.:: Bots United ::. (http://forums.bots-united.com/index.php)
-   General Bot Coding (http://forums.bots-united.com/forumdisplay.php?f=24)
-   -   [TFC] FoxBot help (http://forums.bots-united.com/showthread.php?t=10087)

RoboCop 04-07-2018 22:38

[TFC] FoxBot help
 
Hello I know this site didn't host nor had FoxBot coders here, but me and my TFC buddies are in need for some bot coding hellp.

What it is I've had to fix some of Zybby's leftover bugs from FoxBot 0.77 and left the project in 2010. I do have some contact with RedFox and Dr Evil but they wish not to get involved with FoxBot anymore.

So far I did manage to fix some errors thanks to Safety1st and Arkshine as well as my testers recently. I've reached to version 0.791 but there are some huge flaws: syntax errors for Assault maps and the bot_job_think.cpp (not included until 0.76 came). However it appears that FoxBot 0.75 had no major bugs until the huge step was taken for advanced features but wasn't properly tested nor fixed.

I had a look on the foxbot.log and it gave me some syntax errors for warpath and dustbowl from 0.791. I don't know if the .far FoxBot area files are corrupt but I suspect it could be a problem with the engine itself:-

Code:

Syntax error, unrecognised command

on_start
 {
  blue_notavailable_point1
  blue_available_point2
  blue_notavailable_point3
  blue_notavailable_point4
  blue_notavailable_point5
  red_notavailable_point1
  red_notavailable_point2
  red_notavailable_point3
  red_available_point4
  red_notavailable_point5
 }

on_msg(#cz_bcap2)
 {
  blue_notavailable_point1
  blue_notavailable_point2
  blue_available_point3
  blue_notavailable_point4
  blue_notavailable_point5
  if_red_point1
  {
    red_notavailable_point1
    red_available_point2
    red_notavailable_point3
    red_notavailable_point4
    red_notavailable_point5
  }
 }

on_msg(#cz_bcap3)
 {
  blue_notavailable_point1
  blue_notavailable_point2
  blue_notavailable_point3
  blue_available_point4
  blue_notavailable_point5
  if_red_point2
  {
    red_notavailable_point1
    red_notavailable_point2
    red_available_point3
    red_notavailable_point4
    red_notavailable_point5
  }
 }

on_msg(#cz_bcap4)
 {
  blue_notavailable_point1
  blue_notavailable_point2
  blue_notavailable_point3
  blue_notavailable_point4
  blue_available_point5
  if_red_point3
  {
    red_notavailable_point1
    red_notavailable_point2
    red_notavailable_point3
    red_available_point4
    red_notavailable_point5
  }
 }

on_msg(#cz_rcap2)
 {
  red_available_point1
  red_notavailable_point2
  red_notavailable_point3
  red_notavailable_point4
  red_notavailable_point5
  if_blue_point3
  {
    blue_notavailable_point1
    blue_available_point2
    blue_notavailable_point3
    blue_notavailable_point4
    blue_notavailable_point5
  }
 }

on_msg(#cz_rcap3)
 {
  red_notavailable_point1
  red_available_point2
  red_notavailable_point3
  red_notavailable_point4
  red_notavailable_point5
  if_blue_point4
  {
    blue_notavailable_point1
    blue_notavailable_point2
    blue_available_point3
    blue_notavailable_point4
    blue_notavailable_point5
  }
 }

on_msg(#cz_rcap4)
 {
  red_notavailable_point1
  red_notavailable_point2
  red_available_point3
  red_notavailable_point4
  red_notavailable_point5
  if_blue_point5
  {
    blue_notavailable_point1
    blue_notavailable_point2
    blue_notavailable_point3
    blue_available_point4
    blue_notavailable_point5
  }
 }

on_msg(#warpath_blue_wins)
 {
  blue_notavailable_point1
  blue_available_point2
  blue_notavailable_point3
  blue_notavailable_point4
  blue_notavailable_point5
  red_notavailable_point1
  red_notavailable_point2
  red_notavailable_point3
  red_available_point4
  red_notavailable_point5
 }

on_msg(#warpath_red_wins)
 {
  blue_notavailable_point1
  blue_available_point2
  blue_notavailable_point3
  blue_notavailable_point4
  blue_notavailable_point5
  red_notavailable_point1
  red_notavailable_point2
  red_notavailable_point3
  red_available_point4
  red_notavailable_point5
 }

Syntax error, unrecognised command

on_start
 {
  blue_attack
  red_defend
  blue_available_only_point1
  red_available_only_point1
 }

on_msg(#dustbowl_blue_secures_one)
 {
  blue_available_only_point2
  red_available_only_point2
 }

on_msg(#dustbowl_blue_secures_two)
 {
  blue_available_only_point3
  blue_available_point8
  red_available_only_point3
 }

on_msg(#dustbowl_blue_caps)
 {
  blue_available_only_point1
  red_available_only_point1
 }

on_msg(#dustbowl_red_defends)
 {
  blue_available_only_point1
  red_available_only_point1
 }

Now even so that FoxBot 0.75 performs better on most of the TFC maps, but they are not compatible with waypoints made for 0.76 or better. Any help or useful suggestions will be great.

FoxBot 0.75 src code:-
https://apg-clan.org/vbdownloads.php...ownloadid=1113

Latest FoxBot 0.791-beta src code:-
https://github.com/APGRoboCop/foxbot

The Storm 08-07-2018 01:07

Re: [TFC] FoxBot help
 
As you already mentioned, no one here was involved in FoxBot development and since most of the bot developers are busy with their lives don't expect to find any help here about the issues you have... :(

RoboCop 10-07-2018 22:40

Re: [TFC] FoxBot help
 
Well I think there's a problem with the way GCC/G++ compiles the Linux side of Foxbots. The bots doesn't appear to obey the waypoints nor get in position for defending flags or CPs for Linux. The Win32 version appears to be running fine and those bots don't have those problems. It must be missing some important #includes for the libs or headers, along for the #ifdef for __linux__. The newer FoxBot had some heavy adjustments for the new navigate, think and waypoint scripts - as well as adding new cvars.

The Makefile seems to be the same apart from the version number and needing the new .cpp files added for the GCC compiler. It appears that it isn't compatible with GCC/GCC 6 nor clang, so I maybe best to investigate those problems by myself.

RoboCop 17-07-2018 00:45

Re: [TFC] FoxBot help
 
Update: it appears Linux got a problem due to tchar.h in dll.cpp as that isn't used for Linux. I did try some solution like this, but doesn't appear to have resolved that issue. Any idea's what is causing the bots to not obey properly?

Code:

#ifdef _UNICODE //Fix by Globoss - [APG]RoboCop[CL]
typedef wchar_t TCHAR;
#else
typedef char TCHAR;
#endif



All times are GMT +2. The time now is 03:34.

Powered by vBulletin® Version 3.8.2
Copyright ©2000 - 2018, Jelsoft Enterprises Ltd.