Author Topic: Special Weapons?  (Read 3767 times)

0 Members and 1 Guest are viewing this topic.

Offline gershom

  • 24
I don't know what's possible, but I would like some special modules that are equipped in missile slots, but function like other devices.

1. FTL Drive

  When fired, initiates a jump to within a certain distance of the targeted object. (I think this should be limited to jump nodes, navpoints, or large objects.) I want it to disable the player's weapons, engines and shields, autopilot the ship to face the targeted object, enter subspace and then exit near the object. I want this to take about five to ten seconds, so the player is vulnerable while preparing for the jump, and have a cooldown of about three minutes so it can't be spammed. I would also like it to be cancellable, and have a countdown on the hud for the preparation sequence and the cooldown.


Time Manipulation Device

 I don't know whether or not it's possible to have objects on a separate timescale, but I would like a module alters time when fired. Ideally, I would like the player using the item to be scaled at half time, while everything else is slowed to just short of a complete stop. I want the effect to last for about four seconds, with a five minute cooldown. (It will mostly be useful in evading enemy fire, but could also be used for long range aiming).

P.S. Also disables shields for the duration of the effect.


 Cloaking Device

 When fired, makes the ship appear transparent, and renders it immune to targeting and missile lock, and causes any aspect seeking missiles in persuit to lose tracking. (But not heatseekers.) Infinite duration, no cooldown, toggles on or off. Shields disabled while active.


There are a few reasons why I want these as equippable weapons rather than just events or commands.

1. So the player has to sacrifice weapons in order to use them.

2. So they can be used on any map without having to set up events over and over.

3. Added realism of having to equip items.




 
Act 3 of War in Heaven did something like this. See the Ainsarii's compatible primaries.

 

Offline gershom

  • 24
Thanks. I'll check it out.

 
You can copy and paste events from mission to mission. Once you get it working as desired in one mission, event-triggered special weapons/abilities are easy to bring into other missions.

I chose to go with event-triggered spaceship abilities over Ainsarii-type weapon-abilities because of the 3-primary & 4 secondary bank limitation, and I didn't want the player to give up weapons for multiple special abilities. And by making them non-interchangable, it's a way to make otherwise unappealing ships more useful.

...For example, when was the last time anyone flew a Herc II when an Ares was available? Now what if the Herc II could spew 'chaff' with the bomb flag in all directions to distract turrets, and the Ares couldn't?

Shields-off-during-stealth is a great idea. I'm definitely going to implement that on my stealthy ship.
"Obviously the meson bomb is a form of cat-toast-device, with the buttered toast inverted, so that the cat and toast both fly in the direction of gravity much faster than expected. By introducing artificial gravity, a pair of cat-toast perpetual motion accelerator units can be made to collide with one another, and they produce an unimaginably devastating explosion. Both cats are named 'Meson'."

 - Wikileaks 2383

 

Offline gershom

  • 24
Thanks. I'm still considering both methods. By the way, can't you limit specific weapons to specific ships? If the cloak was only equippable on smaller craft, like the Ulysses, and the TMD only for bombers, you could solve your complaint about the Herc and Aries, if you're interested.

 

Offline AdmiralRalwood

  • 211
  • The Cthulhu programmer himself!
    • Skype
    • Steam
    • Twitter
You can also use scripting to make the behavior not require copy&pasting events from mission to mission. The exact details of the implementation are pretty much up to you, but I can tell you right now that your idea for the TMD will not work; as far as I'm aware, there's no way to have different objects operating on different timescales.
Ph'nglui mglw'nafh Codethulhu GitHub wgah'nagl fhtagn.

schrödinbug (noun) - a bug that manifests itself in running software after a programmer notices that the code should never have worked in the first place.

When you gaze long into BMPMAN, BMPMAN also gazes into you.

"I am one of the best FREDders on Earth" -General Battuta

<Aesaar> literary criticism is vladimir putin

<MageKing17> "There's probably a reason the code is the way it is" is a very dangerous line of thought. :P
<MageKing17> Because the "reason" often turns out to be "nobody noticed it was wrong".
(the very next day)
<MageKing17> this ****ing code did it to me again
<MageKing17> "That doesn't really make sense to me, but I'll assume it was being done for a reason."
<MageKing17> **** ME
<MageKing17> THE REASON IS PEOPLE ARE STUPID
<MageKing17> ESPECIALLY ME

