summaryrefslogtreecommitdiff
path: root/ChangeLog
blob: 23ce950ac2872e8142b7df61424f980779c6e66c (plain) (blame)
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
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
1001
1002
1003
1004
1005
1006
1007
1008
1009
1010
1011
1012
1013
1014
1015
1016
1017
1018
1019
1020
1021
1022
1023
1024
1025
1026
1027
1028
1029
1030
1031
1032
1033
1034
1035
1036
1037
1038
1039
1040
1041
1042
1043
1044
1045
1046
1047
1048
1049
1050
1051
1052
1053
1054
1055
1056
1057
1058
1059
1060
1061
1062
1063
1064
1065
1066
1067
1068
1069
1070
1071
1072
1073
1074
1075
1076
1077
1078
1079
1080
1081
1082
1083
1084
1085
1086
1087
1088
1089
1090
1091
1092
1093
1094
1095
1096
1097
1098
1099
1100
1101
1102
1103
1104
1105
1106
1107
1108
1109
1110
1111
1112
1113
1114
1115
1116
1117
1118
1119
1120
1121
1122
1123
1124
1125
1126
1127
1128
1129
1130
1131
1132
1133
1134
1135
1136
1137
1138
1139
1140
1141
1142
1143
1144
1145
1146
1147
1148
1149
1150
1151
1152
1153
1154
1155
1156
1157
1158
1159
1160
1161
1162
1163
1164
1165
1166
1167
1168
1169
1170
1171
1172
1173
1174
1175
1176
1177
1178
1179
1180
1181
1182
1183
1184
1185
1186
1187
1188
1189
1190
1191
1192
1193
1194
1195
1196
1197
1198
1199
1200
1201
1202
1203
1204
1205
1206
1207
1208
1209
1210
1211
1212
1213
1214
1215
1216
1217
1218
1219
1220
1221
1222
1223
1224
1225
1226
1227
1228
1229
1230
1231
1232
1233
1234
1235
1236
1237
1238
1239
1240
1241
1242
1243
1244
1245
1246
1247
1248
1249
1250
1251
1252
1253
1254
1255
1256
1257
1258
1259
1260
1261
1262
1263
1264
1265
1266
1267
1268
1269
1270
1271
1272
1273
2007-03-05  Rogier Polak     <rogier.l.a.polak@gmail.com>

	* src/defines.h, src/Makefile.am, src/abstractcharacterdata.hpp,
	src/abstractcharacterdata.cpp, src/account-server/account.hpp,
	src/account-server/account.cpp, src/account-server/accountclient.hpp
	src/account-server/accountclient.cpp,
	src/account-server/accounthandler.cpp,
	src/account-server/characterdata.hpp,
	src/account-server/characterdata.cpp,
	src/account-server/dalstorage.hpp, src/account-server/dalstorage.cpp
	src/account-server/dalstoragesql.hpp,
	src/account-server/serverhandler.hpp,
	src/account-server/serverhandler.cpp, src/account-server/storage.hpp
	src/game-server/accountconnection.cpp: Added an abstrart base class
	for characterdata, in order to use the same serialize and deserialize
	functions on both the accountserver and the gameserver. Added the
	CharacterData class to the accountserver, a specialisation of
	characterdata for the accountserver. Renamed (raw)stats to attributes.
	* src/point.h, src/controller.cpp, src/game-server/testing.cpp,
	src/game-server/state.cpp: Added two constructors to the Point class.
	* src/utils/wingettimeofday.h, src/utils/timer.h: Set svn properties.
	* src/game-server/mapcomposite.cpp: Cleaned up a double deletion.
	* src/game-server/item.hpp: Added the member spriteId.
	* src/account-server/main-account.cpp, src/game-server/main-game.cpp:
	Modified the default log files (primarily for development purposes).

2007-03-03  Bjørn Lindeijer  <bjorn@lindeijer.nl>

	* src/utils/mathutils.cpp, src/utils/mathutils.h,
	src/game-server/collisiondetection.hpp,
	src/game-server/collisiondetection.cpp: Use M_PI_2 instead of
	acos(0.0f) and FLT_MAX instead of 1.0E40f (which exceeded the maximum
	float value). Some cosmetics (whitespace and declaring variables where
	they are used).

2007-03-03  Rogier Polak  <rogier.l.a.polak@gmail.com>

	* src/utils/mathutils.h, src/utils/mathutils.cpp,
	src/utils/fastsqrt.h, src/Makefile.am, src/game-server/main-game.cpp:
	Moved math utility functions to the namespace utils::math, added
	cached trigonomic functions.
	* src/game-server/collisiondetection.hpp, src/game-server/being.cpp,
	src/game-server/collisiondetection.cpp: Implemented an alternate
	collision-detection function, for disks and circle-sectors.

2007-03-03  Philipp Sehmisch  <tmw@crushnet.org>

	* src/controller.cpp, src/controller.h, src/defines.h,
	src/gameserver/being.cpp, src/gameserver/being.hpp,
	src/gameserver/gamehandler.cpp, src/gameserver/object.hpp,
	src/gameserver/player.cpp, src/gameserver/player.hpp,
	src/gameserver/state.cpp, src/gameserver/testing.cpp,
	src/point.h: Implemented being death, removal of dead mobs and sitting.

2007-03-01  Bjørn Lindeijer  <bjorn@lindeijer.nl>

	* src/Makefile.am: Updated with new collision related module.

2007-02-27  Philipp Sehmisch  <tmw@crushnet.org>

	* src/account-server/dalstorage.cpp,
	src/account-server/dalstoragesql.hpp,
	src/chat-server/chatchannel.cpp,
	src/chat-server/chatchannel.hpp,
	src/chat-server/chatchannelmanager.cpp,
	src/chat-server/chatchannelmanager.hpp,
	src/chat-server/chathandler.cpp,
	src/dal/mysqldataprovider.cpp,
	src/dal/pqdataprovider.cpp
	src/dal/qulitedataprovider.cpp,
	src/defines.h: Implementation of chat channels by Trapdoor.

2007-02-25  Philipp Sehmisch  <tmw@crushnet.org>

	* src/game-server/collisiondetection.cpp,
	src/game-server/collisiondetection.hpp,
	src/utils/fastsqrt.h: Added a function to calculate collisions between
	circles and circle sectors.
	* src/being.cpp, src/object.hpp, src/testing.cpp: Improved hit
	detection by using said function.

2007-02-23  Rogier Polak  <rogier.l.a.polak@gmail.com>

	* src/chat-server/chathandler.cpp: Added disconnect.
	* src/game-server/gamehandler.cpp,
	src/game-server/accountconnection.cpp: Bugfixes related to
	switch_character.
	* src/account-server/main-account.cpp, src/game-server/main-game.cpp:
	Small modification to accomodate MS-Windows.

2007-02-04  Rogier Polak  <rogier_polak@users.sourceforge.net>

	* src/chat-server/chathandler.cpp,
	src/account-server/accounthandler.hpp,
	src/account-server/serverhandler.cpp,
	src/account-server/dalstorage.cpp, src/account-server/storage.hpp,
	src/account-server/accounthandler.cpp,
	src/account-server/dalstorage.hpp, src/defines.h, src/playerdata.cpp,
	src/playerdata.hpp, src/game-server/gamehandler.cpp,
	src/game-server/accountconnection.cpp,
	src/game-server/accountconnection.hpp: Added support for switching
	character by reconnecting to the account server and fixed the issue
	where a client is not logged in after registering (patch applied by
	Bjørn Lindeijer).

2007-02-01  Rogier Polak  <rogier_polak@users.sourceforge.net>

	* src/account-server/main-account.cpp,
	src/account-server/dalstorage.cpp, src/account-server/account.cpp,
	src/game-server/mapmanager.cpp, src/game-server/main-game.cpp:
	Added graceful server shutdown, chose some more sane variables names
	for SQL queries and fixed a possible character collision error (patch
	applied by Bjørn Lindeijer).
	* src/game-server/object.cpp, src/game-server/object.hpp: Added
	caching of paths (patch applied by Bjørn Lindeijer).

2007-01-14  Björn Steinbrink  <B.Steinbrink@gmx.de>

	* src/utils/logger.h: Unified logging macros.

2007-01-12  Bjørn Lindeijer  <bjorn@lindeijer.nl>

	* src/account-server/serverhandler.cpp: Report problems with finding a
	certain character instead of crashing.

