Bay 12 Games Forum

Please login or register.

Login with username, password and session length
Advanced search  
Pages: [1] 2

Author Topic: Wreck of Theseus: A 2D rogue-lite Mech platformer/shooter  (Read 12482 times)

Vactor

  • Bay Watcher
  • ^^ DF 1.0 ^^
    • View Profile
Wreck of Theseus: A 2D rogue-lite Mech platformer/shooter
« on: July 30, 2014, 08:21:34 pm »

Wreck of Theseus
A future game by Vactor

UPDATE (New Enemy "Walker"):


--------------------------

Wreck of Theseus is a little project I've been working on the last few weeks.  The primary theme I was toying with when I started it, is making a mech roguelike similar to Binding of Issac, or Risk of Rain, but instead of collecting powerups, you find new and better mech parts.  Through the course of the game you would likely replace all of your parts for better ones.  (the Title is a reference to the legendary Ship of Theseus and the question of, if all of the boards of a ship have been replaced, is it the same ship?)

So far I've got a little mech you can control, which has individual parts that can be damaged and disabled.

Here it is:
Spoiler (click to show/hide)

The mech can run, jump and shoot, and has a 'jumpjet' that enables multi-jumping and control while falling. Individual components house different controls, so it is possible to play on even if your legs are disabled and you can no longer walk around, as long as you have a non-disabled part that has jumpjet capabilites.

I've also got a basic floating enemy that drifts around and shoots at the player periodically. 

I'm working on level generation, which at this point multiple "rooms" can be matched together to form a level, however at this point it needs to be done manually rather than procedurally.  The system currently supports multiple tile types, some which are destructible, some immune to damage.

The last big core system I need to work on is the part swapping feature of the mech.

I've mostly been working on the core systems rather than content at this point, but once I have everything working at the basic level it should be relatively easy to add additional content.  The art right now is just placeholders.

I have a playable testbuild that I'd be willing to send to people if they are interested in giving feedback on what I currently have (Please note it is very much not a game at this point, more of a tech demo)

Finally, here is the little guy in action, and a glimpse of the enemy:
(the discoloration of various objects is the current damage indicator, my hope is to have a transition between two different sprites instead once art is added)
Spoiler (click to show/hide)

As far as how I'm feeling about the project at this point: This is the 5th game I've tried to program, (the first being my ill-fated Airlands project) and I'm feeling like i'm finally to the point where I know what I'm doing enough to succeed.

Anyhow, i'd love to get some feedback, if you want me to send you the testbuild just pm me the email address you would like me to send it to.
« Last Edit: October 03, 2014, 09:36:44 pm by Vactor »
Logged
Wreck of Theseus: My 2D Roguelite Mech Platformer
http://www.bay12forums.com/smf/index.php?topic=141525.0

My AT-ST spore creature http://www.youtube.com/watch?v=0btwvL9CNlA

Vactor

  • Bay Watcher
  • ^^ DF 1.0 ^^
    • View Profile
Re: Wreck of Theseus: A 2D rogue-lite Mech platformer/shooter
« Reply #1 on: July 31, 2014, 01:56:09 pm »

First up, a peek into the level builder I'm working on:


Each room is made before hand using an image editor, when building the level the builder retrieves the pixel color data and adds elements based on the values.  Right now the red value is used to define tile placement, and the blue value is used to assign starting points for enemies.  Using just these two colors I can have 256 different tile types and 256 different enemy types.  If needed, I can use the green value as a second variable, which would increase the possible variety beyond anything I would ever need.

Here are a few basic rooms I quickly drew up:











