- 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
-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
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
-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
- 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
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
* 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
* 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
* 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
* 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
* 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
* 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
* 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
* 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
* Use select(2) to wait for a connection on both sockets and accept(2)ing them in a separate thread
* This prevents IPv4 addresses from becoming IPv6 mapped, which might not be properly supported on all platforms
- The IPv6 mapped addresses where transferred back to clients
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@7264 4a71c877-e1ca-e34f-864e-861f7616d084
* Also disable IPV6_V6ONLY to make sure that (on systems that support the option) IPv4 is still supported, using the same socket
- This option works on Linux from 2.4.21 and 2.6 (according to "man ipv6")
- On FreeBSD this works from version 6 onward (lower versions might work, I only tested on 6 and 7 and didn't find any note in the manual)
- Furthermore, according to
http://en.wikipedia.org/wiki/IPv4_mapped_address:
* This works on Windows from Vista onward
* This works on NetBSD (version unspecified)
* This doesn't work on OpenBSD (as a design decision for security)
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@7225 4a71c877-e1ca-e34f-864e-861f7616d084
- Make sure to use the maxPlayers and currentPlayers variables found in the Game class, not the (non-existing) local variables
* Don't use Game.check() as it doesn't exist, use Protocol.check(Game) instead
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@7224 4a71c877-e1ca-e34f-864e-861f7616d084
* This removes the need to specify what type of protocol (e.g. BinaryProtocol vs. JsonProtocol) should be used
- Instead only the (Warzone) version needs to be specified, the constructor function (Protocol()) will figure out the correct protocol class to use
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@7217 4a71c877-e1ca-e34f-864e-861f7616d084
- This removes the requirement for the socket handler to be aware of the size of a single game
- I.e. this allows variable sized games without another API change
* Read and write Protocol data directly from and to the sockets, decoding and encoding on the fly
git-svn-id: https://warzone2100.svn.sourceforge.net/svnroot/warzone2100/trunk@7209 4a71c877-e1ca-e34f-864e-861f7616d084