2007-01-06  Bjørn Lindeijer  <bjorn@lindeijer.nl>

	* src/game-server/mapcomposite.cpp: Fixed a compiler warning.
	* src/chat-server/chathandler.hpp, src/chat-server/chathandler.cpp,
	src/net/connectionhandler.hpp, src/net/connectionhandler.cpp,
	src/account-server/main-account.cpp, src/game-server/mapcomposite.hpp,
	src/Makefile.am: Allowed usage of timeout in
	ConnectionHandler::process in order to reduce CPU usage. Now account
	and chat servers no longer need to keep track of game time, but simply
	listen for incoming messages to act on.
	* src/utils/timer.cpp, src/utils/timer.h: Gracefully handle cases
	where the computer time is set back.

2007-01-05  Bjørn Lindeijer  <bjorn@lindeijer.nl>

	* AUTHORS: Updated to include all current authors.
	* src/account-server/main-account.cpp,
	src/account-server/serverhandler.cpp, src/utils/logger.h,
	src/game-server/main-game.cpp: Removed log level argument from
	LOG_FATAL helper macro, with the assumption that fatal messages should
	always have highest log level.
	* docs/tmwserv.xml: Added some documentation to example config file.

2007-01-05  Guillaume Melquiond <guillaume.melquiond@gmail.com>

	* src/game-server/player.cpp, src/game-server/state.cpp: Delayed update
	of persistent position and put it into state handling, so that the
	update happens before map change.
	* src/game-server/item.hpp: Added an amount property to items lying on
	the ground.
	* src/game-server/testing.cpp: Added a piece of equipment.
	* src/game-server/defines.h, src/game-server/gamehandler.cpp:
	Implemented item dropping.
	* src/game-server/player.hpp: Removed useless dependency on Inventory.
	* src/game-server/inventory.cpp: Fixed reported amounts of inventory
	items. Embeded handling of client message directly into the class.
	* src/defines.h, src/game-server/gamehandler.cpp: Added full update of
	Inventory on Player connection.
	* src/game-server/gamehandler.cpp, src/game-server/player.hpp,
	src/game-server/player.cpp: Generalized player state.
	* src/utils/logger.h, src/utils/logger.cpp: Simplified handling of
	verbosity levels: fatal, error, warn, info, debug are now the levels.
	Optimized code by generating only needed messages.
	* src/chat-server/chathandler.cpp, src/net/connection.cpp,
	src/net/netcomputer.cpp, src/net/connectionhandler.cpp, src/skill.cpp,
	src/configuration.cpp, src/account-server/main-account.cpp,
	src/account-server/serverhandler.cpp, src/utils/stringfilter.cpp,
	src/account-server/dalstorage.cpp, src/utils/zlib.cpp,
	src/account-server/accounthandler.cpp, src/resourcemanager.cpp,
	src/controller.cpp, src/game-server/mapreader.cpp,
	src/game-server/gamehandler.cpp, src/game-server/mapmanager.cpp,
	src/game-server/accountconnection.cpp, src/game-server/being.cpp,
	src/game-server/itemmanager.cpp, src/game-server/main-game.cpp:
	Updated accordingly. Removed some unworthy debug messages.
	* src/Makefile.am: Removed useless dependencies.

2007-01-04  Guillaume Melquiond <guillaume.melquiond@gmail.com>

	* src/playerdata.hpp, src/playerdata.cpp, src/defines.h,
	src/Makefile.am: Factored serialization of PlayerData into a new file.
	Added inventory to PlayerData. Removed counted pointers.
	* src/account-server/serverhandler.hpp, src/account-server/account.hpp:
	Moved counted pointers here.
	* src/account-server/serverhandler.cpp,
	src/game-server/accountconnection.cpp: Simplified by relying on the
	serialization functionality of PlayerData.
	* src/game-server/inventory.hpp, src/game-server/inventory.cpp:
	Transformed Inventory into a strict helper class, as data are now stored
	inside PlayerData. Reduced memory footprint of inventory by avoiding
	storing empty slots.
	* src/game-server/player.hpp, src/game-server/player.cpp,
	src/game-server/gamehandler.cpp: Updated accordingly.
	* src/net/messagein.hpp, src/net/messagein.cpp: Removed signedness
	interpretation of received data.
	* src/game-server/mapcomposite.hpp, src/game-server/mapcomposite.cpp:
	Added iterator around a point.
	* src/defines.h, src/game-server/gamehandler.cpp: Implemented pick-up.

2007-01-04  Eugenio Favalli  <elvenprogrammer@gmail.com>

	* accountserver.cbp, gameserver.cbp,
	src/account-server/main-account.cpp, src/game-server/main-game.cpp:
	Cleaned and updated project files, fixed Win32 PACKAGE_VERSION
	definition.
	* gameserver.cbp, src/game-server/state.cpp: Moved NOGDI definition to
	Code::Blocks project file.

2007-01-03  Eugenio Favalli  <elvenprogrammer@gmail.com>

	* accountserver.cbp, gameserver.cbp: Updated project files.
	* src/game-server/state.cpp: Fix to Windows Rectangle redefinition.

2007-01-03  Björn Steinbrink  <B.Steinbrink@gmx.de>

	* src/utils/timer.cpp: Removed extra semicolons that break builds with
	--pedantic.

2007-01-03  Guillaume Melquiond <guillaume.melquiond@gmail.com>

	* src/debug.h, src/debug.cpp, src/Makefile.am: Removed obsolete debug
	helpers.
	* src/playerdata.hpp: Taken persistent data out of Player.
	* src/being.h, src/being.cpp, src/object.h, src/object.cpp, src/map.h,
	src/player.h, src/player.cpp, src/inventory.h, src/inventory.cpp,
	src/map.cpp: Moved to src/game-server directory and changed header
	extension to hpp.
	* src/controller.h, src/item.h, src/game-server/mapcomposite.cpp,
	src/game-server/mapreader.cpp, src/game-server/mapcomposite.hpp,
	src/game-server/trigger.cpp, src/game-server/trigger.hpp,
	src/game-server/accountconnection.cpp, src/game-server/gamehandler.hpp,
	src/game-server/state.cpp, src/game-server/accountconnection.hpp,
	src/game-server/itemmanager.cpp: Updated accordingly.
	* src/account-server/account.hpp, src/account-server/serverhandler.cpp,
	src/account-server/dalstorage.cpp, src/chat-server/chatchannel.hpp,
	src/account-server/serverhandler.hpp, src/chat-server/chathandler.cpp,
	src/account-server/accounthandler.cpp: Relied on PlayerData to remove
	dependencies on Thing, Object, MovingObject, etc.
	* src/defines.h: Fixed enumerations.
	* src/games-server/gamehandler.cpp, src/game-server/player.cpp:
	Commented in inventory code back.
	* src/item.h, src/item.cpp: Moved to src/game-server directory and
	changed header extension to hpp.
	* src/game-server/itemmanager.hpp, src/game-server/itemmanager.cpp,
	src/game-server/inventory.hpp, src/game-server/inventory.cpp,
	src/game-server/player.hpp, src/game-server/gamehandler.cpp,
	src/game-server/player.cpp: Simplified Inventory interface a bit.
	Renamed Item to ItemClass to reflect its role. Added a Item class for
	Objects lying on the world map.
	* src/game-server/being.hpp: Removed counted pointers.
	* src/game-server/mapcomposite.hpp, src/game-server/mapcomposite.cpp,
	src/game-server/being.cpp: Fixed end of lines.
	* src/game-server/mapcomposite.hpp, src/game-server/mapcomposite.cpp:
	Fixed pessimistic bounds on region iterators. Added an iterator for
	non-moving objects.
	* src/defines.h, src/game-server/state.cpp: Added code to send data on
	floor items to clients.
	* src/game-server/testing.cpp: Added a Xmas cake for testing purpose.

