Commit Graph

588 Commits (c6274f3d3367de16691beb9952b1acdebb730a6f)

Author SHA1 Message Date
Rene Jochum dd96412f66 The CMakeLists.txt for 7b20e5c8bf. 2011-07-28 05:11:04 +02:00
Rene Jochum 7b20e5c8bf Improve cmake in tools/map by Safety0ff,
remove some unused includes from vector.h.
2011-07-28 05:03:42 +02:00
Rene Jochum 1c15b75073 Remove the converting requirement in tools/map/map2preview. 2011-07-28 03:30:27 +02:00
Rene Jochum cbe8c925b6 Add support for plain dir maps in tools/map. 2011-07-28 02:43:41 +02:00
Per Inge Mathisen 23b4d3e8a1 Add map/tools to ordinary build system. 2011-07-28 01:32:09 +02:00
Rene Jochum b50744261c Fix intention in map/tools. 2011-07-28 01:36:08 +02:00
Rene Jochum 064c7fcd85 Add some more improvements to the map tool. 2011-07-27 06:28:31 +02:00
Rene Jochum 4a227a1b5b Add a map preview tool, fix various things in tools/map. 2011-07-27 02:39:50 +02:00
Per Inge Mathisen b04a07cbf7 Ignore height value set in ini savegames for features, recalculate it on load every time instead. 2011-07-16 20:32:24 +02:00
Per Inge Mathisen e94d8b5743 Initial mapconv changes for .gam to .ini support. 2011-07-11 20:39:21 +02:00
Per Inge Mathisen 29dd80d936 Split references to player index and player start position on map in savegames. This has already
been done in the codebase earlier. This cleans up any remaining confusion and hacks related to
how players are indexed, and closes ticket:2806
2011-07-03 13:15:31 +02:00
Per Inge Mathisen 09eb6e79f3 Convert structures in savegames to ini file format. 2011-07-02 14:30:51 +02:00
Per Inge Mathisen f73a699bf2 Update map conversion utility for structures. 2011-07-02 14:30:51 +02:00
Per Inge Mathisen cc0e183b96 Fix unit tests 2011-06-12 12:04:27 +02:00
Per Inge Mathisen b70dfe8885 Convert features to ini format. Fix IDs of droids in existing maps. 2011-06-11 21:57:49 +02:00
Per Inge Mathisen ff31f8d395 Change unit.ini -> droid.ini, since "unit" is an unused concept in Warzone. 2011-06-11 19:19:43 +02:00
cybersphinx 5e803e4de5 Remove outdated lobby servers.
The current one is at https://github.com/pcdummy/wzlobbyserver-ng.
2011-04-08 01:17:21 +02:00
Cyp 6f6ec2ea86 Add IMAGE_GN_N for N up to 15. 2011-01-13 15:58:46 +01:00
Per Inge Mathisen 9b6e542bfa Remove pietoaster 2010-12-31 23:42:53 +01:00
Per Inge Mathisen b15addfcf1 simplipie: Add warning when not all polygons in a mesh do not use the same number of frames for texture animation. 2010-12-31 22:26:45 +01:00
Per Inge Mathisen 3d7a7b397b simplipie: Fix error when fixing face culling and tessellation at the same time. 2010-12-31 18:20:51 +01:00
Per Inge Mathisen 22bbd8dd51 simplipie: Fix missing space in frame animation directive print out. 2010-12-31 17:12:17 +01:00
Per Inge Mathisen 2133cd5ec6 simplipie: Add support for triangle tessellation 2010-12-31 16:53:05 +01:00
buginator c560f8a3e9 Fix typo 2010-12-06 21:14:00 -05:00
Per Inge Mathisen 7de25a9d5b Lay the groundwork for a more modern component drawing system. Removes support for OpenGL 1.x. See ticket:2310 2010-12-04 15:57:26 +01:00
Per Inge Mathisen 26d51104f9 simplipie: Remove old style team colour information if tcmask is used. 2010-11-12 22:23:05 +01:00
Giel van Schijndel 9d973acc20 Debianize the two ticket-related Trac plugins
Turn the ticketnotifications and ticketvalidemail Trac plugins into
Debian packages, allowing for slightly easier management of these
plugins.

