Freedom Reborn Archive

Freedom Force Forums => Scripting Forum => Topic started by: joemama on February 22, 2007, 12:26:19 PM

Title: EZ Script Help
Post by: joemama on February 22, 2007, 12:26:19 PM
Rather than start a new thread for every question, I thought I'd better put all my questions here.

Please feel free to offer suggestions, ideas, tips, encounters/stories (use spoiler tag), etc. as things come up.


By the way ... thank you in advance, M25.  This is great for those of us who want to mod but don't have the patience - I mean... time (yeah, that's it!  :P) to learn real scripting.


Anyway...

Q: When using the Map: <mapname> command, can I specify more than 1 map?  I.E. Encounter: Orcs
Type: Hunt
Minions: orc, orc_tough, orc_archer
Map: forest, cave
= "Orcs" encounters appear on cave and/or forest maps?


Q: Do the "Campaign Recruit", "Campaign Add Heroes", and "Populate Base" special encounters work in freeroam?  (By "built-in" you mean characters created on FFedit and not Hero files?)

Q: Can I put multiple map links on a single "Base" map?  The RPG Dungeon Lords placed "camp sites" around its maps so characters could rest and recharge spells.  I'd like to do that for my freeroam campaign and would prefer to use a single Base map if possible.

Thanks again.  I'm sure I'll have more Qs along the way.

JM
Title: Re: EZ Script Help
Post by: M25 on February 22, 2007, 02:06:57 PM

Yes, you can specify more than one type of map.  The encounter will then appear on either of those maps.


I'm looking into the campaign recruiting issue now.

A base can only have one exit since there is only one button for the user to push.  I think I see what you're getting at though.  I may be able to make it so that the base will exit to the map the player entered the base from.

Title: Re: EZ Script Help
Post by: joemama on February 22, 2007, 03:32:58 PM
M25,

Thanks for the quick response.  I'm pretty sure I can do just about I need to with EZ Script as it is, so please don't go tinkering with it based only on my silly questions.

JM
Title: Re: EZ Script Help
Post by: detourne_me on February 24, 2007, 02:34:20 AM
joemama,  i think that Doctor Mike's Patriot city had used multiple bases (your aparetment and black jacks),  would that be an option for you too?
Title: Re: EZ Script Help
Post by: joemama on February 24, 2007, 05:20:08 AM
Detourne,

I did not realize that.  Thanks for the tip.  I took a look at Patriot City and it turns out the bases are pretty much blank terrains with a few markers.  All I need are <mapname> , <base_map>, and <exit> markers and I think the rest is irrelevant.

Man I'm getting fired up!  With nifskope and EZ Script, my AD&D conversion is actually DO-ABLE!  (Now if I can just put nifskope down long enough to actually play the game!)

JM


Title: Re: EZ Script Help
Post by: M25 on February 24, 2007, 10:27:18 AM
Yes, you can have as many bases as you wish.  They have to be marked with a <base_map> marker as joemama said - and an object or marker called 'camera' that the in-game camera will point at, but apart from that, they are a regular map.  It's best to not put many objects on them so that they load quickly.

Title: Re: EZ Script Help
Post by: joemama on February 28, 2007, 08:25:46 AM
Thanks again for your help.

Next questions:

1) Can I Use up to 4 heroes in freeroam?

2) For my AD&D mod, I'm using several different character classes as recruitable/playable characters.  They're set up as built-ins with fewer starting attributes than total attributes (which they can buy as they gain experience).  I'm also setting guilds using Campaign: Alliance where my character(s) can "recruit" additional party members for their various adventures.  I'm planning on using the built-ins as my "recruits".  My question is: will these "recruits" come into the game with all their attributes activated or with the starting number that I set in FFedit?
Title: Re: EZ Script Help
Post by: M25 on February 28, 2007, 09:09:33 AM
DrMike set up the freeroam code for one hero only.  It may be possible to open that up to four heroes, but I'm not sure.  You can set the number of heroes allowed into the mission by changing the Max Heroes field on the Campaign tab of FFEdit.  Unfortunately, if you set it to four heroes, you'll then be forced to take four heroes into the game every time, and no less.

You can bring in one other hero by spending prestige once your character is outside of a base (right click on the hero to see options).

Any characters should come into the game exactly as you have them set in FFEdit.  You should be able to then train them as they gain experience.

Title: Re: EZ Script Help
Post by: detourne_me on February 28, 2007, 10:49:50 PM
just piping in with another example from Patriot City and M25's EZfreeroam... NPC allies that follow you around.
in patriot city yuou could "recruit" characters tempoorarily, and that would spend your points.   a cool "Call in Help" function might interest ya too ;)
Title: Re: EZ Script Help
Post by: joemama on March 01, 2007, 04:00:34 AM
M25 & Detourne:

Thanks for your input.  If I understand you correctly, M25, right-clicking my current hero outside a base will give me the option of bringing in others?  Is there a file where I can add or remove which heroes are available bring in?  Is it only recruited heroes?  Is this the "Call in Help" function that Detorne spoke of?

As I mentioned before, I had planned on getting around this by setting up a "mercenary's guild" and using Campaign: Alliance; no enemies, just a "meet and greet".  This way they stick around until they k.o. or until I remove allies.

JM

PS--I changed the number of heroes in FFedit.  Didn't work.  The second hero spawned every time I changed maps; by the time I reached the "city_gallery" map, I had four playable heroes!  Just a minor annoyance, by no means is this a deal breaker (EZ Script still rocks!)
Title: Re: EZ Script Help
Post by: M25 on March 01, 2007, 08:09:53 AM
Yes, the 'Call for Help' is what I was discussing.  After a few seconds, the game scans for recruited characters and then presents a list of them when you right click on your hero.  You can bring in one of them as help, but pay 1000 prestige.  They will be under your control and will disappear once you return to base.

The original Patriot City mod was very much meant as a solo hero experience, and the EZ script version retains a lot of the originals characteristics.

Using Campaign Alliance would work as well.  Allies will follow you around until they are KO'd or removed as you said.


