Welcome, Guest. Please login or register.
Did you miss your activation email?

Login with username, password and session length

 
Advanced search

1393497 Posts in 67076 Topics- by 60008 Members - Latest Member: futurecreep

July 23, 2021, 11:23:24 PM

Need hosting? Check out Digital Ocean
(more details in this thread)
TIGSource ForumsCommunityDevLogsPlatformer on the mega drive (for now)
Pages: 1 ... 4 5 [6] 7
Print
Author Topic: Platformer on the mega drive (for now)  (Read 10362 times)
diegzumillo
Level 10
*****


This avatar is so old I still have a some hair


View Profile WWW
« Reply #100 on: April 27, 2021, 03:47:55 AM »

That's what intuitively I was going for but I'm not sure if this extra complexity would do the game any favors. Something to keep in mind.

Logged

diegzumillo
Level 10
*****


This avatar is so old I still have a some hair


View Profile WWW
« Reply #101 on: May 03, 2021, 01:14:57 PM »

I think I got the combat to an acceptable point now. In terms of mechanics, at least, it lacks impact and "juice", which will come with more permanent animations.

I still don't have a convenient way to get this playing in a browser, but here is a ROM if anyone wants to fire it up in an emulator and play around. I would love to hear any thoughts!

https://drive.google.com/file/d/16TkYqu7Lb-55SsviA8v_LVhaa-F3ro4v/view?usp=sharing

Controls:
left right to move. Press C while running to jump. While standing and holding C, left and right do a side step, useful for combat, and up winds up a vertical jump. A parries an attack (it checks when you lift A), B attacks (you can only attack standing or at full speed for a stronger attack). Down ducks and you can climb down ledges if near one. Then there's wall running. This is a little tricky, but you need to run and jump just before reaching the wall. Wall jumping is implemented but it's still half baked and weird.
Logged

Prinsessa
Level 10
*****



View Profile
« Reply #102 on: May 05, 2021, 08:07:11 AM »

It runs! But I keep getting stuck here and no buttons work to get out. Sad



Bit difficult at the moment to tell how I'm doing in combat (successfully parrying/avoiding or not, getting hits in) since there seems to be little to no feedback but the movement feels good, the fact that you actually have to hold up until you're finished climbing is pretty nifty and prevents you from doing it on accident! Smiley Floor is so slippery tho! Cheesy
Logged

diegzumillo
Level 10
*****


This avatar is so old I still have a some hair


View Profile WWW
« Reply #103 on: May 05, 2021, 09:12:40 AM »

Thank you so much for trying it and giving me this feedback! I understand this is really inconvenient, as it requires possibly downloading an emulator and whatnot.

Quote
It runs! But I keep getting stuck here and no buttons work to get out

Ooh that looks like a bug that should not be there! I'll try to reproduce it.

Quote
Bit difficult at the moment to tell how I'm doing in combat (successfully parrying/avoiding or not, getting hits in) since there seems to be little to no feedback
The current feedback is super subtle indeed. The player sprite just adds an "ouch" text which is barely visible. I was putting off further investing in visual flourishes until I had the combat well established, but these flourishes are inevitably intertwined with the 'game feel' of combat.

Quote
but the movement feels good, the fact that you actually have to hold up until you're finished climbing is pretty nifty and prevents you from doing it on accident! Smiley Floor is so slippery tho! Cheesy

I'm happy you liked it! :D I think a small acceleration can be interesting to add challenge possibilities. You can add 'speed gates' by simply making gaps and reducing floor to pick up speed.
Logged

Prinsessa
Level 10
*****



View Profile
« Reply #104 on: May 06, 2021, 11:12:29 AM »

No prob, had one already! c: It's impressive so far, good luck going further Coffee
Logged

diegzumillo
Level 10
*****


This avatar is so old I still have a some hair


View Profile WWW
« Reply #105 on: May 11, 2021, 03:47:18 PM »

I usually write here on Mondays because I can get the most work on weekends, but I had little to write about.

I addressed the lack of feedback on combat, and now hits make the target blink for a frame and there's some pushback too. Maybe once less temp animations are in place I can tone down the blinking, as it doesn't fit the quasi-cinematic platformer thing I'm going for. But we'll see.

The project is almost reaching that dangerous stage that kills most of my projects: the initial technical challenge is almost over and I have to start making difficult design decisions, each one eliminates an infinite world of possibilities, and that completely overwhelms me. I tend to freeze, unfortunately. So my hope is that I can deal with this in parts and not being afraid of making decisions.

Currently I'm getting the level system in place. As soon as that is ready I want to start working on a full blown metroid-like map. Will it work? I don't know and I don't care! I do care but the only way to find out is by doing it.