2007-01-02  Guillaume Melquiond <guillaume.melquiond@gmail.com>

	* tmwserv.cbp, tmwserv.dev, runserv.sh: Removed obsolete project files
	and shell script.
	* configure.ac, src/Makefile.am, src/tests, src/client.cpp: Removed
	obsolete tests and text client.
	* src/game-server/mapcomposite.hpp, src/game-server/mapcomposite.cpp,
	src/point.h: Removed implicit radius for checking range of Point. Added
	a Rectangle class. Added support for rectangles in MapComposite.
	* src/object.h, src/defines.h, src/game-server/mapcomposite.hpp,
	src/game-server/mapcomposite.cpp, src/game-server/state.hpp,
	src/game-server/state.cpp: Put an ancestor for Object that are not
	visible to clients. Added simple accessors for object types.
	* src/game-server/mapmanager.cpp: Prevented loading unactive maps.
	* src/game-server/trigger.hpp, src/game-server/trigger.cpp: Added a
	trigger mechanism and a warp action.
	* src/game-server/testing.cpp: Added some hardcoded game objects for
	testing purpose.
	* src/sqlitestorage.h, src/sqlitestorage.cpp: Removed obsolete SQLite
	support.
	* src/utils/zlib.hpp, src/utils/zlib.cpp: Added support for inflating
	compressed data.
	* src/mapreader.h, src/mapreader.cpp: Moved to src/game-server
	directory and changed header extension to hpp. Removed useless
	declarations. Relied on utils/xml and utils/zlib. Simplified code.
	Fixed memory leaks on XML document and on Tilesets.
	* src/properties.h, src/Makefile.am: Removed now useless class
	Properties.

2006-12-31  Philipp Sehmisch  <tmw@crushnet.org>

	* accountserver.cbp, gameserver.cbp, runsrv.bat: Added Code::Blocks
	project files and windows start script.

2006-12-31  Guillaume Melquiond <guillaume.melquiond@gmail.com>

	* src/account-server/dalstorage.hpp, src/account-server/dalstorage.cpp,
	src/account-server/storage.hpp: Added function to query a character in
	the database.
	* src/account-server/serverhandler.cpp: Finished implementation for
	warping players around servers.

2006-12-30  Guillaume Melquiond <guillaume.melquiond@gmail.com>

	* src/mapcomposite.h, src/mapcomposite.cpp: Moved to src/game-server
	directory and changed header extension to hpp.
	* src/Makefile.am: Updated accordingly.
	* src/object.h, src/being.h: Changed definition of directions.
	* src/being.cpp: Relied on MapComposite iterators to scan only beings
	in the vincinity one time instead of all objects of the map four times.
	Used a pixel-based zone instead of tile-based zone for damaging.
	* src/player.cpp: Removed useless dependency.
	* src/game-server/mapcomposite.hpp, src/game-server/mapcomposite.cpp:
	Added a radius parameter to iterator creators. Removed unused and
	inefficient getObjectsOnTile.
	* src/game-server/state.hpp, src/game-server/state.cpp: Split update
	function into updateMap and informPlayer. Simplified code a bit.
	* src/game-server/mapcomposite.hpp, src/game-server/mapcomposite.cpp,
	src/object.h, src/game-server/state.hpp, src/game-server/state.cpp,
	src/game-server/accountconnection.cpp, src/game-server/gamehandler.cpp:
	Removed reference-counted pointers on Object.
	* src/game-server/gameclient.hpp, src/game-server/gameclient.cpp,
	src/player.h, src/game-server/gamehandler.cpp, src/Makefile.am:
	Embedded a simplified version of GameClient into GameHandler. Removed
	the original files.
	* src/game-server/mapmanager.hpp, src/game-server/mapmanager.cpp: Added
	on-the-fly map loading.
	* src/defines.h, src/game-server/accountconnection.cpp,
	src/account-server/serverhandler.cpp: Controlled map activation from
	the account server, so that clients are not kept on the wrong server
	when warped.
	* src/defines.h, src/game-server/state.hpp, src/game-server/state.cpp,
	src/account-server/serverhandler.cpp, src/game-server/gamehandler.hpp,
	src/game-server/gamehandler.cpp, src/game-server/accountconnection.hpp,
	src/game-server/accountconnection.cpp: Added a queue for delaying
	intrusive events until update is finished. Partially implemented server
	communications to update player data and to warp players around.

2006-12-29  Guillaume Melquiond <guillaume.melquiond@gmail.com>

	* src/account.h, src/account.cpp, src/accountclient.h,
	src/accountclient.cpp, src/storage.h, src/storage.cpp,
	src/dalstorage.h, src/dalstorage.cpp, src/dalstoragesql.h,
	src/accounthandler.h, src/accounthandler.cpp: Moved to
	src/account-server directory and changed header extension to hpp.
	* src/chathandler.h, src/chathandler.cpp, src/chatchannelmanager.h,
	src/chatchannel.cpp, src/chatchannel.h, src/chatchannelmanager.cpp:
	Moved to src/chat-server directory and changed header extension to hpp.
	* src/itemmanger.h, src/itemmanager.cpp, src/state.h, src/state.cpp,
	src/gamehandler.h, src/gamehandler.cpp, src/gameclient.h,
	src/gameclient.cpp, src/mapmanager.h, src/mapmanager.cpp: Moved to
	src/game-server directory and changed header extension to hpp.
	* src/messagein.h, src/messagein.cpp, src/messageout.h,
	src/messageout.cpp, src/connectionhandler.h, src/connectionhandler.cpp,
	src/netcomputer.h, src/netcomputer.cpp: Moved to src/net directory and
	changed header extension to hpp.
	* src/controller.h, src/controller.cpp, src/game-server/state.cpp,
	src/being.cpp, src/being.h: Removed knowledge of Controller in Being by
	deriving a Controlled Being.
	* src/game-server/state.cpp, src/game-server/mapmanager.cpp,
	src/game-server/mapmanager.hpp, src/object.cpp: Simplified by removing
	Singleton pattern.
	* src/object.cpp: Moved code around: the idle case is now a fast path.
	* src/net/connection.hpp, src/net/connection.cpp: Added a Connection
	class to handle inter-server communications.
	* src/game-server/itemmanager.cpp, src/utils/xml.hpp,
	src/utils/xml.cpp: Copied an XML helper from tmw client. Used it to
	simplify ItemManager.
	* src/game-server/mapmanager.hpp, src/game-server/mapmanager.cpp,
	data/maps.xml, src/account-server/dalstorage.cpp,
	src/account-server/dalstorage.hpp, src/account-server/storage.hpp,
	src/account-server/storage.cpp, src/account-server/dalstoragesql.hpp:
	Added a XML file linking map names to map identifiers. Removed the
	database as these links are not supposed to dynamically change.
	Modified code to load the (relevant) maps beforehand.
	* src/game-server/gamehandler.cpp, src/chat-server/chathandler.cpp,
	src/item.h, src/object.h, src/player.h: Fixed compile warnings and
	missing returns.
	* src/player.cpp, src/game-server/gamehandler.cpp: Commented out the
	currently unused inventory interface.
	* src/net/messagein.hpp: Updated from tmwclient to add getUnreadLength.
	* src/net/connectionhandler.hpp, src/net/connectionhandler.cpp: Removed
	unused ClientData class.
	* src/inventory.h: Removed "at" accessors, as nobody is ready to catch
	exceptions. Removed unneeded dependency and unused pointer.
	* src/net/netcomputer.hpp: Fixed typos.
	* src/configuration.h: Factored DEFAULT_SERVER_PORT macro here.
	* src/defines.h, src/game-server/accountconnection.hpp,
	src/game-server/accountconnection.cpp,
	src/account-server/serverhandler.hpp,
	src/account-server/serverhandler.cpp,
	src/account-server/accounthandler.cpp:
	Added communication between account server and game server.
	* src/main.cpp, src/Makefile.am: Created main files in both
	src/account-server and src/game-server. Modified makefiles to produce
	two server binaries.
	* src/itemhandler.h, src/itemhandler.cpp: Removed: useless and unused.
	* src/Makefile.am, src/account-server/dalstorage.cpp: Removed useless
	dependency on Cipher + OpenSSL.
	* README: Added a few words on how to run the split servers.

2006-12-29  Philipp Sehmisch  <tmw@crushnet.org>

	* src/being.cpp, src/being.h, src/defines.h, src/gamehandler.cpp,
	src/mapcomposite.cpp, src/mapcomposite.h, src/object.h, src/player.cpp,
	src/player.h, src/state.cpp: Implemented basic attack hit detection and
	damage notification.

2006-12-27  Philipp Sehmisch <tmw@crushnet.org>

	* src/defines.h, src/gamehandler.cpp, src/object.h, src/player.cpp,
	src/player.h, src/state.cpp: Clients are now notified when other
	clients near them perform attacks.

2006-10-20  Yohann Ferreira  <bertram@cegetel.net>

	* src/item.h, src/player.cpp, src/inventory.h, src/inventory.cpp:
	Adding inventory handling basics Part 2.

