Skip to content
This repository

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
  • 131 commits
  • 203 files changed
  • 0 comments
  • 9 contributors
May 13, 2012
cybersphinx Revert "Update version numbers for 3.1 beta10."
This reverts commit 968172d.

Revert "Update translations."

This reverts commit 29a0bd7.
4a1e029
May 19, 2012
Cyp Check template validity before trying to build droids. 6365f2d
cybersphinx Polish translation update by Emdek.
Closes #1347.
9fc92b7
cybersphinx French translation update by Amiral JCDG.
Closes #3483.
badb8c0
cybersphinx Hungarian translation update by mtomi78.
Closes #3485.
d74ebad
cybersphinx Turkish translation update by Ayhan Görgülü.
Closes #3486.
a400fe0
cybersphinx Dutch translation update by nino_romans.
Closes #3484.
c46d2d5
May 20, 2012
cybersphinx Fix some typos.
Thanks to pabs for noticing one of them. Closes #3495.
52511ce
Paul Wise fix an FTBFS with -Werror=format-security
Fixes ticket:3493.
e5d2242
vexed Fix flag loading code to work for out of sequence factories.
fixes ticket:3384
737b3d9
May 21, 2012
Merge branch 'bugfixes' into 3.1 f04b5dd
Cyp Fix communication between remaining clients when one client freezes.
Problem persisted until the frozen client drops completely, or unfreezes (net connection is restored).

To reproduce, test with host and 2 other clients, and freeze one client with kill -STOP or by pausing the net
connection somehow.

Cause was lack of flushing, due to an inverted condition exposed in b9cc770 and
introduced in c1ca4d2. Would probably trigger before
b9cc770, for any remaining clients that freeze for any reason (for example, because
of <2.5 FPS or momentary hard drive swapping) for more than 400ms.
e14c39f
Cyp Be more consistent in ping display, show ping ≥ 4000 as ∞. bedd870
Cyp Put the unused MAX_BYTESPERSEC define out of its misery. a80f040
Cyp Fix Nexus AI unable to build units.
Nexus was building units with an unresearched sensor (equivalent to the default sensor). Since
6365f2d, Nexus can no longer build unresearched units.

In the tutorial, the designed MG viper wheels would also use the same unresearched sensor.

Replaced unresearched DefaultSensor1Mk1 with ZNULLSENSOR. Removed special case for tutorial in
7079ad2, which is no longer required.
f0eea79
Cyp Fix unconventional reported unit count on selecting all units of same…
… type.

Previous unconventional behaviour was to consider the set of previously-unselected droids becoming selected, and
report the size of the set plus the size of the set of types of droids in the set.

Iff there was exactly one droid of each type previously selected, and there was at least one unselected droid of
each selected type, then the reported unit count would coincidentally be correct.

Fixes ticket:3479.
22799c2
Cyp Show "[PlayerName] has left the game." to all players again.
Fixes ticket:3461.
00b1968
May 22, 2012
dak180 Update zlib to 1.2.7. 15aebc4
May 23, 2012
Cyp Don't spam assertions while artillery is assigned to allied sensors. 5d19904
Cyp Let CB sensors defend allies too. 313738e
May 24, 2012
Cyp Only play ID_SOUND_ARTIFACT_RECOVERED to the player picking up the ar…
…tefact.

Fixes ticket:3488.
acaf462
May 25, 2012
Merge branch 'bugfixes' into 3.1 ddb696c
May 28, 2012
Merge branch 'bugfixes' into 3.1 2738fe8
May 30, 2012
Cyp Make sockets nonblocking as workaround for socket calls unexpectedly …
…blocking.

For some weird reason, select() sometimes returns that a socket write would not block, but the socket write does
block, anyway.

On display in the bottom of a locked manpage for select(), stuck in a disused lavatory with a sign on the door
saying "Beware of the Leopard":
BUGS
       Under Linux, select() may report a socket file descriptor as "ready for reading", while nevertheless a
       subsequent read blocks. This could for example happen when data has arrived but upon examination has wrong
       checksum and is discarded. There may be other circumstances in which a file descriptor is spuriously
       reported as ready. Thus it may be safer to use O_NONBLOCK on sockets that should not block.

