1

Topic: Teewars server crash

Hi,

I have found no topic or bug related to this, so I'm posting here. I have been running 2 Teewars servers for a few days now, and both of them crashed two times (approx. every two days). Is this a known bug ? I am running an up-to-date Debian Etch 32bits, self-compiled teewars_srv 0.3.3 and the servers work perfectly (until they crash of course). Here are the console logs :


Server 1 : DM

..... (previous maps)
[47957c9c][game]: rotating map to dm6
[47957c9c][datafile]: datafile loading. filename='data/maps/dm6.map'
[47957c9c][server]: data/maps/dm6.map crc is 916bed50
[47957c9c][datafile]: loading data index=9 size=251
[47957c9c][game]: -- Death Match --
[47957c9c][server]: player is ready. cid=4
[47957c9c][server]: player is ready. cid=2
[47957c9c][server]: player as entered the game. cid=6
[47957c9c][game]: join player='6:Kilroy'
[47957c9c][chat]: *** Kilroy entered and joined the spectators
[47957c9c][assert]: /home/beuiot/servers/teewars/teewars-0.3.3-src/src/engine/server/es_server.c(265): client_id is not valid

Server 2 : CTF (race)

..... (previous maps)
[47951c8c][game]: rotating map to race8
[47951c8c][datafile]: datafile loading. filename='data/maps/race8.map'
[47951c8c][server]: data/maps/race8.map crc is c967dc11
[47951c8c][datafile]: loading data index=7 size=534
[47951c8c][game]: -- Capture The Flag --
[47951c8c][server]: player is ready. cid=2
[47951c8c][server]: player is ready. cid=1
[47951c8c][server]: player as entered the game. cid=2
[47951c8c][game]: join player='2:Julius'
[47951c8c][chat]: *** Julius entered and joined the red team
[47951c8c][server]: player as entered the game. cid=1
[47951c8c][game]: join player='1:Noxitu'
[47951c8c][chat]: *** Noxitu entered and joined the blue team
[47951c8f][chat]: *** Noxitu joined the red team
[47951c8f][game]: kill killer='1:Noxitu' victim='1:Noxitu' weapon=-1 special=0
[47951c8f][game]: cid=1 team=0
[47951c96][assert]: /home/beuiot/servers/teewars/teewars-0.3.3-src/src/engine/server/es_server.c(152): id error
Erreur de segmentation (core dumped)

Does anyone know what's happening ?

2

Re: Teewars server crash

Not known. Can you compile a debug version ("bam debug" generates a teewars_srv_d) and run it through gdb and give me a backtrace when it happens it would help a lot. If you don't know how to do this, say so and I will provide instructions.

3

Re: Teewars server crash

Done. Compiled the debug version and runned it through gdb. I'll post the backtrace here when it crashes again.

Thanks for the quick reply smile

4

Re: Teewars server crash

It just crashed ! yay. I did a backtrace, and upped too. If this is not enough and you need some other stuff, I'm keeping gdb openned until someone replies.

[4796359b][server]: player as entered the game. cid=5
[4796359b][game]: join player='5:kenny gay brazilero!'
[4796359b][chat]: *** kenny gay brazilero! entered and joined the spectators
[4796359b][assert]: /home/beuiot/servers/teewars/teewars-0.3.3-src/src/engine/server/es_server.c(265): client_id is not valid



Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread -1210833216 (LWP 1262)]
0x08051870 in dbg_break () at /home/beuiot/servers/teewars/teewars-0.3.3-src/src/engine/e_system.c:62
62              *((unsigned*)0) = 0x0;
(gdb) bt
#0  0x08051870 in dbg_break () at /home/beuiot/servers/teewars/teewars-0.3.3-src/src/engine/e_system.c:62
#1  0x08051866 in dbg_assert_imp (
    filename=0x8073be8 "/home/beuiot/servers/teewars/teewars-0.3.3-src/src/engine/server/es_server.c", line=265, test=0,
    msg=0x8073c8b "client_id is not valid") at /home/beuiot/servers/teewars/teewars-0.3.3-src/src/engine/e_system.c:56