2006-10-20  Yohann Ferreira  <bertram@cegetel.net>

	* data/items.xsd, data/items.xml, src/item.h, src/itemmanager.cpp,
	src/main.cpp: Simplified item reference a bit and filled the reference
	items.xml file.
	* data/items.xml, data/items.xsd, src/item.h, src/itemmanager.cpp:
	Added the missing Weapon Type and Max Per Slot item properties.
	* src/inventory.h, src/inventory.cpp, src/itemmanager.h,
	src/itemmanager.cpp, src/player.h, src/player.cpp,
	src/gamehandler.cpp: Adding inventory handling (basics) Part 1.

2006-10-19  Yohann Ferreira  <bertram@cegetel.net>

	* data/items.xsd, src/main.cpp, src/Makefile.am, src/item.h,
	src/item.cpp, itemmanager.cpp, itemmanager.h, being.h, player.cpp,
	dalstorage.cpp: Added a backend to get item reference information.
	The xml file isn't ready yet.

2006-10-03  Eugenio Favalli  <elvenprogrammer@gmail.com>

	* src/itemhandler.h, tmwserv.cbp, tmwserv.dev: Updated project files
	and fixed a compilation issue.

2006-10-03  Yohann Ferreira  <bertram@cegetel.net>

	* src/item.cpp, src/item.h, src/inventory.h, src.inventory.cpp,
	src/itemhandler.h, src/itemhandler.cpp, src/dalstoragesql.h,
	src/Makefile.am: Committed itemhandler structure part rc1.
	src/accounthandler.cpp, src/accounthandler.h, src/chathandler.h,
	src/chathandler.cpp, src/gamehandler.h, src/gamehandler.cpp: Made the
	server tells which server is listening on a port.

2006-09-09  Guillaume Melquiond  <guillaume.melquiond@gmail.com>

	* src/map.cpp: Merged client pathfinder changes.

2006-09-04  Guillaume Melquiond  <guillaume.melquiond@gmail.com>

	* src/mapcomposite.cpp, src/mapcomposite.h, src/state.cpp: Fixed wrong
	ID allocation. Improved failure propagation. Simplified code.

2006-09-03  Guillaume Melquiond  <guillaume.melquiond@gmail.com>

	* src/player.cpp, src/object.h, src/gamehandler.h, src/state.cpp,
	src/gamehandler.cpp, src/state.h: Removed mNeedUpdate and mNew from
	Object class; added update flags instead. Reduced size of Object
	fields. Moved sayAround from GameHandler to State class. Improved
	handling of flags for move messages.
	* src/mapcomposite.h, src/state.cpp, src/mapcomposite.cpp: Added map
	partitioning to reduce quadratic behavior when checking object ranges.
	* src/object.cpp: Fixed cost of diagonal moves.

2006-09-02  Bjørn Lindeijer  <bjorn@lindeijer.nl>

	* src/defines.h: Corrected hair and hair color constants to match
	those available on the client.

2006-09-02  Guillaume Melquiond  <guillaume.melquiond@gmail.com>

	* src/object.cpp, src/controller.cpp, src/dalstorage.cpp, src/items.h,
	src/player.cpp, src/object.h, src/state.cpp, src/state.cpp,
	src/defines.h, src/player.h, src/gamehandler.cpp: Decorrelated moving
	object IDs from character database IDs. Switched to short IDs instead.
	* src/messageout.cpp, src/messageout.h, src/state.cpp, src/defines.h:
	Removed pixel-based synchronisation. Added variable length move
	messages. Changed default buffer size of outgoing packets.
	* src/src/accounthandler.cpp, src/point.h, src/object.cpp,
	src/controller.cpp, src/dalstorage.cpp, src/object.h, src/state.cpp,
	src/gamehandler.cpp: Made Point a POD type. Simplified server algorithm
	for moving objects; it now matches the one in the client.
	* src/gameclient.cpp, src/player.h, src/gamehandler.cpp: Added
	GameClient pointer to Player class for O(1) message sending.
	* src/mapcomposite.h, src/mapcomposite.cpp, src/Makefile.am: Moved
	MapComposite class to its own files.
	* src/gameclient.cpp, src/gamehandler.h, src/state.cpp, src/state.h,
	src/gamehandler.cpp: Reduced amount of counted pointers. Implemented
	unique public IDs.

2006-08-28  Eugenio Favalli  <elvenprogrammer@gmail.com>

	* tmwserv.cbp, tmwserv.dev: Updated project files.

2006-08-28  Bjørn Lindeijer  <bjorn@lindeijer.nl>

	* src/controller.h, src/object.cpp, src/controller.cpp, src/object.h,
	src/state.cpp, src/being.cpp, src/Makefile.am, src/being.h: Added a
	Controller class meant to implement behaviour loosely coupled to the
	actual being. Used it to control 10 testing maggots that are now
	randomly walking around.

2006-08-27  Bjørn Lindeijer  <bjorn@lindeijer.nl>

	* src/map.cpp, src/accounthandler.cpp, src/point.h,
	src/dalstorage.cpp, src/object.h, src/state.cpp, src/gamehandler.cpp,
	src/map.h, src/Makefile.am: Introduced Point class to replace the
	confusing and clumsy usage of std::pair.
	* src/point.h, src/player.cpp, src/account.h, src/being.cpp,
	src/player.h, src/gameclient.h, src/state.h, src/Makefile.am,
	src/being.h: Put Player class in its own module instead of defining it
	together with Being.

2006-08-27  Guillaume Melquiond  <guillaume.melquiond@gmail.com>

	* src/object.cpp: Fixed assertion failure on being movements.
	* src/accounthandler.cpp: Matched server-side speed with client-side
	speed. Removed position hack.
	* src/state.cpp: Changed state handler so that entering and leaving
	beings are only reported when they are in range.

2006-08-26  Rogier Polak  <rogier_polak@users.sourceforge.net>

	* src/netcomputer.h, src/netcomputer.cpp, src/connectionhandler.cpp:
	Added the stream operator << to NetComputer, for logging of the
	peers ip-address (patch applied by Bjørn Lindeijer).

2006-08-26  Guillaume Melquiond  <guillaume.melquiond@gmail.com>

	* src/accounthandler.cpp: Set an arbitrary start position outside any
	wall for testing purpose.
	* src/gamehandler.cpp, src/defines.h: Send being identifier instead of
	being name when saying around.
	* src/object.h: Added a field indicating if an object just appeared.
	* src/state.cpp: Improved update logic by taking into account beings
	that just appeared. Moved "change map" message from AddObject to
	InformPlayer.

2006-08-26  Bjørn Lindeijer  <bjorn@lindeijer.nl>

	* src/accounthandler.cpp: Read game and chat server addresses to send
	to the client from the configuration file.
	* docs/tmwserv.xml: Added example configuration file.

2006-08-25  Rogier Polak  <rogier_polak@users.sourceforge.net>

	* src/accountclient.h, src/messageout.cpp, src/accounthandler.cpp,
	src/accountclient.cpp, src/netcomputer.h, src/client.cpp,
	src/messageout.h, src/netcomputer.cpp, src/gameclient.cpp,
	src/state.cpp, src/defines.h, src/gamehandler.cpp,
	src/chathandler.cpp, src/gameclient.h: MessageOut is now more
	efficient by preallocating buffer capacity, NetComputer no longer
	holds a reference to the ConnectionHandler that spawned it and support
	was added for unreliable packets and channels (patch applied by Bjørn
	Lindeijer with some modifications).

2006-08-21  Eugenio Favalli  <elvenprogrammer@gmail.com>

	* tmwserv.cbp, tmwserv.dev: Updated project files.

2006-08-21  Bjørn Lindeijer  <bjorn@lindeijer.nl>

	* src/accounthandler.cpp, src/accounthandler.h: Handle character
	create message in separate funcion.

2006-08-20  Bjørn Lindeijer  <bjorn@lindeijer.nl>

	* src/accounthandler.cpp: Do not send map name and send token before
	game and chat server information, as per current specification.
	* src/connectionhandler.h, src/connectionhandler.cpp,
	src/dalstorage.cpp, src/netcomputer.cpp, src/mapmanager.cpp,
	src/state.cpp: Some code format changes, logging improvals and
	commenting.
	* src/state.cpp, src/defines.h, src/gamehandler.cpp, src/state.h,
	src/being.h: Added sending of initial GPMSG_PLAYER_MAP_CHANGE message
	for joining players.

2006-08-19  Bjørn Lindeijer  <bjorn@lindeijer.nl>

	* src/accounthandler.cpp, src/account.cpp, src/dalstorage.cpp,
	src/account.h, src/defines.h, src/chathandler.cpp, src/being.h:
	Renamed Genders to Gender and AccountLevels to AccountLevel.

