Introduction
Introduction Statistics Contact Development Disclaimer Help
Return Create A Forum - Home
---------------------------------------------------------
Xyrinfe Shadow Project Forums
https://lunarshadowcs.createaforum.com
---------------------------------------------------------
*****************************************************
Return to: Member Works
*****************************************************
#Post#: 15911--------------------------------------------------
Project K
By: AuroraDash Date: October 10, 2021, 7:50 am
---------------------------------------------------------
This is that secret project thing I mentioned. I have a real
name in mind but I won't reveal it until I'm sure I'll have
something to show for it. No promises yet, it might still all
come to nothing.
The plan is for a metroidvania type platformer with fancy
advanced movement. I was going to write a long document about
all the things that inspired me and how I arrived at my [s]super
brilliant[/s] design decisions, but instead, for now, I'll
dedicate this thread to what I've actually accomplished so far.
Originally, Sypher was going to be involved with this, but given
that he's not in the picture anymore it'll be just me again.
Although, I want to get a few trusted people together to look
over things to make sure what I'm doing isn't awful.
A lot of ideas been carried over from a tech demo I made in 2019
and then cancelled, which I called Legends' Perdition. I got
pretty far, though.
The basic platforming physics is all there and I'm quite happy
with it. I wanted smooth comfy platforming physics that still
kind of resembles the style I used for Legend of Grey Moon and
the Solar Shadows, but updated with all the modern conveniences
for the smoothest and most comfy platforming experience. So, I
added coyote frames, input buffers and corner correction, and so
far it all works great.
I originally wanted to add moving blocks, however, that turned
out to be monstrously difficult so I decided it wasn't worth the
trouble.
I also reduced the base walking speed and jump height so that
things don't get ridiculous once the movement gets upgraded. One
of the reasons why Legends' Perdition failed was that the
character was too agile, which clashed badly with the contained,
single-screen rooms of my other platformers. So, I'll have
bigger, scrolling rooms this time. Like Misery of Magic, the
game window will be 853x480, but unlike it, it will make use of
all the extra space to show you more of the room. Misery of
Magic has 640x480 rooms and uses the extra space for the
sidebar, and for whatever reason in Legends' Perdition I copied
the sidebar thing because I'm a dumbass I guess.
To accommodate the bigger rooms, I created an upgraded "grid
system", which is what I call the code that connects the rooms
to each other. LoGM, SS2 and Misery of Magic all have very
similar systems where all the rooms are part of a grid and each
room's position within that grid is encoded in its internal
name. This is very convenient because, when one goes out of
bounds, the game can automatically figure out the name of what
room should come next so all I need to do to put a room in the
right place is to give it the right name. With the Legends'
Perdition demo, I upgraded it a bit and and made it so that
rooms didn't necessarily need to be all the same size, although
they were still limited in how they could be connected together.
However, I've totally overhauled the grid system for this new
project. The game now automatically builds a list of where all
the rooms are on the grid and how big they are. When the player
leaves a room, it combines the position of the player character
within the old room with the position of the old room within the
grid to calculate a "global position" of the character, then
checks that global position against the list of rooms to see if
it's inside any of them. If it finds one, it can then use the
global position to figure out exactly where to place the player
within the new room.
It's nearly as convenient as the old system and lets me connect
rooms to each other however the hell I want! :D
#Post#: 15931--------------------------------------------------
Re: Project K
By: AuroraDash Date: October 16, 2021, 6:38 am
---------------------------------------------------------
[font=Proxima Nova
Regular]
https://i.imgur.com/b6xj5M3.png[/font]
[font=Proxima Nova Regular][/size][/font]
#Post#: 15932--------------------------------------------------
Re: Project K
By: AuroraDash Date: October 16, 2021, 7:05 am
---------------------------------------------------------
Cool feature number three: autotiling!
There are two versions of it at the moment, although I'll likely
need a couple more by the end.
#Post#: 15952--------------------------------------------------
Re: Project K
By: AuroraDash Date: October 21, 2021, 1:54 am
---------------------------------------------------------
I've been implementing the mechanics behind spikes and various
other death-zones.
There exist both generic spike objects that are always fatal and
directional spike objects that are only fatal if touched with a
non-positive velocity in the direction the spikes are facing.
I revamped the corner correction mechanic so that you cannot be
corrected into spikes. I also made upwards corner correction
more lenient -- previously, in contrast to other directions,
upwards corner correction required one to be moving slowly
upwards or not at all -- the vertical component of velocity
needed to be between -1.5 and 0. Now, it just needs to be
greater than -1.5, but with the added condition that one cannot
be corner corrected upwards too soon after leaving the ground.
The reason for this is that otherwise, it becomes possible to
walk off a platform and then immediately walk back onto it which
is kinda janky and uncomfortable.
I was worried that, even without explicitly being corner
corrected, it would still be possible to get snapped onto a
platform you shouldn't be if you just happened to be within the
right 2-pixel margin above a block. However, taking a closer
look at my code, I don't think that's mathematically possible
unless one's vertical speed is slow anyway.
That caused a bizarre bug where you'd sometimes get stuck in the
ground for no reason, but I fixed that as well.
There will need to be a third version of the autotiler
specifically for handling spike tiles, but I haven't made that
yet.
#Post#: 17191--------------------------------------------------
Re: Project K
By: AuroraDash Date: January 10, 2022, 9:19 am
---------------------------------------------------------
A heap of nasty grid system bugs have been ironed out.
I've put together a little intro area to play around in.
Everything feels quite nice. I'm still using placeholder sprites
and whatnot, though, so it doesn't look good at the moment. It
includes bounce pads, a newly implemented feature, which I think
are necessary for the intro level because the player character
does not have much vertical mobility at the beginning.
I am considering bringing back the imaginary floor mechanic from
SS2 and LoGM -- the thing where you can stand on the bottom of
the screen for a moment after entering a room -- but I might not
need it this time.
There were weird issues where, when connecting rooms in certain
ways, blocks couldn't line up properly. To fix this, I made
every room be an integer number of blocks wide. This means that
I had to increase the standard 1x1 room size slightly to
864x480. The window remains 853x480 in order to stay in the
proper proportion for widescreen. The discrepancy is no problem
because the camera code I have happily scrolls the screen the
extra 11 pixels automatically, just like it scrolls in larger
rooms.
#Post#: 17229--------------------------------------------------
Re: Project K
By: AuroraDash Date: January 12, 2022, 8:43 am
---------------------------------------------------------
Added a real display to show information, including an
indication of what abilities are currently available along with
a timer and a few other simple necessities.
Been more interested in this project than usual lately. I've
done stuff on it several nights in a row now.
#Post#: 17656--------------------------------------------------
Re: Project K
By: AuroraDash Date: February 6, 2022, 8:54 am
---------------------------------------------------------
Got off my ass and did some more today :3
Fiddled with the physics a bit more. I decided to increase the
terminal velocity while you're not holding down the jump button.
This lets you fall fast, but only when you want to.
Decided to make a proper sprite for the main character. Kind of,
I suck at drawing.
#Post#: 17678--------------------------------------------------
Re: Project K
By: AuroraDash Date: February 7, 2022, 9:17 pm
---------------------------------------------------------
Added parallax-scrolling backgrounds, which look pretty awesome.
Fixed up some of the menus too :3
Might give a test build to a few select people once I've
polished the intro area a bit more.
*****************************************************
You are viewing proxied material from gopher.createaforum.com. The copyright of proxied material belongs to its original authors. Any comments or complaints in relation to proxied material should be directed to the original authors of the content concerned. Please see the disclaimer for more details.