Commit Graph

41 Commits

Author SHA1 Message Date
diligentcircle 247d2c7bfe Added a lighter version of the cargo ship buff to other difficulties.
Assisted difficulty multiplies the shield of the cargo ships in
Urusor by 4 so that stray shots are less likely to destroy them.
I've added a lesser version of this buff for these ships specifically
(rather than all friendly ships) on other difficulties: shield is
multiplied by 3. This is just enough to survive a stray missile, a
little stray laser fire, or a little stray plasma fire without being
destroyed (but sustained or direct fire will still destroy the ship).

Of course, this is not applied to Classic difficulty. It is also
excluded from Hard and Nightmare difficulties.
2021-09-17 23:01:19 -04:00
diligentcircle 5ee90df2f3 Added a new paradigm for how Kline works.
For difficulties above Easy difficulty which are not Classic difficulty,
Kline's run shield now changes depending on whether or not other
WEAPCO ships are still alive. If he's alone, the previous 100 shield
threshold was used. If any of the other ships are alive, though, he
only runs if he takes 500 damage (the same amount that you have to
inflict the first time you see him). The result of this is that he
doesn't run away real early in the battle (100 shield is so low that
you can easily make him run away with a quick laser shot); you have
to either fight real hard, or more realistically, defeat all the other
enemies first, making him feel like an actual threat rather than a
gimmick.

This is of course is excluded from Classic difficulty, and it's also
excluded from Easy and Super Easy difficulty.
2021-09-17 21:57:15 -04:00
diligentcircle 87fea0b2e0 Added a feature to force slave ships and cloak fighters to appear.
This causes these mission targets to always appear the first time
the player enters an interception, and every time after they fail
to appear (so that you never have two time-wasting interceptions in
a row). In the case of the rescue slaves mission, this takes the
form of forcing the first ship to be a slave ship, and in the case
of the cloak fighter, it simply forces the cloak fighter to appear.
In each case, the variable controlling whether or not the condition
is forced gets set to 0 if the mission target spawned, ensuring that
time-waster interceptions can still occur as long as they both are
preceded and followed by worthwhile interceptions.

I decided this was important when I was playing and noticed that I
wasn't getting slaves to rescue several times in a row. This
situation would be confusing to new players and possibly make them
think they were doing something wrong. It can also be very annoying
to just not get any chances to make progress because of bad RNG.
Forcing them to appear the first time allows the player to be
immediately introduced to the targets, and forcing them to appear if
they didn't last time limits the frustration of bad RNG by ensuring
that even with the worst RNG, some amount of progress can be made.
2021-09-16 02:16:00 -04:00
Jorge Maldonado Ventura a3243ad3a3 Translated 393 of 514 (76%) 2021-02-01 21:38:03 +01:00
Layla Marchant 5b29033700
Changed our credits to "The Diligent Circle". 2020-12-26 00:10:10 -05:00
Layla Marchant 0112d8074f
Returned Classic difficulty start positions to relative. 2020-12-25 23:43:25 -05:00
Layla Marchant 6d71317514
Implemented emulation of smaller Kline health bars.
This makes it so that Kline's one health bar is displayed as many
smaller health bars, like the original, for Classic difficulty.
2020-12-25 21:46:58 -05:00
Layla Marchant 51a1b67841
Made the start of the Venus Kline fight the same as the original in Classic difficulty 2020-12-25 19:40:27 -05:00
Layla Marchant b61e5e7a32
Don't remove FL_CIRCLES.
We're now depending on the code not caring that FL_CIRCLES is there.
2020-12-24 15:50:37 -05:00
Layla Marchant 1625c54ee5
Added a check so that FL_CIRCLES doesn't take effect while leaving sector 2020-12-24 15:40:19 -05:00
Layla Marchant 45470bb68c
Converted the rest of trailing &&. 2020-11-22 23:33:26 -05:00
Layla Marchant 1a3e801271
Reformatted conditionals with trailing || and && 2020-11-22 23:03:38 -05:00
Layla Marchant 6e8d32fd64 Fixed a small discrepancy with the Venus mission in Classic difficulty
Since the original actually constantly had you drain Kline's health
to zero and then re-adjusted it, there were effectively stop points
limiting the amount of damage you could do to the amount designated
for the current stage. This has been simulated by setting the shield
to the proper amount of shield for the respective stage if the
difficulty is DIFFICULTY_ORIGINAL.
2020-07-27 00:37:04 -04:00
Layla Marchant 97bcd873c7 Fixed Kline 2020-05-26 20:25:50 -04:00
Layla Marchant b73a56e587 Added some nerfs for the Mars mission in super-easy mode.
This makes mines much less frequent and spreads the asteroids out
much more. The other super-easy mode nerfs don't work on Mars, so
these custom nerfs are necessary to keep the difficulty consistent.
2020-05-26 20:03:42 -04:00
Layla Marchant 5e1892235c Less extreme buff 2020-05-26 19:19:20 -04:00
Layla Marchant b517275bd3 Really fixed nerfing this time 2020-05-26 17:57:41 -04:00
Layla Marchant a2ad01846a Fixed nerfing in super-easy mode 2020-05-26 17:35:24 -04:00
Layla Marchant 1a4e2ea71e Removed some weird, pointless code for when Kline is disabled.
The code caused Kline's systemPower to be restored to full when
disabled. This would have had no effect on the code; the systemPower
variable is only used to add the FL_DISABLED flag when it reaches
0, and restoring systemPower has no effect on this. This might have
been an attempt to make it impossible to disable Kline, but it
wouldn't have worked that way (it might simply not have been noticed
because disabling Kline would take a ridiculous amount of time and
is unlikely to happen without conscious effort).
2020-05-26 16:34:44 -04:00
Layla Marchant 5c9b69dd0c Added a super-easy difficulty. 2020-05-26 15:51:04 -04:00
Layla Marchant 9863aef0ba Fixed the warp escape delay bug.
That's embarassing.
2020-05-23 21:10:45 -04:00
Layla Marchant d96c8327e4 Bunch of fixes.
At first I just went in to fix some places that were missing gettext
translations, but on the way as I was doing that, I noticed some
places where ngettext should be used, a bug in the fallback legacy
text rendering, and some things that could be structured better in
the Autoconf / Automake setup. Fixed those.
2020-03-06 19:06:48 -05:00
Layla Marchant cdf555f17b Removed my old name.
I go by "Layla" now. Updated that. Also updated my email address.
2020-03-05 15:05:56 -05:00
Julie Marchant c142191f6f Restore "always ignore bad targets" for Classic difficulty. 2019-06-22 08:48:06 -04:00
Julie Marchant 122624f89e Change the method for determining Sid's good targets outside Classic difficulty.
The original method just looked for non-firing targets, which caused
Sid to piss around a bit with the non-target transports.  This new
method just targets the specific classes Sid is always going after,
cargo ships and bosses.
2019-06-22 08:44:54 -04:00
Julie Marchant 75327aa3f8 Allow aliens to attack "less desirable" targets if they can't find a good one.
The way it previously was, in particular, Sid 100% refused to attack
fighting vessels and Phoebe and Ursula 100% refused to attack
non-fighting vessels.  This was most notable with the Urusor mission,
where Sid would just become completely idle after disabling the last
non-combat vessel and would often just drift off into the distance
as a result (especially annoying in Classic difficulty as this
could make it very difficult to find the remaining enemies).