Still using LDtk editor. Writing my parser as I define things. Once this is done I'll write a technical log of the process.



My reflexes were pretty bad when I made this gif though. Got my butt kicked.
Logged

JobLeonard
Level 10
*****



View Profile
« Reply #106 on: May 12, 2021, 12:54:37 AM »

The blink + push feels good, even in gif form
Logged
Prinsessa
Level 10
*****



View Profile
« Reply #107 on: May 12, 2021, 03:48:37 AM »

Agree! Looking forward to the editor update C:
Logged

diegzumillo
Level 10
*****


This avatar is so old I still have a some hair


View Profile WWW
« Reply #108 on: May 24, 2021, 05:25:42 PM »

Weekly update!

I finished the whole 'interpreter' thing for the level editor. I'm using LDtk, a general purpose tile based editor. It's really neat and full of cool features.

Defining a level in my engine is a bit of a work in progress, but here's how it works right now: SGDK has its own import tools with good compression algorithms called rescomp, and it works by inputting png images. So All I have to do is feed the layers straight from the editor into rescomp. But not really. And the other objects, like enemy placement, that sort of thing, gets parsed into a list, but we'll get to that.

I've mentioned before the color palette hack, but here's a refresher. Rescomp expects indexed images with 16 colors. More than that and you have a problem. But if you change some colors to have an index of n+128 where 0<=n<16 is the original color, the map is stored with that pixel having the color n and the priority flag true, because the priority bit lies next to the color palette. So I can't just take the images straight from the editor into the game, I need to process them first. The problem is that I expect a whole bunch of levels/rooms, and it would be unfeasible to do this processing every time it changed, even having Aseprite scripts to do this job. However, Aseprite can be called from the command line, so I wrote a bat file that runs aseprite scripts. Then I can call this bat file from a python script that is doing the rest of the parsing of the level.

The python parser is simple, it just reads the list of entities from each room and spits out a txt file with the definition of the array and some other variables. Then it calls that bat file to process all the layers of all the rooms.

It's convoluted as hell! I don't like it; convoluted solutions tend to break easily. But it's what we have working at the moment. There are a few bugs too but nothing huge.

SMB BlockSMB BlockSMB BlockSMB BlockSMB BlockSMB BlockSMB BlockSMB BlockSMB BlockSMB BlockSMB BlockSMB Block

Changing subjects. Conceptually, the project was like this:

Code: ---------........
Art:  ---..............
Plot: .................

Because these things are intertwined, I didn't want to continue adding features and gameplay elements without knowing more about the context of the game. I didn't want to make more art without more plot. So plot was lagging behind and holding everything else back. So I worked on that for a while.

I really wish I could share more of the story because I struggle a lot with this and could use some help, but I don't want to spoil too much of it in the devlog. I already shared this earlier but it's more developed now:

It's a post apocalyptic world covered in ice, where humanity reverted to a medieval level of technology and culture. But most people settled around the artifact, a giant mysterious object the size of a mountain. People are drawn to it because it has heat. The protagonist of the story has a past living in a city near the artifact and does not like it, so he moved with his family far away from it. But his family was kidnapped and possibly taken to the main city over there. So the game is basically exploring this region near the artifact, looking for your family and delving into the mystery of the world, the artifact, and the affected people around it.

Not gonna lie, I'm very much channeling Lovecraft here. The artifact changes people etc.

So now the project is conceptually like this:
Code: ---------........
Art:  ---..............
Plot: ------...........

which is great! I think I'm going to work on some art now, sketch some environments and characters.
Logged

diegzumillo
Level 10
*****


This avatar is so old I still have a some hair


View Profile WWW
« Reply #109 on: June 20, 2021, 06:05:31 PM »

It has been a while since I posted here. I have been stuck on writing a semi decent plot, but I think I got unstuck! Not that I have the complete story totally written, but I finally have a writing workflow.

Starting with a blank document I started writing what came to mind, no matter how dumb it sounded. Also writing my thoughts along the way, like "this makes no sense, but I need a reason for this character to be there" etc, usually I have interesting ideas to explore and I write them down here. So I take this as far as I can go. Then I rewrite it without deleting anything, just start a new line with "REWRITE ##" and start over. Now I explore some different angle, try some ideas that came up before. What I noticed is that each rewrite would take me to a much more polished story.

Everyone knows that rewriting is important, even complete amateurs like myself, but my real contribution here is to add comments along the way and to not delete anything; just rewrite below the previous one.

Having a workflow took a lot of weight off my mind. I know I can get a story now, even if it takes some time.

