The Fallen Shipyard (Update 2)

Make a banger level. No gimmick. No holds barred. This is it, Luigi.

Moderator: Event Organizers

Jur1121
Spiny
Spiny
Posts: 27
Joined: Wed Jul 01, 2020 9:30 am
Flair: A salt enthusiast
Pronouns: he/him

The Fallen Shipyard (Update 2)

Postby Jur1121 » Thu Oct 26, 2023 6:53 pm

I missed some previous contests but this time I cooked something. What was a relatively simple level on paper took a surprisingly long time to craft up, so there's not much time until deadline again. But, there's some time to polish the level further.

Download (Update 2): https://drive.google.com/file/d/1yIMcMU ... sp=sharing

preview: show
Image
Image

It should, hopefully, hold together without crashes, but the scripts under the hood are a bit spaghettios and I wanted to get it out just in case before a very busy weekend of mine. If you see any bugs, error messages, inconsistencies, bad sequences or even typos, you may report them in this thread. All feedback about the gameplay itself is also greatly appreciated. :D

I will (try to) keep updating/improving the level before deadline, if necessary.

changelog (spoilers!): show
Update 1:
- Fixed the Captain's battle theme being quieter upon retry

- Restructured some of the Captain's death effect script to make it reliable (I hope?)

- Reworked the Captain fight checkpoint to use the Checkpoint class

- Slightly nerfed some of the Captain's attacks, and it will now use the 'punt attack' only once, at most

- The player now won't get contact damage during captain's hurt animation

- A Hurtful Zone now falls on the arena when Captain is on low HP (thanks to cato for the idea)

- Cut and remade an area in the last segment of the level (normal route)

- Made various platforming slightly easier and cut some length of the last segment of the normal route

Update 2:
- Made the Captain's 'Eerie Rain' slightly harder as its standard attacks posed more threat still. The red zone also closes out a little faster

- Very slightly nerfed Captain's 'punt attack'

- Adjusted some text in the Captain's dialogue

- Fixed 'Van de Graf' Eeries being vulnerable to Raccoon tail swipes

- Swapped the freestanding Mushroom to a Super Leaf in the second section. Also nerfed the 2-gap boo circle in the same section

- Fixed the "It's too dark ..." message sometimes appearing despite having the Star

- Added some more BGOs to areas which were lacking of them. Also fixed some cutoff graphics
Last edited by Jur1121 on Tue Oct 31, 2023 11:16 am, edited 4 times in total.

Emral
Cute Yoshi Egg
Cute Yoshi Egg
Posts: 9726
Joined: Mon Jan 20, 2014 12:58 pm
Flair: Phoenix

Re: The Fallen Shipyard

Postby Emral » Fri Oct 27, 2023 2:15 am

Wonderful level, though maybe a bit long for my tastes...
The secret codes were a clever secret that kept me intrigued throughout the entire thing. The mini challenges in the zones were also super neat (though the first one after checkpoint 3, with the boos that rotate into a point is a bit much to process perhaps).

I have found a few technical issues, and I'll do my best to try and help with them, though maybe you might have to do some more digging if this doesn't work straight away.

1. Checkpoint 4.
I see you had some trouble getting this to work. The reason might be that smbx2 checkpoints operate on one specific rule: Checkpoints have to be initialized and visible before level start, and showing a layer and moving the checkpoint doesn't do that.
What I suggest to fix this is to use the checkpoint class directly and forego any NPCs. You can do this like so:

Code: Select all

-- at the top of your code, outside of functions. make sure to replace x, y and section. This is the TOP LEFT CORNER of where the player spawns, I believe
local cp = Checkpoint{x = -139816, y = -140128, section = 3}

-- where you want the player to collect the checkpoint
cp:collect()
It's the same system basegame checkpoints use, so it ought to work swimmingly.