This would explain a socket read unexpectedly blocking, although the issue is actually a socket write unexpectedly
blocking.

Fixes ticket:3410, or else.
53ce0a7
Cyp Fix game mechanics bug allowing one truck to claim 10 derricks at once.
Abandoned structures with no cost now slowly deconstruct over a period of one minute.
5ba90fe
May 31, 2012
vexed Fix commander unit count on loading games.
Add error sound, and text when you can't add any more units to the Commander.

Fixes ticket:3513
Fixes ticket:3062
b3f3b08
vexed Add a work around and a assert to help out with the savegame issues d…
…escribed in said ticket.

Close ticket #3154
20f203e
vexed Add missing header for last commit 3334b4d
Jun 01, 2012
Merge branch 'bugfixes' into 3.1 f996fa0
Jun 02, 2012
Cyp Assert on cyclic research dependencies instead of doing an infinite l…
…oop.

Spurious assertions are possible in the case that the research tree is excessively interconnected, such as
researches 31-40 all depending on all of researches 21-30, and researches 21-30 all depending on all researches
11-20, and so on. Although it probably shouldn't assert on excessively interconnected research trees, the loop as
written could take a ridiculously long time, anyway.
4079ff2
cybersphinx French translation update by Amiral JCDG.
Closes #3512.
113796a
cybersphinx Update translations. b6c77bd
cybersphinx Increase precision of sorting in generate-statistics-html.py.
Fix by Emdek, closes #3519.

Also remove unneeded "import os".
2228e80
Jun 03, 2012
Cyp Fix some weird code that partly relied on sockets being blocking.
Exposed in 53ce0a7.
e0939a0
Cyp Don't use bsocket and tcp_socket at the same time.
Somehow fixes a client crash when failing to join a game. Possibly caused by deleting one of bsocket or tcp_socket,
and then using the other.
bf2483c
Cyp Don't continue to wait for a NET_ACCEPTED after processing a NET_REJE…
…CTED.

Don't wait for a NET_ACCEPTED after the socket is broken, either.
4d658c9
Cyp Fix host crash on failure in NET_CreatePlayer().
NET_CreatePlayer() should not be able to fail here, though. See following commit.

Crash was due to treating ERROR_FULL == 2 as an uint8_t pointer, and trying to dereference it.
7a0cd2e
Cyp Fix joining games with some closed slots.
Although it no longer crashed when trying to join a game with some closed slots (see previous commits), it is also
desirable to actually be able to join it.
7816f9f
Jun 04, 2012
Merge branch 'bugfixes' into 3.1 49d60d4
Cyp Do not return client broadcast messages to the sender.
Instead of sending a copy of broadcast messages back to the sender, which ignores them anyway, save the bandwidth.
58551ba
Cyp Don't send a value which is never read, anyway. 051f83c
Cyp Simplify NETrecvGame() slightly.
No need to check for NET_* messages in game queues.
6af88a6
Jun 05, 2012
Cyp Don't desynch on dropped players.
Desynch was due to host-spoofed GAME_PLAYER_LEFT message being processed by clients at random times.

Instead of putting the GAME_PLAYER_LEFT in a NET_SHARE_GAME_QUEUE, put the GAME_PLAYER_LEFT in a NET_SHARE_GAME_QUEUE
in a NET_SEND_TO_PLAYER, such that the clients' NETrecvNet() will process the GAME_PLAYER_LEFT in the same iteration
of the for (current = 0; current < MAX_CONNECTED_PLAYERS; ++current) loop as the real GAME_* messages from that
player, and therefore not mix up the messages.

To reproduce before this commit, start 8-or-so clients, set all to debug mode, change game speed of some clients
slightly, start kicking players. Keep trying again, until desynch is reproduced. Changing game speed of some clients
might or might not be required.