Signed-off-by: Giel van Schijndel <giel@wz2100.net>
2010-10-04 19:39:13 +02:00
Safety0ff 72464dfe24 mapconv: Fix an small error in an error output.
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@11714 4a71c877-e1ca-e34f-864e-861f7616d084
2010-09-20 18:34:42 +02:00
Safety0ff 746ffaa836 obj2pie: Fix last obj face duplication bug.
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@11681 4a71c877-e1ca-e34f-864e-861f7616d084
2010-09-18 23:07:47 +02:00
Buginator aabcb5f2fb Commit patch #2065 by FastDeath, with slight modifications by me.
Fixes some issue with the wzmasterserver, see ticket for details.

Closes ticket:2065


git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@11483 4a71c877-e1ca-e34f-864e-861f7616d084
2010-08-15 22:07:18 +02:00
Giel van Schijndel ccbd9c56c7 wzmasterserver.py: change the `__author__` value to "The Warzone 2100 Project"
This used to be a list of authors.  Ego-boosting can always be performed by the AUTHORS file, no need to boost it all over the place ;-)

Suggested by Fastdeath's patch, see #1985

git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@11369 4a71c877-e1ca-e34f-864e-861f7616d084
2010-08-03 09:38:30 +02:00
Buginator edb644a03b Fix (and add missing) headers to files.
2009  Warzone Resurrection Project -> 2010  Warzone 2100 Project

git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@11298 4a71c877-e1ca-e34f-864e-861f7616d084
2010-07-28 18:58:33 +02:00
Per Inge Mathisen 33afe5bc3d simplipie: Make it accept multiple filenames as arguments to make mass-conversions simpler.
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@11171 4a71c877-e1ca-e34f-864e-861f7616d084
2010-07-11 23:04:18 +02:00
Safety0ff 35995c8c27 obj2pie:
- Add PIE 3 support.
- Add tcmask pie type option.
- Fix rounding of PIE 2 texture coordinates.
- Tolerate vertex normals.
- Use duplicate faces instead of deprecated flag.


git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@10812 4a71c877-e1ca-e34f-864e-861f7616d084
2010-05-16 11:17:06 +02:00
Safety0ff 5c74291bab qwzm:
-Check that file is open before trying to write to it.
-Remove unnecessary include.
-Use 256 for fallback texture dimensions when writing a pie 2.
-Fix rounding when exporting to pie 2.


git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@10759 4a71c877-e1ca-e34f-864e-861f7616d084
2010-05-02 09:20:51 +02:00
Safety0ff 1ade59528c qwzm:
-Touch up r10748 and fix a typo it introduced.


git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@10754 4a71c877-e1ca-e34f-864e-861f7616d084
2010-05-02 09:20:50 +02:00
Safety0ff dfdb343064 QWZM:
-Reviewed loadPIE and savePIE functions.
-Improved documentation of savePIE function.
-Added bounds checking to prevent currentFrame being an invalid value.
Refs #1763.


git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@10748 4a71c877-e1ca-e34f-864e-861f7616d084
2010-05-02 09:20:42 +02:00
Safety0ff 78a9b96ea6 QWZM: Unclobber indentation (refs r10729,r10740.)
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@10747 4a71c877-e1ca-e34f-864e-861f7616d084
2010-04-30 12:33:20 +02:00
Safety0ff ec73038633 QWZM:
Copy display/wzmutils .c & .h to the qwzm folder so that they can be modified for cpp/Qt/QWZM.
Revert r10279 for display/wzmutils .c & .h so that they work like wzmviewer expects them to.