<MageKing17> God damn, I do not understand how this is breaking.
<MageKing17> Everything points to "this should work fine", and yet it's clearly not working.
<MjnMixael> 2 hours later... "God damn, how did this ever work at all?!"
(...)
<MageKing17> so
<MageKing17> more than two hours
<MageKing17> but once again we have reached the inevitable conclusion
<MageKing17> How did this code ever work in the first place!?

<@The_E> Welcome to OpenGL, where standards compliance is optional, and error reporting inconsistent

<MageKing17> It was all working perfectly until I actually tried it on an actual mission.

<IronWorks> I am useful for FSO stuff again. This is a red-letter day!
* z64555 erases "Thursday" and rewrites it in red ink

<MageKing17> TIL the entire homing code is held up by shoestrings and duct tape, basically.

 

Offline Dragon

  • Citation needed
  • 212
  • The sky is the limit.
You can have bullet time, though, there's a SEXP that controls time compression. Mind that it might do weird things to beam damage. Changing ship class and weapon types might even allow to compensate for the slowdown in player's case, but it'd be rather complicated to set up.

Cloaking is easy, though. You can even have a nifty cloak/decloak effect similar to weapon and ship selection effects. It might require some table trickery (I haven't done any modding for a very long time, so I don't remember how to do it), but I'm pretty sure it's in the regular SCP builds by now.

 

Offline gershom

  • 24
I can settle for a TMD that simply slows everything.

My main problem is with jumping. I'm following the In-game Space Jump Tutorial, but it lacks several things I want, all of which may be impossible.

First, I want to be able to jump to about 2000m from any targeted object that is at least 25000m away. If it's not possible, I can settle for jumping node-to-node, or something similar to that.


Secondly, I want this ability to replace the normal Alt-J, which the tutorial demonstrates, but it can only be used once, it can't be aborted, and it doesn't check for collisions. I think I can just use "key-reset" after a time delay to have the desired cooldown, but I need a countdown on the hud, and a warning sound and message if I try to use it again before it's ready. I also need to know how to create an abort command, and the collision check.

Thirdly, I want the "Depart" command for ai ships to make them jump to the target area, rather than exiting the level.

There are two other problems though. I'm planning to use this in a huge coop map, so all players need to be able to jump the same way. This means I can't use the Subspace Corridor to cover up the "set-object-position". If it's possible, I would rather lock the player facing the target location and then rapidly accelerate them to the stopping point, so fast that they appear to warp. The player would need to be immune to collision during the jump, or they could just become invulnerable, destroying anything they warp through, which would make for a good tactic if it wasn't for the risk of killing friendlies. If this rapid acceleration method is not possible, I'll need a way to disguise the position change without disrupting other players.

 
I am actually building a SEXP-based jump system that has an attack mode and a retreat mode. It checks if you are facing your target, and if so, does some math and jumps you along your forward vector, to the target, minus 2500 meters. If you're not facing your target, it jumps you 5000 meters along your forward vector for a rapid retreat.

http://www.hard-light.net/forums/index.php?topic=91850.0

Unfortunately...I do not think it will work for co-op mode. Not unless the other players are part of alpha wing, and are willing to follow Alpha 1/server host along in the jump.

You're absolutely right that one could restrict the bomb-flagged countermeasure effect to the Herc II and disallow it on the Ares by editing the allowed secondary banks. However, if you love tempests (and other rapid dumbfire missiles) as much as I do, you might not necessarily want to let go of the trigger for that split-second and switch to another secondary, to activate your ship's special abilities. The BP team did a really good job with their primary weapons; none of them have to be switched or 'fired' in the heat of combat.

Additionally, in my case, I'm making a campaign where the player fights against the GTVA as a Shivan, with all their ships built to the same technological standards as the Lucifer. There aren't enough primary and secondary banks to do what I need; every Shivan ship is going to have four of these abilities.

For example, the Shivans' space superiority fighter (Mara) will be capable of the tactical subspace jumps, or fire control jamming (the bomb-flagged countermeasures), or rapidly recharging its weapons, or spewing energy-draining beams at all hostiles within 500 meters. This is in addition to the usual primary and secondary weapons. The tactical subspace jump is the only ability universal to all Shivan fighters.

