Been working on my first ever campaign and had no idea how time consuming these things were. I thought I'd start a help/advice topic to tap into the elite campers that are on this board.

Question:I have 3 separate blocks of text I'd like to display, but would like to "clear" the screen before displaying each. Currently, the way it is setup now, the new text shoves the previous text to the top half of screen and truncates whatever doesn't fit and is a bit clunky in the mechanics/flow. How's the best way to accomplish what I want (3 messages w/o old messages displayed)? Or is there a better method I should use all together? Here's a pic of old remnants seen still above.[spoiler][/spoiler]

For your text "clearing" issue, all you need to do is add extra carriage returns before or after the actual text.Here's an example:

That extra white space before or after the actual message will cock-block any previous transmission text. Since the game screen can only display at most 10-12 lines*, count the number of lines your transmission has and add in the remainder with carriage returns.

*Can somebody confirm this number? (I go with 11-12 just to be safe.)

To clear the screen before displaying a new message, simply apply the "Display Text Message" action and have it contain nothing but 10-12 empty carriage returns. This performs a "white-out" on the text screen.

Example:

The body of the blank "Display Text Message" action:

As for accomplishing 3 messages in 1 transmission, you'll want to do something as follows:

Transmission One is played.

For Transmission Two, copy the text from Transmission One, apply it before Transmission Two's text, and add appropriate carriage returns.

For Transmission Three, copy the text from Transmission Two, apply it before Transmission Three's text, and add appropriate carriage returns.

As for your .wav issue... If you're using SCMDraft, I'd reckon importing the sounds using the "Uncompressed" option might aid you, since that essentially increases the sound file's quality and size altogether.

Hope that helped.

Last edited by Laconius on Sat Feb 13, 2010 10:04 pm, edited 1 time in total.

@ # of lines and confirmation. Looks like 11 lines "fills" the screen. the carriage return (cursor) being on the 12th line.

New question: SOLVED see edit belowI'm trying to understand why some display text hangs around longer than what it is coded to do. I have a transmission followed by the identical text message that should disappear as soon as the player builds unit "C", but it doesn't seem to be very immediate? The text remains for considerable time (longer than the 1 second) after the canceling unit (C) is built? Pseudo code (can supply a test map if would be easier to check out)[spoiler]Player 7 Brings 1 unitA to Location Y Brings 1 unitB to Location Y Remove All Unit A @ Location Y Transmission Set to 1000 mseconds.. display "blah blah"//-----------------------------------------------------------------//Player 7 Brings 1 UnitB to Location Y Display "blah blah blah" Preserve Trigger//-----------------------------------------------------------------//Player 7 Brings 1 Unit C to Location Y Remove all UnitB[/spoiler]

Question about AI of all things lol:I have some computer units issued an order to attack to a location as this seems to work the best for this particular isolated battle within my map. The problem is once these units reach this destination, they stop attacking. What can be done to keep the pressure on this designated battle arena without activating the rest of the computer's units spread out on map. (i.e. send all units on suicide missions etc)?

EDIT:Well it appears that my text wasn't being removed because I was using the wrong duke turret in my trigger. SCMDraft could use some improvements in the way it lists certain units especially non-standard ones such as duke's turrets or unused cargo ship as opposed to mercenary etc. Guess SI was never a "modder" and so these things never pose much of a problem .. anywho, got the "right" duke turret now for my trig and everything works great.

Last edited by bajadulce on Sun Feb 14, 2010 11:49 am, edited 1 time in total.

[quote="bajadulce"]Question about AI of all things lol:I have some computer units issued an order to attack to a location as this seems to work the best for this particular isolated battle within my map. The problem is once these units reach this destination, they stop attacking. What can be done to keep the pressure on this designated battle arena without activating the rest of the computer's units spread out on map. (i.e. send all units on suicide missions etc)?

The Starcraft AI sucks. Either create a custom AI or create units and trigger them to attack so it doesn't interfere with the computer's current attack trend.

Also I am jealous that you have iscript in your campaign; it is something I want but haven't been able to do despite hours upon hours of trying.

There's no "town" involved in this particular scenario, but rather an arena with some pre-placed dudes for 2 non warring computer players. Once a condition is met, one side is given to the player and fighting breaks out. The area however is fairly large and a number of cpu units aren't within range of the player. I tried setting the cpu to random strategic suicide mission, but it didn't appear to be as effective as ordering all the units in the area to attack to a central location. The problem was the cpu eventually congregated to the center and players could avoid confrontation by taking refuge on the perimeters.

So my question is what methods do campaign makers use to maintain pressure over a given area? Was going to experiment with several small locations within the main location and having the cpu attack to a new one once it arrived at the designated destination. Or maybe cycle between random suicide attack and order attack to a location? The idea being that units will spread out with the suicide order and then converge back to center with the attack order? I have no idea as I have done very little mapping. So I'm asking the pro campers.

@ iscript.Ahh the graphics. Yes, iscripting is a very powerful tool that communicates how the frames of a particular graphic will be displayed as you know. Iscripting can be very involved such as the workings of Mesk's AO or BSTRhino's Ultimate Doom, or it can be very generic containing only the basic animations needed such as walking, idle, attack etc. While iscripting is extremely powerful, it is only a very small part of a mod such as PEAI. An important part nonetheless. What part of iscripting gave you trouble?