I had intended to eventually open it up somehow to allow four heroes, or even to allow changing heroes every time you went back to base (if desired).  I'm just not sure how much work that entails.  Is this something others are interested in?
Title: Re: EZ Script Help
Post by: BentonGrey on March 01, 2007, 08:20:30 AM
Yes, I'd deffinetly be interested in that, although I hate to add more work to your plate! 
Title: Re: EZ Script Help
Post by: cmdrkoenig67 on March 19, 2007, 08:07:47 AM
What ever happened to EZScript modding?  I can't even find a download for the old EZScript applications.

Dana
Title: Re: EZ Script Help
Post by: M25 on March 19, 2007, 09:45:19 AM
EZ script is alive and well and part of ffx 3.2

There's also a freeroam style example using ez script  at
http://www.4shared.com/file/10968115/9818a195/ezfreeroam_poc.html

I'm currently adding a more flexible encounter where you can pick individual behaviors or situations ( such as: villains fight heroes, an earthquake, heroes carry allies to safety) to customize what the encounter does.  I also have a more traditional campaign example I want to release.

Title: Re: EZ Script Help
Post by: joemama on March 19, 2007, 10:46:40 AM
I just finished my first set of linked maps for EZ Script (medievel theme).  Should work in freeroam and campaign mode.  They'll be released within the week.  I'm also working on an expansion set for M25's freeroam example (I pm'd you about using 2 or 3 of yours). 

So please script away!

M25:
I briefly touched on this earlier but did not follow up:  would it be difficult to add a "teleport all" (i.e. heroes, allies, villains, minions, objects) command?  It's not a crucial add-on, but would make for mass ambushes and help bring a party of heroes (in a linear campaign) to an encounter.

Again, if it's a lot of work, don't even bother as it's not even a minor annoyance.  Everything else seems to be running great. I've been testing missions for a freeroam without issue.  Thanks again and I look forward to the next update.

JM
Title: Re: EZ Script Help
Post by: M25 on March 19, 2007, 11:52:14 AM
A teleport all command shouldn't be too difficult.  Is this for cutscenes?
Title: Re: EZ Script Help
Post by: joemama on March 19, 2007, 02:16:16 PM
QuoteIs this for cutscenes?

Yes. 
Title: Re: EZ Script Help
Post by: HumanTon on March 20, 2007, 06:46:58 PM
EZ Script is now in FFX? Cool. EZ Script is teh awesome. Last year I had a whole random encounter/campaign mod using the FF villains I was working on. But then the forum went blooey, then I switched computers, then I got distracted by RL things, etc. etc.

Recently I've been feeling the urge to get back into FF, though. I may have to get the FFX 3.2 beta and start messing around with things again. (Though with all the mods I have it will probably take a week just to reinstall FFVTR and get everything running again.)
Title: Re: EZ Script Help
Post by: catwhowalksbyhimself on March 21, 2007, 05:32:51 AM
Yes, it is, but it's far more than the older EZ Script.

THIS EZ Script works for both regular and Pat City type campaigns as well.
Title: Re: EZ Script Help
Post by: HumanTon on March 21, 2007, 05:49:53 AM
Quote from: catwhowalksbyhimself on March 21, 2007, 05:32:51 AM
Yes, it is, but it's far more than the older EZ Script.

THIS EZ Script works for both regular and Pat City type campaigns as well.

Even better! EZ Script + Patriot City is what I've always wanted out of FF.
Title: Re: EZ Script Help
Post by: cmdrkoenig67 on March 26, 2007, 09:33:23 AM
Quote from: M25 on March 19, 2007, 09:45:19 AM
EZ script is alive and well and part of ffx 3.2

There's also a freeroam style example using ez script  at
http://www.4shared.com/file/10968115/9818a195/ezfreeroam_poc.html

I'm currently adding a more flexible encounter where you can pick individual behaviors or situations ( such as: villains fight heroes, an earthquake, heroes carry allies to safety) to customize what the encounter does.  I also have a more traditional campaign example I want to release.



I guess I'm a bit fuzzy on the whole EZScript application...Does it allow you to create self-contained mods with pre-set characters(campaigns with missions, cutscenes, etc...)?

Dana
Title: Re: EZ Script Help
Post by: M25 on March 26, 2007, 10:53:57 AM
Quote

I guess I'm a bit fuzzy on the whole EZScript application...Does it allow you to create self-contained mods with pre-set characters(campaigns with missions, cutscenes, etc...)?

Dana

The short answer is yes.

You can make a self-contained mod with built-in characters (pre-set if you like), missions, cutscenes, custom maps, etc.   

You can make a freeroam style self-contained mod where the player can wander around the city or countryside, crossing map boundaries.

You can make mini-mods (not self-contained), where you just give out a small story file.  People can play them in the Rumble Room, or they can plunk them into their existing freeroam mods and play them there.  Think individual issues of a comic book.  It's very flexible.

EZ script is for people who want to make mods, but don't want to mess around with programming in python. 


Title: Re: EZ Script Help
Post by: joemama on March 27, 2007, 11:53:15 AM
QuoteI guess I'm a bit fuzzy on the whole EZScript application...Does it allow you to create self-contained mods with pre-set characters(campaigns with missions, cutscenes, etc...)?

Please forgive the presumption, but I can add that, having given up all hope of ever learning python, EZScript is all that and a bag of chips with a super big gulp chaser. :wub:

It's basically a "python for dummies" programming language that's very intuitive - and, therefore, easy to learn and write.  It's so easy that you almost don't realise how much you can do with it.  Take an hour to read the manual and complete the sample mod and you'll be good to go.  (If you haven't already, download/play the sample free roam, it's fun).

I would definitely (and politely) recommend you check out the map making section.  Adding EZ Script tags to your maps is really ... well ... EZ!

JM
Title: Re: EZ Script Help
Post by: joemama on March 27, 2007, 04:47:47 PM
M25:

OK.  My last suggsetion/request (this week, anyway :rolleyes:):

For Cutscenes, a "kill" command.  When applied to heroes, villains, and minions, it plays their knocked out animation.  When applied to objects, it plays a generic explosion.

