Hard Light Productions Forums

Hosted Projects - Standalone => The Babylon Project => Topic started by: Trivial Psychic on March 18, 2022, 09:35:57 pm

Title: [Progress Update] In The Beginning
Post by: Trivial Psychic on March 18, 2022, 09:35:57 pm
If anyone has been following my posts here and there, you may be aware that I've been in the process of updating Den5's classic pre-3.3 release (and possibly pre-3.0) of his campaign loosely based on the B5 telefilm "In The Beginning".  I've attempted this twice before over the past couple of decades, but something has always pulled me away from the project (and often FS in general).  Fortunately, I kept my work, copying everything as I've upgraded and replaced my PC over the years.  I am now much closer to getting this ready than I've ever been before.

For those of you not aware, ITB is 37 missions long, so it's quite the job, and is QUITE old.  It appears that Den5 originally created the campaign in Russian, as some audio clips from the movie (and a few other sources) are in Russian, and when I first started working with it, I found it quite difficult to interpret what was going on, as it appears that the original dialogue (not the voice-acted stuff from the film) was done in Russian, then translated (poorly) into English via a translation program, which was... as I said, difficult to interpret.  I had to look at what the events themselves did, to figure out what was supposed to be going on.

I've replaced some of Den5's stand-in models with newer ones, changed his dialogue to sound better in English, added a CONSIDERABLE amount of mission chatter, along with a number of other changes and upgrades.

Right now, I'm experimenting with adjusting vessel warping to look more like it does in the show, where ships can all appear to use the same warp vortex.  I've figured out a method (that is still being refined) to accomplish this.  For example, if a number of transports are about to jump out through a jumpgate, you need to first create a sexp-generated warp effect, big enough to fit the jumpgate.  Then you need to adjust the custom warpout parameters for the transports.  Give them a warpout speed of about 500, change the effect size to 0.01, and change the sounds to "0" for both start and finish.  If the ships are either larger or widely separated, you also need to add a waypoint at the far end of the gate and have them change course towards it just prior to the jump.  Otherwise they'll appear to emerge out the sides of the warp cone.  Just make sure that you include enough time for each ship to jump out, one after the other, otherwise they'll run into each other.  About a second or two would do.

My very latest efforts concern fighters and warships, trying to get them to appear to arrive all through the same warp vortex, at the same time, at the same speed.  I've experimented with a wing of fighters and a Hyperion.  I got best results by giving the Hyperion a warping speed of 300m/s, and expanding the effect to 1000m.  Tuck the fighter wings in fairly close to the hull... but not too close, have their arrival about a second after the Hyperion arrives, give them an arrival speed of 750m/s, an effect size of 0.01m, sounds of 0, and most important of all, give the fighters "play dead" initial orders.  If you don't, they'll curl around immediately upon arrival, even if you give the fighter no AI class.  You need to give about 5 seconds or so for the ship to decelerate before clearing the play-dead order though.

I have yet to string the missions back into a campaign to test out how well they work with each other.  My final set of changes will likely involve replacing the content included from the movie.  I'd like to get the audio files replaced, perhaps with some help get some new head anis, and maybe even some new CB anis, and cut-scenes.  Most of the 'perhaps' ones will involve either a learning curve on my part, some assistance, or both.

I'll try to keep you updated further.
Title: Re: [Progress Update] In The Beginning
Post by: wesp5 on March 19, 2022, 07:00:19 am
That sounds cool! But I am surprised that there shouldn't be a single mission in TBP where multiple ships come through a jump point...
Title: Re: [Progress Update] In The Beginning
Post by: 0rph3u5 on March 19, 2022, 02:17:50 pm
Right now, I'm experimenting with adjusting vessel warping to look more like it does in the show, where ships can all appear to use the same warp vortex. 

That sounds really interesting. I am looking forward to the results.

To the resolve collision issues, you might want to try using collision groups for the arrival sequence. That way you can make the arriving ships unable to collide against each other (tl;dr ships that are currently in the same collision group do not perform collision checks with each other, so they treat each other like they are not there; ships can be added or removed from collision groups at will via SEXP).

Before my current engagement, I was experimenting with the using the ship-lat-maneuver to just give ships pushes for departure. I did not work on arrivals.

That sounds cool! But I am surprised that there shouldn't be a single mission in TBP where multiple ships come through a jump point...

