"CBX", metroid-like game (early development stage, Unity engine)

Started by hlw, September 15, 2017, 01:07:38 PM

Previous topic - Next topic

hlw

Greetings from France !
I have been learning a few years game programmation using unity (C#) , and decided it was time for me to finally create one.
As Super Metroid was the first game I ever played, and as I remembered creating an account on the metroid construction forums back in time when I wanted to hack SM and make it a little faster paced , I started working on a metroid clone something like a month earlier.

I wish to create a game containing my favourite features in Super Metroid, a fast pace, a great liberty of movement and paths designed for speedruns.
I plan to make the game easy to mod, with an integrated map editor working at runtime (modders will be able to pause the game, add a new platform , and unpause the game).
Players will be able to pimp their armors, choosing between a big laser or a machinegun when realeasing a chargebeam, or to grab a wall when hitting it with a shinespark, being able to rotate while shinesparking etc...

I don't know if I'll be good enough to do it, but I plan to create cool ennemies IA as i don't like static monsters waiting for their deaths.

Here is a little video of what is created so far :
[spoiler]https://youtu.be/fmIdKueNBDE[/spoiler]

Character and ground/wall sprites are just dev sprites I use to test physics.
The game can only be played using a controller with L/R 1 and 2 , 4 buttons, a POV cross, and two joysticks. (Xbox, Playstation,  WiiU/ Switch pro controllers, new nintendo 3DS).
For now,

  • L1 bound to jump,
  • R1 to shoot,
  • R2 to charge beam,
  • left joystick to walk/run,
  • right joystick to aim,
  • POV cross to switch between energy/fire/ice/electric beams.

The gun won't be attached to the player, it will be a floating drone following him and rotating around him. Sword melee attacks will be added, and the drone will attach itself to the player arm.
For now, there is no door linking to rooms, rooms are slowly loaded (50 tiles per second) as the player walks (when he goes through those black things in the video).
As you certainly figured out, i'm bad when it comes to design animations and tiles. A friend of mine decided to join me and is creating soundtracks for the game as he actually is a trap music creator.
I won't use Metroid tiles/sounds/characters, if the game ever get to its end, I will try to sell it using steam/ nintendo store etc ...
I'm creating this thread because i somehow feel lonely creating this by my own with noone to help me / give me advices / give me opinions, I would work better with a little bit of cheering.
Thank you a lot for reading my first contribution to the metroid construction forum.

Hackmi

The physics looks quite decent right now, personally, I think you should plan ahead, like areas and powerups 😄

Good luck

hlw

Actually, i forgot about it but because of lazyness but i didn't code the physics needed to climb / descend slopes properly (because it need trigonometry and i hate that). Actually the character has hard time accelerating while climbing, and "jumps" in the air if descending a slope too fast. It should be fixed during the night.

I'll create some power-ups, but i'm kinda stuck about areas.

Thanks for the input :^_^:

[EDIT : Climbing/Descending slopes troubles fixed]

hlw

(UPDATE) I went for area creation instead of creating power-ups actually.

I modified the way levels are designed. Instead of just populating space with tiles, wall and platforms are now created by creating a polygon using points (You click three times on the screen to create a triangular platform just like in Super Smash bros WiiU map editor).

[It create a 2Dmesh using triangulator , creates a polygonCollider automatically, and creates a new material using a given sprite and automatically tiles it]
(Tiles inside the mesh automatically get resized to be 1 unit large and tall, it appears tiles get a blurred feel when getting bigger than 512 ²pixels on an UHD screen, it makes pixel art harder to realize, but problems happening if pixel perfect design isn't perfectly realized (pixels flickering or getting distorded) disapear).

It also able designers to create big sprites (40*40 units for example) to create a platform using only a part of the sprite automatically cutted down in the shape of the mesh (exactly what happens in super smash bros 4).

Creating a platform will be a bit different from tilling. Usually you would create one horizontal line populated with the inner tiles, on top of it would put a line of tiles designed to be on top like grass+roots.
There it will be needed to create a rectangle 2 units tall creating a platform made of inner tiles only. Then you select the top part of the rectangle and set half transparant tiles made to look like grass with roots on it.

I'd like to know what are the features you use the most when tiling levels, or the features you would like to have when doing it. I also am wondering what kind of keyboard shortcuts feel naturals as I need to create a nice map editor.
I also would love if someone could lend me some tiles sprites for testing only (in a png / corel paint shop pro / gimp format) (with grass(?)/edges and inner platform in a separate image/layer).

hlw

Started developping the map editor. Here a video ( Set the subtitles in the video to have a description of what is happening).
https://youtu.be/sOgB90x2a7w

It shows the creation of a platform in an empty level. Saved levels will be exported as an external file, putting that file in the game folder will add it to the game.

I am still looking for ideas to add into this editor. For now i think about these things to add later:
A tracing paper to prototype levels (clicking inside a grid cell with this brush will create a transparent cube).
Another kind of tracing paper to create the minimap.
Ability to cut holes in a mesh by setting the points of the hole .
Pressing space to make a transparent copy of the character in the mouse current location, displaying using circles and curves the jumps player might be able to do from that position.

Thanks for reading.

Hackmi

Hmm...interesting.
Good luck!
The levle(map) editor looks decent so far.

hlw



As you can see, I got some troubles making the editor creating edges of platforms in a 100% automatic way... This is slowing down the project, I hope i'll finnally find a way to make it work.

hlw


I got it working, it's still a bit glitchy because i don't have the right sprites though. Also, I didn't end my angle detection code, because of a movement design issue.

I want something super-metroid like, and i cant be sure about how much sharp slopes you would be able to walk on.



Would someone mind telling me about where samus wouldn't be able to continue walking naturally ?  Would she go on until the angle is 90°? Or would she stop before that?  Way before that? Slightly before that ?

Scooterboot9697

There are 3 types of slopes in Super Metroid: 22.5 degrees, 45 degrees, and 67.5 degrees.

Samus can walk on 22.5 and 45 degree slopes normally, but 67.5 slows her movement and I believe will even stop Speed Booster. So I assume anything steeper than 67.5 degrees would prevent horizontal movement entirely.