(you may not notice the color variation, as the current color values i'm using are 10, 20 and 30, which are all pretty close to black.)


And here's a zoomed out image of what the game can do with these to build a level:

Spoiler (click to show/hide)

This method makes it very easy to add new rooms and tiles to the game, and the best part is that if I change the properties of the tiles, I don't have to go back into the existing levels and update the tiles individually.
Logged
Wreck of Theseus: My 2D Roguelite Mech Platformer
http://www.bay12forums.com/smf/index.php?topic=141525.0

My AT-ST spore creature http://www.youtube.com/watch?v=0btwvL9CNlA

Trif

  • Bay Watcher
  • the Not-Quite-So-Great-as-Toady One
    • View Profile
Re: Wreck of Theseus: A 2D rogue-lite Mech platformer/shooter
« Reply #2 on: July 31, 2014, 02:13:42 pm »

Neat! The concept reminds me a bit of Captain Forever.

Posting to watch!
Logged
Quote from: Toady One
I wonder if the game has become odd.

Vactor

  • Bay Watcher
  • ^^ DF 1.0 ^^
    • View Profile
Re: Wreck of Theseus: A 2D rogue-lite Mech platformer/shooter
« Reply #3 on: July 31, 2014, 10:15:43 pm »

I added in a second projectile type today after work to help me test the destructible terrain, and took a brief gameplay video of it in action:

Allow me to introduce the Grenade projectile:
https://www.youtube.com/watch?v=8Amp7UQrrlM
Logged
Wreck of Theseus: My 2D Roguelite Mech Platformer
http://www.bay12forums.com/smf/index.php?topic=141525.0

My AT-ST spore creature http://www.youtube.com/watch?v=0btwvL9CNlA

Vactor

  • Bay Watcher
  • ^^ DF 1.0 ^^
    • View Profile
Re: Wreck of Theseus: A 2D rogue-lite Mech platformer/shooter
« Reply #4 on: August 01, 2014, 06:30:45 pm »

So today I wanted to talk a little bit about the story for this game.

It is the end of the great war, your people have finally overthrown the oppressive, terrible, and mysterious aliens that had ruled them for as long as anyone could remember.  With their homeworld destroyed, the remaining aliens had been scattered, and hunted down throughout known space.  There is only one alien ship left, a military vessel that has just been downed on the distant planet Theseus.  Several operations to secure the crash site have already failed. You are being sent in next.  It is up to you to exterminate the last of the monsters, using whatever you can scavenge from the wrecks of those who have fallen before you to succeed.  You cannot allow the aliens to escape or rebuild their ship


One of the themes this covers is the ethical question of destroying an entire species to ensure your own's freedom or survival.  There is also the element of the story of others who have attempted this mission before you, which allows me to play with the possibility of them betraying their own people, becoming disillusioned with the mission, or becoming corrupted by the aliens, which could all lead to you fighting one of your own (It also handily explains why you can find all kinds of compatible mech parts inside an alien ship)

As for the aliens, my plan is for their scale to be massive, one decoration I had in mind would be fallen mechs impaled on giant spikes, with the idea being the aliens are large enough to pick mechs up and skewer them. (I've got some other ideas about this, and the aliens in general, but I don't want to give too much away)


In other news, I worked a bit on the explosion effect, and now have damage based on proximity to blasts, visible damage to both damageable and immune tiles, and fixed a few performance issues with the active physics of falling blocks.  I added in explosions to the enemy, so they will now generate a small blast when they are destroyed, and will self destruct if the player touches them.

Here is a sample of the level I posted earlier that has had a few explosions go off in it, with the new blast marks:
Spoiler (click to show/hide)
Logged
Wreck of Theseus: My 2D Roguelite Mech Platformer
http://www.bay12forums.com/smf/index.php?topic=141525.0

My AT-ST spore creature http://www.youtube.com/watch?v=0btwvL9CNlA

Glloyd

  • Bay Watcher
  • Against the Tide
    • View Profile
Re: Wreck of Theseus: A 2D rogue-lite Mech platformer/shooter
« Reply #5 on: August 01, 2014, 08:55:24 pm »

Woah, I love the look of those blast marks, liking that grenade projectile too. I can see some interesting strategic destruction implementations. What are you plans for the scale of the map, do you intend it to be something infinite, or will there be a definite size to it?

Looking pretty good so far though Vactor. Can I ask what language you're writing it in?

Also, I wouldn't mind taking a stab at the test build and giving you some feedback. Fire me off a build when you get a chance.

Nienhaus

  • Bay Watcher
    • View Profile
Re: Wreck of Theseus: A 2D rogue-lite Mech platformer/shooter
« Reply #6 on: August 01, 2014, 11:25:43 pm »

Posting to watch. Also I sent you an email.
Logged

Vactor

  • Bay Watcher
  • ^^ DF 1.0 ^^
    • View Profile
Re: Wreck of Theseus: A 2D rogue-lite Mech platformer/shooter
« Reply #7 on: August 02, 2014, 10:22:57 am »

I'm using Unity, and writing in UnityScript.  I've tried C# with XNA and Java with LWJGL int he past, and so far I'm extremely happy with Unity.  While the other setups give you a lot more control with your code, they didn't have(at least when I tried them) as foolproof of a graphics implementation.  To a large degree Unity takes care of a lot of the optimizations that would be pretty advanced stuff to try to do yourself.  Its really nice to be able to focus my time on building the game logic engine rather than wrestling with vertex buffers.  On the flip side, the code side of Unity is robust enough for you to emulate a lot of the strengths of the other setups that Unity is missing.  The gameobject/prefab system in Unity also seems to help keep your game system modular, as it kind of forces you into thinking and working with that mindset.

As for the Map, right now I'm forcing myself to stick to Keeping it Simple, so the current plan is to have around 8-10 levels that increase in size with 4-5 tilesets, each ending with a boss. (I'm drawing a lot from Binding of Isaac for this part).  The current plan is to have the levels self contained, but having them flow into each other could be a possibility, but would probably need to include some active loading/unloading rooms with the volume of physics objects I'm dealing with.  I don't think I'll pursue a Dungeon Crawl Stone Soup style massive dungeon with this, but if the game is finished, and the active loading/unloading of rooms is solved it could be possible to have an endless gamemode.
Logged
Wreck of Theseus: My 2D Roguelite Mech Platformer
http://www.bay12forums.com/smf/index.php?topic=141525.0