#2  0x08056930 in server_getclientinfo (client_id=-1, info=0xbf84af58)
    at /home/beuiot/servers/teewars/teewars-0.3.3-src/src/engine/server/es_server.c:265
#3  0x08061218 in player::tick (this=0x82cc420)
    at /home/beuiot/servers/teewars/teewars-0.3.3-src/src/game/server/gs_server.cpp:1197
#4  0x0805ef13 in game_world::tick (this=0x82d4fe8)
    at /home/beuiot/servers/teewars/teewars-0.3.3-src/src/game/server/gs_server.cpp:315
#5  0x0805efed in mods_tick () at /home/beuiot/servers/teewars/teewars-0.3.3-src/src/game/server/gs_server.cpp:1783
#6  0x080583e7 in server_run () at /home/beuiot/servers/teewars/teewars-0.3.3-src/src/engine/server/es_server.c:953
#7  0x08058645 in main (argc=4, argv=0xbf84b104)
    at /home/beuiot/servers/teewars/teewars-0.3.3-src/src/engine/server/es_server.c:1039
(gdb) up
#1  0x08051866 in dbg_assert_imp (
    filename=0x8073be8 "/home/beuiot/servers/teewars/teewars-0.3.3-src/src/engine/server/es_server.c", line=265, test=0,
    msg=0x8073c8b "client_id is not valid") at /home/beuiot/servers/teewars/teewars-0.3.3-src/src/engine/e_system.c:56
56                      dbg_break();
(gdb) up
#2  0x08056930 in server_getclientinfo (client_id=-1, info=0xbf84af58)
    at /home/beuiot/servers/teewars/teewars-0.3.3-src/src/engine/server/es_server.c:265
265             dbg_assert(client_id >= 0 && client_id < MAX_CLIENTS, "client_id is not valid");
(gdb) up
#3  0x08061218 in player::tick (this=0x82cc420)
    at /home/beuiot/servers/teewars/teewars-0.3.3-src/src/game/server/gs_server.cpp:1197
1197                    if(server_getclientinfo(client_id, &info))
Current language:  auto; currently c++
(gdb) up
#4  0x0805ef13 in game_world::tick (this=0x82d4fe8)
    at /home/beuiot/servers/teewars/teewars-0.3.3-src/src/game/server/gs_server.cpp:315
315                             ent->tick();
(gdb) up
#5  0x0805efed in mods_tick () at /home/beuiot/servers/teewars/teewars-0.3.3-src/src/game/server/gs_server.cpp:1783
1783            world->tick();
(gdb) up
#6  0x080583e7 in server_run () at /home/beuiot/servers/teewars/teewars-0.3.3-src/src/engine/server/es_server.c:953
953                                             mods_tick();
Current language:  auto; currently c
(gdb) up
#7  0x08058645 in main (argc=4, argv=0xbf84b104)
    at /home/beuiot/servers/teewars/teewars-0.3.3-src/src/engine/server/es_server.c:1039
1039            server_run();
(gdb) up
Initial frame selected; you cannot go up.

5

Re: Teewars server crash

Great work! Need a little more info. I want more of the log before it happend, and the result of these two gdb commands.

# print players
# print sizeof(player)

6 (edited by beuiot 2008-01-22 22:50:01)

Re: Teewars server crash

there you go :

(gdb) print players
$1 = (player *) 0x82cb5fc
(gdb) print sizeof(players)
$2 = 4

And the log from the last map change :