git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@10741 4a71c877-e1ca-e34f-864e-861f7616d084
2010-04-30 12:33:20 +02:00
Safety0ff 2c08757b1c QWZM: Apply UI improvement patch by Emdek.
Modifications I made to it:
-Fixed the mesh selection issue in the patch.
-Witheld renaming the program (needs more discussion,) and changed version string.
Refs #1763.


git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@10740 4a71c877-e1ca-e34f-864e-861f7616d084
2010-04-30 12:33:20 +02:00
Safety0ff f146e9c044 QWZM:
-Added experimental PIE export.
-Added experimental PIE 3 import.
-Merged PIE and WZM opening into one dialog.
-Fixed ambiguous shortcuts.
-Single mesh display.
-Turned on alpha blending (for textures with alpha.)
-Improved (but not removed,) use of hardcoded paths for texture finding.
-Fixed some memory leaks.
-Way less potential program exits.
-Disabled (i.e. grayed out) buttons that don't currently do anything.
-Fixed some warnings.

Possibly other stuff, and probably new bugs. ;P
Refs #1763




git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@10729 4a71c877-e1ca-e34f-864e-861f7616d084
2010-04-28 07:52:18 +02:00
Per Inge Mathisen 455fd8a613 Modify MOTD for 2.2 to make it nicer looking
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@10635 4a71c877-e1ca-e34f-864e-861f7616d084
2010-04-19 12:52:42 +02:00
Buginator 4cb339dbfa Add motd file for 2.3 / trunk and 2.2.x
Update master server to spit out the correct MOTD based on which client connects to it.


git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@10631 4a71c877-e1ca-e34f-864e-861f7616d084
2010-04-19 12:52:41 +02:00
Stiv 64cb35ec74 Update plugin status
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@10390 4a71c877-e1ca-e34f-864e-861f7616d084
2010-03-21 19:47:12 +01:00
i-nod 1e4ac04582 3ds2pie tool update. Belongs to #1553.
- Added PIE3 support.
- Conversion routine has been split into 2 parts, with intermediate PIE structure that can be used for model preview: PIE structure is filled with dump_3ds_to_pie(), PIE structure is dumped to .pie file with dump_pie_file().
- Duplicated points removal routine has been added into dump_3ds_to_pie(). "Borrowed" from simplipie tool.
- Implement 'twosided' material handler (instead of old global hack). WARNING! It's completely untested and optional.
- Command line interface is broken, most likely. Should be fixed or removed entirely.

git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@10374 4a71c877-e1ca-e34f-864e-861f7616d084
2010-03-20 16:17:48 +01:00
i-nod 53464e236f Update simplipie a bit, so it will produce PIE2 compatible models.
It should follow verbose switch for non-error output.

git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@10295 4a71c877-e1ca-e34f-864e-861f7616d084
2010-03-16 15:47:54 +01:00
Per Inge Mathisen f3affb4c58 simplipie: Add duplicate point removal.
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@9790 4a71c877-e1ca-e34f-864e-861f7616d084
2010-02-13 23:05:00 +01:00
Christian Ohm 48a60262bc Make it possible to override the QGLViewer paths for qwzm.
This makes it possible to compile qwzm on systems that use different paths
without modifying version controlled files.

Create a file called "config" in qwzm's directory that sets the
QGLVIEWER_INCL/LIBS variables. E.g. for Ubuntu 9.10 the following works:

QGLVIEWER_INCL = /usr/include/qglviewer-qt4
QGLVIEWER_LIBS = -lqglviewer-qt4

Current Debian unstable only needs the LIBS line.