Well, there are but until recently there was no fine tuning of the warp-in/warp-out that allowed to fake the accleration into/out of a jump point, so you will have a primary ship actually warping in/out and the other ships just pop-in/-out.
Title: Re: [Progress Update] In The Beginning
Post by: wesp5 on March 20, 2022, 03:16:00 am
Well, there are but until recently there was no fine tuning of the warp-in/warp-out that allowed to fake the accleration into/out of a jump point, so you will have a primary ship actually warping in/out and the other ships just pop-in/-out.

So would this mean we would need to fix all missions with multiple ships coming out of a jump point to get this right now?
Title: Re: [Progress Update] In The Beginning
Post by: 0rph3u5 on March 20, 2022, 04:02:49 am
Well, there are but until recently there was no fine tuning of the warp-in/warp-out that allowed to fake the accleration into/out of a jump point, so you will have a primary ship actually warping in/out and the other ships just pop-in/-out.

So would this mean we would need to fix all missions with multiple ships coming out of a jump point to get this right now?

Not at all. If done right, the illusion is serviceable. If there is sufficent distance between the jump point and any possible position of the player, it will work.

And preserving these old slight-of-hand techniques has some value in itself.
Title: Re: [Progress Update] In The Beginning
Post by: Trivial Psychic on March 20, 2022, 06:23:45 pm
The more difficult part is trying to get fighters to warp OUT with a warship.  You need an event to get all of the fighters to close in on the ship, when they get close enough you clear their goals, tell them to head for a waypoint that the warship is going towards, or at least aiming at.  If the warship is stationary, you then need to clear goals again and give it a play-dead order.  Once all of the fighters are in place, then you trigger the jump of the warship, followed by that for the fighters, with the 0.01 size, silence the sounds, and give it the 750m/s or so warpout speed.  I'd also suggest increasing the warship's warp side to 1000m.  It the warship is in motion, you need to cap the fighters' speeds to match the warship.  I haven't tried out the stationary warp yet, but that's what I've deduced.  Doing this in combat however would be a nightmare, as the fighters can't do evasive maneuvers while playing dead.  A warship could lose its entire fighter complement while waiting for them to all get in position.

In regards to collision groups, I have no idea how to use that sexp.  If it was simply flagging the ship as having no collisions, it would be much easier, but aside from these collision-group sexps, the only ones you can change in-mission are the no-collide-invisible ones.
Title: Re: [Progress Update] In The Beginning
Post by: wesp5 on March 21, 2022, 04:00:01 am
The more difficult part is trying to get fighters to warp OUT with a warship.

Gladly, most of the times this is not needed as the player has to destroy all fighters :)!
Title: Re: [Progress Update] In The Beginning
Post by: 0rph3u5 on March 21, 2022, 06:55:02 pm
In regards to collision groups, I have no idea how to use that sexp.  If it was simply flagging the ship as having no collisions, it would be much easier, but aside from these collision-group sexps, the only ones you can change in-mission are the no-collide-invisible ones.

If you want to disable all collisions, you need to use the alter-ship-flag SEXP and use it turn "collides" from "true" to "false" (except when you ship already is no-collidable, which can be set in the Ships Editor) or vice versa.

But collision groups are more selective and so less prone to undesirable outcomes - as ships in a collision group still collide with everything that is not in that collision group.
There are two sets of "add" and "remove" which do the same thing only the way how you input the data is different (1 ship, multiple groups <> 1 group, multiple ships).
Title: Re: [Progress Update] In The Beginning
Post by: Trivial Psychic on March 22, 2022, 02:06:38 am
This is most perplexing.  I created a test mission to experiment with speeds for warping fighters, and when I found the right balance, I introduced it into existing missions, however it seems that in existing missions, they ignore my changes.  Regardless of my adjustments, they all act as though they've been given a simple no-warp-effect command, and arrive at a zero velocity.  I've tried a number of different things to see if it makes a difference, but to no avail.  It is as though there is a phantom mission code that is existing behind the text of the mission file, and it is overriding what the text says.  I'm gonna try to add new wings to the mission and see if they make any difference.  This is QUITE the annoying bug.

