Cyp
c28316c5c7
newnet: Don't bother sending synch messages unless actually out of synch.
...
If it ain't broke, don't use up bandwidth trying to fix it.
2010-07-10 18:08:06 +02:00
Cyp
0b0e986ec6
Merge remote branch 'origin/master' into newnet
...
Conflicts:
lib/gamelib/gtime.c
lib/netplay/netplay.c
macosx/Warzone.xcodeproj/project.pbxproj
src/multiint.c
src/multisync.c
2010-06-26 22:42:44 +02:00
Per Inge Mathisen
5c654430d4
Final pass closing ticket:1651 remove floating point move precision, turning speed
...
from float to int. Now all that remains is float in contentious code that need to
be rewritten anyway.
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@11044 4a71c877-e1ca-e34f-864e-861f7616d084
2010-06-26 21:35:47 +02:00
Buginator
66edd6bdb3
Update MSVC project files to compile newnet
...
Added /arch:sse2
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/branches/newnet@10283 4a71c877-e1ca-e34f-864e-861f7616d084
2010-03-14 21:11:15 +01:00
Cyp
239e4e450d
newnet: Display icon on desynch or on waiting for players.
...
Saves having to look at console output to check that the game is in synch.
2010-03-14 13:27:05 +01:00
Cyp
8653631374
src: Undo a warning squelch, seems to be able to cause build errors for some, somehow.
2010-03-13 23:14:47 +01:00
Cyp
7d23dc8d67
newnet: Adjust latency automatically, instead of hardcoded to 400ms.
2010-03-11 17:26:13 +01:00
Cyp
153712cb5e
newnet: Clean up warnings, warning free build with -O2. Enable the same warnings for C and C++, where applicable.
2010-03-05 20:01:51 +01:00
Cyp
79f5ef2f7a
Merge remote branch 'origin/master' into newnet
...
Conflicts:
lib/netplay/netplay.c
lib/netplay/netplay.h
lib/netplay/nettypes.c
lib/netplay/nettypes.h
src/multibot.c
src/multistruct.c
src/multisync.c
src/order.c
src/orderdef.h
src/wavecast.cpp
2010-03-05 16:09:21 +01:00
Cyp
48421325ec
More cleanup of units and code. Squelch a couple of mac warnings.
...
16 files changed, 184 insertions(+), 467 deletions(-)
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@10124 4a71c877-e1ca-e34f-864e-861f7616d084
2010-03-04 19:07:43 +01:00
Cyp
bfb9250937
newnet: Send CRCs of syncDebug strings, not the strings themselves.
...
syncDebug should now be useful, even over a slow network.
2010-02-25 14:46:35 +01:00
Cyp
853d87580b
newnet: Fix some selectedPlayer abuse.
2010-02-23 09:13:13 +01:00
Cyp
8f2e94bb48
Merge remote branch 'origin/master' into newnet
...
Conflicts:
lib/netplay/netplay.c
src/multiint.c
src/multiopt.c
2010-02-22 10:43:24 +01:00
Cyp
36a6036b9f
newnet: Fix corner case which resulted in updating before all messages had arrived. Make NET_FIREUP start the game before processing more messages (fixes case where one client is running under valgrind, or is just very very slow).
2010-02-21 16:51:20 +01:00
Cyp
8c5712e6cb
newnet: Move checking for NET_ and GAME_ messages from the middle of an update to before deciding whether to update, fixes doing half of an update too soon on some clients. Fix droid synch messages going out of synch.
...
A few groups of patrolling trucks belonging to different players, and bumping into each other all the time stay in synch for several minutes, at least if not doing unsynchronised actions such as building new trucks (adding a lot of trucks, before ordering any of them to patrol is fine). They seem to get stuck in traffic jams, but at least they are synchronised traffic jams.
2010-02-20 12:19:10 +01:00
Christian Ohm
d6416c34eb
Return 0 in the various _lex_destroy int functions.
...
Original patch by Seismo (WarningC4716(_2).patch).
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@9884 4a71c877-e1ca-e34f-864e-861f7616d084
2010-02-20 00:50:15 +01:00
Cyp
f978943eb6
newnet: Fix the host mixing up broadcast messages with messsages to the host, by making NetQueue even more message-oriented. Use -Wall -Werror on C++ files too, and fix the corresponding werrors. Don't use gameRand() from scripts, since the scripts are apparently only executed on the host. Add syncDebug() log function, which is only printed, if it would print different things on different clients.
2010-02-16 23:02:27 +01:00
Cyp
33790b11a2
newnet: Rename all messages that go into game queues from NET_BLAH to GAME_BLAH, remove unused messages, and assert that the right messages go into the right kinds of queues.
2010-02-15 20:56:58 +01:00
Cyp
864b830a44
newnet: Don't wait for dropped players to send NET_GAME_TIME. Add more comments and cleanup.
2010-02-15 20:56:58 +01:00
Cyp
d1ba8c087b
newnet: Remove extra game queue, added due to misunderstanding.
2010-02-15 20:56:57 +01:00
Cyp
e9e30bcb27
newnet: Synch game queues, and play them back at the same rate on all clients. Multiplayer now "works" as it did before, with the advantage that it will be possible to remove the bMultiMessages hacks and implement real multiplayer support.
...
I even tested that campaign, skirmish, saving and loading still works.
2010-02-15 20:56:57 +01:00
i-nod
cec20aae6a
- NSIS changes from 2.3 ( #1111 ).
...
- Additional fixes to [9642]: remove old-1.10-balance.wz instead of origianl.wz.
- MinGW build system updates.
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@9727 4a71c877-e1ca-e34f-864e-861f7616d084
2010-02-09 20:28:16 +01:00
Cyp
abe95f17ff
logical: Bump updates per second to 10, since 3 was just for testing.
...
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@9668 4a71c877-e1ca-e34f-864e-861f7616d084
2010-02-09 20:28:09 +01:00
Cyp
709e9c677d
logical: Fix droid legs disappearing during first update interval.
...
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@9665 4a71c877-e1ca-e34f-864e-861f7616d084
2010-02-09 20:28:08 +01:00
Cyp
f6cff80f6b
logical: Completely use graphics time for effects.
...
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@9663 4a71c877-e1ca-e34f-864e-861f7616d084
2010-02-09 20:28:08 +01:00
Cyp
162157ef5a
logical: Rename some things. Fix when not updating fast enough.
...
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@9659 4a71c877-e1ca-e34f-864e-861f7616d084
2010-02-09 20:28:07 +01:00
Cyp
92225b6b18
logical: Make some projectiles animated in-flight.
...
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@9656 4a71c877-e1ca-e34f-864e-861f7616d084
2010-02-09 20:28:05 +01:00
Cyp
a99ef4ba19
logical: Logical updates.
...
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@9655 4a71c877-e1ca-e34f-864e-861f7616d084
2010-02-09 20:28:05 +01:00
Guangcong Luo
255506d4b6
Correctly calculate frameTimeFraction2 - fix bug #482 , among many other bugs.
...
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@9461 4a71c877-e1ca-e34f-864e-861f7616d084
2010-02-09 20:27:41 +01:00
Guangcong Luo
b5471fc186
Calculate gameTime2 using the correct time offset (fixes strange animations on some nonstandard game speeds).
...
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@9279 4a71c877-e1ca-e34f-864e-861f7616d084
2010-02-09 20:27:12 +01:00
Guangcong Luo
bf1541a626
Fix typo in gtime.c
...
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@9266 4a71c877-e1ca-e34f-864e-861f7616d084
2010-02-09 20:27:11 +01:00
Guangcong Luo
5da6588fb0
Initialize timeOffset correctly.
...
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@9258 4a71c877-e1ca-e34f-864e-861f7616d084
2010-02-09 20:27:09 +01:00
Guangcong Luo
dabc178157
Some hacks to paper over the time travel bug.
...
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@9257 4a71c877-e1ca-e34f-864e-861f7616d084
2010-02-09 20:27:09 +01:00
Guangcong Luo
cf8265e6c8
An assert to figure out why time travel is occurring.
...
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@9250 4a71c877-e1ca-e34f-864e-861f7616d084
2010-02-09 20:27:08 +01:00
Buginator
0aff0b46cf
Add a new debug flag type, LOG_FATAL.
...
This is used to differentiate LOG_ERROR (which is a *non* fatal error, but a error none the less) and fatal errors which result in program termination with no *visible* output (on windows/macs) on our end because of the crappy GUI functions so we usually dump it to stderr.txt and there is no clue that the program had to exit for whatever reason.
Hopefully, this will be helpful to windows people so they can differentiate between *our* exit/abort routines, and crashes that occur in drivers which look exactly the same since they get dumped back to the desktop with no visible clue why.
LOG_FATAL is *always* on in both debug & release builds.
On LOG_FATAL debug lines, on windows, we now throw up a modal dialog box with the current error message. At this time, this only happens when we have a error, and we use abort() right after the error, which makes it fatal.
That explains why this touches ~60 files :)
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@8320 4a71c877-e1ca-e34f-864e-861f7616d084
2009-11-22 16:19:51 +01:00
Buginator
51a28557b9
Make sure pointer is valid before attempting to remove it from the list.
...
Remove more useless abort()s.
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@7688 4a71c877-e1ca-e34f-864e-861f7616d084
2009-06-09 23:44:24 +02:00
Per Inge Mathisen
8c16a47ef0
Fix broken sources after 'make clean' in tarball generated by 'make dist'. Reported by 'JimPansen' in the forums.
...
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@7671 4a71c877-e1ca-e34f-864e-861f7616d084
2009-06-09 23:44:11 +02:00
Per Inge Mathisen
870c18b66d
Make sure game time variables are properly initialized first time we refer to them. Detected by valgrind.
...
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@7318 4a71c877-e1ca-e34f-864e-861f7616d084
2009-05-06 22:29:39 +02:00
Per Inge Mathisen
5da9b30f7d
Fix missing files in makefiles so that 'make dist' can be run again.
...
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@6792 4a71c877-e1ca-e34f-864e-861f7616d084
2009-03-07 18:09:58 +00:00
Guangcong Luo
1f5ab803ed
Updated MinGW32 makefiles; fix "multiple half-tracks" bug.
...
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@6639 4a71c877-e1ca-e34f-864e-861f7616d084
2009-02-15 05:49:09 +00:00
Buginator
55d3044f15
Updated MSVC project & solution file(s).
...
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@6637 4a71c877-e1ca-e34f-864e-861f7616d084
2009-02-15 05:42:09 +00:00
Dennis Schridde
aac41748dc
Bump copyright
...
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@6617 4a71c877-e1ca-e34f-864e-861f7616d084
2009-02-10 18:01:48 +00:00
Dennis Schridde
fcca92459c
We no longer need to respect 8-char filename limits, be clear in naming instead
...
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@6616 4a71c877-e1ca-e34f-864e-861f7616d084
2009-02-10 17:23:23 +00:00
Dennis Schridde
52b07e9cf0
Move piefixedpoint.h and pievector.h out of ivis, since they are quite generic
...
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@6615 4a71c877-e1ca-e34f-864e-861f7616d084
2009-02-10 17:23:18 +00:00
Dennis Schridde
cbbc58d1e9
Move files which extend a c std library header to a filename of similar name
...
Extension functions dealing with ...
* strings are in string_ext.h
* stdio (namely printf variants) are in stdio_ext.h
* math are in math_ext.h
These headers are no longer included by frame.h
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@6613 4a71c877-e1ca-e34f-864e-861f7616d084
2009-02-10 17:23:09 +00:00
Giel van Schijndel
1538c2af41
* Don't use an yyerror implementation with printf-format parsing for parsers/lexers that don't use it
...
- This reduces the complexity of those functions ''significantly''
* Mark yyerror functions with printf formatting with WZ_DECL_FORMAT(printf, ...)
(@trunk = the original intented target for r6430)
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@6432 4a71c877-e1ca-e34f-864e-861f7616d084
2008-12-04 12:58:42 +00:00
Giel van Schijndel
cb2ec762e2
* Change animObj_Remove such that it doesn't set the passed in ANIM_OBJECT* pointer to NULL (i.e. a ** pointer was passed)
...
* Instead rely on setting that pointer to NULL in the client code that calls animObj_Remove in the first place
- This was already done in all but one case where animObj_Remove was called
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@6180 4a71c877-e1ca-e34f-864e-861f7616d084
2008-10-16 17:40:58 +00:00
Giel van Schijndel
29d7c7abfd
Fix the raw win32 makefile system which got broken in r6144 and r6145:
...
* The lexers depend on the parser's headers so make sure to compile the parsers first
* Move a misplaced line-wrapping backslash in src/makefile.win32
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@6153 4a71c877-e1ca-e34f-864e-861f7616d084
2008-10-14 18:28:21 +00:00
Giel van Schijndel
810fac209b
* Wrap all file lists in the automake and win32 makefiles across lines such that there's only one file on each line
...
* Alphabetically sort the file lists
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@6144 4a71c877-e1ca-e34f-864e-861f7616d084
2008-10-13 13:04:37 +00:00
Giel van Schijndel
4c19888cba
* Move the fixed point cruft used for representation of degrees and some matrix math into a seperate header: piefixedpoint.h
...
* Update the autotools, win32 makefiles, Code::Blocks and MSVC build systems
NOTE: Xcode will need an update for this
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@5761 4a71c877-e1ca-e34f-864e-861f7616d084
2008-08-03 16:04:41 +00:00