By building the fighters with wholly different systems, it helps establish a feeling that ships with very similar or even identical weapon payloads really are radically different ships, designed to perform radically different tasks. An interceptor with eight primary firepoints may have very obvious combat applications. A heavy assault fighter with only four primary firepoints? Slightly less so.
« Last Edit: May 15, 2016, 01:25:09 am by Erebus Alpha »
"Obviously the meson bomb is a form of cat-toast-device, with the buttered toast inverted, so that the cat and toast both fly in the direction of gravity much faster than expected. By introducing artificial gravity, a pair of cat-toast perpetual motion accelerator units can be made to collide with one another, and they produce an unimaginably devastating explosion. Both cats are named 'Meson'."

 - Wikileaks 2383

 

Offline gershom

  • 24
I'm settled on using events for now, but I'm ultimately, I'll probably need the weapon method. I'm trying to make a huge co-op map with roleplay and simulation elements.
It will feature several space stations, mining facilities, capital ships, multiple combat areas ranging from small fighter wing duels to huge fleet battles, race courses, training areas, a friendly pvp area where players can duel without actually killing each other or becoming traitors, and the ability to switch iffs and fight to capture the various facilities. For roleplaying purposes the weapon method may be necessary. I'm still exploring options though.

 

Offline General Battuta

  • Poe's Law In Action
  • 214
  • i wonder when my postcount will exceed my iq
Oh jeez. Well, before you dive too far into it, beware that a lot of SEXPs don't work very well in multiplayer! A lot of SEXP operations can only be performed on/for the host.

 

Offline Dragon

  • Citation needed
  • 212
  • The sky is the limit.
FSO isn't really suited for that sort of thing. Multiplayer seems to work, but was never really in focus. A single-player mission of the sort you're describing might work (with a lot of effort), but I'm not sure if you'll be able to make those features work on coop.

Also, any "huge" map will inevitably run into floating point accuracy issues. Once you move too far from the coordinate system origin, the player's ship (and other objects as well) may begin to visibly shake. It's particularly visible with cockpit mods on, but at some point you'll be able to see it in the external view. There's a hard-coded (IIRC) restriction to the mission area size, but problems start before that.

 

Offline gershom

  • 24
I can scale the size of the map down until it works. I'm not aiming for an award-winning production, just something to play solo or with a couple of friends. I don't know what's possible in FS2, but I'm hoping I can get it close enough to be practical, even if it's not as pretty as one would hope. I basically want to emulate as closely as possible an MMO/RP/Trader Sim. I've tried Vega Strike, but it's hard to deal with and it's multiplayer hardly works at all, from what I've seen. I know I'll run into problems, and it will probably be far from ideal, but I just want to get as close as possible. Based on what I've looked at, most of it should be viable, even if it's very complicated. I want to try Allegiance, but I don't have internet where I stay, and it has no single-player, and I can't seem to get its LAN feature to work. I've also tried games like Aces High II, but all games of this type seem to be made either exclusively for single-player or exclusively online. I'm bored with single-player and don't like having to depend on an internet connection to play a game. So, to sum up everything I just said, I want a miniature version of an MMO setting that I can play solo or with a few friends via LAN. Maybe there's a better game for that purpose, but I have yet to find one. I would even try doing it on Jedi Academy, but I can't mod that game at all beyond simple file replacements and texture editing.


Now to get back on topic:

I don't have many objects placed yet, but for now the game seems to run smoothly with a space station at 100000,0,100000, and another at the opposite coordinates. I assume that will not be the case once several objects are in place, so I may have to scale it way down. I also figured SEXP's would not work, which is why I need as much as possible to be based on player commands rather than system events. For instance, it would be much simpler if I could take apart the existing Alt-J command that the game uses by default, and modify that to produce the desired effect for all players. I just don't know if it's accessible or if it's hard-coded. I also need commands for cloaking and docking that any player can use, but I don't know if those are possible. (I always have the bad habit of seeing more potential in a game than the developers actually put into it.) I've made a few other posts for different items that I need for this project, so I'm just going to make a new post and explain it all in one place.

 

Offline General Battuta

  • Poe's Law In Action
  • 214
  • i wonder when my postcount will exceed my iq
You can 'catch' the Alt-J command with the key-pressed SEXP, but yeah, that'll only work for the host.

Floating point coordinate issues don't kick in until you get way out there.

FS2O is an incredibly powerful and flexible engine — you can do insane things with it, including just about everything you want to do here. But it is, primarily, a single player engine. I don't know how feasible all of this will be with multiple players; we did get multiple player capship control working nicely, but I don't think we got per-player abilities in multiplayer...