I've got another mission where I've got a transport departing through a warp effect, and regardless of my changes, it always generates a regular warp cone for it, even though I've shrunk it down to 0.01m in size.  I thought that perhaps the presence of the cargo pod docked to it might be having an effect, and so gave the cargo pod a 0.01m warp size, regardless of the fact that since it's docked, it has no departure.  It didn't make any difference.

For anyone who wants to know, I've been working with RC4.

 :mad:
Title: Re: [Progress Update] In The Beginning
Post by: Trivial Psychic on March 24, 2022, 02:14:26 pm
Well, first thing I've learned is that adding a docked object to something will override your custom warp effect size.  I've opened an issue on GitHub, and Goober is looking into it.

The second thing I've learned, is that trying to adjust warping effects on fighters from older missions leads to it ignoring your custom warping speed parameters.  I'm in the process of manually adding new wings to the missions, giving them the desired warp parameters, deleting the old wings, and then renaming the new ones to match the old ones.  I tried doing some of this via text, but it didn't work, so it has to be done one step at a time.  Make first change, test, stop.  Make second change, test, stop.  Make third change, etc.  In the mission I'm working currently, the fighters don't warp in until you've gone through about 8min of mission time, so its quite tedious.  Once I'm sure my method works properly, I can afford to be a bit less cautious, but it will still slow me down.

As an update to my update, I've been able to get my fighter wings to perform my high-speed warp exit properly, as expected, by replacing every affected wing with a newly-created one.  I am getting confident enough in my process that I believe I can do all of the changes for a mission at once, rather than make a change, test and confirm, make another change, test and confirm, etc.  The process should go quicker and smoother now.

Another update to my updated update.  I was having trouble getting some Minbari fighters to warp in side-by-side with their mothership, even AFTER replacing them with new fighters.  I eventually tried out a new trick, after doing a bit of testing outside the mission.  I've found that you can boost a ship's warping speed (either in or out) by adjusting the time factor.  The lower the number, the quicker it will move.  I gave the fighters a time of 0.02, and also reduced the cruiser's warping speed to 300m/s, and it worked out.  Just a new trick in the book.
Title: Re: [Progress Update] In The Beginning
Post by: Trivial Psychic on April 03, 2022, 11:24:59 pm
More updates.  I've been through the entire thing, and aside from some further tweaks here and there, I've pretty much got all of the ships I need performing jump speed the way I want them.  I have found however, that invoking the time factor adjustment trick only seems necessary when dealing with Minbari for some reason.

Anyway, yesterday and part of this morning, I went on a ripping spree.  With a couple of pieces of software, I extracted and cut all of the voice files from the movie, and a couple of other sources, that are necessary to play the campaign with the English audio instead of the Russian that was included.  I haven't tested all of the missions with the new English audio though, so I may have to adjust the gain (volume) or re-cut them if it doesn't fit well enough.
Title: Re: [Progress Update] In The Beginning
Post by: den5 on April 29, 2022, 10:04:22 pm
Wow cool! After so many years, you are still working on it :yes:

Since we now have custom warp parameters, how relevant is this feature and can be enable it?

https://wiki.hard-light.net/index.php/Feature_Requests#Warping_Without_Vortex (https://wiki.hard-light.net/index.php/Feature_Requests#Warping_Without_Vortex)

Also for more illusion one could add a couple of additional parameters to the custom warp:

Warping time effect
Warping ship deceleration/acceleration

If I'm right it should be something like this
https://drive.google.com/file/d/1BIVngdJUGhyWUNyEE75idaNPCyoH6IeT/view?usp=sharing (https://drive.google.com/file/d/1BIVngdJUGhyWUNyEE75idaNPCyoH6IeT/view?usp=sharing)
Title: Re: [Progress Update] In The Beginning
Post by: Trivial Psychic on April 30, 2022, 07:35:25 am
The accel/decel controls are only enabled with certain non-TBP warp effects.  What I've been doing is forcing a 0.1 warp size for anything that I don't want to generate an effect, and change the warp start and close sounds to zero.  The accel/decel speed is best controlled right now by combining warping speed and warping time.  Most of the time I just need to use warp speed, but for some reason Minbari fighters give me trouble when warping along with a war cruiser, so I sometimes have to set the time parameter to 0.2 or 0.1.