I.E. Igor goes on a rampage and destroys a car and punches out a cop in the Alert Cutscene.....action ensues.


This is another one of those, "if it's not too hard, great, otherwise, don't worry about it" kinda things.

JM
Title: Re: EZ Script Help
Post by: cmdrkoenig67 on March 28, 2007, 06:59:19 AM
Quote from: joemama on March 27, 2007, 11:53:15 AM
QuoteI guess I'm a bit fuzzy on the whole EZScript application...Does it allow you to create self-contained mods with pre-set characters(campaigns with missions, cutscenes, etc...)?

Please forgive the presumption, but I can add that, having given up all hope of ever learning python, EZScript is all that and a bag of chips with a super big gulp chaser. :wub:

It's basically a "python for dummies" programming language that's very intuitive - and, therefore, easy to learn and write.  It's so easy that you almost don't realise how much you can do with it.  Take an hour to read the manual and complete the sample mod and you'll be good to go.  (If you haven't already, download/play the sample free roam, it's fun).

I would definitely (and politely) recommend you check out the map making section.  Adding EZ Script tags to your maps is really ... well ... EZ!

JM

LOL....Thank you very much, JM (and thank you, M25!)...Please have no worries about adding to my growing info about EZ.  I apologize hugely for thread-jacking a bit to ask a couple of questions.  I'm very interested in Modding, but I just haven't been able to wrap my brain around Python.  There are so many Mods I'd love to do.

Dana
Title: Re: EZ Script Help
Post by: catwhowalksbyhimself on March 28, 2007, 07:08:13 AM
Well, that's why EZ Script was invented.  Now you can do those mods.  And probably a lot quicker than I can.
Title: Re: EZ Script Help
Post by: joemama on April 11, 2007, 08:50:01 PM
Love the update.  Thanks for including the cutscene commands, they really allow alot more possibilities.  working on it right now  :P

Question:

I'm throwing in an energy x spawn as part of my random encounters.  Can I include objects for encounter Type: Wait?  For example, to spawn an energy x canister that lasts 30 - 60 seconds before disappearing:

[spoiler]#-------------------------------spawn bonus health--------------
Encounter: bonushealth
Type: Wait
Object: powerup_hp
Minimum Time: 30
Maximum Time: 60
Next: Loop

Start Cutscene:
mentor says telepathically, "I sense energy x near your position"
#---------------------------------------------[/spoiler]
Title: Re: EZ Script Help
Post by: M25 on April 12, 2007, 08:49:25 AM
Sadly, no, that won't work.  You can do something close to that with a custom encounter though

[spoiler]
Encounter: bonushealth
Type: Custom
Actions: immediate timed encounter
Object: powerup_hp
Time: 30
Next: Loop

Start Cutscene:
mentor says telepathically, "I sense energy x near your position"
[/spoiler]
Title: Re: EZ Script Help
Post by: joemama on April 12, 2007, 01:17:43 PM
Thanks.

I'm looking at m25encustom.py right now and there are some very interesting options....


...which means more questions to come.


Thanks in advance.
:unsure:

JM
Title: Re: EZ Script Help
Post by: tommyboy on April 25, 2007, 09:50:27 AM
I'm having a problem implementing what is probably a very simple thing.

I have a group of heroes who have a "fight" encounter with a numerically and powerfully superior group of villains.
I want a timer to run for 5mins (300 seconds)  then run an "alliance" encounter to have reinforcements show up for the heroes.

But being a bit slow I cannot get it to work. Heres what I have:
[spoiler]
Story: lsh3 Altraxia
Starting Encounters: Go,Timer

Encounter: Recruit
Type: Campaign Recruit
Allies: bouncing_boy,brainiac_5_1,chameleon_boy,colossal_boy,cosmic_boy,invisible_kid,karate_kid,lightning_lad,phantom_girl,saturn_girl,star_boy1,sun_boy,timberwolf1,triplicate_girl

#Play an intro cutscene
#
Encounter: Go
Type: Alliance
Allies: bouncing_boy,projectra,s_violet,saturn_girl,triplicate_girl,element_lad
Marker: heroes
Next: Timer,Fight

Start Cutscene:
Cinematic Camera on Hero
Play music music_02
Set lighting to day
Unfade
Cinematic Camera on bouncing_boy
bouncing_boy says, "What the? ....where ARE we? How did we get here? What's going on?"
Cinematic Camera on brainiac_5_1
brainiac_5 says telepathically, "We seem to have been teleported to some planet I'm unfamiliar with. It's probably a trap of some sort.."
Cinematic Camera on saturn girl
saturn_girl turns to cosmic_king
saturn_girl plays animation special_c
saturn_girl says, "Uh-oh...I recognise some of those figures over there as SUPERVILLAINS, it looks like we are outnumbered."
Cinematic Camera on brainiac_5_1
brainiac_5_1 plays animation special_g
brainiac_5 says telepathically, "I've sent out a SUBSPACE EMERGENCY BEACON with my LEGION FLIGHT RING. If we can survive the next FIVE MINUTES, help is on it's way..."

Encounter: Fight
Type: Hunt
Villains: lightning_lord,cosmic_king,saturn_queen,nemesis_kid,spider_girl,hunter,tyr,radiation_roy,sun_emperor,chameleon_chief,magno_lad,esper_lass,silver_slasher,titania
Marker: cosmic_king
Primary Objective: "Survive The Legion Of Supervillains Attack" for 500 prestige and 200 xp
Next: Win


Alert Cutscene:
Unfade
Cinematic Camera on Hero
Hero plays animation active_defence
Hero says, "Here They Come!"


Start Cutscene:
Cinematic Camera on Hero
Hero says, "This looks bad...really bad!"


End Cutscene:
Hero says, "Amazing! We beat them all!"
Hero says, "I think I need a lie-down..."


Encounter: Timer
Type: Wait
Marker: cosmic_king
Maximum Time: 30
Next: Cavalry

#Encounter: Timer
#Type: Custom
#Actions: immediate timed encounter
#Time: 30
#Next: Cavalry