My AT-ST spore creature http://www.youtube.com/watch?v=0btwvL9CNlA

Glloyd

  • Bay Watcher
  • Against the Tide
    • View Profile
Re: Wreck of Theseus: A 2D rogue-lite Mech platformer/shooter
« Reply #8 on: August 02, 2014, 11:37:52 am »

Yeah, I've dabbled with Unity before. It seemed like quite a powerful development tool, but I only fooled around with it for a bit, nothing serious.

That sounds pretty good, BoI's system worked pretty good, and a variance in enemies throughout the levels would help keep things fresh ala Risk of Rain. Once the parts system gets implemented, I can see that working out really well.

Also, I gave the game a shot. I'm liking it so far, and I especially like how the destructible parts of the walls falling down can totally change the battlefield. One thing though, are the grenades supposed to be made out of super bouncy rubber? ;)

Might be nice to also shorten the number of characters your jump jet fuel charge can show. It'd be a lot cleaner seeing 7.5 or even 7.54 than 7.541278. Besides that, what is in so far seems pretty solid. Although, you might want to also have a way to shoot things at a steeper low angle than you currently can. I had to do some tricky maneuvering to take out a turret that was on the ground below me.

Aoi

  • Bay Watcher
    • View Profile
Re: Wreck of Theseus: A 2D rogue-lite Mech platformer/shooter
« Reply #9 on: August 02, 2014, 02:43:17 pm »

I really like the title. And one of the technicians dispatched by Dell to fix one of my computers actually called my system 'the wreck of Theseus' because literally every single potentially critical component was removed/replaced and the thing still wouldn't boot up.
Logged
Stench Guzman: Fix this quote, please.
Now celebrating: Two and a half years misquoted. Seriously man. Just fix it. -_-