2. Boss death
On my run, the boss's death effect straight up didn't play. I don't quite know where the code failed, but I see the condition is a bit complicated. I'll suggest an alternative:
In the if statement around line 844 you are spawning the death effect, and later you are waiting on the death effect to start the death routine. What if instead you start the death routine here as well, and put a Routine.waitSeconds(3) at the start of the death routine to time things properly? You could spawn postDeathEffect after the waitSeconds to ensure it runs even if the death effect has a hiccup.

3. I just think the boss is a bit difficult and adding another mushroom during eerie rain might be nice.

Lastly, not a bug but, I really dig the outside section background, so you might see me using it sometime in the future ;p

Jur1121
Spiny
Spiny
Posts: 27
Joined: Wed Jul 01, 2020 9:30 am
Flair: A salt enthusiast
Pronouns: he/him

Re: The Fallen Shipyard

Postby Jur1121 » Fri Oct 27, 2023 2:49 am

Spoiler: show
Emral wrote:
Fri Oct 27, 2023 2:15 am
Wonderful level, though maybe a bit long for my tastes...
The secret codes were a clever secret that kept me intrigued throughout the entire thing. The mini challenges in the zones were also super neat (though the first one after checkpoint 3, with the boos that rotate into a point is a bit much to process perhaps).

I have found a few technical issues, and I'll do my best to try and help with them, though maybe you might have to do some more digging if this doesn't work straight away.

1. Checkpoint 4.
I see you had some trouble getting this to work. The reason might be that smbx2 checkpoints operate on one specific rule: Checkpoints have to be initialized and visible before level start, and showing a layer and moving the checkpoint doesn't do that.
What I suggest to fix this is to use the checkpoint class directly and forego any NPCs. You can do this like so:

Code: Select all

-- at the top of your code, outside of functions. make sure to replace x, y and section. This is the TOP LEFT CORNER of where the player spawns, I believe
local cp = Checkpoint{x = -139816, y = -140128, section = 3}

-- where you want the player to collect the checkpoint
cp:collect()
It's the same system basegame checkpoints use, so it ought to work swimmingly.

2. Boss death
On my run, the boss's death effect straight up didn't play. I don't quite know where the code failed, but I see the condition is a bit complicated. I'll suggest an alternative:
In the if statement around line 844 you are spawning the death effect, and later you are waiting on the death effect to start the death routine. What if instead you start the death routine here as well, and put a Routine.waitSeconds(3) at the start of the death routine to time things properly? You could spawn postDeathEffect after the waitSeconds to ensure it runs even if the death effect has a hiccup.

3. I just think the boss is a bit difficult and adding another mushroom during eerie rain might be nice.

Lastly, not a bug but, I really dig the outside section background, so you might see me using it sometime in the future ;p

The dark section was meant to be relatively tough but short to warm the player up, but you're right, I also had a hunch that obstacle is a bit rough. I'll also adjust some of the attacks of the boss to make it a bit easier, but it's not meant to be an easy battle. I also thought about reducing the length of the normal route final checkpoint even if it's not much "longer" than the other sections.

I also did try to do it "elegantly" with the Checkpoint class, but I never got the player to actually respawn on the checkpoint's coordinates. What I did was create the Checkpoint object on the moment the fight begins and not before level start, so I guess that was my mistake. I guess it makes sense lol. I wrongly assumed it would just save the info after merely collecting it (?)

And that's weird the death effect didn't play? I didn't have issues during my initial tests but I'll take another look at it and consider rewriting as you suggested.

Thanks much, Emral.


I'll be having a busy day but I'll try updating the level later on (or a later date) when I get some time.

EDIT: Update 1 is out! Thanks to the feedback, various backend and frontend improvements and balance changes have been made. Feedback givers are credited in the readme file. Download link has been updated in the OP.

EDIT 2: Right. Update 2 is out and that should be the definitive submission version. No further large updates are planned... and there's no more time for such! Download link updated in the OP.


Return to “ChoccyCon 2023!”

Who is online

Users browsing this forum: No registered users and 1 guest

SMWCentralTalkhausMario Fan Games GalaxyKafukaMarioWikiSMBXEquipoEstelari