After I was satisfied with my skeleton of a plot I set out to draw some images, I ended up hyperfocusing on creating this particular image:



It's a photo bash with a paint over, basically. The big weird mountain is a fractal rendered with Mandelbulber, a free program.

I wish I could direct these bursts of obsession, as there are other things I would have liked to work on rather than a single illustration that won't really help the project meaningfully. But I'll take it!

« Last Edit: June 20, 2021, 06:11:32 PM by diegzumillo » Logged

JobLeonard
Level 10
*****



View Profile
« Reply #110 on: June 21, 2021, 12:31:42 AM »

It's a really nice mood piece though!

Are you ready to share a bit of the story ideas or do you want to give it a few more rewrite passes first?
Logged
diegzumillo
Level 10
*****


This avatar is so old I still have a some hair


View Profile WWW
« Reply #111 on: June 21, 2021, 08:21:51 AM »

thanks! I like it too. The mystery mountain is not distinct enough in this image, in my opinion. Maybe it needs a different color.

Nothing worth sharing of the plot at the moment, at least nothing beyond what I already shared. The setting is still more or less the same.
Logged

diegzumillo
Level 10
*****


This avatar is so old I still have a some hair


View Profile WWW
« Reply #112 on: June 29, 2021, 06:30:43 AM »

Spent way too long wandering aimlessly now. Ever since I felt satisfied with the plot status the project lacks any immediate goal. Someone reminded me of the importance of deadlines recently so I am going to set a few.

One of the lingering questions that have not been answered by the prototype yet is whether or not to have a nonlinear map with upgrades. My goal was to have light metroid elements, not exactly upgrades as keys but other reasons to want to explore. Being a stealth game one of the reasons might be to find better entrances to locations, or manipulate the world from different locations (turn off the lights on a building from a power source somewhere else, pull a lever in one place to open a gate in another). Other possibilities are just using knowledge of the world, like information games. You could have entered that cave at any time, there is no key or ability requirement, but you don't know how to yet, and once you learn it you can go there. A simple example is a code to a door, a more elaborate example might be understanding the weakness of a security system.

I was putting off working on implementing this stuff until I had some other aspects of the project further developed. Now that I do have the skeleton of a plot it makes sense to start pursuing this again. I also want to have a basic tilemap to help my imagination a bit. I have been working on a city-like environment:


(ignore the text, I'm just using the title screen to view the image through the emulator's CRT filter)

This is something I could not work until I had some plot elements good enough to be fixed in place. Now I know I want a city, so there we have it. Still trying to strike a nice balance between futuristic and old looking.

My deadline is to have a tilemap (exterior like the above and one interior) AND a basic map to walk around using it by monday. The map needs to be a smaller representation of what I want the game to be; a non-linear explorable place with light metroidvania elements. Leaving the actual implementation of systems for next week, so just the map and imagination for monday.

With this and next week's work I will be back on track, I believe. It will finally answer questions about gameplay.
Logged

Prinsessa
Level 10
*****



View Profile
« Reply #113 on: June 29, 2021, 02:16:02 PM »

That looks so cool! Would love to see it without the filter too. Looking forward to hearing what you decide on for progression Smiley
Logged

JobLeonard
Level 10
*****



View Profile
« Reply #114 on: June 29, 2021, 10:44:32 PM »

That looks amazing!

The level design ideas sound pretty cool Smiley
Logged
diegzumillo
Level 10
*****


This avatar is so old I still have a some hair


View Profile WWW
« Reply #115 on: July 05, 2021, 09:43:39 AM »

Thanks, yous! :D The process of turning that into a usable tileset is extremely boring. I did not make my deadline, by the way. This has been quite an eventful week and I also got distracted with unnecessary stuff.

For any kids in college reading this and thinking "I wish I had more free time", you have a lot of free time! when you get to grad school you will realize how much free time you had in college. For any grad students out there thinking "I wish I had more free time", you have a lot of free time! Seriously. Baby sitting in a pandemic just drains me from time AND energy. Can't wait to see what life throws at me next. I wonder if I'll have to eat in the shower to save time or something.

Sorry, I tend to overshare personal stuff here. I'll restrain myself.

Speaking of personal stuff, I got a job! I mean, I was hired as a software developer but I only start in October. I wish I could have stayed in physics and science but things are what they are.

Quote
Sorry, I tend to overshare personal stuff here. I'll restrain myself.
OK OK startiiiiiiiing.... NOW.

My goal was to have TWO tilesets AND a map using them. I have one tileset and a sad attempt at putting it in a map last night.





