Commit Graph
100 Commits
Author SHA1 Message Date
ac-stef 12a05d41e9 add interface for timedwait on semaphores
According to SDL documentation, the SDL implementation of timedwait may
suck on some platforms, so it should only be used, where high CPU usage
during the wait is no issue.

getpckserver() will now only wait for one second for access to the
package server list and return an error instead of waiting indefinitely.
2015-09-17 16:40:59 +02:00
ac-stef 491c8aa0fa curl be gone 2015-09-07 14:53:56 +02:00
ac-stef 7988443b1d partial autodownload rewrite
* own source file for autodownload
* use cleaned up zip functions
* use new http get function (no more curl)
* enforce strict file naming rules and file size limits
* ping all package servers on every game start to determine ping times
* support media file update lists (also kept on package servers)
* allow users to manually prioritise package servers
* automatically select server with newest media file revision

new or changed commands:

addpckserver hostname [priority]
  Adds a host name to the list of package servers. If a priority is given,
  it influences the sorting of servers. Servers with higher priority are
  queried first. If servers have the same priority, they are sorted by
  ping. Default priority is zero.

getpackageserver
  Returns a table with four columns of all configured package servers. The
  columns are: host name, priority, ping and resolved.
  "resolved" is a flag, indicating, if the server answered the ping during
  game start.

removed cubescript idents: sortpckservers gamestarts
DOCREF addpckserver getpckserver
2015-09-07 14:53:56 +02:00
ac-stef ff523df873 new http get function
* based on the enet socket layer
* supports redirects, range requests and gzip encoding
* automatically tries to re-use existing connections
* easy multithreading
* writes output to file or ram buffer
2015-09-07 14:53:55 +02:00
aurhatandac-stef ac32f7e2f7 Remove outdated gettext dependencies 2015-08-03 20:58:00 +02:00
ac-stef 826499c12d enable gcc to check arguments of printf-like functions
Check printf-like functions like conoutf, if format strings and argument
lists match.

This commit also fixes a lot of code parts that actually had mismatching
argument lists - or did things, that this check does not like.

numtime() was rewritten in an ugly but very portable fashion (it's
recommended to stay away from "long long" format entries, because errors
usually only come up at runtime).

(some code was copied from sauer)
2015-08-02 19:40:41 +02:00
ac-stef f3e72b8fb7 remove gettext
DOCREF gettext
2015-06-10 14:28:50 +02:00
RandumKiwi 138eacd621 Updated comments only
Moved the comment on the CXX flag to a seperate line, so that compiling logs don't show extra whitespace. Additionally, I've added a comment about why we use clang++ (instead of g++) to help future 3rd parties.
2015-03-26 11:22:07 +13:00
ac-stef d7c2c8333a add mrproper target to fix enet build
Sometimes the enet build seems to get messed up and "make" won't work
anymore in ../enet. The mrproper target tries to clean up ../enet, but
if it doesn't work, it deletes ../enet/Makefile manually. This triggers
a configure run in ../enet with the next make invocation - which should
fix everything.
2015-02-08 17:46:11 +01:00
ac-stef 7e7834af2c wrapper functions for threading and semaphores
allow the standalone linux server to use posix libraries instead of SDL
(using SDL can be forced by defining AC_FORCE_SDL_THREADS)
2015-02-08 17:39:14 +01:00
ac-stef d4b3526a19 fix clang warning 2014-05-17 14:56:43 +02:00
ac-stef 3b2b8c9250 fix makefile 2014-05-17 13:54:01 +02:00
ac-stef ec97e75b51 makefile with easier customisation
This makefile allows changing the compiler to g++ or requesting debug
binaries without editing the makefile.

The makefile sets default values for CXX and ACDEBUG, then reads values
from the file Makefile_local (if it exists). A commandline parameter
overrules both.

Makefile_local is not part of the repository, so it can be changed without
git caring (or nagging) about it. It is listed in .gitignore.

To switch to g++, create a file "Makefile_local" with the content
"CXX=g++".

To compile debug binaries, type "make clean install ACDEBUG=yes".

