Welcome to the S.A.M.M. platformer development thread!

Check out the game's backstory at its official website.

The first installment of the series is now available for download!

Download: https://www.cemetech.net/downloads/files/2265/x2590


Original post


Introducing S.A.M.M. CE, a 2D platformer exploration game!

Screenshots



Download: https://www.cemetech.net/downloads/files/2225/x2509

This is a stable, beta version that demonstrates the program's gameplay and a few of the player's abilities. Later versions will support multiple languages (already implemented) and have larger, more complex world maps.

Thanks to jacobly for writing the screen fade in/out code!
oooh!
super cool!
what language is this in?
also, what do you plan to add?
Thanks!

It is written in C++ with a smidge of eZ80 assembly. I am toying with different ideas at this point, deciding what I would like to add.
Wow this looks super awesome - is there a level editor in the works?
Thanks, Mateo! I hoping there will be an editor at some point, but I am holding off on building one until I nail down exactly what will be in the game. Right now I am using Tiled and a text editor.
I'm getting massive Metroid: Fusion vibes which is fantastic, because that's my favorite Metroid game!!

Good work, it looks excellent so far!!!
It's a mathroidvania!

But seriously, it looks really cool! Looking forward to playing it.
Excellent work, I particularly like the smooth scrolling and the menus, everything looks very polished. Any particular reason you decided to not make the tilemap cover the whole screen (maybe coherence with Metroid or speed)?

Looking forward to more updates!
Very nice! I love that type of games too so I hope to see this finished Smile
Looks very nice, congrats!
Looks great! I love the art style.

What kind of enemies will you have?
Thanks for all of the feedback!

epsilon5 wrote:
Any particular reason you decided to not make the tilemap cover the whole screen (maybe coherence with Metroid or speed)?


The tilemap does not cover the entire screen to increase the frame rate. This is important given the large number of graphical objects that are drawn individually over the tilemap, such as crates, doors, and so on.

tr1p1ea wrote:
What kinds of enemies will you have?


None. S.A.M.M. takes place in a earthquake-shattered mine so there are (almost) no signs of life anywhere in it. Not including enemies does remove part of the challenge associated with traditional Metroid-vanias, but S.A.M.M. will make up for it by having an unusually hazardous enviroment.

S.A.M.M.'s gameplay is centered around exploring every nook and cranny in a dark, dilapidated world while gradually acquiring upgrades that enhance your mobility and agility. I am experimenting with the player's move-set and environment, seeking to create something unique that will set it apart from other Metroid-vanias.
Excellent - sounds like a great concept. I actually like exploration games so I'm looking forward to seeing more Smile.

I really do like the graphical variety too with the different foreground objects along with moving platforms and such too.
Wow! Looking great!

Captain Calc wrote:
Thanks for all of the feedback!

epsilon5 wrote:
Any particular reason you decided to not make the tilemap cover the whole screen (maybe coherence with Metroid or speed)?


The tilemap does not cover the entire screen to increase the frame rate. This is important given the large number of graphical objects that are drawn individually over the tilemap, such as crates, doors, and so on.


Yes, as Captain Calc has already said, the CE is not exactly known for having the best fps when it comes to using the entire screen.
I totally forgot about this. I got reminded of it when TI-Planet posted a news a few seconds ago. I'll download it and try it when I get a chance. Smile
Wow, the game is beautiful ! Good luck Smile
Always happy to see metroidvanias on calculators, this genre is underrepresented but has a lot of potential.
Progress Update

I lost S.A.M.M.'s codebase recently, so I have been busy rebuilding the code from a not-so-recent, but serviceable backup. Some stuff was lost, but it has given me the opportunity to do some code restructuring and integrate several components that were missing from the prototype, such as game events handler and an in-game cheat... um... debugger.

The game events handler controls changes to the world map when the player, say, flips a switch in one area to make another one accessible, and so on.

I still plan on making a world map editor, probably in Qt.

I have also been experimenting with a few new background elements:



Hoping to have some more updates in the coming weeks!
Captain Calc wrote:
I lost S.A.M.M.'s codebase recently

That sucks.
Progress Update

S.A.M.M. is coming along slowly but surely.

I have re-coded the player's movement mechanics using states instead of a twisting jumble of code thrown into a generic Player;;update() function. Using these makes the code much more intuitive and easier to maintain, splitting each of the player's various "states" (standing, falling, jumping) into neat packages.

Here is the guide I used if anyone is interested about how this works. This man has written a book about common patterns in game code and has offered the entire work online for free!

The current codebase has probably 50% of the prototype's functionality, but with better design and more features. These include:
  • A comprehensive built-in debugger (some parts shown in screenshot, but many more features implemented)
  • An achievements system (to be implemented)
  • A game events system (controls changes to the world map as the player explores it; to be implemented)

I am also hoping to re-design the map so that it will show the entire world rather than a single area at a time, like the prototype's map.

I have laid out about half of the game's world map. Each room still needs to be designed, a process waiting on completion of the map editor. This half of the world map contains approximately 100 rooms. For comparison, Super Metroid has roughly 260 rooms. With the current design, S.A.M.M. can support rooms from one screen wide by one screen tall (1x1) to massive 8x8 spaces. A single screen is 10 tiles high by 14 tiles wide.

Screenshot



The numbers in red show the frame rate and the flashing strings in brackets indicate button presses.

That's all for now! Smile
Progress Update

I have made a lot of progress on SAMM since my last post. It finally has more functionality than the beta with more yet to be added! Very Happy

Screenshot



Moving platforms (both horizontal and vertical) now work and can be either switch-operated or automatic. Save stations are also functional. The little crate in the upper right-hand corner of the room is an ore box, which gives the player ore samples (a points system).

A few of you may recognize the red barrel-shaped object on the moving platform. It is a TNT barrel, highly explosive and useful for blowing holes in walls. These were also present in the beta (And are fully functional. A little reverse-engineering of the beta's save file will actually allow the robot to produce a red shockwave that will set off nearby explosives. I am not responsible if you blow up the beta in the process Wink ).

You might notice the three different colored shapes at the top of the screen. These indicate what keys the player has. The beta had three types of keys: green, red, and yellow. I preserved that color scheme, but added a unique shape as well to help color-blind players.

Possible release date: Late Summer/Early Fall 2022
  
Register to Join the Conversation
Have your own thoughts to add to this or any other topic? Want to ask a question, offer a suggestion, share your own programs and projects, upload a file to the file archives, get help with calculator and computer programming, or simply chat with like-minded coders and tech and calculator enthusiasts via the site-wide AJAX SAX widget? Registration for a free Cemetech account only takes a minute.

» Go to Registration page
Page 1 of 2
» All times are UTC - 5 Hours
 
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum

 

Advertisement