So now, instead these targets are treated as "undesirables", which
normally will be avoided but will be accepted after 30 frames.
This stops allies from idling around forever.

This rule has also been applied to a rule that didn't allow targeting
enemies beyond a particular distance.

I'm keeping it in Classic difficulty for now, but might add an
exception later.
2019-06-22 08:34:57 -04:00
Julie Marchant cda23d7f7c Whitespace 2019-06-20 22:19:34 -04:00
Julie Marchant c0216735db Fixed barriers bouncing off and killing each other. 2019-06-19 17:55:59 -04:00
Julie Marchant 9b782de4e4 Fixed the collision-caused segfault. 2019-06-13 12:02:42 -04:00
Julie Marchant 373f87de0c Added a condition I forgot
The collision behavior in the original had an exception for Ellesh.
Added this exception in.
2019-06-12 17:53:23 -04:00
Julie Marchant d262806105 Added back in collision support (Classic difficulty only)
I completely forgot about this stupid feature of the original game.
Nonetheless, it's a part of the original experience and thus has
been added back in, albeit implemented in a slightly different way
(the result is still the same). Because this is such a stupid and
badly designed mechanic, this is of course in Classic difficulty
only.
2019-06-12 17:49:09 -04:00
Julie Marchant d8d8d9cab2 Moar translations! 2019-06-07 17:08:35 -04:00
Julie Marchant 3f1febc2fc Some code cleanup. 2019-06-06 09:30:22 -04:00
Julie Marchant caf963ba19 Added translation support.
No, really, just added the whole thing. This took literally the
entire day. I'm soooo glad it's working now!

Also includes tons of other small fixes I didn't bother to keep
track of.
2019-06-05 22:13:48 -04:00
Julie Marchant 3e453a2f3c Added an "original AI type" definition for the sake of the exec transport.
This is something I forgot about before: the executive transport
A.I. was changed by me at some point from "Normal" to "Evasive".
This change re-introduces "Normal" A.I. for this ship in Classic
difficulty.
2019-05-26 15:35:46 -04:00
Julie Marchant d7dc0844c8 Adjusted the delay of ray damage, plus some misc code fixes. 2019-05-24 22:05:09 -04:00
Julie Marchant d17a8f36c7 Better malloc practice, plus several missing warnings 2019-05-23 11:25:54 -04:00
Julie Marchant b251acb4fe Removed the now unnecessary casting for malloc calls. 2019-05-23 11:07:03 -04:00
Julie Marchant 908a6059ac Finished C conversion! Hoorah!
Note: Autoconf files must be cleaned up and regenerated to ensure
proper compilation.
2019-05-23 11:02:48 -04:00
Julie Marchant e51c55b16b Revert "Converted to C... tried and failed to convert Autoconf."
This reverts commit 7fd19f29ba.
2019-05-20 01:56:16 -04:00
Julie Marchant 7fd19f29ba Converted to C... tried and failed to convert Autoconf.
Broken for now. Committing so I can switch computers.
2019-05-19 23:57:55 -04:00