I suggest poking around at existing mods like Just Another Day, Wings of Dawn and Blue Planet to see how they pulled tricks off. And The Antagonist. But those are all solo play.

FS2 co-op is an absolute blast when the netcode's not being ****ty, but that blast usually comes from playing short, intense tactical scenarios together.

 

Offline gershom

  • 24
I posted a new topic with an ever-expanding list of all my requests. I'm working on some of these myself, but anything I can dismantle, reverse engineer, copy, and paste would be extremely helpful. I really want player controlled capitals, by the way.

Check http://www.hard-light.net/forums/index.php?topic=91999.0

 

Offline gershom

  • 24
You can 'catch' the Alt-J command with the key-pressed SEXP, but yeah, that'll only work for the host.

Floating point coordinate issues don't kick in until you get way out there.

FS2O is an incredibly powerful and flexible engine — you can do insane things with it, including just about everything you want to do here. But it is, primarily, a single player engine. I don't know how feasible all of this will be with multiple players; we did get multiple player capship control working nicely, but I don't think we got per-player abilities in multiplayer...

I suggest poking around at existing mods like Just Another Day, Wings of Dawn and Blue Planet to see how they pulled tricks off. And The Antagonist. But those are all solo play.

FS2 co-op is an absolute blast when the netcode's not being ****ty, but that blast usually comes from playing short, intense tactical scenarios together.


If I can pull off something that can merely be disguised as a "jump" it would be enough for me. In other words, if it can't be accomplished, can it at least be faked? Should I just give up on jumping, or could I use a system of jump nodes or gates to get players from one zone to another?
« Last Edit: May 15, 2016, 03:07:49 pm by gershom »

 

Offline gershom

  • 24
I've been away for a while, but I've learned a few things and I have some new ideas I would like to submit for criticism and speculation.

1. Is it possible to have a dedicated server running multiple missions simultaneously?

1.b. Would it be possible for multiple players on a single server to play on separate missions simultaneously?

2. Would it be possible to make an event which jumps an individual player to and from set locations in response to something that player does?

3. Could any of the things I want be accomplished through code, if not events or scripting?

 

Offline AdmiralRalwood

  • 211
  • The Cthulhu programmer himself!
    • Skype
    • Steam
    • Twitter
1. Is it possible to have a dedicated server running multiple missions simultaneously?

1.b. Would it be possible for multiple players on a single server to play on separate missions simultaneously?
No.

2. Would it be possible to make an event which jumps an individual player to and from set locations in response to something that player does?
Yes.

3. Could any of the things I want be accomplished through code, if not events or scripting?
Anything can be accomplished by modifying the code; it all depends on how much effort you want to put into it.
Ph'nglui mglw'nafh Codethulhu GitHub wgah'nagl fhtagn.

schrödinbug (noun) - a bug that manifests itself in running software after a programmer notices that the code should never have worked in the first place.

When you gaze long into BMPMAN, BMPMAN also gazes into you.

"I am one of the best FREDders on Earth" -General Battuta

<Aesaar> literary criticism is vladimir putin

<MageKing17> "There's probably a reason the code is the way it is" is a very dangerous line of thought. :P
<MageKing17> Because the "reason" often turns out to be "nobody noticed it was wrong".
(the very next day)
<MageKing17> this ****ing code did it to me again
<MageKing17> "That doesn't really make sense to me, but I'll assume it was being done for a reason."
<MageKing17> **** ME
<MageKing17> THE REASON IS PEOPLE ARE STUPID
<MageKing17> ESPECIALLY ME

<MageKing17> God damn, I do not understand how this is breaking.
<MageKing17> Everything points to "this should work fine", and yet it's clearly not working.
<MjnMixael> 2 hours later... "God damn, how did this ever work at all?!"
(...)
<MageKing17> so
<MageKing17> more than two hours
<MageKing17> but once again we have reached the inevitable conclusion
<MageKing17> How did this code ever work in the first place!?

<@The_E> Welcome to OpenGL, where standards compliance is optional, and error reporting inconsistent

<MageKing17> It was all working perfectly until I actually tried it on an actual mission.

<IronWorks> I am useful for FSO stuff again. This is a red-letter day!
* z64555 erases "Thursday" and rewrites it in red ink

<MageKing17> TIL the entire homing code is held up by shoestrings and duct tape, basically.