Alert Cutscene:
Unfade
Cinematic Camera on Hero
Hero plays animation active_defence
Hero says, "Survive for five? No problem....I hope!"



Enroute Banter Cutscene:
Hero says, "There's too many of them! "

Enroute Banter Cutscene:
Hero says, "Don't give up! Help is on the way!"

Enroute Banter Cutscene:
Hero says, "If I'm going to fall, I'm taking some of them with me"

Enroute Banter Cutscene:
Hero says, "That's going to leave a mark.."."



End Cutscene:
Hero says, "That's it, I'm done...can't go on.."
Hero says, "I think I need a lie-down..."





Encounter: Cavalry
Type: Alliance
Allies: chameleon_boy,colossal_boy,cosmic_boy,ferro_lad_human,lightning_lad,star_boy1,sun_boy,superboy,timberwolf1,ultra_boy
Marker: cosmic_king
Next: Win

Start Cutscene:
Cinematic Camera on Hero
Play music music_02
#Set lighting to day
#Unfade
Hero says, "At last! Superboy and the others are here"
Superboy says telepathically, "let's go, LEGION! We got here just in time!"
Hero says, "time to kick some supervillain butt!"
[/spoiler]


Sorry to post it all, but it seemed logical to include everything.
The "recruit" "cutscene" "alliance" and "hunt" encounters all work fine, but nothing I've tried makes the "wait" encounter work.
Am I setting it up wrongly?
Thanks for any help anyone can provide.
Title: Re: EZ Script Help
Post by: M25 on April 25, 2007, 11:38:14 AM
I shouldn't reply without testing this, but...

The problem I see (no fault of yours) is the use of the marker cosmic_king for both the 'Timer' and 'Fight' encounters.

EZ script won't spawn two encounters on the same marker at the same time.  Of course that works well for random encounters, but not so well here.

I'd suggest adding a second marker to the map such as 'cosmic_king_timer' and put it near the 'cosmic_king' marker.  That way, there will be two different markers and EZ script will spawn both encounters.

Title: Re: EZ Script Help
Post by: tommyboy on April 25, 2007, 02:33:55 PM
Thanks, I'll try that.
Title: Re: EZ Script Help
Post by: GogglesPizanno on April 25, 2007, 04:31:42 PM
I've got one that I hope someone has a clever answer to.

In the original FF game, the second level was the Warehouse at night.
you were supposed to be stealthy and avoid the guards, as they wouldn't attack until you got within a certain range.

I'm looking to simulate a location that is guarded, and you need to try and get in without being spotted.

Is there a tricky little bit of EZScripting to simulate this?



Title: Re: EZ Script Help
Post by: tommyboy on April 26, 2007, 04:47:59 AM
Quote from: M25 on April 25, 2007, 11:38:14 AM
I shouldn't reply without testing this, but...

The problem I see (no fault of yours) is the use of the marker cosmic_king for both the 'Timer' and 'Fight' encounters.

EZ script won't spawn two encounters on the same marker at the same time.  Of course that works well for random encounters, but not so well here.

I'd suggest adding a second marker to the map such as 'cosmic_king_timer' and put it near the 'cosmic_king' marker.  That way, there will be two different markers and EZ script will spawn both encounters.



Thanks that worked fine.
I probably should have figured it out myself, but thanks for the help, and the coolness that is EZscript.
Title: Re: EZ Script Help
Post by: M25 on April 26, 2007, 09:50:44 AM
Quote from: GogglesPizanno on April 25, 2007, 04:31:42 PM
I've got one that I hope someone has a clever answer to.

In the original FF game, the second level was the Warehouse at night.
you were supposed to be stealthy and avoid the guards, as they wouldn't attack until you got within a certain range.

I'm looking to simulate a location that is guarded, and you need to try and get in without being spotted.

Is there a tricky little bit of EZScripting to simulate this?




Not exactly, but you could do something similar.

You could have an encounter that forces a loss of the mission if the player gets too close to the guards.

Encounter: Guard
Type: Local Cutscene
Villains: thug_with_gun
Next: Lose

Start Cutscene:
Villain turns to Hero
Villain says, "Ha!  We spotted you!"


You could also try something a little more sophisticated.  In the FF mission, the player is supposed to stop the guards from raising an alarm.

Setup:

Put a marker on the map called guard1 where the guard will spawn.  Put another marker called guard1_end1 some distance away from the guard1 marker.  The villain will run to the guard1_end1 marker to raise the alarm.  Put something on the map near that marker to make it look like they are running to raise an alarm. 

Then add a third marker next to the guard1_end1 marker.  Call this marker guard1_alarm1.  If the alarm is raised, the new guards will appear here.

Now the encounters:

Encounter: Guard
Type: Flee the Scene
Villains: thug_with_gun
Marker: guard
Primary Objective: "Sneak past the guards." for 10 prestige and 100 xp
Next: If All Escaped: Raise the Alarm
Next: If Some Escaped: Raise the Alarm

Start Cutscene:
Hero says, "I've been spotted.  I need to stop him from raising the alarm!"

Villain Escapes:
Villain says, "Raise the alarm.  Hero on the loose!"

None Escaped Cutscene:
Hero says, "That was close, but I stopped him in time."


Encounter: Raise the Alarm
Type: Hunt
Minions: thug_with_gun, thug_with_bat
Marker: guard1_alarm
Next: None

Start Cutscene:
Minion says, "Get them!"



Edit:  forgot to specify the markers in the encounters.
Title: Re: EZ Script Help
Post by: GogglesPizanno on April 26, 2007, 09:58:13 AM
Awsome.
Thats what i was lookin for.
Thanks.
Title: Re: EZ Script Help
Post by: tommyboy on April 27, 2007, 05:30:03 AM
Sorry to be a pain, but I have a recurring cutscene problem.
In some cutscenes the scene displays correctly, with heads and dialogue bubbles, but in others I get no head and the dialogue is printed on the mid-left of the screen, and the "cutscene border" disappears.
Sometimes this happens during a cutscene, so it starts correctly then "drops out".