The art is now being made with CRTs (real or shader) in mind, which requires a slightly different approach to 'normal'/modern pixel art. Modern pixel art leans more on minimalism, while this old style relies on blurring to imply extra detail.

While making the map last night a couple of things bothered me. It's hard to judge sizes and distances, so I need a cheat sheet of some sort to help me know what gaps are large enough to jump, height of ledges etc. The other thing bothering me is the workflow for using tilesets. LDtk does not make tilesets, only uses them, and Aseprite has some rudimentary tileset/map tools. Anyway, the workflow is less than ideal at the moment. I might switch to yet another program to fix the workflow.

So the deadline for next monday remains the same: An outdoor tilemap (which is almost done) an interior tileset and a map using them with just implied functionality. Actually, let's also put it for Monday improvements on the workflow.
Logged

JobLeonard
Level 10
*****



View Profile
« Reply #116 on: July 06, 2021, 12:35:53 AM »

Don't overload yourself man!

Good insight on the different goals of pixel art. Designing them around CRT shaders seems like a legit concern. Are you saying that there aren't any pixel art editors with a live "CRT preview" kind of thing? Seems like that would be very valuable
Logged
Prinsessa
Level 10
*****



View Profile
« Reply #117 on: July 06, 2021, 01:38:24 AM »

Wonder if you can get that working with any program using something like Reshade… Who, Me?

Those are a lot of tiles, and good-looking ones, so I think you should be very happy with what you accomplished in the time you had! Love how organic everything feels. Curious about all these fancy round symbols on walls.
Logged

diegzumillo
Level 10
*****


This avatar is so old I still have a some hair


View Profile WWW
« Reply #118 on: July 06, 2021, 10:55:10 AM »

Quote
Are you saying that there aren't any pixel art editors with a live "CRT preview" kind of thing? Seems like that would be very valuable

None! The best I came up with was using CRTview, a free shader program that works from the command line; you just call it followed by the image file and it displays it. I set up a shortcut from my editor of choice so I can visualize the image quickly.

Quote
Wonder if you can get that working with any program using something like Reshade
That's a cool idea. But I doubt I can work out the kinks of proper resolution and get a nice preview.

Thanks for the suggestions, compliments and for keeping up with the project  Coffee Next week there will be more stuff!
Logged

diegzumillo
Level 10
*****


This avatar is so old I still have a some hair


View Profile WWW
« Reply #119 on: July 11, 2021, 06:43:32 PM »

Not quite Monday yet but I can never get any work done on Mondays anyway, so this all I got done this week (which was basically this afternoon)

I have a decent, if a little plain, tileset for something like a city (done last week). No interior tileset yet. And I made a small map with it, it has a building in the center which you need to enter, and there are 3 different ways to get in. I used the same tileset for the interior, so it doesn't look good. I was planning on making a whole new tileset and have the interiors load as different levels, but I think I like having it all loaded at the same time. IT might be possible to add more tiles to this tileset but the palette is completely used already, so maybe I should reconsider using a single color palette for both planes. Something to think about.

I also improved some of my tools for importing the level, nothing major just tweaks and fixes. And I started mapping out the movement range so I can have a cheat sheet of how far the player can jump and that sort of stuff.

The level design workflow is hopelessly slow. Any changes to the level design requires running a python script that takes almost a minute to run, followed by copying and pasting some output text into a source file, and finally building the rom. I say 'hopeless' because addressing this would require either remaking the game in a modern engine in which you can edit and play quickly, or developing a sophisticated editor capable of injecting itself in a running emulator, both of which would be a project almost as ambitious as the game itself. So no, I'll keep trying to make some improvements here and there but this is what it is.

The test level in question:



For this to work as intended a few features need to be implemented:
- Crawling (not strictly necessary but would be cooler!)
- Doors
- Looking up and down
- Some form of vertical movement, like ladders or elevators etc. Mostly to give NPCs vertical movement but also to allow for vertical levels that do not rely entirely on climbing ledges.
- More dangerous challenges besides NPCs.


This last item needs some elaboration. The front door needs to be the most risky route, and at the moment nothing makes it riskier than any other route. So I'm thinking something like an automated turret or a camera system that will spawn a bunch of guards when you get spotted by it. The window route is supposed to be the second most obvious entry point, and it could be less risky by having the camera/whatever only occasionally turn right.

The rooftop entrance is the most elaborate route, it requires climbing another building, so there's some platforming involved.

Next week's deadline is yet to be defined. I need some sleep now. Take care, all  Coffee
Logged

Pages: 1 ... 4 5 [6] 7
Print
Jump to:  

Theme orange-lt created by panic