1.7.2007
Added ENABLE_FD_WRITE value for compilation.
In select() call I assign fd_write as 0. (Not defined or not check)
It help to save more processor time.

29.10.2006
Found bug in 0f00 packet. Far planes (more PLANERANGELIMIT) not deleted
corrected

3.6.2006
Added save all parameters after the .setparam command

19.3.2006
Added new plane - Pe-2 173 ser.
Instead of A6M5

19.12.2004
Added new command - attach.
In this command we can attach to any player in game.

20.11.2004
Packet 2100 was added one vale - otto_trackrange.
Now all values in this packet are known.
Also increased 7 mm and 12 mm damages.
Added new log file - scr. In this file logged all data about pilot's sortie.

16.11.2004
ground.c
SetRadarrange - added to RestartFields. It correst error in not
right radarrange image.

16.10.2004
Rewrite command.c and command.h files.
It was done to make more flexible addition new commands.
All commands now divided in 4 groups:
"Ordinary"
"Scenario"
"Admin"
"Test"
In LocalMode server will not roll RPS. Only one arena will be every time.



#############################################################################
26.5.99
Add debug logging level to "log_f" function.
Correct return value in "sh_ret" function. Now value not
depends of 8th bit in any byte. Type unsiggned.

Add handle new nickname for new players.
Now each plater will be asked about his name in arena (first time he get into)

6.6.99
Add new timer, add 1200 packet and none plane crashed on the runway,
add 1104 packets.
All planes fly.
Capyure field and starting altitude command added.


11.6.99
Add nickname handle (0x0aXX) packets.
Check nicknames according to WB chars, length.
Try to imbed drons.

12.6.99
ADD 1 DRONE!!!

13.6.99
Add login and index.

16.6.99
Add save setting after change plane, country, e. .t.c


27.6.99
  HandleLogin, SuccessLogin, read_socket, LoadNickname,
   ,    
 .     .
      .
 makefile,     *.h  
.

30.6.99
 MoveToField.       WarBirds
 .mov f2.   .mov hq    headquarter.

10.7.99
:
   .      .
    .
    .
    .  7.7.99
  2    svk,    .
      -    
. (0x0000).
.    .
    .    
  () .    
   .
         (500 )
  ( ).
        
  .

26.7.99
  2    .
   .
 onalarm(), Send0f00Packet(), Send0f01Packet, HandkeFEPacket()
 Send0f02Packet().
   d<30     .
  .
 .
    5 .
 strncmp()     name64   
 wbnickname.
  KEEP_ALIVE


28.7.99
        .
      .
      .


30.7.99
  .
     .     
          .
      .
     .
  Send0f00Packet.
            .
    ,      ,
       .
    far packet 0f01 - 8.8. ( 2-   ).
          0e00, 0f01

4.8.99
        
  . (sh_dt).
   .    0.5.

6.8.99
   .(SendAllWBMessage()).
   .


8.8.99
    .
     .
       wb_nicknames.
     .
    .
 Solarise  .

22.8.99
    0f01, 1104   .
    ( 2   0.5  
 )
  2   -    
 .

23.8.99
  2  -    
,        0e00, 
         
 .
         
    .

27.8.99
   .
  , ,      
.         .
     .

28.8.99
    .
   WEB Server.
         .
       .
  .ros
   .

29.8.99
    ,  
  .

3.9.99
     1202, 1203 (  )