2006-08-15  Bjørn Lindeijer  <bjorn@lindeijer.nl>

	* src/connectionhandler.h, src/messageout.cpp, src/messagein.h,
	src/accounthandler.cpp, src/connectionhandler.cpp, src/netcomputer.h,
	src/messagein.cpp, src/client.cpp, src/messageout.h,
	src/netcomputer.cpp, src/packet.h, src/packet.cpp,
	src/gamehandler.cpp, src/chathandler.cpp, src/Makefile.am: Removed
	Packet class since MessageIn and MessageOut suffice. MessageIn and
	MessageOut now no longer copy the message data unnecessarily (used to
	happen in Packet). On the client side this class was already removed.
	* src/defines.h: Removed UNKNOWN gender as this should currently not
	be used.

2006-08-15  Guillaume Melquiond  <guillaume.melquiond@gmail.com>

	* src/accounthandler.cpp, src/defines.h: Modified protocol so that
	server information are sent on character selection.
	* src/client.cpp: Adapted to new connection protocol and new character
	information.

2006-08-13  Bjørn Lindeijer  <bjorn@lindeijer.nl>

	* src/items.h: Fixed missing constructor since there is no default
	constructor in its superclass Object.
	* src/netcomputer.cpp: Log sending of messages.
	* runserv.sh: Include more verbose messages.

2006-08-13  Eugenio Favalli  <elvenprogrammer@gmail.com>

	* tmwserv.cbp, tmwserv.dev: Updated project files.
	* src/accounthandler.cpp, src/connectionhandler.cpp,
	src/dalstorage.cpp, src/defines.h: Changed character list to a sequence
	of packets and fixed a db issue.

2006-08-11  Bjørn Lindeijer  <bjorn@lindeijer.nl>

	* src/connectionhandler.h, src/connectionhandler.cpp,
	src/netcomputer.h, src/netcomputer.cpp: Removed
	ConnectionHandler::forceDisconnect method and implemented part of the
	NetComputer::disconnect method instead. Makes NetComputer::getPeer
	unnecessary.

2006-08-06  Guillaume Melquiond  <guillaume.melquiond@gmail.com>

	* src/map.cpp, src/map.h, src/being.h, src/being.cpp: Changed member
	constness. Added a proximity tester. Moved path node structure.
	* src/accounthandler.cpp: Modified logging. Prevented empty packets
	from being sent and killing ENet. Set destination to current position.
	* src/defines.h, src/gamehandler.cpp, src/client.cpp: Added support for
	move messages. Changed sayAround to pixel distance.
	* src/object.cpp, src.object.h, src/state.cpp: Implemented being
	movements.

2006-08-04  Bjørn Lindeijer  <bjorn@lindeijer.nl>

	* src/properties.h, src/map.cpp, src/map.h, src/Makefile.am:
	Generalized the properties functionality as was done in the client
	before.
	* src/main.cpp, src/items.cpp, src/items.h, src/utils/timer.cpp,
	src/utils/timer.h, src/utils/logger.h: Removed some more remaining
	usages of tmwserv namespace.
	* src/gamehandler.cpp, src/chatchannel.h: Added some documentation and
	de-complicized the code a bit.
	* configure.ac: Removed checks for SDL and SDL_net.
	* INSTALL: Somehow got updated to a newer version.

2006-08-04  Guillaume Melquiond  <guillaume.melquiond@gmail.com>

	* src/object.h, src/object.cpp, src/being.h, src/dalstorage.cpp: Added
	the database primary key to Player.
	* src/state.cpp: Used Player ID.
	* src/dal/recordset.cpp: Removed redundant checks.
	* src/dalstorage.cpp, src/dalstorage.h, src/storage.h: Prevented
	database failure from allowing already existing character name or email
	address.
	* src/accounthandler.cpp: Fixed control for changing email address.

2006-08-03  Guillaume Melquiond  <guillaume.melquiond@gmail.com>

	* src/storage.h, src/dalstorage.h, src/dalstorage.cpp: Removed
	AccountInfo. Restricted addAccount to accounts without characters,
	removed wrong SQL code. Fixed casting in updAccount, promoted member as
	flush. Added implicit flush to addAccount and delAccount. Fixed user_id
	for every SQL backend. Added flushAll and unloadAccount members.
	* src/accounthandler.cpp: Restricted flush to only modified accounts.
	* src/account.h, src/account.cpp: Added the database primary key to
	Account.

2006-08-03  Bjørn Lindeijer  <bjorn@lindeijer.nl>

	* src/gameclient.cpp, src/gameclient.h, src/gamehandler.cpp,
	src/Makefile.am: Defined the GameClient class in its own module.

2006-08-02  Bjørn Lindeijer  <bjorn@lindeijer.nl>

	* src/accounthandler.cpp, src/accounthandler.h: Put handling of
	logout, unregister and password change messages into separate methods.

2006-08-02  Guillaume Melquiond  <guillaume.melquiond@gmail.com>

	* src/Makefile.am: Put object files in subdirectories. Removed
	compilation flags.

2006-08-02  Eugenio Favalli  <elvenprogrammer@gmail.com>

	* tmwserv.cbp, tmwserv.dev: Updated project files.

2006-08-01  Bjørn Lindeijer  <bjorn@lindeijer.nl>

	* src/accountclient.h, src/accountclient.cpp, src/Makefile.am: Defined
	this class in its own module (extracted from accounthandler.cpp).
	* src/messageout.h, src/messageout.cpp: Added constructor that takes
	the message ID for convenience.
	* src/accounthandler.cpp, src/accounthandler.h: Put handling of logins
	in a separate method. I think it would be better if this was done for
	all messages.
	* src/client.cpp: Removed requesting character listing, as this comes
	with the succesful register/login responses.
	* src/accounthandler.cpp, src/accounthandler.h: Put handling of
	registrations in a separate method and cleaned it up a bit.

2006-07-31  Bjørn Lindeijer  <bjorn@lindeijer.nl>

	* src/client.cpp, src/netcomputer.cpp: Fixed registering (send version
	as integer) and corrected the off by one packed size.

2006-07-27  Eugenio Favalli  <elvenprogrammer@gmail.com>

	* tmwserv.cbp, tmwserv.dev: Updated project files.
	* src/accounthandler.cpp, src/client.cpp: Modified client version to be
	an int.
	* src/accounthandler.cpp, src/defines.h: Client version is being sent
	also during registration.

2006-07-27  Guillaume Melquiond  <guillaume.melquiond@gmail.com>

	* src/storage.cpp, src/map.cpp, src/dalstorage.h, src/mapmanager.h,
	src/chatchannelmanager.cpp, src/mapreader.cpp, src/mapmanager.cpp,
	src/dal/dalexcept.h, src/dal/mysqldataprovider.h, src/dal/recordset.h,
	src/dal/dataproviderfactory.h, src/dal/dataprovider.cpp,
	src/dal/sqlitedataprovider.cpp, src/dal/dataprovider.h,
	src/dal/mysqldataprovider.cpp, src/dal/pqdataprovider.h,
	src/dal/recordset.cpp, src/dal/sqlitedataprovider.h, src/map.h,
	src/dal/dataproviderfactory.cpp, src/main.cpp, src/mapreader.h,
	src/utils/singleton.h, src/utils/cipher.cpp, src/utils/logger.cpp,
	src/utils/cipher.h, src/utils/stringfilter.h, src/utils/logger.h:
	Removed tmwserv namespace.
	* src/utils/countedptr.h: Removed tmwserv namespace. Added conversion
	constructor.
	* src/accounthandler.cpp, src/account.cpp, src/object.cpp,
	src/storage.h, src/dalstorage.cpp, src/account.h, src/object.h,
	src/gamehandler.h, src/state.cpp, src/being.cpp, src/gamehandler.cpp,
	src/state.h, src/being.h: Removed tmwserv namespace. Added MovingObject
	and Player classes. Removed exhaustive statistic accessors.

2006-07-26  Eugenio Favalli  <elvenprogrammer@gmail.com>

	* src/accounthandler.cpp, src/client.cpp, tmwserv.cbp: Send some
	character's infos after a successful login, removed a useless byte,
	added Code::Blocks project file.

2006-07-13  Eugenio Favalli  <elvenprogrammer@gmail.com>

	* tmwserv.dev: Updated Dev-C++ project file.