See 93f0e61.
35f301b
dak180 Add a mac build for the image helper program. c346e9e
dak180 Use a faster optipng option set that also strips metadata.
Requires optipng 0.7.1+ to work.
fbd757b
Cyp Allow queuing building on burning oil wells.
Actual construction only starts after the oil well finishes burning.
353357b
Cyp Add oil barrels to map preview. 5b07a7b
Cyp Unduplicate backdrop pixel blitting code slightly. 27dfe97
Cyp Fix CB fire against mobile targets.
Steps to reproduce:
1) Player A builds a CB sensor.
2) Player B attacks the CB sensor with a mortar borg.
3) Player B runs away with the mortar borg where player A can't see.
4) Player A builds artillery.
5) Player B slowly kills off all the artillery with an MG viper wheels tank, while the artillery just sits there
   pointing at the mortar borg without firing.

To trigger, the artillery must be built after the last CB sensor in range of where the mortar borg attacks. Any
type of mobile artillery can trigger the bug, such as archangel leopard tracks, or MRA dragon wheels.

Workaround: Player A can build an uplink, so that the mortar borg becomes visible, and the artillery fires. If
            there's still anything left of the artillery by the time the uplink is built, that is.

Fixes ticket:3529.
193eba2
Cyp Fix .gitignore.
The tools/image/image in .gitignore was mysteriously changed to be a directory only in
c346e9e, and the file therefore fails to be ignored.
c94112b
Jun 07, 2012
Safety0ff Fix taking screenshots whose width is not congruent to 0 mod 4.
Closes #3537.
62153e9
dak180 Do not bother looking for things that might not exist. 75041d8
dak180 Try to only show issues in the test outputs. 64951d6
Jun 09, 2012
Cyp Balance changes by NoQ.
And thanks to Reg312, Iluvalar and tmp500 for valuable suggestions.

Inferno: price 80->110, incend.radius 64->48, incend.damage 40->32
Thermite Cyborg: incend.damage 38->32
Plasmite: price 80->130, incend.radius 96->60, incend.damage 63->50
Incendiary Mortar: price 150->200, pit price 135->170, incend.damage 30->22
Incendiary Howitzer: price 250->300, emplacement price 325->400, incend.damage 60->32
Minipod: range 1152->1088
MRA: damage 34->29, splash damage 30->29, reload time 145->165
HMG: damage 18->17
AG: fire pause 3->4, damage 20->19
TAG: price 100->120, fire pause 3->4, damage 30->28
AG Cyborg: fire pause 4->5, damage 20->18
MG: ROF upgrades 15%/30%/45% -> 17%/34%/50%.
MC: research points 4800->3600
HPV: research points 7200->4800
Gates: price 25->75
Whirlwind: fire pause 3->4
Thermite Bombs: incend.damage 200->120
Plasmite Bombs: incend.damage 200->140
Cannon Fortress: price 1000->900, range 1792->1408
Seraph: damage 120->110, splash 100->90, INDIRECT->HOMING-INDIRECT
Archangel: INDIRECT->HOMING-INDIRECT
ea7b191
Cyp Texture changes by several people.
Cliff decals by Jorzi, sand support by Mysteryem, new rocky ground texture by MaNGusT, minor tweaks by NoQ.

Cliffs should now be visible.
4a53a0e
Cyp Always reload weapons when bar is full.
Weapons would only reload if completely empty. If not completely empty, the reloading bar was meaningless.
74d8086
Cyp Merge branch 'bugfixes' into 3.1
Conflicts:
	src/game.cpp (Dropped 1974546 changes, which were now redundant.)
d227d3a
cybersphinx Update COPYING.NONGPL.
Closes #3533, refs #3534.
7e18c2a
cybersphinx Update ChangeLog. d51cea9
Jun 10, 2012
cybersphinx New skybox for urban maps.
Closes #3534.
aca180e
Safety0ff Make sure we pop our matrix when returning from rendering functions i…
…n exceptional circumstances.
c7e72b3
Jun 11, 2012
Merge branch 'bugfixes' into 3.1 3928607
Jun 13, 2012
Cyp Fix fpathBlockingTile() usage in moveGetObstacleVector(). d115167
Cyp Don't put pathfinding points very close to blocking tiles. 57a56f2
Cyp Do not give up following a path due to the droid being on a blocking …
…tile.

