diff src/data.c @ 2:2719a89505ba

First entry of Paradise Server 2.9 patch 10 Beta
author darius
date Sat, 06 Dec 1997 04:37:01 +0000
parents
children
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/src/data.c	Sat Dec 06 04:37:01 1997 +0000
@@ -0,0 +1,182 @@
+/*--------------------------------------------------------------------------
+NETREK II -- Paradise
+
+Permission to use, copy, modify, and distribute this software and its
+documentation, or any derivative works thereof, for any NON-COMMERCIAL
+purpose and without fee is hereby granted, provided that this copyright
+notice appear in all copies.  No representations are made about the
+suitability of this software for any purpose.  This software is provided
+"as is" without express or implied warranty.
+
+    Xtrek Copyright 1986                            Chris Guthrie
+    Netrek (Xtrek II) Copyright 1989                Kevin P. Smith
+                                                    Scott Silvey
+    Paradise II (Netrek II) Copyright 1993          Larry Denys
+                                                    Kurt Olsen
+                                                    Brandon Gillespie
+--------------------------------------------------------------------------*/
+
+
+#include "config.h"
+#include "defs.h"
+#include "struct.h"
+#include "data.h"
+
+char *argv0;
+
+int oldalert = PFGREEN;		/* Avoid changing more than we have to */
+int remap[9] = {0, 1, 2, -1, 3, -1, -1, -1, 4};
+int selfdest;
+int lastm;
+int delay;			/* delay for decaring war */
+int rdelay;			/* delay for refitting */
+int mustexit = 0;
+int keeppeace = 0;
+char *shipnos = "0123456789abcdefghijklmnopqrstuvwxyz";
+int sock = -1;
+int xtrekPort = 2592;
+int shipPick;
+int tmpPick = (int) CRUISER;	/* just to assign something :) */
+int teamPick;
+int repCount = 0;
+char namePick[16];
+char passPick[16];
+int inputMask = -1;
+int nextSocket;
+char *host;
+int noressurect = 0;
+int userVersion = 0, userUdpVersion = 0;
+int timerDelay = 200000;	/* delay between sending stuff to client */
+char testdata[KEY_SIZE];
+int RSA_Client;
+char RSA_client_type[256];	/* LAB 4/1/93 */
+int testtime = -1;
+int chaos = 0;
+int topgun = 0;			/* added 12/9/90 TC */
+int hourratio = 1;		/* Fix thing to make guests advance fast */
+int blk_flag = 0;		/* added 1/19/93 KAO */
+int udpSock = (-1);		/* UDP - the almighty socket */
+int commMode = 0;		/* UDP - initial mode is TCP only */
+int blk_metaserver = 0;		/* 1 if this call is from meta-server */
+char *galaxyValid;		/* 0 if galaxy invalid */
+
+#ifdef FEATURE			/* plus defaults, to protect client */
+int F_feature_packets = 1;	/* allow feature packets */
+int F_allowViewBox = 1;		/* allow view box */
+int F_allowShowAllTractorPressor = 1;	/* allow all tracts/presses */
+int F_allowContinuousMouse = 1;	/* allow continuous mouse */
+int F_UseNewMacro = 1;		/* allow new macros */
+int F_UseSmartMacro = 1;	/* Allow smart macros */
+int F_multiline_enabled = 1;	/* Allow multiline macros */
+int F_why_dead = 1;		/* Allow why_dead reporting */
+int F_cloakerMaxWarp = 1;	/* Allow cloaker to go maxwarp */
+int F_gen_distress = 0;		/* No RCDs (not yet implemented in server) */
+int F_allow_beeplite = 0;	/* No RCDs ==> no allowed beeplite */
+unsigned char F_beeplite_flags;	/* flags for beeplite */
+int F_terrain = 0;		/* Client isn't capable of terrain by default */
+unsigned char F_terrain_major;	/* Major terrain version client can handle */
+unsigned char F_terrain_minor;	/* Minor terrain version client can handle */
+int F_gz_motd = 0;		/* Client can't handle GZipped MOTD packets */
+unsigned char F_gz_motd_major;	/* Major gzipped format client can handle */
+unsigned char F_gz_motd_minor;	/* Minor gzipped format client can handle */
+#endif
+
+double oldmax = 0.0;
+
+extern double Sin[], Cos[];	/* Initialized in sintab.c */
+
+char pseudo[PSEUDOSIZE];
+char login[PSEUDOSIZE];
+
+#ifdef RANKS2
+struct rank ranks[NUMRANKS] =
+{
+  /* genos   DI     batl   strat  spec      name  */
+  {0, 0, 0.00, 0.0, 0.0, "Recruit"},
+  {1, 10, 0.30, 0.3, 0.0, "2nd Mate"},
+  {2, 25, 0.40, 0.6, 0.0, "1st Mate"},
+  {3, 45, 0.50, 0.9, 0.0, "Bosun"},
+  {4, 70, 0.70, 1.2, 0.0, "Ensign"},
+  {5, 100, 0.90, 1.5, 0.0, "2nd Lieutenant"},
+  {6, 140, 1.10, 2.0, 0.0, "1st Lieutenant"},
+  {8, 190, 1.30, 2.5, 0.0, "Lt. Cmdr."},
+  {10, 250, 1.50, 3.0, 0.5, "Commander"},
+  {15, 300, 1.80, 3.5, 0.7, "Battle Cmdr."},
+  {18, 350, 2.00, 4.0, 1.0, "Captain"},
+  {25, 400, 2.10, 4.3, 2.5, "Fleet Capt."},
+  {50, 500, 2.15, 4.8, 3.0, "Commodore"},
+  {75, 700, 2.20, 5.3, 3.3, "Rear Adml."},
+  {100, 900, 2.25, 5.7, 3.6, "Admiral"},
+  {200, 1200, 2.30, 6.0, 3.8, "Grand Adml."},
+  {300, 1700, 2.35, 6.1, 4.0, "Moff"},
+  {500, 2500, 2.40, 6.2, 4.2, "Grand Moff"}
+};
+#ifdef CASSIUS_ROYALTY
+struct royalty royal[NUMROYALRANKS] = {
+  {"none"},
+  {"Wesley"},
+  {"Footslog"},
+  {"COMMODORE"},
+  {"Dread"},
+  {"Agent"},
+  {"Gorilla"},
+  {"Lord"},
+  {"Emperor"},
+  {"Q"}
+};
+#else
+struct royalty royal[NUMROYALRANKS] = {
+  {"none"},
+  {"Wesley"},
+  {"Agent"},
+  {"Emperor"},
+  {"Q"}
+};
+#endif				/* Royalty */
+#else
+struct rank ranks[NUMRANKS] =
+{
+  /* gen     DI     batl   strat  spec    name  */
+  {0, 0, 0.00, 0.0, 0.0, "Recruit"},
+  {1, 10, 0.30, 0.3, 0.0, "Specialist"},
+  {2, 25, 0.40, 0.6, 0.0, "Cadet"},
+  {3, 45, 0.50, 0.9, 0.0, "Midshipman"},
+  {4, 70, 0.70, 1.2, 0.0, "Ensn., J.G."},
+  {5, 100, 0.90, 1.5, 0.0, "Ensign"},
+  {6, 140, 1.10, 2.0, 0.0, "Lt., J.G."},
+  {8, 190, 1.30, 2.5, 0.0, "Lieutenant"},
+  {10, 250, 1.50, 3.0, 0.5, "Lt. Cmdr."},
+  {15, 300, 1.80, 3.5, 0.7, "Commander"},
+  {18, 350, 2.00, 4.0, 1.0, "Captain"},
+  {25, 400, 2.10, 4.3, 2.5, "Fleet Capt."},
+  {50, 500, 2.15, 4.8, 3.0, "Commodore"},
+  {75, 700, 2.20, 5.3, 3.3, "Moff"},
+  {100, 900, 2.25, 5.7, 3.6, "Grand Moff"},
+  {300, 1200, 2.30, 6.0, 3.8, "Rear Adml."},
+  {700, 1700, 2.35, 6.1, 4.0, "Admiral"},
+  {1000, 2500, 2.40, 6.2, 4.2, "Grand Adml."}
+};
+
+struct royalty royal[NUMROYALRANKS] = {
+  {"none"},
+  {"Wesley"},
+  {"Centurion"},
+  {"Praetor"},
+  {"Q"}
+};
+#endif
+
+/* ping stuff */
+int ping = 0;			/* to ping or not to ping, client's decision */
+long packets_sent = 0;		/* # all packets sent to client */
+long packets_received = 0;	/* # all packets received from client */
+int ping_ghostbust = 0;		/* ghostbust timer */
+
+
+char _PARAVERS[] = "@(#)version 2.4 patch 10 ALPHA";
+char *PARAVERS = &(_PARAVERS[4]);
+char MCONTROL[] = "CONTROL->";
+char UMPIRE[] = "Umpire ";
+/* for sending messages from GOD/Server to others */
+char MSERVA[] = "SRV->ALL";
+char SERVNAME[] = "SRV";