Commit Graph

10470 Commits (19b00b78629c77e5ec7b62bad79abc7b78d3dcda)
 

Author SHA1 Message Date
Lukas Werling 602d62cf52 Implement netpunching for IPv6 2017-01-18 21:54:50 +01:00
Lukas Werling b3ef196935 Remove ResolveAddress()
As setting a default port is a common operation, add a helper function
for this.
2017-01-18 21:54:50 +01:00
Lukas Werling 85f5b3cb75 Fix local network discovery 2017-01-18 21:54:49 +01:00
Lukas Werling 97be97c94c netpuncher: Add runtime error handling
Previously, the netpuncher would just exit silently when encountering an
error.
2017-01-18 21:54:49 +01:00
Lukas Werling 5a09c1d4a5 Convert addresses from puncher to IPv4
Addresses from the puncher would show as [::ffff:1.2.3.4] and be a bit
confusing.
2017-01-18 21:54:49 +01:00
Lukas Werling 68d18bf872 Remove obsolete CompileFunc for in_addr 2017-01-18 21:54:49 +01:00
Lukas Werling ef9be2e24e Change (discovery) multicast to IPv6
We use ff02::1 as discovery multicast address.

This "all nodes" multicast address is good enough for discovery in the
local network as packets there are likely broadcasted over ethernet
anyways.
2017-01-18 21:54:35 +01:00
Lukas Werling 793207ce28 Fix connections to link-local IPv6 addresses
Link-local IPv6 addresses are valid on all interfaces and thus need an
interface specifier / scope id, e.g. fe80::1%eth0.
2017-01-18 21:54:02 +01:00
Maikel de Vries 8cc30baf02 add option to gravestone rule to fade them out 2017-01-18 18:21:12 +01:00
Maikel de Vries 5b796dd6d0 improve boom attack movement 2017-01-17 21:14:27 +01:00
Maikel de Vries 075f751a89 defense goal: scoring and achievements 2017-01-17 18:08:34 +01:00
Sven Eberhardt 771a82d879 Fix direct PXS insertion when multiple PXS are at the same location
When many PXS were at the same location (e.g. because of fast/multiple pumps pumping into a basin), only one PXS per frame could be inserted because insertion of one PXS would postpone insertion of additional PXS in the same frame until they finished their slide movement.

This caused some scenarios like Rapid Refining to become very frustrating, because adding extra pumps didn't actually do anything (unless you tricked the insertion by putting the output into the basin).

Now insert them directly if slide movement led to an insertion position.
2017-01-16 20:32:20 -05:00
Maikel de Vries 9466dd4b9b move script player control to defense goal 2017-01-16 18:57:00 +01:00
Maikel de Vries c632a6ed15 improve king of the hill scenario 2017-01-16 18:57:00 +01:00
Maikel de Vries 43d6abc802 order defense scenarios 2017-01-16 18:57:00 +01:00
Maikel de Vries ba731123a2 allow for script players to enter full teams
This should not break anything because script players are created by scripts and one may expect sane behaviour. This is useful to block entry for normal players into a team.
2017-01-16 18:57:00 +01:00
Sven Eberhardt 218961f6a8 Add DuroLava liquid object #1879
The extra object is called "Magma" to distinguish it from Lava and has a slightly different color on the symbol. In the pump menu, only "Lava" is shown and magma is turned on/off with it automatically.

