summaryrefslogtreecommitdiff
path: root/src/constants.h
blob: e91ded0eb72f6760f29bc9ca71774abb99f068d1 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
/*
(c) 2010 Perttu Ahola <celeron55@gmail.com>
*/

#ifndef CONSTANTS_HEADER
#define CONSTANTS_HEADER

#define DEBUGFILE "debug.txt"

// Define for simulating the quirks of sending through internet
// WARNING: This disables unit testing of socket and connection
#define INTERNET_SIMULATOR 0

#define CONNECTION_TIMEOUT 30

#define RESEND_TIMEOUT_MIN 0.333
#define RESEND_TIMEOUT_MAX 3.0
// resend_timeout = avg_rtt * this
#define RESEND_TIMEOUT_FACTOR 4

#define PI 3.14159

#define SERVERMAP_DELETE_UNUSED_SECTORS_TIMEOUT (60*10)
#define SERVER_MAP_SAVE_INTERVAL (60)

//#define SERVERMAP_DELETE_UNUSED_SECTORS_TIMEOUT (5)
//#define SERVER_MAP_SAVE_INTERVAL (5)

#define FOV_ANGLE (PI/2.5)

// The absolute working limit is (2^15 - viewing_range).
#define MAP_GENERATION_LIMIT (31000)

//#define MAX_SIMULTANEOUS_BLOCK_SENDS 7
//#define MAX_SIMULTANEOUS_BLOCK_SENDS 3
#define MAX_SIMULTANEOUS_BLOCK_SENDS 2
//#define MAX_SIMULTANEOUS_BLOCK_SENDS 1

#define FULL_BLOCK_SEND_ENABLE_MIN_TIME_FROM_BUILDING 2.0
#define LIMITED_MAX_SIMULTANEOUS_BLOCK_SENDS 1

// Viewing range stuff

#define FPS_DEFAULT_WANTED 30
#define FPS_DEFAULT_MAX 60

#define FORCEDFETCH_RANGE 80

#define HEIGHTMAP_RANGE_NODES 300

// The freetime ratio is dynamically kept high enough to make this
// dtime jitter possible
// Allow 50% = 0.1
/*#define DTIME_JITTER_MAX_FRACTION 0.5
#define FREETIME_RATIO_MIN 0.05
#define FREETIME_RATIO_MAX 0.4*/

//#define FREETIME_RATIO 0.2
#define FREETIME_RATIO 0.15

#define SECTOR_HEIGHTMAP_SPLIT 2

#define PLAYER_INVENTORY_SIZE (8*4)

#define SIGN_TEXT_MAX_LENGTH 50

#define ACTIVE_OBJECT_D_BLOCKS 2

#define CATCH_UNJANDLED_EXCEPTIONS 1

#endif