Double Post.. cause If I add anything to that above post it'd be a novel!

Question:Is it possible to spawn a sprite at a location via triggers? I'd like to use the Arbiter's recall field when "moving" my units around the map. I have a good idea how to do this with a relatively simple modification, but am wondering if there is a standard method to producing this? Can't seem to find any info on this in my searching nor in SCMDraft. I really should play and familiarize myself with some campaigns as I'm sure this has been done. Sorry in advance if this is common knowledge.

Update on the "roving" locations in the arena. Seems to be working fairly well tho is a bit bulky.

Only certain spell sprites are place-able with triggers. I think you have to modify some flags in dat.edit for some of them to appear properly. For the recall effect, place a few arbiters in an unused section of the map, and give said arbiters to a computer player. (Preferably a computer player with little to no triggers.) Afterwards, apply the "Cast Recall (Arbiter Required)" action, located under Run AI Script at Location, and give ownership of that trigger to the player who controls the arbiters.

Some minor details to take note of:-You'll want to apply a trigger that constantly resets the arbiters' energy to 100%. The reason is more or less obvious.-If you give the arbiters to a computer player that the human player fights, the arbiters will most likely move away from their position to try and cloak their allies. This is why giving them to an unused computer player is the most convenient option.

As for your "pressure in a certain area" dilemma, the following information is based on the assumption that you want enemy units to be active in a certain area, but keep them confined at the same time.

The following image displays an "Arena" of sorts:

The four locations on the outskirts are used by the "Patrol" triggers, which tell units, who steer to close to them, to move back to the center. The center location uses the "Junk Yard Dog" (Found in Run AI Script at Location) trigger to make the units wander around. Furthermore, if your designs permit, you can place a Recall trigger at the center location, and have enemy troops warp into the arena if too many are exhausted.

Lastly, the stick figure symbolizes the wandering enemy units flailing around in the maze, so as to make them look alive.

In-depth details of the aforementioned triggers:

CORNER TRIGGERS:

Conditions:-Elapsed time is at least 0 seconds.

Actions:-Issue order to all units owned by (enemy player) at Corner Locations (1-4) to patrol to Center Location.-Preserve Trigger. (Repeat Preserve Trigger until Actions are maxed.)

Thnkyou so much for your help and especially the screenshots. I'll experiment with this setup and the patrol command tonight and report back.

As for the "recall" animation, I went ahead and just took advantage of some lite modding to pull this one off. The sounds + animation etc are all combined into one element. Seems to work well for what I want it to do. Here's a preview of it in action. I've purposely left only the bare minimums to the video so as to not give too much away.

There are literally hundreds of new graphics for this mod that have consumed immense amounts of my time, but all for the better. Most of the default spell animations such as psi-storm, dmatrix, recall etc haven't been touched because they are quite good as they are, but some may change in due time.

Wow, building campaigns is a shitload of work man! Maybe I'm just being too nit picky about the whole process? I'm having a great time regardless and will make an official post about the mod and the included campaign at a later date (tho "it" certainly is no secret). Campaigns are a great medium for mods because you can control so many different elements you wouldn't otherwise be able to do in a standard "melee" variant. Playing against the AI is fun, but this really is the best way to showcase a mod for the single player audience as well as prime the players on how to play the main game. Fun stuff.

I only wish I was a better mapper or at least had more experience playing more campaigns. But then maybe I'd be more influenced by past designs. Either way, this is quite challenging yet alone time consuming. My respect for the campaigns of this site has increased tenfold.

On the contrary, it's good you aren't being influenced by past designs because almost all of them are terrible and on your own you are much better off. You have good, strong concepts, and they will translate very well into a campaign I believe.

By the way, I'm willing to look over your dialogue and such when it's all finish if you paste it to me in one giant chunk in a PM or something and help you out with writing and such.

Last edited by IskatuMesk on Mon Feb 15, 2010 1:11 pm, edited 1 time in total.

Thnx Mesk. I'd be the first to admit I don't write "good" and have especially toiled over anything that required creative writing. Prob too many bonks over the head with falling 2x4's.

@ Mapping Questions/Help needed:Was searching around internet looking for how to make a bridge passable/unpassable but couldn't seem to find anything that "looked" good? I'm sure there are ways of doing this just like the recall teleport. I gave up and figured I'd use my extensive modding background to apply more smoke and mirrors and came up with this: Bridge over Troubled Waters It could use a little work, but it's a start. Mapping + Modding rulez! Fun stuff, but SLOW goin!

Still haven't discovered how to embed players in these .swfs, but at least the quality is better than youtube..

[spoiler][/spoiler]

[i]By Lavarinth: Added this to your post so you can see how it's done, however as you notice the variable "controlbar" with "over" doesn't actually show the control bar so it has no way to stop it, and simply repeats.

Last edited by bajadulce on Wed Feb 17, 2010 11:20 pm, edited 1 time in total.