My latest efforts are involving attempts to secure more head anis.  I've found a piece of software that works for me to extract the video segments that I want, and I've secured a pledge of support from mjn.mixael to convert them to anis properly.  I went through the film to get a bunch, and I'm currently making a pass through the main series to find anything useful, but I've gone a bit overboard on that.  I'm mainly looking for more EA pilot heads, and people that can work as bridge officers.  Once I'm satisfied that I have everything I need, I'll sort through them for the best ones and then send them on to mjn for conversion.

I'm also considering creating names for the various pilots flying with you.  As the campaign creator, I'd appreciate any ideas you have on that.  PM me if you're interested.
Title: Re: [Progress Update] In The Beginning
Post by: wesp5 on April 30, 2022, 09:20:31 am
Regarding animations, take a look at Mag's Star Fury Missions. He converted a lot of German TV scenes which you can see because the logo is there ;)! Also I would guess a warp in effect at full speed but without the jump point vortex would look like ships jumping in from Star Wars, would it not?
Title: Re: [Progress Update] In The Beginning
Post by: Trivial Psychic on April 30, 2022, 01:00:15 pm
I haven't tested out non-TBP warp effects, but what I've created works well for me.
Title: Re: [Progress Update] In The Beginning
Post by: den5 on April 30, 2022, 10:27:42 pm
The accel/decel controls are only enabled with certain non-TBP warp effects.
Yes I know. This is a question for coders, but it seems not in this thread.

Quote
My latest efforts are involving attempts to secure more head anis.
Zathras contains a Revan.vp file with new head anis. You may find something suitable.

Quote
I'm also considering creating names for the various pilots flying with you.
Sounds logical since you added more chatter. But I'll leave pilots name up to you. I'm not good at names maker, sorry.
Title: Re: [Progress Update] In The Beginning
Post by: Trivial Psychic on May 02, 2022, 11:04:17 am
Quote
My latest efforts are involving attempts to secure more head anis.
Zathras contains a Revan.vp file with new head anis. You may find something suitable.
All of the head anis from Revan are in the current TBP release, though they've been changed to a new naming standard.  Also, some of the ones included don't quite match my needs.  The messages seem to want to wait until the ani has finished playing before going on to the next message, and if the message is short but the ani is longer, then messages that are supposed to happen in rapid succession are spaced out more, and timing for events will be out of sync.  There are also instances when the included ani shows someone calmly saying something, when the message content should be shouting, so I need something that matches.  I'm being QUITE thorough, going through each episode one by one to look for good candidates.  I'm nearly through Season 4, but even after finishing Season 5, that still leaves 3rd Space, ACTA, ROS, and Crusade.  Some of them have already come from these sources, but I'd like to make my own pass through to be sure.  I'm mostly looking for EA pilots and EA officers.

I'm also considering custom mission loading screens, ship nameplates, and perhaps even some simple anis for command briefings.
Title: Re: [Progress Update] In The Beginning
Post by: Trivial Psychic on May 23, 2022, 01:05:33 am
Thanks to considerable assistance and patience from mjn.mixael, I now have a significant boost to the number of Head ANIs available to me, though I may have to attempt a do-over on some of them, as they are under low lighting and so are very dark and have few details.  I'm gonna try to boost the contrast on the images and see if mjn.mixael will reconvert them for me.  For the moment however, I'm going through mission by mission and taking advantage of my new heads.  I'm also working on the character names and adding some interaction to make them feel like real people.

Thanks to some direction from Orph3u5, I've also succeeded in making my first custom loading screen.  The biggest challenge will be deciding on what image to display for the missions.

I also used some of the guides I found in the old Zathras packs to create my first custom nameplate.  It's a pity though, that TBP ships don't have the same nameplate style as FS2, which would make things much easier, but that would require an active modding team for TBP, as opposed to an individual making their own mod.  Anyway, my first attempt was more success through fortune rather than skill, making an attempt to make accompanying glow and shinemaps very difficult using my method.  I'll need to give it some more effort when I can spare the time.

I am considering inserting an in-game cutscene in place of the command briefing Den5 used.

I've still got a long way to go.
Title: Re: [Progress Update] In The Beginning
Post by: 0rph3u5 on May 23, 2022, 10:12:57 am
The biggest challenge will be deciding on what image to display for the missions.

That is part of the beauty of Axem's script - you don't need to narrow it down to one, you can just tell the script to randomly pick one from a selection. :)