git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@9635 4a71c877-e1ca-e34f-864e-861f7616d084
2010-02-09 20:28:04 +01:00
Guangcong Luo 3cb6835e5c Delete cms.php - it appears to be superfluous.
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@9525 4a71c877-e1ca-e34f-864e-861f7616d084
2010-02-09 20:27:50 +01:00
Guangcong Luo 518bd1bf79 Add persist library to Guidecode.
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@9524 4a71c877-e1ca-e34f-864e-861f7616d084
2010-02-09 20:27:50 +01:00
Guangcong Luo cd8fc32f0e Fix typo in guidecode readme.
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@9523 4a71c877-e1ca-e34f-864e-861f7616d084
2010-02-09 20:27:50 +01:00
Guangcong Luo 23b3d52c46 Add Warzone Guide code into /trunk/tools/guidecode/.
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@9522 4a71c877-e1ca-e34f-864e-861f7616d084
2010-02-09 20:27:50 +01:00
Giel van Schijndel 84dffec0b1 Commit Trac mini plugins (which we use):
* TracPhpBBCookieAuth
  - Considers users that are logged in on PhpBB to be logged in on Trac as well (resuing the PhpBB cookie)
 * TracHttpOnlyAuthCookie
  - Sets the HttpOnly flag on Trac's auth cookie (prevents clientside, e.g. javascript, scripting access to the cookie)

