How does the Lethal Bomb outfit work? I mean, if you buy such an outfit on a planet, does it go off immediately upon liftoff? Randomly? After some set time?
The documentation is less than clear.
Lethal Bomb detonates at some random time after you lift off.
The game will display a desc as determined by the ModVal of the outfit when it explodes.
This post has been edited by Eugene Chin : 15 August 2009 - 06:13 PM
Controllable how?
Depending on what you want to do, a mission could be started in flight that'll give the player the bomb outfit when that missions Ship Objective is done.
This objective could be the observation of some obstructive ship that enters the system, but what you'll be interested in is that it can potentially be started, and the outfit added to the ship, while the player is in flight.
Related question. The lethal bomb gives you the option of setting a STR to be displayed when it blows up. However, the non-lethal bomb does not. Why?
I tried using one (non-lethal) and it just said, "Your damage has exploded." "Damage" was the name of the outfit. I'm presuming that's a STR# I can modify, but I can't find it.
I eventually did find the resource in "misc strings". Changed it to
Was that the <x>?
Rather than using separate STRs before and after a target keyword, I rather wish EV's developers had gone for printf-style format strings....would have been more flexible.
This post has been edited by Lindley : 21 August 2009 - 06:38 AM
It should be mentioned that lethal bombs descs don't work with tags like <PN>, they won't change into the appropriate text.
Okay, here's a scenario. The player is doing a don't-be-scanned mission, and if they get scanned, then they're given a lethal bomb outfit. The idea is that in-story, the guy offering the mission really doesn't want the authorities getting a closer look at the cargo, and he didn't tell the player it was rigged to detonate if scanned.
So long as Strict Play is off---and I don't think anyone really uses that---this means that mission failure simply implies the player has to re-load and try again from the last planet they landed on.
But if the lethal bomb doesn't detonate immediately upon giving it to the player, then there's a problem. The player could land somewhere with the bomb, and then end up screwed because there's no way to get rid of it and their possession of it is saved into the pilot file. I don't want to inflict that on someone.
So, alternate approach----if they're scanned but manage to land quickly, you say that they were able to dump the cargo. (Haven't come up with a reason why "Jettison" wouldn't do as well, but once the mission fails, you ain't got nothin' to eject as far as the engine is concerned.)
However, I can't figure a way to fit this into the engine. Nova doesn't seem to support missions of type "Offer anywhere" (closest it comes is "Offer on any inhabited"), and it also doesn't support "land anywhere" missions. In short, there's no apparent way to make sure the bomb outfit is taken away if the player manages to land before it goes off. Any ideas?
Best I can figure is starting a new mission at the same time the bomb is given, and making that mission abort causes the bomb to go away. I dunno, does the "Jettison cargo" option include mission cargo and cause an abort? What about for non-abortable missions?
This post has been edited by Lindley : 18 September 2009 - 06:08 PM
This very problem is, in a large part, the reason I addressed player death the way I did in Anathema. I don't want any angry mobs of Nova players at my house at 3:00 AM. :laugh:
(The following two paragraphs answer your problem to an extent, but I think they're an inferior way of going about things. Read them if you want, but I recommend not using them)
My first thought would be to make two more resources: one crön and one mïsn. When the player fails the critical mission, it sets bit 100. The crön fires only when b100 is set and also clears b100. It also aborts the critical mission and starts the extra mission, which auto-aborts and gives the player some text about dumping the cargo.
Now, Nova only checks cröns when a day passes, meaning that the player won't get the text and the abort until they either jump or land and take off, which should save them. You could make a mission that is available from any inhabited planet that does the same thing, but then if the player landed on an un inhabited planet, they'd be screwed (and there's no "any uninhabited planet" flag for mission availability).
Having said all that, it strikes me as a rather clunky way of doing things as well as a bit counter-intuitive. If you can dump the cargo, why wait until you've landed or jumped? So instead, I'd suggest making the mission abortable and causing aborting the mission to remove the lethal bomb. It would be essentially the same as jettisoning the cargo, which seems to be about what you wanted. Furthermore, if you wanted, you could make it a bit more complicated by giving the mission different repercussions depending on if it was aborted after you were scanned or not (i.e. getting caught smuggling and then getting rid of it, vs. seeing you're about to be caught and dumping it prematurely). To do that:
Make one extra mission
Make the critical mission, on abort, do the "haven't been scanned" jettison
Make the critical mission, on fail, abort itself, start the extra mission, and counteract anything that happens when it aborts (since in aborting itself, it will run its own abort script, which is supposed to be for if you haven't failed)
Make the extra mission auto-abort, and when aborted, do whatever you want to have happen when the mission actually fails instead of just being aborted
If you wanted to get really fancy, you could even add this:
Make a third mission that runs when the first mission is aborted. This mission doesn't do anything, unlike the other two, but it does have a fail text. This mission fails when accepted, and then aborts when failed (or aborts when accepted; either should work). The fail text uses the {bxxx} operator to store two different strings of text. Now, go back to the first mission and make it set bxxx when it fails. That way, failing the mission and just aborting it will give two different texts. You may be able to do this without the third mission depending on what effects you want the aborting vs. failure to have, but this will work under any circumstance at the cost of one extra mission resource.
As another alternative, you could toy around with having the player's ship totally malfunction when they fail the mission, which could actually be pretty cool. If you want them to die as a result of being scanned, you could also make Nova give the player an outfit (or two) after failing that does something like drain fuel, reduce maneuverability stats to 0 and remove afterburners, grant huge negative interference mod so their sensors stop working, etc. That way, they would really be incapable of landing because they can't move, and the general panic at seeing themselves sitting in the water with main systems failing would be quite spectacular. Unfortunately, you can't give a ship negative shield or armor recharge, because that would be pretty awesome too.
Yes, I'm a sadistic bastard.
This post has been edited by Archon : 18 September 2009 - 07:50 PM
Interesting idea on the huge negativity mod....that would solve the issue pretty cleanly. However, last time I tried granting such an outfit, it didn't actually seem to affect anything. (It wasn't a complete crippler that time though.) Are there maybe some mod outfits that don't work with negative modvals?
Could be, but aside from the "no net shield/armor drain" aspect, I think just about anything you could want would work. I'm positive that negative maneuverability, energy recharge, and interference mod all work. Modifying things like maximum energy/armor/shields while on the fly tend to be much more reluctant to work as one would hope.
Actually, what could be even cooler is since the greatest energy drain you can give is -1 or 30 energy drained per second, you could make an outfit that does that 4 times and give it to the player like 20 times just so they could see their energy drop to 0 in a quarter of a second.
When fiddling around with non-lethal bombs, I found that they always explode within about 4-8 seconds of getting the item (once you enter space). I assume lethal bombs would work the same way.
You could also have the mission fail when scanned, and in the OnFail field start a mission that warps in an invisible ship with one invisible weapon that gets fired at you for a custom amount of damage. The weapon is also a self-destruct weapon killing the dude after the first shot, and also triggering OnShipDone (destroy ships) to then abort it, or do other stuff.
QUOTE (Lindley @ Sep 18 2009, 08:42 PM) <{POST_SNAPBACK}>
Hmm, if they happen to come to rest on the planet when the mod hits, they could still land before they blow up. I'm not sure that's ideal.
I don't think that'll be too big of a problem, since you would probably leave the ship's max speed intact and just take its acceleration and turn to 0. They'd need to be sitting directly on top of a planet when they get scanned that way. If you're still worried, you could make a cron display a mission if a day passes with the bomb onboard that tells the player that if they've landed they'll have to take off and land a few times to avoid utter annihilation. Then, you could set up a series of counter cröns that after a few days delete the bomb. They could land and take off easily within the 4-8 second frame, which I think is reset every time they take off.
Taking off and landing a bunch of times might work in the engine, but it makes no logical sense in the story.
Does anyone know what specifically the rules are when dealing with the "Jettison cargo" command? Can it be used with non-abortable missions? Will it fire the OnAbort if so?
I'll play around with it myself if no one knows, but I thought I'd ask first.
This post has been edited by Lindley : 18 September 2009 - 10:19 PM
Yeah, but I kinda figured that the fourth wall would be obliterated anyways when Nova tells the player "OK so you have this thing on your ship that's gonna kill you cause you really screwed up, so here's what to do."
I'd honestly forgotten that the jettison cargo command existed; I can toy around with it a bit tomorrow if you still need help.
What if we do this: give the lethal bomb. If it blows in space, player dies. If they manage to land, the delivery guy notes that the bomb is active (power supply is on a buildup to overload.) It's unstoppable, but they have about 30 minutes to get the delivery far enough away or in a bunker before it blows. Mission fails, and delivery guy/Mal is incredibly pissed, but at least everyone lives.
QUOTE
However, I can't figure a way to fit this into the engine. Nova doesn't seem to support missions of type "Offer anywhere" (closest it comes is "Offer on any inhabited"), and it also doesn't support "land anywhere" missions. In short, there's no apparent way to make sure the bomb outfit is taken away if the player manages to land before it goes off. Any ideas?
Best I can figure is starting a new mission at the same time the bomb is given, and making that mission abort causes the bomb to go away. I dunno, does the "Jettison cargo" option include mission cargo and cause an abort? What about for non-abortable missions?
How I would do it:
I'm pretty sure this would work. Does OnFailure run mid-flight, or when you land on a planet? If it runs mid-flight:
Mission: take the rigged cargo to place. Don't get scanned
Mission fails when scanned
OnFail: Gxxx where xxx is the ID number of a lethal bomb outfit
Complete text: "everything is peachy"
fail text: "You got scanned and failed the mission, so you dumped the cargo before going through customs (or whatever)."
If the player fails, chances are the bomb will kill them. If they land in 2 seconds, they'll read how they dumped the cargo. It's up to you if the player sees the cargo explode and gets angry.
Also, I think it's fair to give a warning in the readme: "Don't use strict play"