And since you don't need to crop screenshots down to the old UI resolutions and aspect ration (you just enter a base resolution into the script's table), you can use screenshots straight from the game, which you only have to process if you are also using the option to display text.
Title: Re: [Progress Update] In The Beginning
Post by: Trivial Psychic on May 23, 2022, 05:58:58 pm
I saw that, I mean deciding which images to create that best set the stage for each mission.
Title: Re: [Progress Update] In The Beginning
Post by: Trivial Psychic on June 02, 2022, 07:11:47 am
I've run into a bit of a stumbling-block in terms of testing.... I can't currently test my missions.  Basically, the fire button on my Thrustmaster T.16000M is malfunctioning.  It's been giving my trouble on-and-off for the past 6 months, but lately its been firing once out of every 20 or so pulls.  I'm considering doing some surgery to see if I can correct the problem, but I also have a contingency plan ready to implement to purchase a new one by the end of the month.

In the meantime however, I'm working on related art projects.  Yesterday I used the included templates to create nameplate maps for a half-a-dozen ships.  I plan on ultimately creating one for every Nova-class in the campaign, unfortunately there is no template for Hyperion or Olympus class.  I'll need to pace myself however, as my method is a little hard on the wrist.  It's a pity none of the TBP ships have modeled nameplates like the current FS2 ships, but the mod doesn't have the crew it used to.

I suppose, once I'm done I can turn my attention towards the loading screens.
Title: Re: [Progress Update] In The Beginning
Post by: Trivial Psychic on June 14, 2022, 11:32:31 am
Well, I've ordered my replacement T.16000M.  I should have it by this coming Monday.  In the meantime, I've gone through and created nameplates for every Nova class in the campaign, but I've come up with a further idea.  Using the skills and software I acquired creating the nameplates, (rudimentary though they are), I got the idea to make some further visual enhancements.  There are more than a dozen Hyperion cruisers in the game that are under pirate control, so I've decided to give them distinctive paint schemes to differentiate them from the EA ships, and even from each other.  I've been using Google search to find some appropriate images and superimposing them on the maps.  This should occupy my time until the new stick arrives.
Title: Re: [Progress Update] In The Beginning
Post by: 0rph3u5 on June 14, 2022, 03:04:44 pm
What have you done to combat the issue that the maps on the Hyperion are mirrored? (you can see it with the EA logo)

The Nova and Omega were specifically edited to avoid that problem with the nameplates. - that why you see a mirrored space on the Nova_01 and Omega_01 textures
Title: Re: [Progress Update] In The Beginning
Post by: Trivial Psychic on June 15, 2022, 12:06:45 am
I'm not using nameplates for the Pirate vessels, just hull art, so mirroring is irrelevant.  That said, there is a certain amount of trial and error, as it's hard to ascertain when sections of a map are used elsewhere.  Regardless, I've managed to give 2 ships some custom makeovers.  All of the pirate vessels have key Hyperion maps changed to black & white, to eliminate the EF blue stripes, and recolored the bridge light to red.  I did find that I was losing considerable image quality when I added my art, so I decided to try something.  I took the original Hyperion maps that I needed, doubled their side, and use a sharpening tool in Paint.net to get rid (somewhat) of the blurring, and then put my art images on top.  I'm not completely happy with the results, but it is an improvement.
Title: Re: [Progress Update] In The Beginning
Post by: Trivial Psychic on June 18, 2022, 08:14:53 am
Well, my replacement Thrustmaster came in Thrusday, 4 days ahead of the estimated delivery date and only two days after I ordered it.  Regardless, I didn't have a change to test it out until last night, and everything checks out.  To quote Miguel Ferrer from Hot Shots Part Deux, "I can KILL again!  You've given me a reason to LIVE!"  Anyway, I also learned that when you decide to change the color of a ship's maps, you also have to change the corresponding shinemaps as well.  I just did used the original Hyperion shinemaps and switched them to black & white, but I'd like to have my new decals with their proper shine color.  Is a simple way of creating new shinemaps to just darken down the base map?
Title: Re: [Progress Update] In The Beginning
Post by: Trivial Psychic on July 09, 2022, 11:47:04 pm
So I've taken a break from my pirate remapping, though I only have 2 ships left to do... and I still haven't entirely decided how to adorn them, and I've also been doing my play-through to both squash bugs and add character dialogue, but I've taken a break from that too, to follow my latest endeavor.