git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@9516 4a71c877-e1ca-e34f-864e-861f7616d084
2010-02-09 20:27:49 +01:00
Giel van Schijndel f0fb5d2168 Trac plugin TicketValidEmail:
* Reject e-mail addresses matching /^\w+@example\.(org|net|com)$/ (see #1317)
 * Suggest logging in as alternative to using a valid e-mail address for the reporter field

git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@8947 4a71c877-e1ca-e34f-864e-861f7616d084
2010-02-09 20:03:59 +01:00
Giel van Schijndel f0aacfd6a8 Add a new Trac plugin: TicketValidEmail
Extends Trac to only accept anonymous tickets when the reporter name is a valid RFC822 e-mail address.

git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@8946 4a71c877-e1ca-e34f-864e-861f7616d084
2010-02-09 20:03:59 +01:00
Per Inge Mathisen 3b425a0653 map2png: Fix conversion bug
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@8656 4a71c877-e1ca-e34f-864e-861f7616d084
2010-01-30 17:12:54 +01:00
Per Inge Mathisen c6e328bbd3 Add debug message when map loading fails in map tools.
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@8655 4a71c877-e1ca-e34f-864e-861f7616d084
2010-01-30 17:12:54 +01:00
Giel van Schijndel 0b1a35cd39 IRC lobby bot: improve production of game list
* Make sure to loop over all games only once instead of copying them
  - This might prevent a race condition
  - It definitly cleans up that piece of code
 * Make sure to list the Warzone version as well in game listings
 * Only show 2.2 games (instead of 2.1 games)
 * Bump the bot's version number from 0.0.1 to 0.0.2
 * Change 'Warzone Resurrection Project' to 'Warzone 2100 Project'

Original patch written by Buginator, rewritten by myself to be 'Pythonic'

git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@8653 4a71c877-e1ca-e34f-864e-861f7616d084
2010-01-30 17:12:54 +01:00
Buginator 9445f60753 Actually use GLuint instead of pretending to be GLuint.
patch by stiv.
Closes ticket:1148

git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@8604 4a71c877-e1ca-e34f-864e-861f7616d084
2010-01-30 17:12:48 +01:00
Git SVN Gateway b945a74f9b Bail out when pushing to the git repository fails. 2009-11-23 18:47:00 +01:00
Dennis Schridde 6abbf79143 rpl2avi converter by Angus Lees 2009-11-22 16:34:23 +01:00
Per Inge Mathisen fe141894e8 simplipie: Fix bug that made it drop connectors.
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@8474 4a71c877-e1ca-e34f-864e-861f7616d084
2009-11-22 16:20:05 +01:00
Per Inge Mathisen 0405c24fb1 simplipie: Now modify PIE file in place. Makes it easier to run in scripts.
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@8436 4a71c877-e1ca-e34f-864e-861f7616d084
2009-11-22 16:20:00 +01:00
Per Inge Mathisen bb3975f089 Add new tool: simplipie. It strips unused flags from PIE files and rewrites them.
It also obsoletes the no cull flag by removing it and instead adding duplicate,
reversed polygons to fix the culling issues this flags was meant to fix.


git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@8306 4a71c877-e1ca-e34f-864e-861f7616d084
2009-11-22 16:19:49 +01:00
Christian Ohm 68841a105b Blender PIE import plugin: Add a default filename for the file selector
Makes it start in the current directory instead of $HOME.

git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@8304 4a71c877-e1ca-e34f-864e-861f7616d084
2009-11-22 16:19:48 +01:00
Giel van Schijndel 593c8fdb0a Lobby server: use Python's enumerate builtin to iterate over a sequence and its indices
- instead of looping over indices alone and using those indices later on to index into the sequence

git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@8145 4a71c877-e1ca-e34f-864e-861f7616d084
2009-09-28 22:21:07 +02:00
Giel van Schijndel 870233db9a * Don't (attempt to) import an unused (and non-existent) module: `model`
* Fix the URL for the TicketNotifications Trac-plugin such that it matches its source directory again

git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@8039 4a71c877-e1ca-e34f-864e-861f7616d084
2009-09-27 19:07:13 +02:00
Giel van Schijndel cb279c37c4 * Rename Trac plugin `NewTicketNotification` to the more general `TicketNotifications`
* Add an additional package (sub-plugin): attachmentnotification
  - This package contains the new AttachmentTicketNotification Trac component
 * Add a new Trac component: AttachmentTicketNotification
  - This component sends notification mails to all ticket subscribers when an attachment is added to that ticket
  - Created this component on Per's request

git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@8038 4a71c877-e1ca-e34f-864e-861f7616d084
2009-09-27 19:07:13 +02:00
Giel van Schijndel fcaf404d25 Log exceptions using the ''exception'' log level/function
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@8037 4a71c877-e1ca-e34f-864e-861f7616d084
2009-09-27 19:07:13 +02:00
Giel van Schijndel 3563f00a31 Trac NewTicketNotification plugin:
* Add an admin panel to allow configuration of notification addresses (requires the TRAC_ADMIN permission)

git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@8021 4a71c877-e1ca-e34f-864e-861f7616d084
2009-09-27 19:07:11 +02:00
Giel van Schijndel 550053ddc9 Trac NewTicketNotification plugin:
* Move support for retrieving and saving the list of notification addresses to a separate module: model.py

git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@8020 4a71c877-e1ca-e34f-864e-861f7616d084
2009-09-27 19:07:11 +02:00
Giel van Schijndel 0ee9fdfb66 Add custom Trac plugin: NewTicketNotification:
* Extends Trac to notify a configured set of e-mail addresses upon ticket creation.
  - Used by us to mail the development mailinglist for each newly created ticket

git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@8019 4a71c877-e1ca-e34f-864e-861f7616d084
2009-09-27 19:07:10 +02:00
Per Inge Mathisen b531c153f7 mapconv: Also convert gameType and gameTime from missions to new format.
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@8018 4a71c877-e1ca-e34f-864e-861f7616d084
2009-09-27 19:07:10 +02:00
Per Inge Mathisen 7866c35fcb mapload: Do not error out when encountering maps without map or terrain info. Deal with it.
mapconv: Handle maps without map and terrain info (such as map expand missions).


git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@8017 4a71c877-e1ca-e34f-864e-861f7616d084
2009-09-27 19:07:10 +02:00
Per Inge Mathisen 650be0e27e mapconv: Now saves in same directory as read from, puts map files in correct directory, and generates a useful game.ini file
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@7976 4a71c877-e1ca-e34f-864e-861f7616d084
2009-09-27 19:07:05 +02:00
Per Inge Mathisen 272bad92b1 Support version 2 of the WZM format. It now defines type and angles and angle restrictions of connector,
and allows string names for meshes instead of merely an index number.


git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@7951 4a71c877-e1ca-e34f-864e-861f7616d084
2009-09-27 19:07:01 +02:00
Elio Gubser 229b039492 fix path
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@7950 4a71c877-e1ca-e34f-864e-861f7616d084
2009-09-27 19:07:01 +02:00
Per Inge Mathisen 4ff191aeea Fix compilation of map tools. Add support for version 10 game files with power information.
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@7905 4a71c877-e1ca-e34f-864e-861f7616d084
2009-09-27 19:06:53 +02:00
Per Inge Mathisen fe7b8fc515 mapconv: Fix key typos. Implement scroll limits and level name.
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@7693 4a71c877-e1ca-e34f-864e-861f7616d084
2009-06-09 23:44:26 +02:00
Per Inge Mathisen ec95a12e54 Implement entire Deliverance format in new PNG/INI format. That is, the binary map format
delivered by editworld and used for skirmish and campaign maps.


git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@7692 4a71c877-e1ca-e34f-864e-861f7616d084
2009-06-09 23:44:26 +02:00
Per Inge Mathisen 5a5a637ecd Clean up map tools a bit. Add new tool mapconvert that converts existing maps to proposed new map format
based on INI and PNG files.


git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@7691 4a71c877-e1ca-e34f-864e-861f7616d084
2009-06-09 23:44:25 +02:00
Giel van Schijndel df13cc83ee Fix a typo: NotImlementedError -> NotImplementedError
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@7502 4a71c877-e1ca-e34f-864e-861f7616d084
2009-05-28 09:59:24 +02:00
Giel van Schijndel 103a2137f9 Lobbyserver: handle and ignore the case where sending of status messages isn't supported by the current protocol
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@7501 4a71c877-e1ca-e34f-864e-861f7616d084
2009-05-28 09:59:24 +02:00
Giel van Schijndel 3b7a1bd8dc Use Python's NotImlementedError exception instead of an assert(false) to indicate the lack of an implementation.
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@7500 4a71c877-e1ca-e34f-864e-861f7616d084
2009-05-28 09:59:24 +02:00
Guangcong Luo cf3ea876f9 Commit ticket #423 - Add a tech tree chart generator to the tools.
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@7449 4a71c877-e1ca-e34f-864e-861f7616d084
2009-05-16 16:07:15 +02:00
Giel van Schijndel e959170609 Don't try referencing "not yet" defined variables
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@7399 4a71c877-e1ca-e34f-864e-861f7616d084
2009-05-15 22:29:31 +02:00
Giel van Schijndel 29201b4c53 Lobby server: Display the "Removing aborted game" message when removing a game
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@7397 4a71c877-e1ca-e34f-864e-861f7616d084
2009-05-15 22:29:31 +02:00
Giel van Schijndel e5e90e5121 Lobbyserver: Append to the host list instead of trying to its first (possibly non-existing) element
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@7391 4a71c877-e1ca-e34f-864e-861f7616d084
2009-05-15 22:29:30 +02:00
Giel van Schijndel 7afaa55bc5 Properly handle the fact that Game.hosts is now a variably-sized list
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@7372 4a71c877-e1ca-e34f-864e-861f7616d084
2009-05-10 19:18:11 +02:00
Giel van Schijndel a385545043 * Don't handle protocol specific encoding in wzmasterserver.py, instead deal with it in the Protocol classes in protocol.py
* Don't set Game's `hosts` value to a list of ''exactly'' 3
  - Instead use empty strings for non-existing hostnames below 3 (when encoding only)
  - This allows for a bit more extensibility in the future.

git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@7365 4a71c877-e1ca-e34f-864e-861f7616d084
2009-05-09 23:29:55 +02:00
Giel van Schijndel 3dfb215c8b Add IPv6 support to the lobby protocol
* Add a new field: secondaryHosts, an array of two fallback hosts
  - Canibalize the entire "misc" field and part of the "extra" field for this
  - When connecting, first try the primary "host" field, then fall back to the hosts in secondaryHosts (in order)
 * Add a new field: gameId, used on the lobby server to link multiple lobby connections to a single game entry
  - First (attempt to) connect to the lobby with all available address families (currently IPv4 and IPv6)
  - Then ask for a gameId from the lobby server using the first established lobby connection
  - Set the gameId field in the GAMESTRUCT to the one retrieved
  - Transmit the GAMESTRUCT using a "addg" command to the lobby over each lobby connection
  - The lobby then compares all incoming ID numbers with ID numbers already present
  - If there's a match it will use the GAMESTRUCT already present and only add a new hostname to the list

This is the last change, part of, and closes #452

git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@7364 4a71c877-e1ca-e34f-864e-861f7616d084
2009-05-09 23:29:55 +02:00
Giel van Schijndel a43e84e0fd Lobby server: in the "Game unreachable" message, sent when the connection test fails, give the port number of the game server, not the lobby server
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@7343 4a71c877-e1ca-e34f-864e-861f7616d084
2009-05-06 22:29:42 +02:00
Giel van Schijndel a71b83b91b On platforms that don't support IPV6_V6ONLY, just ignore it and hope the platform doesn't automatically enable IPv6 mapped IPv4 addresses
This allows the lobby server to be used on platforms that don't support IPV6_V6ONLY socket option.

Thanks to Buginator for reporting this.

git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@7342 4a71c877-e1ca-e34f-864e-861f7616d084
2009-05-06 22:29:41 +02:00
Giel van Schijndel e672ad000e Fix error introduced in r7323: gameHost is a member of "self" now, not a local variable
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@7324 4a71c877-e1ca-e34f-864e-861f7616d084
2009-05-06 22:29:40 +02:00
Giel van Schijndel d02f591709 Lobby protocol; change the way the "addg" command works:
* Make the "addg" command return a status code (ranging 200-299 on success) and message (MOTD on succes)
 * Don't use the "motd" command anymore to check the lobby status, instead use the returned status code for that purpose.
 * Allow MOTD strings of arbitrary length (by sending along the length)

This modification ensures that ''proper'' connectivity checking is being performed on the game server (and reported to the user accurately).

git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@7323 4a71c877-e1ca-e34f-864e-861f7616d084
2009-05-06 22:29:40 +02:00
Giel van Schijndel 7c49ed6628 Lobby utility library:
* Create another custom context manager (can be used in with-statement) for creating a connection to a given (host, port): "connection"
  - Perform manual name-resolution, using each returned entry until one can be succesfully connected to (allows IPv4 + IPv6 through the same function)
 * Use this context manager instead of connecting manually

git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@7305 4a71c877-e1ca-e34f-864e-861f7616d084
2009-05-06 22:29:38 +02:00
Giel van Schijndel 24cc8fda66 Use the "Protocol" constructor function instead of trying to use "BinaryProtocol" (which doesn't exist anymore)
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@7304 4a71c877-e1ca-e34f-864e-861f7616d084
2009-05-06 22:29:38 +02:00
Giel van Schijndel e0adf0d0e8 Revert r7276's accidental change to wzmasterserver.py
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@7277 4a71c877-e1ca-e34f-864e-861f7616d084
2009-05-06 22:29:34 +02:00
Giel van Schijndel 9943cf6b01 Lets not mark utility modules as executable
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@7276 4a71c877-e1ca-e34f-864e-861f7616d084
2009-05-06 22:29:34 +02:00
Giel van Schijndel 8b7f17e2e5 Fix _swap_endianness() to return it's argument endian-swapped, not a tuple containing that result
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@7273 4a71c877-e1ca-e34f-864e-861f7616d084
2009-05-06 22:29:33 +02:00