2006-06-17  Guillaume Melquiond  <guillaume.melquiond@gmail.com>

	* src/state.cpp, src/state.h, src/defines.h, src/client.cpp,
	src/main.cpp, src/gamehandler.cpp: Started handling beings on maps.

2006-06-11  Guillaume Melquiond  <guillaume.melquiond@gmail.com>

	* src/chatchannelmanager.cpp: Fixed public/private ranges.
	* src/chathandler.h: Removed useless prototype.
	* src/defines.h, src/accounthandler.cpp, src/chathandler.cpp,
	src/gamehandler.cpp, src/client.cpp: Sanitized message packets and
	errors.

2006-05-23  Guillaume Melquiond  <guillaume.melquiond@gmail.com>

	* src/chatchannelmanager.cpp, src/chatchannelmanager.h: Removed
	unwarranted constness. Used binary searches instead of loops.
	* src/chatchannel.cpp, src/chatchannel.h: Replaced usage of whole Being
	by character name.
	* src/client.cpp: Implemented client-side server split.
	* src/messagehandler.cpp, src/messagehandler.h, src/Makefile.am:
	Removed unused MessageHandler class.
	* src/accounthandler.cpp, src/accounthandler.h, src/chathandler.cpp,
	src/chathandler.h, src/gamehandler.cpp, src/gamehandler.h: Respectively
	changed into an account server, a chat server, and a game server.
	* src/main.cpp, src/state.cpp, src/state.h, src/defines.h: Small fixes
	to cope with server split.
	* src/connectionhandler.cpp, src/connectionhandler.h,
	src/netcomputer.cpp, src/netcomputer.h: Removed temporary classes.

2006-05-22  Eugenio Favalli  <elvenprogrammer@gmail.com>

	* tmwserv.dev: Updated Dev-C++ project file.

2006-05-20  Guillaume Melquiond  <guillaume.melquiond@gmail.com>

	* src/connectionhandler.cpp, src/connectionhandler.h,
	src/netcomputer.cpp, src/netcomputer.h, src/accounthandler.h,
	src/state.cpp, src/state.h, src/chathandler.h, src/gamehandler.cpp:
	Split low-level and high-level functionality in network access:
	NetComputer and ConnectionHandler access the medium while
	Clientcomputer and ClientConnectionHandler have data on the connected
	clients. Fixed loops in ClientConnectionHandler; sendToEveryone was
	sending to only one client. Removed unused stringSplit.
	* src/configuration.cpp, src/accounthandler.cpp, src/dalstorage.cpp,
	src/main.cpp, src/chathandler.cpp, src/messagehandler.cpp,
	src/utils/stringfilter.cpp, src/utils/logger.h, src/skill.cpp: Changed
	LOG macros to have statement syntax.

2006-05-19  Guillaume Melquiond  <guillaume.melquiond@gmail.com>

	* src/connectionhandler.cpp, src/connectionhander.h, src/main.cpp:
	Copied connection logic from netsession. Removed multithreaded socket
	access as Enet is non-blocking. Fixed memory corruption on client
	disconnect.
	* src/Makefile.am, src/netsession.cpp, src/netsession.h: Removed
	unused NetSession class.

2006-05-14  Guillaume Melquiond  <guillaume.melquiond@gmail.com>

	* src/accounthandler.cpp: Prevented accounts from being incorrectly
	created when errors were detected.
	* src/client.cpp: Prevented input from looping on error, allowed
	client to read spaces as part of chat messages, added output of chat
	messages received from server.

2006-05-14  Eugenio Favalli  <elvenprogrammer@gmail.com>

	* src/utils/timer.cpp, tmwserv.dev: Replaced nanosleep with Sleep in
	Windows and updated Dev-C++ project file.

2006-05-14  Guillaume Melquiond  <guillaume.melquiond@gmail.com>

	* src/messagein.cpp: Replaced strnlen by memchr to avoid GNU
	extensions.

2006-05-14  Bjørn Lindeijer  <bjorn@lindeijer.nl>

	* src/messageout.cpp, src/messagein.h, src/messagein.cpp: Applied
	another patch by Guillaume Melquiond which fixed a number of issues
	with the message implementation (client side should also be checked).
	* src/main.cpp, src/utils/timer.cpp, src/utils/timer.h: Applied a
	patch by Guillaume that makes the server sleep between ticks instead
	of polling for the next one.
	* src/connectionhandler.cpp, src/object.cpp, src/object.h: Applied a
	patch by Guillaume that fixes and optimizes
	ConnectionHandler::sendAround.

2006-05-13  Bjørn Lindeijer  <bjorn@lindeijer.nl>

	* src/Makefile.am, configure.ac: Applied patch by Guillaume Melquiond
	which adds ENet check and adds timer.cpp/h to the Makefile.am.
	* src/connectionhandler.cpp, src/client.cpp, src/defines.h: Fixed some
	compilation warnings.

2006-05-03  Philipp Sehmisch  <tmw@crushnet.org>

	* src/main.cpp: only yield main thread when there isn't anything to
	do.

2006-04-30  Philipp Sehmisch  <tmw@crushnet.org>
	* src/util/timer.h, src/util/timer.cpp: Added a timer class.
	* src/main.cpp: Replaced SDL timing with the new timer class.
	* src/util/timer.h, src/util/timer.cpp: Replaced clock with
	gettimeofday.
	* src/util/wingettimeofday.h, src/util/wingettimeofday.h: Windows
	implementation of the UNIX gettimeofday function.
	* src/main.cpp: World time doesn't get async anymore when world ticks
	are skipped. Added a warning when tick skip occurs.
	* src/util/timer.h, src/util/timer.cpp: Made sure every compiler uses
	a 64 bit unsigned integer for getTimeInMillisec.
	* src/main.cpp, src/connectionhandler.cpp, src/netsession.cpp,
	src/SDL-win32_main.c: Removed the last remains of SDL.

2006-04-28  Eugenio Favalli  <elvenprogrammer@gmail.com>

	* src/netsession.cpp, src/netsession.h, tmwserv.dev: Got rid of SDL
	threads, now using pthreads.

2006-04-11  Eugenio Favalli  <elvenprogrammer@gmail.com>

	* src/client.cpp, src/connectionhandler.cpp, tmwserv.dev: Updated some
	code to latest enet version, and fixed a linking issue in windows.

2006-03-26  Eugenio Favalli  <elvenprogrammer@gmail.com>

	* src/messagein.cpp, src/messageout.cpp: Got rid of SDL_net endianess
	code.
	* src/messagein.cpp: Fixed a mistake.

2006-03-20  Eugenio Favalli  <elvenprogrammer@gmail.com>

	* src/client.cpp, src/connectionhandler.cpp, src/connectionhandler.h,
	src/main.cpp, src/messagein.cpp, src/messageout.cpp,
	src/netcomputer.cpp, src/netcomputer.h, src/netsession.cpp,
	src/netsession.h, src/utils/logger.cpp, tmwserv.dev: Got rid of
	SDL_net, now both server and test client use enet.

2006-03-18  Eugenio Favalli  <elvenprogrammer@gmail.com>

	* src/client.cpp, src/messageout.cpp, src/messageout.h: Converted the
	test client to use enet.

2006-03-14  Eugenio Favalli  <elvenprogrammer@gmail.com>

	* tmwserv.dev: Updated project file.

2006-03-07  Björn Steinbrink  <B.Steinbrink@gmx.de>

	* src/utils/stringfilter.h, src/utils/stringfilter.cpp: A bunch of
	cleanups.

2006-03-06  Björn Steinbrink  <B.Steinbrink@gmx.de>

	* src/connectionhandler.h, src/storage.cpp, src/configuration.cpp,
	src/script.h, src/messageout.cpp, src/map.cpp, src/messagein.h,
	src/skill.h, src/messagehandler.h, src/resourcemanager.h,
	src/netsession.cpp, src/accounthandler.cpp, src/dalstorage.h,
	src/sqlitestorage.h, src/account.cpp, src/connectionhandler.cpp,
	src/chatchannelmanager.cpp, src/netcomputer.h, src/messagein.cpp,
	src/client.cpp, src/messageout.h, src/dalstorage.cpp,
	src/netsession.h, src/accounthandler.h, src/mapreader.cpp,
	src/account.h, src/netcomputer.cpp, src/mapmanager.cpp, src/object.h,
	src/gamehandler.h, src/dal/mysqldataprovider.h, src/dal/recordset.h,
	src/dal/dataproviderfactory.h, src/dal/sqlitedataprovider.cpp,
	src/dal/dataprovider.h, src/dal/mysqldataprovider.cpp,
	src/dal/pqdataprovider.h, src/dal/recordset.cpp,
	src/dal/sqlitedataprovider.h, src/state.cpp, src/chathandler.h,
	src/items.h, src/mapreader.h, src/packet.cpp, src/gamehandler.cpp,
	src/mapmanager.h, src/chathandler.cpp, src/skill.cpp,
	src/utils/cipher.h, src/utils/logger.cpp, src/utils/stringfilter.h,
	src/utils/base64.cpp, src/utils/logger.h, src/utils/cipher.cpp,
	src/utils/stringfilter.cpp, src/resourcemanager.cpp,
	src/messagehandler.cpp, src/map.h, src/state.h, src/sqlitestorage.cpp:
	Cleaned up unnecessary header dependencies and fixed some
	indentations.