So rather than a working cutscene:[spoiler]
(http://i15.photobucket.com/albums/a384/tommyboy2002/head_cutscene.jpg)

I get:
(http://i15.photobucket.com/albums/a384/tommyboy2002/nohead_cutscene.jpg)
[/spoiler]

Now, I know all the characters involved have head.nifs, and have their animportraits setup correctly.
I've tried to be rigorous in checking that a character is in the scene and having them speak telepathically if they aren't.
But I just can't see why some scenes work and others don't, even to the point where the same character will "headspeak" the line correctly in one cutscene but "drop out" in another even when I copy/paste the text from the first scene into the second.

Heres my text for the two cutscenes pictured above, the first Encounter "Villains arrive" plays its cutscene completely correctly, the second encounter "Meet Superboy" drops out of its alert cutscene:
[spoiler]
# Play an intro cutscene
# I've placed a marker on the map for the time_trapper to walk to.

Encounter: Villains Arrive
Type: Cutscene
Allies: time_trapper
Marker: statue_marker
Next: Meet Superboy, Time Bubble

Start Cutscene:
Unfade
Camera on time_trapper
#time_trapper is destroyed
Play effect effect_time_gem at time_bubble2
Ally walks to statue_marker
time_bubble2 is destroyed
#narrator says, "Smallville, Earth, Sol System, Milky Way, 20th Century."
#narrator says, "Time is out of joint"
Ally turns to esaturn girl
Ally plays animation special_c
Ally says, "ha ha ha! Brilliant! I have sent a set of evil legionnaires from an EVIL ALTERNATE TIMELINE to recruit SUPERBOY before the REAL LEGION can! Without SUPERBOY's might the LEGION will fall to my plans easily....."
Play sound fx_evilfemale_screech_1 at Ally
Play effect effect_ffx_miniportal at Ally
Ally is destroyed
Cinematic Camera on esaturn girl
esaturn girl turns to superboy_neutral
esaturn girl plays animation active_defence
Play effect effect_ffx_miniportal at esaturn girl
Play effect effect_ffx_telepathy at superboy_neutral
superboy_neutral plays animation special_i
esaturn girl says, "my telepathic powers will convince SUPERBOY to fight alongside us against the goody goody legion of super heroes.SUPERBOY you will fight along side us..we are your friends..you trust us.."
Cinematic Camera on ecosmic boy
ecosmic boy plays animation special_e
ecosmic boy says, "we will crush the LEGION with SUPERBOY on our side. And the TIME TRAPPER will make us rulers of Earth!"
Cinematic Camera on superboy_neutral
superboy_neutral plays animation special_a
superboy_neutral says, "so you say you are from the future and need my help to repel an invasion of futuristic super villains? count me in! we'll teach them a lesson they'll never forget!"








# LSH meets Superboy

Encounter: Meet Superboy
Type: Fight
Villains: ecosmic boy, elightning boy, esaturn girl, superboy_neutral
Marker: statue_marker
Primary Objective: "'Persuade' Superboy to join the Legion by defeating the Evil LSH" for 500 prestige and 200 xp
Next: Win


Alert Cutscene:
ecosmic boy is destroyed
esaturn girl is destroyed
elightning boy is destroyed
superboy_neutral is destroyed
Cinematic Camera on Hero
brainiac_5 says telepathically, "OK, let's start looking for Superboy."

[/spoiler]


Again, it's probably something very simple that I'm missing, but I just can't see it.

In the start cutscene of the Meet Superboy Encounter, it plays as it should until "cosmic boy says," where it drops out.
Then Brainiac_5_1 head appears as it should (albeit with no cutscene border), then the Ally speech has no head:
[spoiler]
Start Cutscene:
Cinematic Camera on Hero
Hero turns to esaturn girl
Hero says, "what the..? those kids look like versions of us! and is that SUPERBOY with them? what's going on here?"
Camera on esaturn girl
esaturn girl plays animation special_f
esaturn girl says, "there they are! SUPERBOY attack them! you must crush them or they will destroy EARTH!"
Camera on superboy_neutral
superboy_neutral plays animation special_i
superboy_neutral says, "I feel so...odd...like my thoughts aren't my own....must crush them..save earth..."
Camera on Hero
cosmic_boy says, "I think that SUPERBOY is being controlled by these evil versions of us! we must defeat them all!"
Camera on brainiac_5_1
brainiac_5 says telepathically, "there is more than one way we can win this, Legion. remember we can time travel, as well as fight...defeating Superboy will not be easy"
Ally says, "but if we can get SUPERBOY near the KRYPTONITE he may be weakened enough for us to beat him"
[/spoiler]


Other than the "dropping out" of some of the cutscenes, the mission runs and plays entirely correctly.
So can anyone tell me what I've missed/messed up this time? All help gratefully received.
Title: Re: EZ Script Help
Post by: M25 on April 27, 2007, 07:03:52 AM
EZ script scans the captions.txt file in <your mod>/Lang/English  and it looks for lines that match the ones in your cutscenes.

When it can't find a line from a cutscene in captions.txt it displays it as text on the left side of the screen.  The cutscene border is dropped due to the fact that the text is invisible for some reason when the cutscene border is displayed.

So... you either made a change to your cutscene and didn't re-add the captions, or something strange is going on.  Add the captions again.  It's easiest to open up m25config.py and set
M25_MAKE_CAPTIONS = 1
and load your story (you don't have to play all the way through) in the game. 
Then generate the language files using ffedit again. 
Title: Re: EZ Script Help
Post by: tommyboy on April 27, 2007, 08:17:16 AM
Quote from: M25 on April 27, 2007, 07:03:52 AM
EZ script scans the captions.txt file in <your mod>/Lang/English  and it looks for lines that match the ones in your cutscenes.

When it can't find a line from a cutscene in captions.txt it displays it as text on the left side of the screen.  The cutscene border is dropped due to the fact that the text is invisible for some reason when the cutscene border is displayed.

So... you either made a change to your cutscene and didn't re-add the captions, or something strange is going on.  Add the captions again.  It's easiest to open up m25config.py and set
M25_MAKE_CAPTIONS = 1
and load your story (you don't have to play all the way through) in the game. 
Then generate the language files using ffedit again. 

D'oh!
Thanks again, that was it, I'd forgotten to make the captions again after altering them, and needed to do that and generate the lang dats via FFedit.
Thanks for the patience with my grotesque stupidity.

Title: Re: EZ Script Help
Post by: joemama on April 28, 2007, 04:06:44 PM
M25,

I've updated Patriot World with activated doors, and I want to include instructions on how to use them.  Is this correct?

[spoiler]You need special encounters to activate the doors.  There are wide doors and thin doors.  To use them:

wide doors (door1, door5, door9), use:
Encounter: door1
Type: Open Door
Object:  nazihq_wide_door_closed named jm_door1
Marker: firstdoor

thin doors (door2, door3, door4, door6, door7, door8, doorboss), use:
Encounter: door2
Type: Open Door
Object:  nazihq_door_closed named jm_door2
Marker: seconddoor

Use a separate encounter (i.e. door1-door9, doorboss) for each door (i.e. m_door1-jm_door9, jm_door_boss).  Use the thin door encounters for doors/rooms 2-4, 6-8, and boss.  Use the wide door encounters for doors/rooms 1, 5, and 9.  Sorry, but that's how they designed the doors! 
[/spoiler]

Thanks for your help.

JM

EDIT--made a correction
Title: Re: EZ Script Help
Post by: M25 on April 29, 2007, 08:27:26 AM
That should work for the door encounters, yes.

Here's what I have for th Open Door Encounter

[spoiler]
Black Jack moved towards the huge steel doors bolted to the bare rock within the nazi base.  "The captured scientists must be inside!"

Yes, an encounter devoted to opening doors.  This encounter takes a door on the map and allows the player to open it by selecting the OPEN command on the door.

Encounter: My Door
Type: Open Door
Object: _impobj_48

Alert Cutscene:
Red Arrow on Object


To simulate the 'fog of war' that exists on some of Irrational's maps, you can use the Fog parameter.  Give it the name of the fog object and the fog will be removed automatically when the player opens the door.  Use the actual name of the object on the map, not it the name of the template.

Fog: fog1

The open door encounter handles the doors for the nazi base in FFvTTR but you may want to use the encounter for other types of doors.  To do so, set the effect played when the door opens, and the template of the open door.

Effect: effect_door_wide_opening
Open Door: nazihq_wide_door_open

Remember that the door and the fog object must exist on the map.  You have to put them there, since placing a door on the map at random wouldn't make much sense.  You don't need to have a fog object, but the option is there if you want it.

Cutscenes

•   Alert – the encounter is ready to run (the hero is alerted to the encounter)
•   Start – the hero is close enough to see the door
•   End – the door has been opened

End Conditions

•   End – the only way the encounter can end is the hero successfully opening the door

[/spoiler]
Title: Re: EZ Script Help
Post by: tommyboy on May 14, 2007, 03:04:26 PM
Quote from: M25 on April 25, 2007, 11:38:14 AM
I shouldn't reply without testing this, but...

The problem I see (no fault of yours) is the use of the marker cosmic_king for both the 'Timer' and 'Fight' encounters.

EZ script won't spawn two encounters on the same marker at the same time.  Of course that works well for random encounters, but not so well here.

I'd suggest adding a second marker to the map such as 'cosmic_king_timer' and put it near the 'cosmic_king' marker.  That way, there will be two different markers and EZ script will spawn both encounters.




OK, now I have an Examine Encounter that randomly takes place at one of six markers, and after the examination, an Alliance Encounter is next.
Now, given that I can't use the same marker for both Examine and Alliance encounters, so I created copies of the Examine Markers.
How do I convince the game to use the same Alliance Marker that corresponds to the randomly selected Examine Marker?
At the moment it all works, but the Alliance Encounter ends up miles away from the Examine Encounter.
Or can I do something like:

[spoiler]
Encounter: Pzone
Type: Examine
Objects: phantom_zone_projector named phantom_zone_projector1
Marker: pzone
Allies: mon_el
Secondary Objective: "Find and use any other strange artifacts" for 500 prestige and 200 xp


Alert Cutscene:
Camera on hero
Hero says, "our instruments picked up something else here in town, if you see anything strange it may be worth examining it"



Examine Cutscene:
Camera on Hero
Hero says, "hey, I found some strange device!"
Hero says, "I wonder what THIS button does? Something compels me to press it......"
Hero plays animation special_a
Play effect effect_time_gem at phantom_zone_projector1



End Cutscene:
Hero says, "ooopsie"
Ally says, "Hello, I'm Mon-El"
[/spoiler]

I hope I explained all that clearly.
It's not the end of the world if I have to do without the random aspect and have both encounters nailed down to one location, but if there is a way for the second encounter to take place where the first one randomly took place, that would be kewl.

May I also reiterate that EZscript (and by extension FFX) is the best thing since sliced bread.   

   
Title: Re: EZ Script Help
Post by: M25 on May 14, 2007, 03:30:02 PM
EZ script won't spawn two encounters on the same marker at the same time. 

It can spawn a second encounter at the same marker if the first encounter has already ended.


Unfortunately, that doesn't help in this case.  EZ script currently can't force one random encounter to appear next to another random encounter.

The easiest thing to do is to skip the random aspect.

There is a trick that would do what you want, but you'd need to cut and paste multiple copies of each encounter. Depending on how long the encounter chain is, this might be more trouble than it's worth.
[spoiler]


# Pick a random branch
Encounter: Choose Location
Next: Choose 1 from PZone1, PZone2, PZone3, PZone4, PZone5, PZone6


Encounter: Pzone1
Type: Examine
Objects: phantom_zone_projector named phantom_zone_projector1
Marker: pzone1
Allies: mon_el
Secondary Objective: "Find and use any other strange artifacts" for 500 prestige and 200 xp

#cutscenes go here



Encounter: Allies1
Type: Alliance
Marker: pzone1
Next: Third Encounter



Encounter: Pzone2
Type: Examine
Objects: phantom_zone_projector named phantom_zone_projector1
Marker: pzone2
Allies: mon_el
Secondary Objective: "Find and use any other strange artifacts" for 500 prestige and 200 xp

#cutscenes go here

Encounter: Allies2
Type: Alliance
Marker: pzone2
Next: Third Encounter

#etc.


#all of the alliance encounters go to this encounter,
# you only need a single copy of it
Encounter: Third Encounter


[/spoiler]

If you don't have an encounter that runs after the Alliance encounters, you'd set the Next: part of each Allies encounter to None

Next: None


Title: Re: EZ Script Help
Post by: joemama on May 14, 2007, 04:20:14 PM
QuoteHow do I convince the game to use the same Alliance Marker that corresponds to the randomly selected Examine Marker?
At the moment it all works, but the Alliance Encounter ends up miles away from the Examine Encounter.

How about "teleport all"?

[spoiler]
Encounter: Alliance Encounter
...
...

Alert Cutscene:
fade 1 second
teleport all allies to hero
unfade 1 second

[/spoiler]

That should bring the encounter to you.

JM
Title: Re: EZ Script Help
Post by: M25 on May 14, 2007, 04:25:11 PM
That too. 

I've been out-EZ scripted!   
:blink: 
:o 
:lol: 
:cool:
Title: Re: EZ Script Help
Post by: tommyboy on May 14, 2007, 06:06:30 PM
Quote from: joemama on May 14, 2007, 04:20:14 PM
QuoteHow do I convince the game to use the same Alliance Marker that corresponds to the randomly selected Examine Marker?
At the moment it all works, but the Alliance Encounter ends up miles away from the Examine Encounter.

How about "teleport all"?

[spoiler]
Encounter: Alliance Encounter
...
...

Alert Cutscene:
fade 1 second
teleport all allies to hero
unfade 1 second

[/spoiler]

That should bring the encounter to you.

JM

Thanks, that probably would work, but unfortunately an earlier encounter produces lots of other allies that I don't want teleported to the Hero.
So I tried:
Alert Cutscene:
Camera on Ally
teleport Ally to Hero

but that just seems to hang the cutscene indefinitely.
Since I'm a bit tired now (2:06am local time), I'll leave it for now and try again tomorrow.
Title: Re: EZ Script Help
Post by: M25 on May 15, 2007, 09:13:34 AM
Quote from: tommyboy on May 14, 2007, 06:06:30 PM

Thanks, that probably would work, but unfortunately an earlier encounter produces lots of other allies that I don't want teleported to the Hero.
So I tried:
Alert Cutscene:
Camera on Ally
teleport Ally to Hero

but that just seems to hang the cutscene indefinitely.
Since I'm a bit tired now (2:06am local time), I'll leave it for now and try again tomorrow.

It should be
Ally teleports to Hero

The teleport all command only affects characters that belong to the encounter.  If you do a teleport all allies to hero, it won't affect allies from other encounters.





Title: Re: EZ Script Help
Post by: tommyboy on May 15, 2007, 09:18:22 AM
Quote from: M25 on May 15, 2007, 09:13:34 AM
Quote from: tommyboy on May 14, 2007, 06:06:30 PM

Thanks, that probably would work, but unfortunately an earlier encounter produces lots of other allies that I don't want teleported to the Hero.
So I tried:
Alert Cutscene:
Camera on Ally
teleport Ally to Hero

but that just seems to hang the cutscene indefinitely.
Since I'm a bit tired now (2:06am local time), I'll leave it for now and try again tomorrow.

It should be
Ally teleports to Hero

The teleport all command only affects characters that belong to the encounter.  If you do a teleport all allies to hero, it won't affect allies from other encounters.








*in the voice of Mr.Burns* Excellent.....
Thanks again, just saved me about 8 hours of ignorant flailing...
Title: Re: EZ Script Help
Post by: joemama on May 15, 2007, 09:37:32 AM
QuoteI've been out-EZ scripted!

That's a HUGE compliment!

JM
Title: Re: EZ Script Help
Post by: tommyboy on May 15, 2007, 09:43:28 AM
Yay! Thanks guys, that worked like magic!
....it's not magic is it?
'Cause I'd hate to have to burn you at the stake after you've been so helpful...
Title: Re: EZ Script Help
Post by: Boalt92 on June 09, 2007, 12:38:36 AM
M25:

Can I use the "Next" or "Starts When" options to specify a story in my freeroam directory?

For example:

Story: Round 1

Encounter: Goons

Encounter: Bad Cops

Encounter: Pinstripe
Next: Round 2

##

Story: Round 2
Encounter: Bacchite
Starts When: Round 1 at End

Encounter: Manbull

Encounter: Pan

(abbreviated, but I think you get the idea)

If not, do you know if having larger story files will affect performance?

Thanks in advance.  Great job on this system!


B92
Title: Re: EZ Script Help
Post by: M25 on June 09, 2007, 05:05:50 PM
No, you can't jump to another story like that.

The biggest thing that will slow down the game is the number of different models and textures it has to load and keep in memory (meshes, fx, etc.).
Title: Re: EZ Script Help
Post by: cmdrkoenig67 on June 15, 2007, 05:20:26 AM
I guess I'm confused about what actually can and can't be done with EZScript...I'm trying to make my mod using it.  I suppose before I go any further, I should ask (M25 or anyone else who may know) some questions, since I can't seem to find my answers in the tutorials...

Do my mod missions/maps go in the FFX missions folder or into their own seperate mod folder (for a self-contained mod)?

Can musak be played during missions via EZScript?

How about characters/FX/textures/sounds and musak for the mod?

From what you told me in Pms...The character files go into the normal FFVTTR hero file section(I hope that's right), right?

I apologize for my ignorance, but this stuff baffles me...Any help you can provide is much appreciated.

Best.

Dana
Title: Re: EZ Script Help
Post by: catwhowalksbyhimself on June 15, 2007, 06:24:50 AM
I can tell you right now that the game will not work if all the files are not in the normal places.

Now where the story files go I can't tell you, but I can tell you that much.

Since Tommyboy's LSH mod is done in EZScript, I suggest using that as an example.
Title: Re: EZ Script Help
Post by: M25 on June 15, 2007, 10:01:17 AM
Quote from: cmdrkoenig67 on June 15, 2007, 05:20:26 AM
I guess I'm confused about what actually can and can't be done with EZScript...I'm trying to make my mod using it.  I suppose before I go any further, I should ask (M25 or anyone else who may know) some questions, since I can't seem to find my answers in the tutorials...

Do my mod missions/maps go in the FFX missions folder or into their own seperate mod folder (for a self-contained mod)?

Can musak be played during missions via EZScript?

How about characters/FX/textures/sounds and musak for the mod?

From what you told me in Pms...The character files go into the normal FFVTTR hero file section(I hope that's right), right?

I apologize for my ignorance, but this stuff baffles me...Any help you can provide is much appreciated.

Best.

Dana

It really depends on what sort of mod you want to make.  EZ script can do mini-mods, campaign mods and freeroam mods.

If you are creating a campaign, I suggest making a copy of the ffx3 folder and renaming it to whatever you are calling your mod.  In other words, put the files in their own mod folder.   Everything, fx, sounds, etc. should be placed within the mod folder.

You'll want to delete the missions that come with FFX and create your own of course.

If you want to make a truly self-contained campaign mod, you'll need to convert your hero files into built-in characters.  I made a tool for that which can be found in this forum.

To play music, you use the "Play Music <name of the music resource>" command inside of a cutscene.

Encounter: Start
Type: Cutscene

Start Cutscene:
Play Music music01_dream1


The actual names you can use are found in the resources tab of FFEdit.




Title: Re: EZ Script Help
Post by: cmdrkoenig67 on June 15, 2007, 10:45:23 AM
Thank you, guys...This will help me a lot!  A question about the music part...

Quote from: M25 on June 15, 2007, 10:01:17 AM
To play music, you use the "Play Music <name of the music resource>" command inside of a cutscene.

Encounter: Start
Type: Cutscene

Start Cutscene:
Play Music music01_dream1

Can I have music play during a mission?

Best.

Dana

Title: Re: EZ Script Help
Post by: M25 on June 15, 2007, 11:43:03 AM
What I posted does play music during a mission.   The music will continue to play until you ask it to play a different piece of music.

Title: Re: EZ Script Help
Post by: cmdrkoenig67 on June 16, 2007, 04:20:09 AM
Oops!  Sorry...I wasn't sure if it would stop at the end of the cutscene or not.  Thank you very much, M.

Dana
Title: Re: EZ Script Help
Post by: Boalt92 on June 16, 2007, 08:29:40 AM
On music:
I went to a couple of music production sites, (stream) recorded some of their sample tracks (I know...but they're never leaving my harddrive!), mixed them together into a couple of .mp3 files, and created Music Resources through FFedit.  They work fine in game.

Reading this thread got me to thinking: can you create a jukebox script that changes music when you change maps in a freeroam campaign?

IE:
Encounter: Jukebox
Type: None
Next: Rumble, Creepy, Sci Fi
#------------------------------

Encounter: Rumble
Type: Cutscene
Map: city

Alert Cutscene:
Play music rumble
#------------------------

Encounter: Creepy
Type: Cutscene
Map: sewer, cave

Alert Cutscene:
Play music creepy
#--------------------

Encounter: Sci Fi
Type: Cutscene
Map: space

Alert Cutscene:
Play music scifi


The music tracks should re-start everytime you switch maps.....right?

Just curious.  Not a big deal either way.


B92
Title: Re: EZ Script Help
Post by: M25 on June 18, 2007, 10:05:24 AM
That would work for a couple of map shifts, and then it would end.

There's no mechanism for restarting a story when the map changes.  Is it something people would find useful?
Title: Re: EZ Script Help
Post by: Boalt92 on June 18, 2007, 10:35:41 AM
thanks....and no...i don't think it would be necessary to add that mechanism.  i could always try to loop the encounters so the story never "ends", but it's just as easy to include the play music command in each story.


i think you've done a great job with EZ Script and can't really suggest anything to improve it.

B92
Title: Re: EZ Script Help
Post by: Golden Goose on June 21, 2007, 11:07:39 AM
In another topic, I saw a new feature for EZ Script

There's a plug-in that got included with FFX3.2 (cutscene_power) that allows you to force the use of a power during a cutscene

<name> uses power <power> on <target>


I'm wondering about a couple of things related to this.

I'm assuming that <name> is either hero1, ally1, villain1, minion1 or the like OR the name given to a character in one of those categories in the encounter.

For <power>, is it the name of any power that's listed in FFEdit under powers?  Does it have to be a power that the <name> actually has from its hero file, and would it be the name that you gave it which has the character's name atttached?

What can <target> be?  Can it be a hero, ally, villian, minion, etc?  Can it be a tuple or an object?  What if the intended target isn't in range?





Another question related to using the camera, when you specify

camera on hero heading 90 zoom -200

What is the heading in relation to?  It doesn't seem to be the front of <hero>.  In terms of zoom, how does it affect elevation?  I'd like to get the camera to be looking horizontally as opposed to from above. 

I suppose I could figure it all of this out with more experimentation, but I'm hoping that the answers are out there already.  Thanks.

Golden Goose

Title: Re: EZ Script Help
Post by: M25 on June 22, 2007, 11:19:52 AM
Power can be any power and target can be any character or object.  If the target is out of range, the built-in AI will try (and may not succeed) to move the character to within range.

I believe the camera heading is based on the map, not the character, so there isn't currently a way to reliably say 'put the camera in front of the character' unless you carefully position both the character and the camera yourself.  To get a horizontal view, put the zoom to -260 or so.

Title: Re: EZ Script Help
Post by: Golden Goose on June 22, 2007, 01:35:02 PM
Thanks for the help.  And thanks again for EZScript.  It's such a great tool!

Golden Goose