Author Topic: Thinking of new sexps........  (Read 3630 times)

0 Members and 1 Guest are viewing this topic.

Offline aldo_14

  • Gunnery Control
  • 213
Thinking of new sexps........
Ok.... I've been considering adding some new SEXPs to the code for Reciprocity.  What I'm thinking is that, if I post a list, someone can tell me if any are already implemented so I don;t have to do 'em (or better still, can look at 'em and try an understand better how they work).

It'll probably be a few months 'till i even attempt this, but I figure this may prompt people to come up with their suggestions, anyways.... anything I do will, of course be freely available ('spechially as it's likely to need a hell of a lot of bugfixes :doh:)

I'm not expecting anyone to actually make this for me...that would be unfair and unrealistic.  i'm just brainstorming, really... anyway, my ideas;

- jump-debrief - end mission and goto a standard debrief (as if jumped out...this is useful for fighterbay endings, especially....infact, what wouyld be really cool would be to play some sort of simple animation of an internal bay's doors closing from inside the cockpit (to make it ship independent) upon end....)
- turret-tagged-only - locks a single turret (or group) to only fire on a tagged ship - as oppossed to all turrets, which i think is how it presently works (could be wrong)
- turret-target-only - turret only attacks the targeted craft....or something along this ilk
- internal-message - sends a message without the white brackets, and with a string as the sender (for messages from unknown sources, or from alpha 1, or a co-pilot, without having to use 'trick' objects)
- barrage-target - launches an SSM barrage against a target.... i'm not sure how this works with the targeting laser in the current code, though
- cap_turret-firings - allows a turret to only fire xx times (I think you can use a variable and fire-beam to do this with beam turrets)
- oh... and allowing more hotkey combinations to activate events with the 'key-pressed' sexp

(some of thes may already be in FREd...I hardly ever use it)

 

Offline DTP

  • ImPortant Coder
  • 28
    • http://www.c4-group.dk
Thinking of new sexps........
well actaully i think depature should be stated in the ship/Wing editor in the depature section as they are with AI ships.

So ALT-J when in range of one of the bay paths, will make the External camera follow the player who is auto-piloted into Hangar,

Camera code is to be found in places such as dead seqences and supernova sequences.

But this should only be for the starters.

The animations will come later(moving doors).

remember the Moving doors on an Orion will look very differently than those on a Hecate due to the way theire bays are made.
VBB member; reg aug 1999; total posts 600.
War is a lion, on whos back you fall, never to get up.
Think big. Invade Space.

 

Offline phreak

  • Gun Phreak
  • 211
  • -1
Re: Thinking of new sexps........
Quote
Originally posted by aldo_14

- internal-message - sends a message without the white brackets, and with a string as the sender (for messages from unknown sources, or from alpha 1, or a co-pilot, without having to use 'trick' objects)
(some of thes may already be in FREd...I hardly ever use it)



to do this put a pound sign '#' before the sender

- send-message
   -#Alpha 1
   -High
   -my wingmen suck
Offically approved by Ebola Virus Man :wtf:
phreakscp - gtalk
phreak317#7583 - discord

 

Offline Nuke

  • Ka-Boom!
  • 212
  • Mutants Worship Me
Thinking of new sexps........
i want a bunch of events that allow capships to do frontal charging attacks. most of ragnarok's turrets point forward so the ship needs to make its run about 6 clicks out, charge in firing untill it closes to within 1000 meeters and then fly out another 6 clicks, turn around and repeat. right now it just circles around and most of its big turrets dont even get to fire.
I can no longer sit back and allow communist infiltration, communist indoctrination, communist subversion, and the international communist conspiracy to sap and impurify all of our precious bodily fluids.

Nuke's Scripting SVN

 

Offline Sesquipedalian

  • Atankharz'ythi
  • 211
Thinking of new sexps........
Don't just use the ai-attack sexp, Nuke, that the lazy and ineffective way.  Do the waypoint controlled battle like they taught you in the walkthrough.
Sesqu... Sesqui... what?
Sesquipedalian, the best word in the English language.

The Scroll of Atankharzim | FS2 syntax highlighting

 

Offline LtNarol

  • Biased Banshee
  • 211
    • http://www.3dap.com/hlp/hosted/the158th
Thinking of new sexps........
heres one i'd like to see, its a solution to a number of problems:

enable-player-ship-ai

Pretty much what it sounds like, give control of the player's ship to a standard fighter ai, this would allow the player's ship to dock with other ships instead of other ships docking with it; this would allow departure through dockingbays; this would allow autopilot.  All done through a set of sexps that will make these things either activate automatically in a mission or activate on the player's command through the "is-key-pressed" sexp.  In short, flexible.

disable-player-ship-ai

opposite, gives control back to the player.

 
Thinking of new sexps........
How about an option inside the beamfree-all sexp to have all ships that have beam weapons to be able to use them in-game (instead of having to create a sexp for each ship. An perhaps change it a little so that the beamfree will work on a ship that enters later in a mission, so that you don't have to make a when has arrived - beam free all sexp.

beamfree-all
   

How about a similar sexp so that that all the turrets and beams are locked when a ship is about to explode (so that you don't get a beam firing as it's the ship's exploding or has exploded). I know you can do this already, but it's time consuming to do it all the time.

deadship-turret-lock-all
   

What about a sexp to render shields on a vessel inoperative?

shields-off
   {ship name}

Maybe a sexp to change the AI of a vessel ingame:

change-shipAI
   {ship name}
   {AI type} eg. Colonel, Major, Leiutenant, Coward, etc

I think it would be cool to have several different warpout appearances. Such as a red warpout, special warpout, blue warpout and others. Maybe this could depend upon race like with the thruster glows and stuff, but for the sake of the topic question what about this:

warpout-type
   {warpout name} eg. warpout01, warpout02, (custom mods), etc.

I suppose that's a stupid one though. I'll coherantly think of some more later.

 

Offline Raven2001

  • Machina Terra Reborn
  • 211
  • Im not the droid your looking for, move along
Thinking of new sexps........
I'd like to have a SEXP that allows multiple jumps inside a mission, without the red-alert SEXP... something like, you would place the various jump waipoints on the various big distances (100000 km), and then using the is-keypressed sexp (or any other one...), the player (and some other ships added on the SEXP...) would jump to the other waypoint... :)
Name?? maybe ship-teleport... or something...
Yeah, I know you were waiting for a very nice sig, in which I was quoting some very famous scientist or philosopher... guess what?!? I wont indulge you...

Why, you ask? What, do I look like a Shivan to you?!?


Raven is a god.

 

Offline aldo_14

  • Gunnery Control
  • 213
Thinking of new sexps........
Quote
Originally posted by DTP
well actaully i think depature should be stated in the ship/Wing editor in the depature section as they are with AI ships.

So ALT-J when in range of one of the bay paths, will make the External camera follow the player who is auto-piloted into Hangar,

Camera code is to be found in places such as dead seqences and supernova sequences.

But this should only be for the starters.

The animations will come later(moving doors).

remember the Moving doors on an Orion will look very differently than those on a Hecate due to the way theire bays are made.


Well, i'm just thinking in terms of a total noivce here.........simplest possible solution :D

But I did do a little stuff for this bit (cut and paste from last night);

Code: [Select]

/*
*AW 26/7/02
*in SEXP.h - add new define for sexp
*/

#define OP_JUMP_DEBRIEF (0x0056 | OP_CATAGORY_CHANGE | OP_NONCAMPAIGN_FLAG)


/*
*AW 26/7/02
*in sexp.cpp
*/
/************EDITED OPERATORS*********************/
sexp_oper Operators[] = {//blah


{ "jump-to-debrief", OP_JUMP_DEBRIEF, 0, 0},

};
/**********end!*******************/

/*
*AW - 26/72002
*In the eval_sexp section!
*/

case OP_JUMP_DEBRIEF:
red_alert_start_mission();//change to standard end
/*gameseq_post_event(GS_EVENT_DEBRIEF);//?!
sexp_val = 1;
break;




/*
*AW - 26/72002
* add in switch for query_operator_argument_type
*/
case OP_JUMP_DEBRIEF:
return OPF_NONE;


/*
*AW - 26/72002
* add in switch for query_operator return_type
*/

case OP_JUMP_DEBRIEF:



/*
*AW - 26/72002
* in sexp_tree.cpp file (FRED2 folder)
* text for sexp
*in
*} Sexp_help[] = {
*(etcetera)
*/

{ OP_JUMP_DEBRIEF, "Jump straight to debrief (Action operator)\r\n"
"\tEnds the mission & goes to debrief screen \r\n" },


/***STUFF TO END MISSION?*********/

gameseq_post_event( GS_EVENT_DEBRIEF ?

(in red alert.cpp in missionUI);

void red_alert_start_mission()
{
// if we are not in campaign mode, go to debriefing
// if ( !(Game_mode & GM_CAMPAIGN_MODE) ) {
// gameseq_post_event( GS_EVENT_DEBRIEF ); // proceed to debriefing
// return;
// }

// check player health here.  
// if we're dead (or about to die), don't start red alert mission.
if (Player_obj->type == OBJ_SHIP) {
if (Player_obj->hull_strength > 0) {
// make sure we don't die
Player_obj->flags |= OF_GUARDIAN;

// do normal red alert stuff
Red_alert_new_mission_timestamp = timestamp(RED_ALERT_WARN_TIME);

// throw down a sound here to make the warning seem ultra-important
// gamesnd_play_iface(SND_USER_SELECT);
snd_play(&(Snds[SND_DIRECTIVE_COMPLETE]));
}
}
}


Um... it's simple enough to do at this level... more complex stuff would be forcing the player to follow a path (as defined for exiting) into the bay - which could require making all the invisible textures in the :V: ships as no collide ;)....but I'm going to DL a compiler and test this with the red alert execution code (to check syntax), then see if it works for the stuff to jump to the debrief ;)

 

Offline karajorma

  • King Louie - Jungle VIP
  • Administrator
  • 214
    • Karajorma's Freespace FAQ
Thinking of new sexps........
Okay Two new SEXP's I would find incredibly useful. Both are AI Goals.

Ai-Face (Ship goal)
   Causes the specified ship to turn and face the specified target.

Takes 2 arguments:
   1:   Name of ship to face.
   2:   Goal priority (number between 0 and 89).

Ai-Broadside (Ship goal)
   Causes the specified ship to position itself sideways with relation to the specified target.

Takes 3 arguments:
   1:   Name of ship to face.
                2:             Side of ship to face the enemy (left or right)
   3:   Goal priority (number between 0 and 89).
Karajorma's Freespace FAQ. It's almost like asking me yourself.

[ Diaspora ] - [ Seeds Of Rebellion ] - [ Mind Games ]

 

Offline Bobboau

  • Just a MODern kinda guy
    Just MODerately cool
    And MODest too
  • 213
Thinking of new sexps........
or how about for the "exit by bay" work by if you colide with a ship and the face you hit has an invisable texture on it then end the mission (if the leave-by-bay sExp has been triggered)
Bobboau, bringing you products that work... in theory
learn to use PCS
creator of the ProXimus Procedural Texture and Effect Generator
My latest build of PCS2, get it while it's hot!
PCS 2.0.3


DEUTERONOMY 22:11
Thou shalt not wear a garment of diverse sorts, [as] of woollen and linen together

 

Offline aldo_14

  • Gunnery Control
  • 213
Thinking of new sexps........
Quote
Originally posted by Bobboau
or how about for the "exit by bay" work by if you colide with a ship and the face you hit has an invisable texture on it then end the mission (if the leave-by-bay sExp has been triggered)


that would depend on the model, though - not all use the invisible texture.  Some may not even require it (i.e. just bay doors, rather than an approach 'corridor' type thing).

I've been looking (a little) at the camera code for the supernova, though.... there's something similar in the main freespace dir (can;t member the filename, unfortunately) which also has code relating to the supernova camera, so methinks i'll need to try and figure out how they wrok together sometime.....

 

Offline Sandwich

  • Got Screen?
  • 213
    • Minecraft
    • Skype
    • Steam
    • Twitter
    • Brainzipper
Thinking of new sexps........
Quote
Originally posted by karajorma
Ai-Broadside (Ship goal)
   Causes the specified ship to position itself sideways with relation to the specified target.

Takes 3 arguments:
   1:   Name of ship to face.
                2:             Side of ship to face the enemy (left or right)
   3:   Goal priority (number between 0 and 89).


Include in #1 a possible subsystem of the target ship to face, as well as "top" and "bottom" options in #2. :nod:
SERIOUSLY...! | {The Sandvich Bar} - Rhino-FS2 Tutorial | CapShip Turret Upgrade | The Complete FS2 Ship List | System Background Package

"...The quintessential quality of our age is that of dreams coming true. Just think of it. For centuries we have dreamt of flying; recently we made that come true: we have always hankered for speed; now we have speeds greater than we can stand: we wanted to speak to far parts of the Earth; we can: we wanted to explore the sea bottom; we have: and so  on, and so on: and, too, we wanted the power to smash our enemies utterly; we have it. If we had truly wanted peace, we should have had that as well. But true peace has never been one of the genuine dreams - we have got little further than preaching against war in order to appease our consciences. The truly wishful dreams, the many-minded dreams are now irresistible - they become facts." - 'The Outward Urge' by John Wyndham

"The very essence of tolerance rests on the fact that we have to be intolerant of intolerance. Stretching right back to Kant, through the Frankfurt School and up to today, liberalism means that we can do anything we like as long as we don't hurt others. This means that if we are tolerant of others' intolerance - especially when that intolerance is a call for genocide - then all we are doing is allowing that intolerance to flourish, and allowing the violence that will spring from that intolerance to continue unabated." - Bren Carlill