[47963592][chat]: 1:-1:Vo0do0: dritter
[47963596][chat]: 2:-1:MasterOfDesaster: erster
[47963597][server]: player is ready. cid=5
[47963598][game]: rotating map to race12
[47963598][datafile]: datafile loading. filename='data/maps/race12.map'
[47963598][server]: data/maps/race12.map crc is c161524a
[47963598][datafile]: loading data index=8 size=1254
[47963598][game]: -- Capture The Flag --
[47963598][server]: player is ready. cid=1
[47963598][server]: player is ready. cid=0
[47963598][server]: player is ready. cid=2
[47963598][server]: player is ready. cid=4
[47963598][server]: player is ready. cid=3
[47963598][server]: player as entered the game. cid=2
[47963598][game]: join player='2:MasterOfDesaster'
[47963598][chat]: *** MasterOfDesaster entered and joined the red team
[47963598][game]: pickup player='2:MasterOfDesaster' item=1/0
[47963598][game]: pickup player='2:MasterOfDesaster' item=1/0
[47963598][game]: pickup player='2:MasterOfDesaster' item=1/0
[47963598][game]: pickup player='2:MasterOfDesaster' item=2/3
[47963599][server]: player as entered the game. cid=1
[47963599][game]: join player='1:Vo0do0'
[47963599][chat]: *** Vo0do0 entered and joined the red team
[47963599][game]: pickup player='1:Vo0do0' item=2/3
[47963599][game]: pickup player='1:Vo0do0' item=1/0
[47963599][game]: pickup player='1:Vo0do0' item=1/0
[47963599][game]: pickup player='1:Vo0do0' item=1/0
[47963599][server]: player as entered the game. cid=0
[47963599][game]: join player='0:.:[A]ma[Z]ing:.'
[47963599][chat]: *** .:[A]ma[Z]ing:. entered and joined the blue team
[47963599][server]: player as entered the game. cid=4
[47963599][game]: join player='4:rockdude'
[47963599][chat]: *** rockdude entered and joined the blue team
[47963599][server]: player as entered the game. cid=3
[47963599][game]: join player='3:FoH | Ijey'
[47963599][chat]: *** FoH | Ijey entered and joined the red team
[47963599][game]: pickup player='3:FoH | Ijey' item=1/0
[47963599][game]: pickup player='3:FoH | Ijey' item=1/0
[47963599][game]: pickup player='3:FoH | Ijey' item=1/0
[47963599][game]: pickup player='3:FoH | Ijey' item=2/3
[4796359a][conn]: asking for resend 35 34
[4796359a][game]: pickup player='2:MasterOfDesaster' item=1/0
[4796359a][game]: pickup player='2:MasterOfDesaster' item=1/0
[4796359a][conn]: asking for resend 34 36
[4796359a][conn]: asking for resend 35 36
[4796359a][conn]: asking for resend 34 36
[4796359a][game]: pickup player='2:MasterOfDesaster' item=1/0
[4796359a][game]: pickup player='2:MasterOfDesaster' item=1/0
[4796359b][game]: pickup player='2:MasterOfDesaster' item=1/0
[4796359b][game]: pickup player='2:MasterOfDesaster' item=1/0
[4796359b][game]: pickup player='2:MasterOfDesaster' item=1/0
[4796359b][game]: pickup player='2:MasterOfDesaster' item=1/0
[4796359b][game]: pickup player='2:MasterOfDesaster' item=1/0
[4796359b][server]: player as entered the game. cid=5
[4796359b][game]: join player='5:kenny gay brazilero!'
[4796359b][chat]: *** kenny gay brazilero! entered and joined the spectators
[4796359b][assert]: /home/beuiot/servers/teewars/teewars-0.3.3-src/src/engine/server/es_server.c(265): client_id is not valid

I hope this helps. Gdb is still running, just in case wink

7

Re: Teewars server crash

sizeof(player).. not sizeof(players)

8

Re: Teewars server crash

hehe sorry about that. There you go :

(gdb) print sizeof(player)
$3 = 724

9

Re: Teewars server crash

# print clients[5]
# print players[5]

if you still have it running.

10

Re: Teewars server crash

Yep it is still running. The output of these commands are quite long, I hope I did it right :