1207 (//)  .
    .

11.9.99
 .
          
 gunnery.conf, damage.conf

12.9.99
         
.
     .
           .
       
    .

21.9.99
      ( 06).
    .
      .
 .

23.9.99
    .
   .

27.9.99
   !
  .     2- !

29.9.99
     MakeHeader

7.10.99
     
     

8.10.99
 .
    .

9.10.99
    .

17.10.99
  

22.10.99
   ,  time_coeff

23.10.99
   .
      .
.

25.10.99
       .
      0f02 - .
        .
 .
 .
      ,
  kill      .

***************************************************************
23.7.2000
Now we use version 1.05 for 2.7.6 version only.
Assume now it's basic version.
The version from 23.7.2000 is basic now.
***************************************************************
New plane Yak-1 added, score show last kills and last killers,
correct all lettle bugs with planes arrays.
This gunnery version is stable.
But need to correct 12.7 bullets.


7.11.2000
reworked p_server.c, network.c  to avoid freezing. Remove "continue"
operand, so select() pass through all while() cycle.

8.11.2000
Found BUG!
After ".withdraw" command server "freez".
Will find bug.
Rewrite RemoveFromSquad() function.
Add ".disband" command.
Add PackSquads() to pack all squads in its order.


10.11.2000
Edit user.s, server.h, config.c, util.c to lower first packet answer
0x1d01 load.
Extended in time packets forming to make more flexible.

12.11.2000
Edit server.h, p_server.c, util.c, network.c, ground.c, cv.c gunnery.c
Split send field status (during initialization client) to avoid
long server->client packet length. Correct error in CVRestart()
forget to ser cv[x].is = TRUE, so 1205 packets through and through network.

13.11.2000
Edit ground.h. New value NEW_WBMED need to be defined (or not) befor
p_server compile.

15.11.2000
Edit cv.h (correct CV[x] change kurs point)
and squad.s, after disband in memory squads name stay with "_"
edit network.c to correct old bug with CRC error

16.11.2000
Edit network.c (PacketHandle()), plane.c, plane_util.c (add I-16)

17.11.2000
Add new value - testuser.
In file testuser.conf I store nicknames users, wich will test new planes.
Also edit user.c, config.c, server.h, plane.c, command.c, fly.c
Now I add I-16, so if user has I-16 in his misc.bin then he permited
to choose I-16

18.11.2000
Edit ground.c (GetNewPlane()), plane.c (SendFlyCommand())

22.11.2000
gun_util.c, server.h, score_util.c

23.11.2000
gun_util.c
damage.conf, gunnery.conf, planeset.conf, ground.conf
Try to lower impulse, holes to make planes moew survivable.

24.11.2000
gun_gunnery.c to fined not defined guns
also i input next value: fire density!
corrected server.h, config.c, plane.c, gun_gunnery.c, fly.c, gun_util.c

25.11.2000
adjust koeff for gun_util.c (GetHoleD) and gun_rgunnery.c (find border energy)
alse reread HandleEnginePart()
also DecTolerance

26.11.2000
gun_util.c (DecTolerance)

28.11.2000
Now use not absolute value but relative value Missed_Toleance.
server.h, gun_util.c (RelativeTolerance, DestroyPart), gun_rgunnery.c

29.11.2000
server.h, command.h, command.c, gun_gunnery.c, gu_rgunnery.c, gun_util.c
Makefile

1.12.2000
gun_rgunnery.c. Added more sttistic during part destroy

2.12.2000
edit user.c to assign country in first time enter

3.12.2000
gun_util.c. Make Fugas effect relative to wb_time.month.

4.12.2000
Edit gun_util.c to up 7.62 bullets. And correct damage I-16 in damage.conf
to make it lower.
Edit user.c ExitFromFlight() so as some bugs occured. Also fly.c (HandleChutePosition()).

6.12.2000
Edit gun_util.c (DecTolerance) and gun_rgunnery.c (HandleTankPart & ExploseTank)

7.12.2000
CRC changes - check for comments "Igor" to see changes

8.12.2000
Edit gun_util.c:
GetEEnargy (10KJ->8KJ), GetFullShellEnergy(0.8->0.7) and GetBorderEnergy
to lower all coefficientce 1.2 times.
Now all kinetik energy make more power then ealier.

9.12.2000
Edit gun_rgunnery.c, plane_util.c allowed.crc, gunnery.conf, planeset.conf,
damage.conf, plane.c, fly.c

12.12.2000
edit gun_util.c (adjust koeff in DecToletance), gunnery.conf (SHVAK & MG151)
planeset.conf (Il2, La5, I16) damage.conf too.
New checkcrc.c from breedr.
THIS VERSION NAMED 1.3 RELEASE


14.12.2000
checkcrc.c, checkcrc.h, user.c (correct Mac CRC request)
new format allowed.crc

15.12.2000
Edit gun_rgunnery.c (TestForDinamicDamage(), HandleTankPart()).

17.12.2000
ground.c (TestClosedField()) correct bug with city objects.
util.c (onalarm()) to preset city objects
cv.c (HandleCVConfigString)

20.12.2000
command.c (cv test)
util.c (send grounf objects preset (onalarm()).
gun_util.c (GetGrowndWeight())
cv.c, cv.h - Correct CV bugs.
fly.c - PlaneRecode()


21.12.2000
The bug is in cv.c file
Now I use cv.c, cv.h from 15.12.00 with some additions

22.12.2000
Added cv_f() loggin function (config.c) and OpenCVFile() to log file
changed user.c, server.h, gunnery.c (HitCalculate()), cv.c, cv.h
changed cv structure.
New reached point test algoritm
Edit command.c
added INVULNERABLE value to superuser.
Edit gun_gunnery.c, gunnery.c, server.h, config.c

24.12.00
fly.c (PlaneRecode()) to show planes for testusers and
user.c to edit error in ExitFromFlight (bailed)

25.12.00
Correct bug in Send0f01Packet (fly.c) with wrong number of planes in NEAR massive
gun_util.c (GetHoleD) use not sqrt(density) but simply density

31.12.00
Added MAPFLAGS
Edit checkcrc.c (LoadCRCs) checkcrc.h
command.c, user.c, util.c, file.c and other files.
Added statistic for each weapon energy (gun_util.c).
Add new config values in arena.conf file
New function ReloadConfigFile added to reload only defined file, not all

2.1.01
user.c and files.c to provide full gunnery statistic.
planes.c (clear stat)


3.1.01
files.c and user.c and server.h
it help collect statistic for planes's
RELEASE 1.4 FULL BASE VERSION

6.1.01
Remove all 0x0d simbols from all *c and *.h files
also edit squad.c to load in memory name and logo without "_"

8.1.01
Add shell's velocity in GunDB array to get middle speed.
server.h, gun_util.c files.c

11.1.01
Added #define DOA option.
Now this server can operate as WB server so as DOA server
Changed number of files to make it able WB & DOA.
Also reduced GetHoleD() in gun_util.c

14.1.01
New format planeset.conf. Add Engine power, number of cylinders and cool system
(water or air). New algoritm to find engine destroy.

15.1.01
gun_rgunnery.c (HandkeEnginePart(), SetTimeKill()).
damage.conf to lowe I16 tolerance

16.1.01
ground.c (Send110aPacket())
user.c (Send1200Packet())
gun_rgunnery.c (HandleEnginePart())

17.1.01
command.c, gun_gunnery.c, server.h gun_rgunnery.c
there is bug with vulnerable plane.
I don't know where.

18.1.01
gun_util.c (StoreFireDensity())

19.1.01
ALL FILES!
test witg gcc -Wall option
find many bugs, corrected.

23.1.01
gun_rgunnery.c Added some statistic values to gunnery log (RelativeTolerance)

24.1.01
gun_rgunnery.c (Adjust coeff and tolerance)

25.1.01
gun_rgunnery.c (HandleCfusPart()). Adjust pilot kill.
Also make TIME_OVERLOAD (2 sec).
gunnery.c (find max energy in any shell, bullet)
gun_util.c
server.h
files.c

28.1.01
gun_rgunnery.c - HandleEnginePart()
made engines more stronger to damages.
Also server.h, ground_util.c, ground.h to make in compatible with DoA server

1.2.01
gun_rgunnery.c (adjust koeff), gun_util.c (DecTolerance)
low wing koeff and 20mm koef.
damage.conf (adjust armor)

2.2.01
gun_util.c (GetNewShellVelocity())
found and corrected error in negative velocity.

3.2.01
gun_rgunnery.c (HandleCfusPart()), gun_util.c, server.h
now player who kill pilot will awarded to victory.

7.2.01
gun_util.c (DecTolerance(), GetFugasAbility())
server.h (DamDB[])
planes.c (read_planeset_conf())
files.c (MakeDump())
Added full statistic about all hits in any plane's parts.

8.2.01
files.c (MakeDump())
gun_rgunnery.c. Revise all functions to assign "armor" low.
util.c (two_bytes restrict to 5 sec )
commands.c (.getspeed available for all)

13.2.01
server.h
damage.conf
gun_rgunnery.c (HandleRearPart)
gun_util.c (DecTolerance)

16.2.01
checkcrc.c ("return 1" instead off "return")
gun_gunnery.c (full array "0xff")
gun_rgunnery.c (remove velocity *= 0.95 for every next bullet)


26.2.01 (-ivan-)
user.c (RestrictPlayerField)
plane.c (line 889)
server.h (global var RTime)
Now we are count the restrict_time in this way:
restrict_time = Personallimit - flight_time,
so if your flight was about 2 minutes 55 seconds,
the restrict will be 5 seconds, and not 180.


02.03.01 (-ivan-)
gunnery.c (FireMine)
added a check for a friendly field.
Now you can use minen only at a distance
more than 12500 ft. from any friendly field.


06.03.01 (-ivan-)
server.h
files.c
config.c
user.c
fau.c
Added two variables:
CLEARSTATENABLE (0||1) - enables or disables .clear
REBUILDTIME - sets the structure rebuild time
Both variables had to be set in arena.conf.
Removed FLIGHT_TIME_RESRICT & REBULED_TIME
from server.h


06.03.01 (-ivan-)
gunnery.c (HitCalculate)
added a check for a Tower hit,
if you hited a Tower - no damage
will be calculated


06.03.01 (-ivan-)
!!!Temporary!!!
gunnery.c (Handle1005Packet)
set Tower time to RebuildTime/0.5
set Field enable_cap to FALSE
untill Tower is up to prevent recapture bug.

13.03.01 (-ivan-)
city.c (HandleCityConfigString)
all city objects are now have the
same country assignment as near_field
to that object

13.03.01 (-ivan-)
server.h
gunnery.c
score.c
Added CVs and Ships to the scoring
and statistics
29.3.2001
Edit network.c. Added flush=0 to handle WBIII packets (breedr finded bug)
gun_util.c (less holes for guns GetHoleD() and DecTolerance())
use cbrt() function instead of sqrt() function for fire density
gun_rgunnery.c (up probably explose from 0.95 to 0.99 for 20mm cannons)

31.3.2001
Edit util.c (onalarm()).
Corrected Send0f00Packet, flush and RemoveFromAllDB(). So as was chain
"Remove Plane" "Add Plane" due bad connection. FE was heavy loaded.
server.h
Added ARENA_TIMEOUT and MOVING_TIMEOUT. Show how second to wait befor disconnect
client and not to send moving coordinats.
fly.c
RemoveFromAllDB, Send0f00Packer(), Send0f00DronPacket().
Tested planes for flush

5.4.2001
fly.c (move GetFieldDistance() to user.c)
users.c (apply GetFieldDistance() to assign landed or crushed status.
Edit GetFieldDistance() function. (user.c) Read captured policy there.
Added SendPlanesCrater() (user.c) to create crater from explosed plane
and make damages to ground target.
Edit server.h (add EXPLOSED_PLANE 112)
Edit gun_util.c (GetWeaponString()).

8.4.2001
Edit gunnery.h.
Will standartize all damaged parts. Going to edit all "gunnery" files
to remove "numeric" part assign. Only mnemonic.
To permit change alldamaged part in future with minimum code change.

10.4.2001
fly.c and util.c
Tru to restring MOVING_TIMEOUT/(6*0.5)
So as it was earlier MOVING_TIMEOUT/(3*0.5) now time restricted twice.
It may help to avoid warps.

11.4.2001
planes.c, fly.c
try to avoid bug with "double fly button" due netlag

13.4.2001
network.c

17.4.2001
fly.c (PlaneRecode()) instead og "63" use LAST_PLANE

18.4.2001
edit network.c read_socket(). Add write raw socket input data on 12th debug level.

24.4.2001
Changed many files. It concerned log level.
Also edit netowrk.c. Corrected bug with infinit loop.
Added 82 planes to server.h, plane_util.c.
Changed damage.conf, planeset.conf and some other files.
Preper version for extenden WB277 with 82 planeset.

25.4.2001
gun_util.c
Try to up 20mm and explose effect.
gun_rgunnery.c (HandleFuelPart())

27.4.2001
Add new config file "transc.conf".
Now server get Transc[X] values from this file.
Edit server.h, city.c, ground.c.
Delete ground.h file.

30.4.2001
Corrected bug in user.c (GetField Distance()) with capture.

3.5.2001
command.c (added handle 1e00 packet)
server.h (added proto function for 1e00 packet)
user.c (Handle1e00Packet())

5.5.2001
Changed many files for set right debug level message and correct gunner
position and gunner update.

6.5.2001
Change flag "_WIN32" to "__CYGWIN32__" so as in new compiler from cygnus
not supported _WIN32 flag.
Combine plane_util.c from 2.7.6 and 2.7.7.
Now "IL_2" flag divide server for 63 palnes and 82 planes.
Tru to make selftest server for data CRC.

7.5.2001
Edit damage and planeset conf for new planes.
Edit radio.c (avoid NULL messages).
Edit files.c (MakeDump())

9.5.2001
gun_util.c (StoreFireDensity()). Increase killer's weight for 30mm and 20mm.
server.h - define 84 planes now.
damage.conf, planeset.conf - added 2 planes in addition to several new.
Other enhanced.

10.5.2001
user.c (Handle110dPacket(), Handle1e00Packet()).

12.5.2001
command.c, files.c, server.h, config.c, arena.conf 
Set wrighte EASYMODE in arena.
Add new file (hmack.c).
I try to add HumanAck.
Changed many files.

13.5.2001
score.c (CheckIfBomber) add new bombers with ID > 60.
Remove all "define IL_2" preprocessor flag.
This version support ONLY new (84 and more slots) misc.bin

14.5.2001
Added Human Ack (hmack.c). Now I use packet 1109 wright.
It'll help me to load ammo independently for all gunners.

16.5.2001
Add restrict to Human Ack. Time restrict now works.

20.5.2001
gun_util.c
lower DecTolerance for 20mm and GetNewShellVelocity() lost 20% of velocity.
gun_util.c (GetBorderEnergy())
Tets for number engines.
If more then 1 (2 or more engines), applay "km" for some values.
It will up wing and cfuselage tolerance.
Also down energy for 30mm shells. (GetFugasAbility()).
Fly.c (corrected double values (Handle0e04Packet)

22.5.2001
cv.h and cv.c
made more sharp cv_yaw (float). Instead of integer.

23.5.2001
gun_util.c. GetBorderEnergy(). Set cfus koeff = 26 (13 was). And the same time
lower all Cfus armor twice.
Also and for Rfus
Edit damage.conf

24.5.2001
config.c
fly.c
user.c
Makefile
Added preprocessor flag WB277R0
for WB2.7.7R0 release.
For new release (2.7.7R3) this flag not need.

26.5.2001
gun_gunnery.c (TestForDinamicDamage()).
strength = Armor/0.03 now.
server.h - all squads = 200.
gun_util.c (DecTolerance(), Cfus and Rfus koeff lower )
squads.c (PackSquads()) Now I remove squad whrere only 1 member
planes.c (AssignFieldPlanesType())
1st month new plane available on big field
2st month new plane available on big field and CV (if yes)
3st month new plane available on big field, middle field and CV (if yes)
4th monst - all fields


30.5.2001
fly.c.
Send0f00Packet(). Correct bug with "Invalid slot"
Handle0e04Packet() Correct bug with radar
Handle1005Packet(). Add message about field's capture (breedr)

31.5.2001
gun_util.c (GetBorderEnergy()) and damage.conf, planeset.conf
Adjust all square according to history

1.6.2001
city.c, util.c
correct error with reopened field and closed all objects in onalarm()

2.6.2001
Added variable time to recover ground objects depends of destroy weapon heavy.
util.c, gunnery.c
Added strategy. Fuel restrict.
strategy.c, gunnery.c, util.c, plane.c
Added test for destroy radio channel

3.6.2001
Number of planes till 85 (Jeep Ack) and Send1200Packet() added feature
for squad leaders. Now they can see visual radarrange

5.6.2001
Added ".mapflags" command (command.c, command.h, user.c)

8.6.2001
radio.c, user.c
Added Handle0300Packe() Farid's patches about wrong channels
In EnterArena() and Handle110dPacket() Send1e04Packet some changes from Farid.

9.6.2001
config.c, fly.c.
Added check for speedhack.
Will kill engine at once.

11.6.2001
hmack.c
Added restrict for ALL exit status for Human Ack.
If flight time less then Personallimit then restrict for flight.
Added 4 new planes (109T1, 109G2/R6, N1K1-J, N1K2-J) and Ack Jeep
So new damage and planeset files added.

15.6.01
Added medals awarded.
It's interesting to fly.

15.6.01
R3 now installed.

17.6.01
user.c (Send1200Packet()) correct error, added 3 char in the end of packet 
(16, 1, 5)
plane.c .Calculate K_tolerance for every plane now using other function.
Assune MaxG now for calculate Tolerance. And use AirSpeedTilerance from
misc.bin file of FH.
Added medals for field capture, call plane_zero() befor accept socket (p_server.c)
Also calculate general pilot's flight time.

Added Gload.

19.6.01
Added login.c file.
I rewrite all functions concern load nickname, password and login there.
We will try to minimize read/write time
gun_util.c
DecTolerance.
edit koeff for Rfuselage (0.8) and Cfuselage (0.7)
It may be more stable now

21.6.01
login.c (ProcessLogin) new function (wrote by breedr) so it may speed up
login's process.
gun_util.c (StoreFireDensity()).
Not count complex weight with several the same parts.
TestForDinamicDamage() - strenght Rfuselage & Cfuselage 30% up

25.6.01
TestForDinamicDamage()
not test Cfuselage & Rfuselage for damage now

1.7.01
server.h
Added:
#define FIELD_OBJECTS 128 /* number of objects in one field */
wb_fields[N].objects[FIELD_OBJECTS]; /* cash for fields objects */

ground.c
read_objects_config()
Now all fields has his own field's objects cash

gun_util.c
GetRandom()
less time spend to calculate random.

fly.c
GetOwnFieldDistance() and GetOwnFieldDronDistance()
Test only preset tower coord.

util.c
onalarm()

8.7.01
Added test feature for FreeHost
Now we can test gunnery via startup
p_server [arena_name] test
And all will show.
Added new file (test_mode.c)
Also changed DecTolerance(), HandleTankPart
fly.c	Send0f00Packet()
Only 5 planes may be registed at once.
It is to avoid FE overload and FPS crush

server.h
added sint.cur_day

util.c
onalarm(). added log file rotate

p_server.c
added asign first meaning for sint.cur_day.

10.7.01
gun_util.c
DecTolerance() - added ref_tolerance as flight_weight/2500;

12.7.01
gun_util.c
GetArmor() added.
For more sharp armor calculate.

14.7.01
commands.c, score.c, score_util.c - corrected english language mistakes.
gun_util.c DecTolerance - corrected ref_tolerance (float)
gun_rgunnery.c
HandleEnginePart()
SetTimeKill()

15.7.01
command.c (Handle2101Packet added handle)
gun_gunnery.c (Handle2101Packet added)


27.07.01 (-ivan-)
gun_rgunnery.c

Fixed a bug with Vstab & Hstab controls out if it was a hit with 30-37mm:
DestroyPart(id) was changed to DestroyPart(glob_idx), to prevent a 
vator & rudder out from hunter's plane, not from victim's... ;)))


03.08.01 (-ivan-)
radio.c

Commented out "if the radio is down on a field" - too boring,
and still not so usefull for a gameplay.

03.08.01 (-ivan-)
plane.c

Only testuser can fly from the closed field now, not user or superuser

7.8.01 (aike)
Combined ivan's version and mine.
Now new version is base.
Added allowed.crc and remove all message like "downloas new misc.bin.."
All message is "New FHInstall.exe"

8.8.01 (aike)
Added two new planes 90 & 91 index
Changed planeset.conf and damage.conf.
Also needed to change appropriate files for planes
fly.c (PlaneRecode)
server.h (NUM_PLANES)
plane_util.c (GetEngine, GetPlaneString)

10.8.01 (aike)
corrected bug with not destroyed part (TestTimeKill()) gun_rgunnery.c
and added some stat about exit plane's damages (user.c, plane.c)

11.8.01
changes fly.c, util.c to avoid overload FE.
It concern time sequence of near and far slot's packet.

12.8.01
gun_rgunnery.c
TestForDinamicDamage()
Up strenght coeff. Was Armor/0.03, now Armor/0.028

20.8.01
found bug with overload in math function "sqrt"
now all sqrt call has to have such format
sqrt((double)x-(double)x)*(.....
ONLY double!!!!
correct cv.c and try to correct all sqrt call
correct fly.c to replace (float) in sqrt to (double)
Changed all files where was sqrt(float)....
I think now will not be overload CPU :)

21.8.01
Added new var FOOT to set this value for all programm.
Yarler was to var: 0.3074 & 0.3045
Now I use one for all.

22.8.01
Added Handle110dPacket() to destroy cheaters engines and elevator.

24.8.01
Corrct GREAT bug with system time.
Function get_system_time().
I've lost high digit ealera, now this bug was removed.

26.8.01
Rised 7.62 and 12.7 (DecTolerance())
Corrected bug in ground.c (SendAllFieldCaptured)
Also some cv.c (CorrectCVCoord)

6.9.01
Handle2101Packet()
Found bug in distance calculate. Corrected.

7.9.01
Added 2100 packet (otto value set)
and edit server.h, plane.c, user.c, config.c, server.h, command.c, command.h
Now we can edit all values.

9.9.01
Now fuel restrict minimum = 25%
Changed some code in gun_rgunnery.c.
It may help to strenght guns 7.62 and 12.7

19.9.01
Added TestSpeedHack() - this function analize 0e00 packets and server interrupts.
If 0e00 packets 10% more then server interrupts, then FE use speedhack
feature.

22.9.01
New count kills and assits. If player destroy some part, then it's "weight"
in victim DB increased.
Edit gun_rgunnery.c, gun_util.c, user.c, server.h

23.9.01
Compiled all with CFLAGS = -O2, found some bugs and corrected it.
Changed many files.

25.9.01
Added CV artillery
Now CV fight to enemy filed from 15000m

30.9.01
Send0f00Packet, Create0f00Packet, Send0f05Packet

13.10.01
Correct some bugs in close field. Now commandos not shoot to closed field
Also more random in grenade shoot (commandos)

21.10.01
Added rotatate log and destroy objects.
Now all objects destroied by HitCalculate function.

4.11.01
Changed network.c (HandlePack) command.c (HandleCommand)
p_server.c (assign sockets and test overload)
server.h (MAX_INPUT_PACKET_LENGTH)
So as some server "core" occured.
Try to exclude server attack.

[andrey@seawind a]$ cat a.c
#include <stdio.h>
#include <stdlib.h>
main()
{
        int a,b;
	b=100;
	a=strlen(b);
	printf("%d %d\n",a,b);
}
[andrey@seawind a]$ gcc a.c
a.c: In function `main':a.c:
7: warning: passing arg 1 of `strlen' makes pointer from integer without a cast
[andrey@seawind a]$ ./a.out
Segmentation fault (core dumped)
[andrey@seawind a]$ gdb a.out core
GNU gdb 4.17.0.11 with Linux support
Copyright 1998 Free Software Foundation,
Inc.GDB is free software,
covered by the GNU General Public License,
and you arewelcome to change it and/or distribute
copies of it under certain conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB.  
Type "show warranty" for details.
This GDB was configured as "i386-redhat-linux"...
Core was generated by `./a.out'.
Program terminated with signal 11, Segmentation fault.
Reading symbols from /lib/libc.so.6...done.
Reading symbols from /lib/ld-linux.so.2...done.
#0  0x40078037 in strlen (str=0x64 "") 
at ../sysdeps/i386/strlen.c:27../sysdeps/i386/strlen.c:
27: No such file or directory.
(gdb) quit
[andrey@seawind a]$

13.11.01
The latest stable version
Remove malloc() call from command.c
Now I use statis string buffers.
Also test in onalarm() for interrupts read socket and handlde packets.

15.11.01
New server interrupt architecture.
I use select() as timer now. Excluse external timer.
Try to collect statistic.
Now all packets will not interrupted.

10.12.01
cv.h, cv.c p_server.c
new CV moving.
Test it and try to buled.

15.12.01
correct cv speed. Now after CV hit its speed lower.
Use "refresh_speed" to refresh time.

27.1.02
Correct bug with invisible hmack
Edit many files
All problem was in Handle0e04Packet
I havn't get two_bytes values. So in 5 sec any hmack disappear.

31.1.02
score.c
corrected statistic bug

10.2.02
Corrected 0f00, 0f01 packet, try to avoid stells.
All 0f01 array now grow from low distance to higher distance

2.3.02
Added strategy!!!
Now city and not field's ground targets will cause time recovery.

16.3.02
Commandos available for Li-2 and Ju-52 now. And reds and golds can use
commandos now.

8.4.02
New server version with 100 palnes.
Added several new planes. Also changed cv[array].id1, cv[array].id2 till
double size (8 bytes)

1.5.02
Corrected bug in CV.
It occure when system time grow up 0x80000000 value.
Now CV has to work.

11.5.02
Added new ".hmack -" or ".hmack +" commands

26.5.02
Corrected cv.c. Now we test not only time in TestPoint() but and calculated ticks

8.6.02
Corrected planeset.conf

9.6.02
Added RND_PER_SECOND=1 in server.h
If now value = 1 then 1 ping equal only 1 round.
If this value not 1 then 1 ping equals according to gunnery.conf
Also test new wb3d.exe for this feature and in function SetTimeKill (gun_rgunnery.c)
tank fire = eng damage + oil leak + fuel leak.

12.6.02
cv.h, cv.c, user.c, util.c - added Borodin's changes to number of CV array.
There was only 4 earler, now may be more then 4.

14.6.02
ground.c, p_server.c, user.c changed.

16.6.02
New field type added - 5. It's convoy field. No CV, only tankers and DD.
gun_rgunnery - make easear to kill engine, so as Round per second = 1.

5.7.02
Time to reup for "city# in 4 times more then "field" objects.

6.7.02
Added plane 103(ki27) and 104(Bf109F2)
Also FAU now has ID=102

23.7.02
Added "antiflood" feature un Handle0300Packet().
Now any user permits not more then 4 message in 1 sec.
If user has more then 4 message, it not displayed for all
in server.

31.8.02
Added vew.crc file and test for each cockpit CRC (breedr).
Changed gun_rgunnery.c. Added victim and hunter nicknames to logs.
It help to find error and cheater shots.

1.9.02
cv.c.
Find bug in extream cv speed. When time pass from 0xffffffff -> 0x00000000 then
last_koeff value calculated with error.
Now I restrict last_koeff value from 0 to 2 range.

13.9.02
fly.c
I found bug with zeroed array "fe_dat_all_*" in CreateArrayDistance().
Corrected. Invisible may be disapperaed.

26.9.02
Added SendHlsCommsnd(). Packet 1e19. It help to see own squad.

2.11.02
Added Il-2M (105 plane). Also added more information in GetFieldStatus (files.c),
corrected bug with land on enamy field, build random to explose value calculate.

13.11.02
Corrected bug with not reup fields.
Now all fields have to be reuped. The bug was in SINK_BOAT value.

30.11.02
Added random value in explose energy. From 5%-25%.
otto values set defaults in gunnery.h
So some fileas were changed.

15.12.02
gun_util.c, gun_rgunnery.c. More effect to 7.62 in GetImpulse() function.
Also made flexible "big_k" in DecTolerance().

2.1.03
This is stable version. Next will correct some gunnery values.

24.1.03
New version with 113 planes. Corrected damage.

15.4.03
New version by breedr. It allows to start several arenas in one computer separatly.
Added .set param value command.

22.4.03
Added banlist. New version of breedr.

27.4.03
Changed square calculated for Cfus & Rfus (from 1.2 ->0.5 and 1.4 -> 0.5).
planes.c

1.5.03
breedr found and corrected bug in cv.c. It depends cv reup.

7.11.03
Added command .setparams SHOWCHUTE. It permit to show or not chute after
jumping from plane.

18.7.04
The stable version. Corrected all little bugs. Next version will automatically
switch arenas after end of RPS.

19.7.04
New RPS version. All available arenas stored in wbserver.conf file.
Server read it and after the current RPS finished load next arena
automatically.
Corrected great number of files. Many network functions moved
from p_server.c to network.c.
Now not positevlt start server with arena argument. Current arena
readed from lastarena.conf file.