The campaign has a number of exerts from the movie, added in as command briefings, mission briefings, and debriefings... as well as the necessary in-mission voice files.  I've gotten the audio for them all, but I've been wanting to do more.  As I've been on vacation this week, I got it in my head to try something bold, add in the corresponding video exerts from the movie for the command briefings.  I was really hoping I could just cut out the video segment, drop it into the intelanims folder and let it play, but it seems that only ani, eff, and (A)PGN formats are permitted.  While I've got software to turn a video file into separate image files, it only extracts them to jpg format.  I've got paint.net that could convert them into PGN files, but it seemed like a lot of hassle, especially if it didn't work.  Then I got the idea to simply use an eff file, so I've been hard at work doing that, and I just completed... (drum roll) my second eff file.  It has taken a lot of trial and error, and lots of manual work (for which there's probably a simpler solution) to get them ready.

First, I was relieved to discover that eff files can be made to use jpgs, as the wiki doesn't mention that as a compatible format.  Secondly, my extraction software doesn't give you an option of how you want them named.  EFF files need to have their numerical sequence ending in _XXXX, and my extraction software only does 3 digits and precedes it a space, I have to go through and rename them all to match.  Also, the software starts at 001, and EFFs need to start with 0000, so I have to take that in account.  Thirdly, after I got them all properly renamed, I find that the audio for a command briefing stage won't play until the text sound effect has played, while the animation video will play from the get-go.  I checked the sound effect and saw that it was about 1.3 seconds, so I created the first 31 frames of the animation as total black frames... only to find that its more like 2.3 seconds before the audio starts playing, so I had to create another 24 black frames.  Also, each time I added more frames to the beginning, I had to rename all of the subsequent frames... again, manually.  Finally, as the original video was 23.98 frames per second, I set the eff file to 24, but found that by the end of it, the video had out-run the audio, so I had to reduce the frame-rate to 23, which seems to do the trick... though it's still out of sync by a fraction of a second.  Regardless, I seem to have achieved success, now knowing that I have to add 55 frames of black at the beginning of every one.

At one point I was considering the idea of completely cutting the video segment out and using it as a cutscene instead of command briefing, but I've been warned that it could be increasing the risk of getting caught in a copyright infringement.  I guess I'll have to settle for the command briefing stages.

I'll keep y'all updated.
Title: Re: [Progress Update] In The Beginning
Post by: Trivial Psychic on November 29, 2022, 01:28:45 am
So, it's been some months since my last update.

I created the CB EFF files I was referring to, for M4 and one of the stages for M5, but I've left it at that for now.

A short time ago, I strung all of the missions together to see how they'd fit, and it took some trial and error to play through it completely.  I had to come up with a special hull strength variable transfer for the player, as I learned that in red-alert mission chains longer than 2, you can't use the 'replay last mission' for more than the one just prior... you can't go back to the beginning of the chain.  Furthermore, I also found that replaying a previous mission may result in restarting with the same hull strength you ended on.  I had to create variables to preserve the player's hull strength so you always start the mission with the hull strength you ended the previous one with... even with a replay.

After my campaign playthrough, I began a very thorough mission-by-mission playthrough, looking for any bugs or changes I wanted to make, and test them until I got it right.  I'm currently in the process of doing this.  Sometimes the changes are trivial, while other times they are MAJOR... and right now I'm doing a MAJOR overhaul of M34, which is in itself, a modified form of the Battle of the Line mission currently in the main release (which is marked as coming from the Tales of the EAS Janus).  The version included in ITB, begins with you right in the thick of combat, but I've decided to move the fleets some distance apart and have the Minbari advance on your position.  This gives time for mission chatter, to give you the sense of the state of mind of the pilots and ships as they are facing down the barrels of Minbari guns.

I still want to finish my custom skins for Pirate Hyperions, create all of the CB EFF files that I need, hopefully acquire better versions of my Head ANIs, and create a cutscene mission to start the campaign off, with complete audio from the film intro.  I may also insert some partial cutscene content for M33 (the first half of the Battle of the Line) to make use of the lunar surface model, more closely matching the movie.  All this on top of doing multiple playthroughs of the campaign as a whole to make sure it all strings together properly.

I'm making progress, but sometimes it feels like I'm adding more jobs in front of me as I go.