2006-03-05  Yohann Ferreira  <bertram@cegetel.net>

	* src/state.cpp, src/defines.h, src/chathandler.cpp,
	src/connectionhandler.cpp, src/connectionhandler.h, TODO: Added the
	server code to enter and leave a channel. Some minor fix to the state
	code, and completed the TODO a little for later coding.

2006-02-19  Yohann Ferreira  <bertram@cegetel.net>

	* src/state.h, src/state.cpp, src/object.h: Made use of counted
	pointers for objects, just the way it is for beings.
	* src/chathandler.cpp, src/accounthandler.cpp, src/client.cpp,
	docs/packets: Updated tmwserv packets documentation. Some minor other
	updates.

2006-01-24  Yohann Ferreira  <bertram@cegetel.net>

	* src/chathandler.cpp, src/chathandler.h, src/accounthandler.cpp,
	src/dalstoragesql.h, src/defines.h, src/client.cpp, src/Makefile.am,
	src/utils/slangsfilter.cpp, src/utils/slangsfilter.h,
	src/utils/stringfilter.h, src/utils/stringfilter.cpp, src/main.cpp,
	src/accounthandler.h, src/chatchannelmanager.cpp,
	src/chatchannelmanager.h, src/chatchannel.h, src/chatchannel.cpp,
	src/connectionhandler.h, src/connectionhandler.cpp: Chat Channeling
	Commit part 4. Renamed the slang filter into StringFilter and moved
	some code to it. Added the missing protocol values, and implemented
	registering/registering of channels; More to come about it.

2006-01-21  Yohann Ferreira  <bertram@cegetel.net>

	* src/accounthandler.cpp, src/client.cpp, src/defines.h,
	src/dalstorage.cpp: Very little corrections. Corrected a little
	mistake in the channels loading. Made a simple function to test
	for double quotes. We could see how to improve that.
	* src/chatchannelmanager.h, src/chatchannelmanager.cpp,
	src/chatchannel.h, src/chatchannel.cpp, src/dalstorage.cpp,
	src/dalstorage.h, src/storage.h, src/chathandler.cpp,
	src/netcomputer.h, src/netcomputer.cpp, src/main.cpp,
	src/connectionhandler.h, src/connectionhandler.cpp: Chat channeling
	commit part 3. Is now linked with the connection handler to chat in a
	specific channel. Also made some fixes on the chat channeling and in
	the channels load/save functions.

2006-01-18  Bjørn Lindeijer  <bjorn@lindeijer.nl>

	* src/mapmanager.cpp, src/mapmanager.h: Some insignificant changes to
	usage of the const keyword. Also simplified isLoaded method.

2006-01-18  Yohann Ferreira  <bertram@cegetel.net>

	* src/chatchannelmanager.h, src/chatchannelmanager.cpp,
	src/chatchannel.h, src/chatchannel.cpp, src/storage.h,
	src/dalstorage.h, src/dalstorage.cpp, src/dalstoragesql.h,
	src/defines.h: Chat Channeling Commit Part 2.

2006-01-16  Yohann Ferreira  <bertram@cegetel.net>

	* src/state.cpp, src/chathandler.h, src/chathandler.cpp,
	src/Makefile.am, src/chatchannel.h, src/chatchannel.cpp,
	src/chatchannelmanager.h, src/chatchannelmanager.cpp,
	src/dalstoragesql.h, src/dalstorage.cpp, src/storage.h,
	src/dalstorage.h: Chat channeling commit part 1. Useful to get
	feedback before committing what's next.

2006-01-14  Eugenio Favalli  <elvenprogrammer@gmail.com>

	* src/accounthandler.cpp, src/client.cpp, src/dalstorage.cpp,
	src/messageout.cpp, src/defines.h: Server returns infos about position
	of the selected character (map name, coordinates).

2006-01-13  Eugenio Favalli  <elvenprogrammer@gmail.com>

	* src/accounthandler.cpp, src/client.cpp, src/dalstorage.cpp,
	src/defines.h, src/main.cpp, src/mapmanager.cpp, src/mapmanager.h,
	src/netcomputer.cpp, src/object.cpp, src/object.h, tmwserv.dev: Made
	minimum client version and default map id configurable, set/getMapId
	are now preferred.

2006-01-12  Eugenio Favalli  <elvenprogrammer@gmail.com>

	* src/accounthandler.cpp, src/client.cpp, src/dalstorage.cpp,
	src/main.cpp, src/mapmanager.cpp, src/mapmanager.h,
	src/netcomputer.cpp, src/object.cpp, src/object.h, src/state.cpp,
	tmwserv.dev: Fixed default map definition for a new created character,
	enabled loading of map when a character is on it, fixed inconsistency
	in getter/setter for map id.

2006-01-09  Eugenio Favalli  <elvenprogrammer@gmail.com>

	* src/dalstorage.cpp: Fixed some sql query issues.