(gdb) print clients[5]
$5 = {state = 3, latency = 112, snap_rate = 2, last_acked_snapshot = -1, snapshots = {first = 0x0, last = 0x0},
  latestinput = {data = {0 <repeats 128 times>}, pred_tick = 0, game_tick = 0, timeleft = 0}, inputs = {{data = {0, 0, 287,
        -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 35145}, {data = {0, 0,
        287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 39065}, {data = {0,
        0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 42859}, {data = {
        0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 30273}, {
      data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 35105},
    {data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 39045}, {
      data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 43083},
    {data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 30109}, {
      data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 35036},
    {data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 38962}, {
      data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 34832},
    {data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 38861}, {
      data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 26664},
    {data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 30960}, {
      data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 34959},
    {data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 38789}, {
      data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 42723},
    {data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 30079}, {
      data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 34792},
    {data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 38738}, {
      data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 42800},
    {data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 46613}, {
      data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 30604},
    {data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 34657}, {
      data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 34703},
    {data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 38620}, {
      data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 26491},
    {data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 29883}, {
      data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 34513},
---Type <return> to continue, or q <return> to quit---
    {data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 38569}, {
      data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 38632},
    {data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 26618}, {
      data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 30628},
    {data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 34525}, {
      data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 38023},
    {data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 42551}, {
      data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 26314},
    {data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 29655}, {
      data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 30059},
    {data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 34355}, {
      data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 45127},
    {data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 29530}, {
      data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 26364},
    {data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 38293}, {
      data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 34377},
    {data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 22378}, {
      data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 26379},
    {data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 30369}, {
      data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 34346},
    {data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 38255}, {
      data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 26309},
    {data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 14153}, {
      data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 2105}, {
      data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 2097}, {
      data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 10078},
    {data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 58059}, {
      data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 53941},
    {data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 57997}, {
      data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 53913},
    {data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 33862}, {
---Type <return> to continue, or q <return> to quit---
      data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 53856},
    {data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 57929}, {
      data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 61925},
    {data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 49893}, {
      data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 53814},
    {data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 57844}, {
      data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 61834},
    {data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 49802}, {
      data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 53707},
    {data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 57756}, {
      data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 53649},
    {data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 49721}, {
      data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 45695},
    {data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 49661}, {
      data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 37618},
    {data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 49615}, {
      data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 45603},
    {data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 49573}, {
      data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 53473},
    {data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 49537}, {
      data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 61530},
    {data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 49495}, {
      data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 53405},
    {data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 49443}, {
      data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 61453},
    {data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 57408}, {
      data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 45380},
    {data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 49362}, {
      data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 53278},
    {data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 57324}, {
      data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 45303},
---Type <return> to continue, or q <return> to quit---
    {data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 49290}, {
      data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 53222},
    {data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 57272}, {
      data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 53177},
    {data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 41218}, {
      data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 53125},
    {data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 49181}, {
      data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 53082},
    {data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 49146}, {
      data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 45126},
    {data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 41107}, {
      data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 53019},
    {data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 49077}, {
      data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 45065},
    {data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 49061}, {
      data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 45027},
    {data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 40999}, {
      data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 52911},
    {data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 40953}, {
      data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 44935},
    {data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 48912}, {
      data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 52807},
    {data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 56886}, {
      data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 44870},
    {data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 48868}, {
      data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 52754},
    {data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 56846}, {
      data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 44793},
    {data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 40777}, {
      data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 44755},
    {data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 52734}, {
---Type <return> to continue, or q <return> to quit---
      data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 56472},
    {data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 44677}, {
      data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 40655},
    {data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 44527}, {
      data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 52637},
    {data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 52617}, {
      data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 40604},
    {data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 48594}, {
      data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 48359},
    {data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 52585}, {
      data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 40245},
    {data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 44536}, {
      data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 44521},
    {data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 48488}, {
      data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 52478},
    {data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 40445}, {
      data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 44420},
    {data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 44391}, {
      data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 48374},
    {data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 48369}, {
      data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 40342},
    {data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 44215}, {
      data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 48303},
    {data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 52283}, {
      data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 40218},
    {data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 40239}, {
      data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 44218},
    {data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 48203}, {
      data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 52191},
    {data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 40161}, {
      data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 44147},
---Type <return> to continue, or q <return> to quit---
    {data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 48118}, {
      data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 47892},
    {data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 52095}, {
      data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 39876},
    {data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 44031}, {
      data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 47968},
    {data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 51743}, {
      data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 35967},
    {data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 39856}, {
      data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 43931},
    {data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 43912}, {
      data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 47889},
    {data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 39804}, {
      data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 39842},
    {data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 43399}, {
      data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 47818},
    {data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 51804}, {
      data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 35757},
    {data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 39637}, {
      data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 43720},
    {data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 47708}, {
      data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 51686},
    {data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 35372}, {
      data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 39612},
    {data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 43615}, {
      data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 47266},
    {data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 35567}, {
      data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 35245},
    {data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 39452}, {
      data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 43503},
    {data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 47504}, {
---Type <return> to continue, or q <return> to quit---
      data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 35451},
    {data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 39317}, {
      data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 42680},
    {data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 47425}, {
      data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 43339},
    {data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 30487}, {
      data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 35295},
    {data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 39245}, {
      data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 43311},
    {data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 30348}, {
      data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 35263},
    {data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 39172}, {
      data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 43226},
    {data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 47067}, {
      data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 26974},
    {data = {0, 0, 287, -183, 0, 2, 0, 0, 2, 2, 0 <repeats 118 times>}, pred_tick = -1, game_tick = -1, timeleft = 38491}},
  current_input = 0, name = "kenny gay brazilero!", '\0' <repeats 11 times>, clan = '\0' <repeats 31 times>, score = 0}
(gdb) print players[5]
$6 = {<entity> = {_vptr.entity = 0x8074488, prev_entity = 0x0, next_entity = 0x82cbe78, prev_type_entity = 0x0,
    next_type_entity = 0x82cbe78, id = 9, proximity_radius = 28, flags = 0, objtype = 3, pos = {{x = 0, u = 0}, {y = 0,
        v = 0}}}, static phys_size = <optimized out>, hitobjects = {0x0, 0x0, 0x100, 0x0, 0x0, 0x0, 0x0, 0x1, 0x10101,
    0x10000}, numobjectshit = 0, weapons = {{ammoregenstart = 16843009, ammo = 16843009, ammocost = 16843009,
      weaponstage = 16843009, got = true}, {ammoregenstart = 16843009, ammo = 16843009, ammocost = 16843009,
      weaponstage = 16843009, got = true}, {ammoregenstart = 16843009, ammo = 16843009, ammocost = 1, weaponstage = 0,
      got = false}, {ammoregenstart = 16777216, ammo = 0, ammocost = 0, weaponstage = 16777216, got = false}, {
      ammoregenstart = 0, ammo = 0, ammocost = 0, weaponstage = 65536, got = false}, {ammoregenstart = 1, ammo = 16777216,
      ammocost = 16843009, weaponstage = 16843009, got = true}}, active_weapon = 1, last_weapon = 0, wanted_weapon = 1,
  reload_timer = 16843009, attack_tick = 0, sniper_chargetick = -1, damage_taken = 0, emote_type = 16843009,
  emote_stop = 0, last_action = -1, client_id = -1, skin_name = "Kenny", '\0' <repeats 58 times>, use_custom_color = 1,
  color_body = 10223467, color_feet = 10223467, latest_previnput = {left = 0, right = 16777216, target_x = 0, target_y = 0,
    jump = 16777216, fire = 0, hook = 65536, blink = 0, state = 1, wanted_weapon = 16777216, next_weapon = 16843009,
    prev_weapon = 16843009}, latest_input = {left = 0, right = 16777216, target_x = 0, target_y = 0, jump = 16777216,
    fire = 0, hook = 65536, blink = 0, state = 1, wanted_weapon = 16777216, next_weapon = 16843009,
    prev_weapon = 16843009}, previnput = {left = 0, right = 0, target_x = 0, target_y = 0, jump = 0, fire = 0, hook = 0,
    blink = 0, state = 0, wanted_weapon = 0, next_weapon = 0, prev_weapon = 0}, input = {left = 0, right = 0, target_x = 0,
    target_y = 0, jump = 0, fire = 0, hook = 0, blink = 0, state = 0, wanted_weapon = 0, next_weapon = 0, prev_weapon = 0},
  num_inputs = 0, jumped = 16843008, damage_taken_tick = 0, health = 16843009, armor = 16843009, activationdir = {{
      x = 2.36942783e-38, u = 2.36942783e-38}, {y = 2.36942783e-38, v = 2.36942783e-38}}, ninja_activationtick = 0,
  extrapowerflags = 0, currentcooldown = 16843009, currentactivation = 16843009, currentmovetime = 0, score = 0, team = -1,
  state = 0, spawning = true, dead = true, die_tick = 0, die_pos = {{x = 0, u = 0}, {y = 0, v = 0}}, latency_accum = 0,
  latency_accum_min = 0, latency_accum_max = 0, latency_avg = 0, latency_min = 0, latency_max = 0, core = {
    world = 0x82d5018, pos = {{x = 0, u = 0}, {y = 2.36942783e-38, v = 2.36942783e-38}}, vel = {{x = 0, u = 0}, {y = 0,
        v = 0}}, hook_pos = {{x = 2.36942783e-38, u = 2.36942783e-38}, {y = 2.36942783e-38, v = 2.36942783e-38}},
    hook_dir = {{x = 2.36942783e-38, u = 2.36942783e-38}, {y = 2.36942783e-38, v = 2.36942783e-38}}, hook_tick = 16843009,
    hook_state = 16843009, hooked_player = 16843009, jumped = 16843009, input = {left = 16843009, right = 16843009,
      target_x = 16843009, target_y = 16843009, jump = 16843009, fire = 16843009, hook = 65793, blink = 256, state = 65536,
      wanted_weapon = 0, next_weapon = 256, prev_weapon = 0}, triggered_events = 0}}
(gdb)

Gdb is still running and will be until you say it's not nessecary anymore (I don't really care, it's on my server). Hope you find what's wrong.

PS : here's my version of gcc, just in case it matters...

$ gcc -v
Using built-in specs.
Target: i486-linux-gnu
Configured with: ../src/configure -v --enable-languages=c,c++,fortran,objc,obj-c++,treelang --prefix=/usr --enable-shared --with-system-zlib --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --enable-nls --program-suffix=-4.1 --enable-__cxa_atexit --enable-clocale=gnu --enable-libstdcxx-debug --enable-mpfr --with-tune=i686 --enable-checking=release i486-linux-gnu
Thread model: posix
gcc version 4.1.2 20061115 (prerelease) (Debian 4.1.1-21)

11

Re: Teewars server crash

Looks like something very bad has happened. I need to dig around in gdb myself to get something more useful out of it. So here is what we are going to do. We are going to generate a core dump that you can send to me so I can look into it on my machine.

Under your shell before starting. Do this.
# ulimit -c unlimited

Then run the debug version of the server (teewars_srv_d)

When it crashes, you will see something like "Segmentation fault (core dumped)" and it will have generated a core dump. Basicly, a core dump is the state of the application when it crashed. Then, zip up all the files, including the source, binaries, dump etc, and put somewhere I can get a hold of it and I will be able to dig around in gdb myself.

12 (edited by beuiot 2008-01-23 11:37:25)

Re: Teewars server crash

Ok I'll do it. I have a file named "core" already.  Is this the one you're looking for ? or is it a different one ?

~/servers/teewars/teewars-0.3.3-src$ ls -l
total 5228
-rw------- 1 beuiot beuiot 3559424 2008-01-22 06:18 core
-rwxr-xr-x 1 beuiot beuiot  331377 2008-01-22 12:49 crapnet_d_d
drwxr-xr-x 5 beuiot beuiot    4096 2008-01-17 11:01 data
drwxr-xr-x 2 beuiot beuiot    4096 2008-01-17 11:01 datasrc
-rw-r--r-- 1 beuiot beuiot   10051 2008-01-17 11:01 default.bam
-rwxr-xr-x 1 beuiot beuiot  345101 2008-01-22 12:49 dilate_d_d
-rwxr-xr-x 1 beuiot beuiot  330701 2008-01-22 12:49 fake_server_d_d
-rw-r--r-- 1 beuiot beuiot    1050 2008-01-17 11:01 license.txt
-rwxr-xr-x 1 beuiot beuiot  327973 2008-01-22 12:49 map_resave_d_d
-rwxr-xr-x 1 beuiot beuiot  336695 2008-01-22 12:49 mastersrv_d
drwxr-xr-x 2 beuiot beuiot    4096 2008-01-22 12:49 objs
drwxr-xr-x 3 beuiot beuiot    4096 2008-01-17 11:01 other
-rw-rw-rw- 1 beuiot beuiot     234 2008-01-18 09:54 raceserver.cfg
-rw-r--r-- 1 beuiot beuiot     346 2008-01-17 11:01 readme.txt
drwxr-xr-x 2 beuiot beuiot    4096 2008-01-17 11:01 scripts
drwxr-xr-x 9 beuiot beuiot    4096 2008-01-17 11:01 src
-rw-r--r-- 1 beuiot beuiot     152 2008-01-17 11:15 teewars.cfg
-rw-r--r-- 1 beuiot beuiot     172 2008-01-17 11:11 teewars.cfg~
-rwxr-xr-x 1 beuiot beuiot  210238 2008-01-17 11:02 teewars_srv
-rwxr-xr-x 1 beuiot beuiot  510685 2008-01-22 12:49 teewars_srv_d
-rwxr-xr-x 1 beuiot beuiot  348013 2008-01-22 12:49 tileset_borderfix_d_d

PS : Do I have to run it through gdb after running the ulimit thingy ?

13

Re: Teewars server crash

Okey, I just got a hold of the command in gdb that I was looking for. Just start teewars_srv_d with gdb, and when it crashes type "gcore" and it will do a dump.

14

Re: Teewars server crash

Ok Done.

(gdb) gcore
Saved corefile core.1262

Here is the .tar.gz : http://www.beuiot.net/teewars_coredump_1262.tar.gz

15

Re: Teewars server crash

By the way, I used the config "raceserver.cfg" but this bug also occured with the other config file.

16

Re: Teewars server crash

The other server just crashed (the DM one). here is the tar.gz with the core dump, in case it helps :

http://www.beuiot.net/teewars_coredump_20764.tar.gz

This one was run using the teewars.cfg file.

17

Re: Teewars server crash

Thanks, but I need a way to look at the dumps :\ I've got a x86_64 machine, so I think I will install debian/ubuntu on a VM or something too see what the problem is.

18

Re: Teewars server crash

I can give you ssh/ftp acces to my server if you want. This way you won't have to install a 32 bit os.

19

Re: Teewars server crash

beuiot wrote:

I can give you ssh/ftp acces to my server if you want. This way you won't have to install a 32 bit os.

SSH access would be awesome! email me at magnus.auvinen@gmail.com with the information and I will look into it!

20 (edited by earcar 2008-02-09 01:33:51)

Re: Teewars server crash

There are some news with that? I have the same problem
EDIT: i found the ticket: http://ix.teewars.com/trac/ticket/291, just waiting for a fix now wink

Bip.. bip.. bip.. - Sputnik 1

21

Re: Teewars server crash

We are going to ship 0.3.4 this weekend. I think I will sneak a fix for that in there aswell.