When g++ is used, "fast-math" is now enabled.
2014-05-14 16:31:14 +02:00
Alejandro V. Garcia 4d093af454 revert makefile changes
git-svn-id: svn://svn.code.sf.net/p/actiongame/code/trunk/ac@7674 e016b1c5-ed68-44aa-a2f7-31cac88cffde
2013-11-16 11:00:23 +00:00
Alejandro V. Garcia 37272f1b2f mingw & vc++ compatible curl library, binaries created with vc++ express (testing needed)
git-svn-id: svn://svn.code.sf.net/p/actiongame/code/trunk/ac@7668 e016b1c5-ed68-44aa-a2f7-31cac88cffde
2013-11-15 12:51:38 +00:00
RandumKiwi 71d081fd16 clang++ is default
git-svn-id: svn://svn.code.sf.net/p/actiongame/code/trunk/ac@7614 e016b1c5-ed68-44aa-a2f7-31cac88cffde
2013-10-22 19:19:27 +00:00
Lucas GAUTHERON ebade6105b changelog update
git-svn-id: svn://svn.code.sf.net/p/actiongame/code/trunk/ac@7385 e016b1c5-ed68-44aa-a2f7-31cac88cffde
2013-03-22 20:09:34 +00:00
Lucas GAUTHERON 12940c940e makefile fix
git-svn-id: svn://svn.code.sf.net/p/actiongame/code/trunk/ac@7384 e016b1c5-ed68-44aa-a2f7-31cac88cffde
2013-03-22 20:03:40 +00:00
Lucas GAUTHERON a7a1e46bcc merged branch
git-svn-id: svn://svn.code.sf.net/p/actiongame/code/trunk/ac@7382 e016b1c5-ed68-44aa-a2f7-31cac88cffde
2013-03-22 19:49:21 +00:00
RandumKiwi 1bbd17e1dd Did some research on "install -d" instead of taking someone elses word for it...
git-svn-id: svn://svn.code.sf.net/p/actiongame/code/trunk/ac@7346 e016b1c5-ed68-44aa-a2f7-31cac88cffde
2013-03-11 07:54:00 +00:00
RandumKiwi 5239106e66 install -d / -m
git-svn-id: svn://svn.code.sf.net/p/actiongame/code/trunk/ac@7338 e016b1c5-ed68-44aa-a2f7-31cac88cffde
2013-03-10 14:41:47 +00:00
RandumKiwi 3ef26c0b5f install -d
git-svn-id: svn://svn.code.sf.net/p/actiongame/code/trunk/ac@7333 e016b1c5-ed68-44aa-a2f7-31cac88cffde
2013-03-10 00:51:18 +00:00
sireus b33116712c sane(r) command signatures (warning: huge commit)
git-svn-id: svn://svn.code.sf.net/p/actiongame/code/trunk/ac@6908 e016b1c5-ed68-44aa-a2f7-31cac88cffde
2012-10-06 22:49:49 +00:00
sireus 4143a24d93 fixed missing X11 lib
git-svn-id: svn://svn.code.sf.net/p/actiongame/code/trunk/ac@6739 e016b1c5-ed68-44aa-a2f7-31cac88cffde
2011-12-19 16:01:57 +00:00
Lee Salzman 6c4b5b9a3a cheaper water animation
git-svn-id: svn://svn.code.sf.net/p/actiongame/code/trunk/ac@6657 e016b1c5-ed68-44aa-a2f7-31cac88cffde
2011-09-26 07:45:17 +00:00
flowtron 70250d7d41 clean-up & commentary
git-svn-id: svn://svn.code.sf.net/p/actiongame/code/trunk/ac@6106 e016b1c5-ed68-44aa-a2f7-31cac88cffde
2011-02-15 18:42:26 +00:00
Lee Salzman fc66447e18 make ac_client.exe a native windows app rather than console
git-svn-id: svn://svn.code.sf.net/p/actiongame/code/trunk/ac@6097 e016b1c5-ed68-44aa-a2f7-31cac88cffde
2011-02-13 18:02:13 +00:00
Lee Salzman 1cc07e6b96 remove SDL_win32_main.c
git-svn-id: svn://svn.code.sf.net/p/actiongame/code/trunk/ac@6093 e016b1c5-ed68-44aa-a2f7-31cac88cffde
2011-02-12 17:50:14 +00:00
Lee Salzman 32d96b2be4 fix weirdness in random numbers and ray creation
git-svn-id: svn://svn.code.sf.net/p/actiongame/code/trunk/ac@6005 e016b1c5-ed68-44aa-a2f7-31cac88cffde
2011-01-15 21:20:31 +00:00
Alejandro V. Garcia e02f72d31f exclude jpeglib from build
git-svn-id: svn://svn.code.sf.net/p/actiongame/code/trunk/ac@5686 e016b1c5-ed68-44aa-a2f7-31cac88cffde
2010-09-06 19:36:31 +00:00
flowtron 928eed4de1 in-game AUTH
git-svn-id: svn://svn.code.sf.net/p/actiongame/code/trunk/ac@5637 e016b1c5-ed68-44aa-a2f7-31cac88cffde
2010-08-16 11:12:48 +00:00
Rafael Barreto 57bfea7a24 removing SDL from server includes
git-svn-id: svn://svn.code.sf.net/p/actiongame/code/trunk/ac@5611 e016b1c5-ed68-44aa-a2f7-31cac88cffde
2010-08-12 13:39:18 +00:00
flowtron a6e0668d84 removing dependency on TTF libraries
git-svn-id: svn://svn.code.sf.net/p/actiongame/code/trunk/ac@5487 e016b1c5-ed68-44aa-a2f7-31cac88cffde
2010-07-30 19:34:24 +00:00
Rafael Barreto 7208dbb44f hudextras, points, protocol, clean up and so on
git-svn-id: svn://svn.code.sf.net/p/actiongame/code/trunk/ac@5090 e016b1c5-ed68-44aa-a2f7-31cac88cffde
2010-05-28 19:46:02 +00:00
Rafael Barreto 1ef7cd795e extras
git-svn-id: svn://svn.code.sf.net/p/actiongame/code/trunk/ac@5077 e016b1c5-ed68-44aa-a2f7-31cac88cffde
2010-05-27 02:24:06 +00:00
Rafael Barreto db0e2c2ff3 cover
git-svn-id: svn://svn.code.sf.net/p/actiongame/code/trunk/ac@5052 e016b1c5-ed68-44aa-a2f7-31cac88cffde
2010-05-25 21:26:13 +00:00
Rafael Barreto ca226dcf83 new nade values, and header inclusion in makefile
git-svn-id: svn://svn.code.sf.net/p/actiongame/code/trunk/ac@4932 e016b1c5-ed68-44aa-a2f7-31cac88cffde
2010-05-19 16:36:29 +00:00
Lee Salzman 3b26099eb8 build fixes
git-svn-id: svn://svn.code.sf.net/p/actiongame/code/trunk/ac@4843 e016b1c5-ed68-44aa-a2f7-31cac88cffde
2010-05-13 18:31:00 +00:00
Lee Salzman fa7f58cada enet fix
git-svn-id: svn://svn.code.sf.net/p/actiongame/code/trunk/ac@4842 e016b1c5-ed68-44aa-a2f7-31cac88cffde
2010-05-13 18:20:55 +00:00
Lee Salzman 3e4f81818a mingw fixes
git-svn-id: svn://svn.code.sf.net/p/actiongame/code/trunk/ac@4832 e016b1c5-ed68-44aa-a2f7-31cac88cffde
2010-05-10 22:48:40 +00:00
Lee Salzman 28cc51e81a master deps
git-svn-id: svn://svn.code.sf.net/p/actiongame/code/trunk/ac@4812 e016b1c5-ed68-44aa-a2f7-31cac88cffde
2010-05-04 21:03:09 +00:00
Lee Salzman 8446b9be95 clean master objs
git-svn-id: svn://svn.code.sf.net/p/actiongame/code/trunk/ac@4811 e016b1c5-ed68-44aa-a2f7-31cac88cffde
2010-05-04 21:01:29 +00:00
Lee Salzman 7d90c91175 WIP port of sauer master server
git-svn-id: svn://svn.code.sf.net/p/actiongame/code/trunk/ac@4803 e016b1c5-ed68-44aa-a2f7-31cac88cffde
2010-05-04 19:42:40 +00:00
Rafael Barreto a35ca97f08 New Master Server (server side)
git-svn-id: svn://svn.code.sf.net/p/actiongame/code/trunk/ac@4802 e016b1c5-ed68-44aa-a2f7-31cac88cffde
2010-05-04 04:08:58 +00:00
Rafael Barreto 6472d510d2 Central Moderation
git-svn-id: svn://svn.code.sf.net/p/actiongame/code/trunk/ac@4800 e016b1c5-ed68-44aa-a2f7-31cac88cffde
2010-05-03 01:38:26 +00:00
Lee Salzman d42fd4eda2 makefile updates
git-svn-id: svn://svn.code.sf.net/p/actiongame/code/trunk/ac@4772 e016b1c5-ed68-44aa-a2f7-31cac88cffde
2010-01-14 23:46:03 +00:00
Lee Salzman 1be18ca9b6 updates dependencies
git-svn-id: svn://svn.code.sf.net/p/actiongame/code/trunk/ac@4730 e016b1c5-ed68-44aa-a2f7-31cac88cffde
2009-11-08 06:42:41 +00:00
Lee Salzman b80ece3cee added mingw batch file
git-svn-id: svn://svn.code.sf.net/p/actiongame/code/trunk/ac@4729 e016b1c5-ed68-44aa-a2f7-31cac88cffde
2009-11-08 06:39:44 +00:00
Lee Salzman 8054447c51 abstract the mv command
git-svn-id: svn://svn.code.sf.net/p/actiongame/code/trunk/ac@4728 e016b1c5-ed68-44aa-a2f7-31cac88cffde
2009-11-08 06:14:43 +00:00
Lee Salzman 9256ee374b support for loading from zip files
git-svn-id: svn://svn.code.sf.net/p/actiongame/code/trunk/ac@4717 e016b1c5-ed68-44aa-a2f7-31cac88cffde
2009-11-08 00:53:19 +00:00