Vactor

  • Bay Watcher
  • ^^ DF 1.0 ^^
    • View Profile
Re: Wreck of Theseus: A 2D rogue-lite Mech platformer/shooter
« Reply #10 on: August 09, 2014, 10:43:16 pm »

I just got the level builder working (almost) correctly.  It first maps out a set of rooms, then does a second pass where it looks at each room's neighbors, and selects the correct room type for it's situation, allowing passage to all neighboring rooms, and preventing passage into null rooms.  It is set up to handle any number of room variants(randomly selecting from the appropriate room group), and if the left and right side are the same, it will randomly flip rooms around their axis to add variety. 

Here is a sample picture of a level I just generated: (right now I've only got one or two rooms for each situation, so it repeats itself a bit)
Spoiler (click to show/hide)


As far as the "almost correctly" I need to add in a bit of code to handle when rooms are right along the edge of the array that stores their values.
« Last Edit: August 09, 2014, 10:44:49 pm by Vactor »
Logged
Wreck of Theseus: My 2D Roguelite Mech Platformer
http://www.bay12forums.com/smf/index.php?topic=141525.0

My AT-ST spore creature http://www.youtube.com/watch?v=0btwvL9CNlA

Glloyd

  • Bay Watcher
  • Against the Tide
    • View Profile
Re: Wreck of Theseus: A 2D rogue-lite Mech platformer/shooter
« Reply #11 on: August 29, 2014, 06:27:07 pm »

Any new work done on this recently?

Vactor

  • Bay Watcher
  • ^^ DF 1.0 ^^
    • View Profile
Re: Wreck of Theseus: A 2D rogue-lite Mech platformer/shooter
« Reply #12 on: September 03, 2014, 07:42:43 pm »

Nothing too substantial right now, most of my coding is during downtime at work, and we've been very busy lately(bringing in and training 3 new employees)  I'm hoping in a couple weeks i'll have some new stuff done on this.
Logged
Wreck of Theseus: My 2D Roguelite Mech Platformer
http://www.bay12forums.com/smf/index.php?topic=141525.0

My AT-ST spore creature http://www.youtube.com/watch?v=0btwvL9CNlA

Vactor

  • Bay Watcher
  • ^^ DF 1.0 ^^
    • View Profile
Re: Wreck of Theseus: A 2D rogue-lite Mech platformer/shooter
« Reply #13 on: October 02, 2014, 08:40:15 pm »

Got some time to work on this today.

I added in a new block type, the elevator, which works pretty much how you'd expect, moving up and down, reversing direction when it encounters a block.  One of the cool things that happens because of this is that falling blocks will trigger the elevator's proximity sensors, so as debris starts falling it can muck with the operation of the elevators.

Since I was adding in new tiles to the rooms, I decided to spend some time reworking the rooms to give them a bit more of a consistent style and fit the idea of moving around a ship, rather than the random mess that it was before.  I also scaled down the size of each room as it felt a little bit too big before:

Spoiler (click to show/hide)

And one a little closer:
Spoiler (click to show/hide)
« Last Edit: October 02, 2014, 08:49:49 pm by Vactor »
Logged
Wreck of Theseus: My 2D Roguelite Mech Platformer
http://www.bay12forums.com/smf/index.php?topic=141525.0

My AT-ST spore creature http://www.youtube.com/watch?v=0btwvL9CNlA

Glloyd

  • Bay Watcher
  • Against the Tide
    • View Profile
Re: Wreck of Theseus: A 2D rogue-lite Mech platformer/shooter
« Reply #14 on: October 03, 2014, 01:00:05 am »

Cool! I'm really liking the fact that a large portion of the level is now destructible, I had a ton of fun jumping around and dropping blocks everywhere before, I can only imagine how it is now. The new level designs are looking really cool too, I'd love to check out the new build if there is one.
Pages: [1] 2