2005-01-08  Yohann Ferreira  <bertram@cegetel.net>

	* src/defines.h, src/client.cpp, src/accounthandler.cpp,
	src/dalstorage.cpp, src/storage.h, src/dalstorage.h,
	src/dalstoragesql.h, src/being.h, src/object.h, src/netcomputer.cpp,
	src/object.cpp, src/being.cpp, src/state.h, src/state.cpp,
	src/mapmanager.h, src/main.cpp, src/mapmanager.cpp: Added
	customization of created character. (That makes previously created db
	invalid.) Made list of map indexed by map id, instead of map name.
	This will prevent unsyncing of player's current map when changing a
	map name. Remember you have now to add a map filename into db before
	being able to load it. (Default map id is 1, not ZERO, as zero is the
	not found return value.

2005-01-04  Yohann Ferreira  <bertram@cegetel.net>

	* src/defines.h, src/accounthandler.cpp, src/main.cpp, src/client.cpp:
	Added a standard version check.

2005-01-04  Yohann Ferreira  <bertram@cegetel.net>

	* src/connectionhandler.h, src.connectionhandler.cpp, src/client.cpp,
	src/accounthandler.cpp, src/defines.h: Added a check if the maximum
	number of client is already logged in at login attempt. Added a default
	behaviour in protocol. Some cleanups.
	* src/client.cpp, src/storage.h, src/dalstorage.cpp, src/dalstorage.h,
	src/main.cpp, src/defines.h, src/accounthandler.cpp, src/Makefile.am:
	Implemented server response handling to the test client. Fixed a bug
	that made the Email change not possible. Changed some protocol value to
	have a litte neater client code. Added FreeBSD fix idea from icy to
	server code.

2005-12-31  Yohann Ferreira  <bertram@cegetel.net>

	* src/main.cpp, src/defines.h, src/utils/slangsfilter.h,
	src/utils/slangsfilter.cpp, src/accounthandler.h,
	src/accounthandler.cpp, src/chathandler.cpp: Adding the possibility to
	change Email, and password. Turned Slangs Filter into a class. Use
	some ifdefs for future configure options handling. Still has to update
	the client.

2005-12-29  Yohann Ferreira  <bertram@cegetel.net>

	* src/main.cpp, src/connectionhandler.cpp, src/defines.h,
	src/chathandler.cpp: Adding changes thought by Elven and an option for
	setting the port to listen on at startup.
	* src/accounthandler.cpp, src/dalstorage.cpp, src/dalstorage.h,
	src/storage.h: Fixing a bug in the Storage::getAccount() function that
	made the server crash when the first login had a bad password.

2005-12-29  Bjørn Lindeijer  <bjorn@lindeijer.nl>

	* configure.ac: Added errors when SDL_net or libcrypto are not found.
	* src/main.cpp: Reset SEGV signal handling after SDL initialisation to
	allow cores to be dumped.
	* runserv.sh: Added script that perpetually runs the server and
	automatically saves a backtrace and restarts when it crashes.

2005-12-29  Eugenio Favalli  <elvenprogrammer@gmail.com>

	* src/mapmanager.cpp, src/mapmanager.h, tmwserv.dev: Forgot a way to
	access maps.
	* tmwserv.dev: Fixed merge conflict as pointed out by Bjørn.

2005-12-28  Bjørn Lindeijer  <bjorn@lindeijer.nl>

	* makeclient.sh, src/Makefile.am: Integrated the building of tmwclient
	with the default make command, as contributed by r0nny.
	* src/main.cpp: Applied patch by r0nny that makes main.cpp a bit
	nicer.

2005-12-27  Yohann Ferreira  <bertram@cegetel.net>

	* src/chathandler.h, src/chathandler.cpp, src/defines.h,
	src/utils/slangsfilter.h, src/utils/slangsfilter.cpp,
	src/Makefile.am, src/main.cpp, src/accounthandler.cpp,
	src/connectionhandler.h, src/connectionhandler.cpp: Implemented
	common chat handling, except for chatting in channels. Also the
	Channel registering/unregistering isn't there yet and the commands
	needs to be implemented. Added a small slangs filter to reduce bad
	words in account names and in conversations a little.

2005-12-26  Bjørn Lindeijer  <bjorn@lindeijer.nl>

	* src/storage.cpp: Removed manual throwing of std::bad_alloc, which
	should happen by default unless new(nothrow) is used. Suggested by
	r0nny.

2005-12-20  Yohann Ferreira  <bertram@cegetel.net>

	* src/Makefile.am: Adding the MapManager to files list.
	* src/utils/logger.cpp, src/utils/logger.h, src/main.cpp,
	src/configuration.cpp, src/connectionhandler.cpp,
	src/mapmanager.cpp, src/mapreader.cpp, src/messagehandler.cpp,
	src/skill.cpp, src/resourcemanager.cpp, src/dalstorage.cpp,
	src/accounthandler.cpp: Adding command line argument parsing and
	log verbosity level handling.

2005-12-18  Eugenio Favalli  <elvenprogrammer@gmail.com>

	* src/main.cpp, src/mapreader.cpp, tmwserv.dev,
	src/mapmanager.cpp, src/mapmanager.h: Added a map manager to
	load/unload/reload maps.

2005-12-18  Yohann Ferreira  <bertram@cegetel.net>

	* src/accounthandler.cpp, src/netcomputer.h, src/netcomputer.cpp,
	src/chathandler.cpp, src/connectionhandler.cpp,
	src/gamehandler.cpp, src/connectionhandler.h, src/state.h,
	src/state.cpp: Made the handlers use the countedPtr for Beings
	as they should. Fixed a segfault when removing a being from the
	world. Also made use of AccountPtr instead of Account* to fix a
	not seen but yet present account reselection segfault bug.

2005-12-17  Bjorn Steinbrink  <B.Steinbrink@gmx.de>

	* src/messageout.h: Fixed some 64bit issue.

2005-12-12  Yohann Ferreira  <bertram@cegetel.net>

	* src/accounthandler.cpp, src/netcomputer.h,
	src/netcomputer.cpp, src/defines.h, src/dalstorage.cpp,
	src/dalstorage.h, src/storage.h, src/client.cpp, src/main.cpp:
	Now beings are handled in netcomputer when added and removed
	from the world. addBeing() and removeBeing() are still crashy.
	Added check if the character's name already exists. Forgot about
	that. Added CMSG_CHAR_LIST packet support.

2005-12-11  Yohann Ferreira  <bertram@cegetel.net>

	* src/accounthandler.cpp, src/main.cpp, src/account.h,
	src/account.cpp, src/dalstorage.cpp, src/client.cpp,
	src/defines.h: Added Logout, and character deletion support.
	Also changed the response code when trying to login when already
	logged.
	* src/accounthandler.cpp, src/main.cpp, src/dalstorage.cpp,
	src/client.cpp, src/connectionhandler.cpp, src/defines.h:
	Added unregistering, checking on character's name and email
	length support. Also made some little tweaks.

2005-12-10  Yohann Ferreira  <bertram@cegetel.net>

	* src/dalstorage.cpp: Fixed the buggy part of getAccount()
	where the mapInfo() recordSet erased the value of charInfo.
	Now, characters can be created and selected, with the map
	they were in, set.

2005-12-09  Yohann Ferreira  <bertram@cegetel.net>

	* src/dalstorage.cpp, src/accounthandler.cpp: Temporary
	made a workaround the character misloading at login.
	Work is to be made to see why the mapInfo recordset is
	buggy. Also made the server more verbose about characters.

2005-12-08  Yohann Ferreira  <bertram@cegetel.net>

	* src/dalstorage.cpp, src/dalstorage.h, src/storage.h:
	Radically improve the getEmailList() again based on
	MrLindeijer's good idea.
	* src/accounthandler.cpp: Simplify the code of Email check
	based on the previous improvement.

2005-12-06  Yohann Ferreira  <bertram@cegetel.net>

	* src/dalstorage.cpp: Improved the getEmailList() function.
	Now the file used as db or the db name is shown in log.
	* src/defines.h: Added some missing messages and values for
	them. Login, pass min, max length can be changed there now.
	* src/accounthandler.cpp: Added check and appropriate response
	when selecting, creating a character.

2005-12-05  Yohann Ferreira  <bertram@cegetel.net>

	* src/dalstorage.cpp: Added a working getEmailList() function.
	* src/accounthandler: Now tests if email already exists.
	* src/accounthandler.cpp, src/defines.h: Strengthens the way
	email addresses checked. Added good response for selecting
	a char when not logged.
	* src/storage.h, src/dalstorage.h, src/dalstorage.cpp: Added
	the getEmailList function, doesn't seem to work, but committed
	to see why.

2005-12-03  Yohann Ferreira  <bertram@cegetel.net>

	* src/accounthandler.cpp: Handling good conditions to register.
	Still lacks checking if the Email already exists.
	* src/dalstorage.cpp: Fixed a bug that throwed an exception when
	logging with an account that had no mapInfo yet.
	Still has to set these to defaults in such case.

2005-12-02  Yohann Ferreira  <bertram@cegetel.net>

	* src/main.cpp, src/accounthandler.h, src/accounthandler.cpp,
	src/configuration.h: Made the accounthandler reopen the db for
	SQLite to enable registering ! Now working.

2005-11-21  Aaron Marks  <nymacro@gmail.com>

	* src/state.cpp: Re-ordered a few statements to work better.
	* src/dalstorage.cpp: Now sets being's current map when getting a
	player's account.

2005-11-16  Aaron Marks  <nymacro@gmail.com>

	* src/state.h, src/state.cpp: Updated world related functions.
	* src/accounthandler.cpp: Now adds players who have selected a
	character to the game world.
	* src/object.h: Updated to include member variable for current map
	the object is located.

2005-11-15  Aaron Marks  <nymacro@gmail.com>

	* src/state.h, src/state.cpp: Updated world representation, added
	various methods which provide easy access to the game world.
	* src/defines.h: Added "private message" message.
	* src/client.cpp, scripts/init.rb: Added experimental remote access
	to Ruby's functionality.

2005-11-14  Aaron Marks  <nymacro@gmail.com>

        * src/bindings.i: Enabled "directors", allowing scripting language
        to override virtual functions.

2005-11-12  Aaron Marks  <nymacro@gmail.com>

	* src/main.cpp: Added scripting with Ruby support
	* src/bindings.i: Created basic SWIG bindings.
	* src/Makefile.am: Updated to support Ruby & generate SWIG
	bindings.
	* configure.ac: Updated to detect SWIG & Ruby, using them
	appropriately.
	* scripts/init.rb: Server initialization test script.

2005-11-10  Aaron Marks  <nymacro@gmail.com>

	* src/client.cpp: Updated client to support moving and equipping.
	* src/being.h, src/being.cpp: Added "hasItem"
	* src/state.cpp: Added beings updating.

2005-10-24  Yohann Ferreira  <Bertram@cegetel.net>

	* src/main.cpp: Added more useful infos at startup.
	* src/dal/dataprovider.h, src/dal/dataprovider.cpp,
	src/dal/sqlitedataprovider.cpp, src/dal/mysqldataprovider.cpp,
	src/dal/pqdataprovider.cpp, src/main.cpp, src/client.cpp:
	Grammar corrections, and a little bit of work on getting the name
	of the Db.