It would be nice to have only one object and control a flag somehow. However, this is bound to cause us headaches later on (combining materials, etc.). This solution is probably least error-prone.
2017-01-16 12:54:34 -05:00
Martin Strohmeier 1586ff9635 Remove difficulty from I am rich Scenario.txt 2017-01-15 17:57:18 +01:00
Maikel de Vries 3f9d06aaa7 add new defense scenario (king of the hill)
This is still experimental and needs some fine-tuning.
2017-01-15 15:38:33 +01:00
Maikel de Vries 3b1dd87b8b improvements to defense goal 2017-01-15 15:38:33 +01:00
Maikel de Vries 008e037864 fix script error in basement 2017-01-15 15:38:33 +01:00
Maikel de Vries 73de90ea8f make friendly fire rule work for projectiles 2017-01-15 15:38:33 +01:00
Maikel de Vries 1f5f34b559 improve friendly fire rule to allow inclusion of objects 2017-01-15 15:38:33 +01:00
Maikel de Vries d1c0750095 show wealth in tutorial 1 2017-01-15 15:38:33 +01:00
Maikel de Vries 85ce25fb0f add editor button to place basement under a structure 2017-01-15 15:38:33 +01:00
Maikel de Vries f9e3639d91 silence some warnings in the defense scenarios 2017-01-15 15:38:33 +01:00
Maikel de Vries e00f1e9672 fix aiming of defense boom attack 2017-01-15 15:38:32 +01:00
Maikel de Vries 6dc9850ebd fix possible script error in boom attack 2017-01-15 15:38:32 +01:00
Maikel de Vries accc1b82dd gidl: use defense boom attack object 2017-01-15 15:38:32 +01:00
Maikel de Vries ef27c1d760 windmill: use defense boom attack object 2017-01-15 15:38:32 +01:00
Maikel de Vries 18a313c962 add defense ai control object 2017-01-15 15:38:32 +01:00
Maikel de Vries eec8127e8a add defense boom attack object
This is the standard wave attack weapon and is part of the goal in some sense.
2017-01-15 15:38:32 +01:00
Maikel de Vries a03c67a7a2 add defense wave control object 2017-01-15 15:38:32 +01:00
Maikel de Vries 7a8032e96d add defense enemy control object 2017-01-15 15:38:32 +01:00
Maikel de Vries 1063610369 add defense goal
This is the goal in defense scenarios and controls the waves. In the future a league interface can also be build. The goal is to adapt the existing defense scenarios to this format (mostly internal changes and infinite waves). Also this should allow for easier creation of defense scenarios.
2017-01-15 15:38:32 +01:00
Maikel de Vries 5e6cf4e7b8 show goal name in goal menu 2017-01-15 15:38:32 +01:00
Mark 6b0d0e1c60 IronPeak: Fix function access during intro 2017-01-13 05:50:06 +01:00
Mark 38648dedcc UseControl: #1873 Prevent use while a menu is opened.
Using objects was blocked by the GUI menus and the ObjectControl() function anyway, but (!) it was not blocked for the old style menus that can still be used.
2017-01-13 00:05:35 +01:00
Mark 92e53fe09f UseControl: Merge the two if-blocks that share the same condition 2017-01-12 23:58:38 +01:00
Lukas Werling 5d803d3be3 Improve "could not find connection" error message 2017-01-09 20:35:04 +01:00
Lukas Werling 1925f47440 Fix C4NETIO_DEBUG option 2017-01-09 20:35:04 +01:00
Lukas Werling 6c7d8b7bbb Clarify discovery error message 2017-01-09 20:35:04 +01:00
Lukas Werling 592ef85672 Fix local IPv6 address discovery 2017-01-09 20:35:04 +01:00
Nicolas Hake 102047f537 Implement IPv6 support to C4NetIO 2017-01-09 20:34:43 +01:00
Martin Strohmeier 0fd9d1f40b Updated descriptions for scenario: I am rich 2017-01-07 18:40:28 +01:00
Martin Strohmeier daf23b9b32 New scenario: I am rich 2017-01-07 18:19:52 +01:00
Maikel de Vries e6819bf020 use no friendly fire rule in defense scenarios 2017-01-07 17:13:46 +01:00
Maikel de Vries 918e5ded0d add rule to prevent friendly fire 2017-01-07 15:39:34 +01:00
Nicolas Hake c73fed8aa6 C4Group: Make more stuff private
C4Update needs to access some internal data of C4Group and uses a
special derived class (C4GroupEx). Make everything it doesn't want to
tamper with private so it's more obvious what is and isn't accessed from
outside the class.
2017-01-07 13:41:50 +01:00
Nicolas Hake aef2705825 C4Group: Delete some dead code
The pByChild parameter to C4Group::AdvanceFilePtr was never used except
to pass it to itself recursively, and C4Group::ProcessOut was never used
at all.
2017-01-07 13:41:48 +01:00