If the droid is on a blocking tile, repeatedly redoing pathfinding will not result in a path which does not
originate on said blocking tile.
f7c6e38
Cyp Add extra deprecated feature check in the obsolete driver workaround …
…function.
f54eb00
Cyp Print all OpenGL extensions with --debug=3d, not just what fits on on…
…e line.
86c4b9a
Cyp Add #include.
Buildbot apparently wasn't happy.
ff09d24
Jun 14, 2012
dak180 Update Png to 1.5.11. e971ebb
Safety0ff Fix on-screen droid radius calculation and placement of group/cmndr n…
…umbers, rank, etc

Closes #3547.
dd8025d
Cyp Change OpenGL 1.4+VBO check to OpenGL 1.2+VBO+TEC check for testing. 8b8282c
Jun 15, 2012
Safety0ff Fix hardcoded number of frames for structure animations.
N.B. Animation rates remain hardcoded for now.

Closes #1871.
(cherry picked from commit 55bea09)
02ced5e
Safety0ff Convert code and models from hard coded animation intervals to model …
…defined animation intervals.

Also assert on PIE files with bad animation data.

Closes #3539.
(cherry picked from commit 75ff207)
b3dc944
Safety0ff Don't reserve frame 0 for team colour (we use tcmask now).
Fixes bug in animation found by Berg.
(cherry picked from commit 2a9548a)
ecacd97
Safety0ff Fix texture animation data loading for pie 3
(cherry picked from commit 7c451d5)
cea701a
Cyp Merge remote branch 'origin/bugfixes' into 3.1
Conflicts:
	lib/ivis_opengl/screen.cpp
c348761
Cyp Check for shader version ≥ 1.20, instead of checking for OpenGL 2.0.
Try to simplify checks a bit.
0c03151
Cyp Merge branch 'bugfixes' into 3.1
Conflicts:
	lib/ivis_opengl/screen.cpp
9732dc7
Jun 16, 2012
Per Inge Mathisen qtscript: Make getResearch() return null if tech not found. Closes ti…
…cket:3548
752eef9
Safety0ff Add documentation for opengl usage. d3144a7
Safety0ff Fix bugs in glUseProgram and glAttachShader extension names. 174c561
Cyp Use OpenGL functions under extension names, if not present under regu…
…lar names.
96272eb
vexed Revert "Fix texture animation data loading for pie 3"
This reverts commit cea701a.

(will commit this to bugfixes instead!)
f3df64a
vexed Revert "Don't reserve frame 0 for team colour (we use tcmask now)."
This reverts commit ecacd97.

(Will commit to bugfixes instead!)
da94f64
vexed Revert "Convert code and models from hard coded animation intervals t…
…o model defined animation intervals."

This reverts commit b3dc944.

(will commit this to bugfixes instead!)
41b8034
vexed Revert "Fix hardcoded number of frames for structure animations."
This reverts commit 02ced5e.

(will commit this to bugfixes instead!)
f13b0e3
vexed Add missing vids message when they are not found 1a7c1a4
vexed Don't crash on null pointers. dc856ac
vexed Don't crash on NULL socket 6ff93f6
Safety0ff Fix hardcoded number of frames for structure animations.
N.B. Animation rates remain hardcoded for now.

Closes #1871.
(cherry picked from commit 55bea09)
(cherry picked from commit 02ced5e)
190c7a9
Safety0ff Convert code and models from hard coded animation intervals to model …
…defined animation intervals.

Also assert on PIE files with bad animation data.

Closes #3539.
(cherry picked from commit 75ff207)
(cherry picked from commit b3dc944)
2d0a089
Safety0ff Don't reserve frame 0 for team colour (we use tcmask now).
Fixes bug in animation found by Berg.
(cherry picked from commit 2a9548a)
(cherry picked from commit ecacd97)
b59fe8b
Safety0ff Fix texture animation data loading for pie 3
(cherry picked from commit 7c451d5)
(cherry picked from commit cea701a)
07a2a96
Per Inge Mathisen Fix debug mode after player switching. Patch by vexed. Closes ticket:…
…3264

(cherry picked from commit 15d7ef0)
4a2f7d4
vexed Merge branch 'bugfixes' into 3.1 2ccf4e0
Safety0ff Use Berg's animated factory (GPL). e636d41
dak180 Pngs should be crushed, a lot.
Preferably before being committed.
02b9961
dak180 Update the mac doc bundle. caa2074
Jun 17, 2012
Cyp Merge branch 'bugfixes' into 3.1
Conflicts:
	lib/ivis_opengl/screen.cpp
	lib/ivis_opengl/screen.h
	src/terrain.cpp
db1e828
Cyp Merge remote branch 'origin/3.1' into 3.1 828292f
Cyp Do archaic OpenGL driver workaround before trying to enable shaders, …
…as well as after the workaround is clobbered.
f5a7fd5
Per Inge Mathisen Do not install map tools. Closes ticket:3494 43f9036
Per Inge Mathisen Make sure we do not overwrite sensible defaults with non-sensible ones
when reading rearm pad data from savegame files. Closes ticket:3518
eb3001b
Cyp Do not dereference NULL on referencing non-existent structure in stru…
…ctureweapons.txt.

Fixes ticket:3543.
8aa4a68
Per Inge Mathisen qtscript: Set .stattype of a Laser Satellite building to correct ID. …
…Closes ticket:3506
7dbe642
Per Inge Mathisen qtscript: Add .type properties to common game objects, as requested in 69727cd
Per Inge Mathisen Clean up crazy indentation in function.cpp to make it readable. Refs …
…ticket:3220
29af6bf
Per Inge Mathisen Extra manual cleanup of function.cpp ec2bbb9
Cyp Swap Rush-T[23] map with 4c-Rush2-T[23] map, such that the map order …
…does not depend on tech level.
4a1aec1
Cyp Add SHA-256 implementation. 474216b
Cyp In fallback, try to use glBlendColorEXT if glBlendColor is not present. 7867b7a
dak180 Add tools/image to the tarballs.
Closes #3528.
d9aab02
Safety0ff Use Berg's animated cyborg factory (GPL.) da43378
Safety0ff Determine which stencil functions and enums to use once instead of ea…
…ch frame.
b35afbf
Safety0ff Add some enums that were missed and update the functions for a newly …
…used function.
9d428d5
dak180 Be somewhat less unaimed in putting the image tool in the tarball. 2e72860
Jun 18, 2012
Merge branch 'bugfixes' into 3.1 02395b3
Safety0ff Add shader toggle UI. 691df6a
vexed Don't convert to a platform specific string here, it causes bad thing…
…s to happen.

"const char * PHYSFS_getRealDir 	( 	const char *  	filename 	 )
Figure out where in the search path a file resides.
The file is specified in platform-independent notation. "
2056093
Jun 19, 2012
Cyp "Fix" object selection bounding boxes and clicking on terrain, by sca…
…ling by a random factor.

This shouldn't work, but works in the sense that two wrongs make a right, two bugs make a feature.
d697c42
Cyp Handle different maps with identical names, instead of a desynch.
Fixes ticket:3531 and ticket:3180.
15c04ab
Cyp Update ChangeLog. 769fccc
Cyp Merge branches 'screenscalehack' and 'bugfixes' into 3.1
Conflicts with 'bugfixes':
	lib/ivis_opengl/screen.cpp
	lib/ivis_opengl/screen.h
	src/clparse.cpp
5c1e204
Cyp Fix loading of campaign savegames.
Apparently, the game.map variable is set to "Sk-Rush" in campaign. And the actual map name is saved somewhere else.

Broken in 15c04ab.
1461b3a
cybersphinx Remove unused variable, and fix some narrowing stuff.
src/multiint.cpp:404:52: error: narrowing conversion of ‘(rand() % 256)’ from ‘int’ to ‘char’ inside { } is ill-formed in C++11 [-Werror=narrowing]

Fixes #3552.
a0b7030
dak180 Update the mac doc bundle. 0007657
Jun 20, 2012
cybersphinx Update ChangeLog. 6a31217
cybersphinx Update translations. 0c55d94
cybersphinx Merge branch 'bugfixes' into 3.1
* bugfixes:
  Update translations.
  Update the mac doc bundle.
  Update ChangeLog.
  Remove unused variable, and fix some narrowing stuff.
  Fix loading of campaign savegames.
3bb326b
cybersphinx Update translations. 8d8539f
cybersphinx Update version numbers for 3.1 beta11. e8a51a2