Welcome, Guest. Please login or register.

Login with username, password and session length

 
Advanced search

1411197 Posts in 69315 Topics- by 58380 Members - Latest Member: feakk

March 19, 2024, 05:58:38 AM

Need hosting? Check out Digital Ocean
(more details in this thread)
TIGSource ForumsCommunityDevLogsHeart&Slash - [RELEASED ON XBOXONE AND PS4]
Pages: [1] 2 3 ... 20
Print
Author Topic: Heart&Slash - [RELEASED ON XBOXONE AND PS4]  (Read 88068 times)
Juan Raigada
Level 3
***



View Profile
« on: June 30, 2013, 12:51:47 PM »


Humans are long gone and all that remains are machines, working through the motions set-up by their masters many ages ago. Their sole priority is to ensure everything complies with the obscure standardization protocol, under the supervision of the all-seeing robot leader Quality Assurance System (QuAsSy).

But not all robots are the same. Maybe a result of faulty wiring, there are some willing to stand for themselves, to resist conformity and find their identity.

This bleak lifeless world doesn't cut it. You are Heart, and you want MORE.

You want to become so unique and dashing that nobody will dare look away from you.

You want to be loved.

Heart&Slash is a fast paced brawler with roguelike elements, inspired in equal parts by Bayonetta, Megaman and ADOM. It is also a throwback to our earlier years as gamers, when playing games was all joy...


Started as a personal part-time project (you can follow the development process here), Heart&Slash has grown into something bigger than initially intended. From a one-man project, it soon became clear that a bigger team is required to make it the game it deserves to be.

  • Fight using 75 different weapons and 60 different body parts that will change the way the game plays. Teleport, stop time, fly with a jetpack, wall-jump, discover enemy weaknesses and so on. From the trivial to the game-changing, you can try thousands of different combinations.
  • Die and try again. Heart&Slash is not an easy game. But dying shouldn't matter as robots can be easily and indefinitely cloned. Every time you start a new game, the levels you fight through, and the items or weapons you collect, will change.
    A unique art style that will bring back the memories of game systems long gone.
  • The game will have almost no downtime. Levels are short and brutal, and the game, in a successful run, should not be too taxing on your time (whether you will ever be able to make a successful run is another matter). Heart&Slash aims to offer the player something new and challenging. Ultimately, playing Heart&Slash is not about mastering one system. Instead, it’s about being able to adapt to what you are given and making the best out of it.









I'm keeping the original announce for further information...


HEART & SLASH
A beat'em up roguelike.

Hi everybody, I am finally showing what is to be my first serious attempt at making a game. I have previously made serious attempts at film directing, screenwriting, and making a decent living, and failed miserably at all of them. Let's see how this one turns out, eh? I know I'm new to the community and posting a Devlog as one of my first posts. As something that maybe will redeem me somewhat, I have to say I am a looong time lurker, and that everything I know about indie gamemaking I owe to this community. I will honestly try to get involved with everybody here.

Anyway, Heart & Slash is a beat'em up roguelike-like (think Binding of Isaac meets DmC). Apart from permadeath and random level generation, roguelike elements will show up in enemy spawning (enemies are modular and hopefully I will obtain decent variety) and the random pick up system. Apart from 3 switchable weapons, the main character can equip and level-up up to four different pieces of equipment (head, arms, body and legs) which allow for new attacks and skills that I intend to heavily modify gameplay (for example, changing from a regular roll-evade to a Bayonetta style time stop).

It seems I will be making the game by myself unless I magically find funding or a pot of gold. Right now I have done programming (in Unity3D), art and animation. I will most likely require help with sound and music, since I do nothing about those fields and I am already trying to juggle too much. I have a couple of leads already in the indie Spanish community, but nothing solid yet.

See that 10% next to the topic name? Well, I think that is actually quite a fair assestment. I have been working on it for 4 months and most systems are in place (some, like spawning of enemies and collectibles will need rewriting to account for dynamic balance, but they work now). Hopefully by late August/mid-September I will have a playable Alpha comprising a somewhat content-scarce first level (out of five) of the game. That will bring the icon to 20%.

Right now I can't predict how much time I will be able to devote to the project in the July-December period, so plans are very unambitious until January. After that, the plan is to plunge into the project (and burn my savings so I can devote almost full-time to this) to *maybe* release the complete game around Sept-Nov 2014 (but this is a wild, wild guess). The purpose of the project was to create a portfolio piece that would enable a thirty-something with no industry experience to land a job in the industry in Spain. We'll see how that goes. I'll also write about that experience.

I´ll post an screenshot and shut up now. I will be updating this Devlog as I find interesting material to write about. I am working without a design document and I plan to make this thread the substitute of one.



I'm keeping the original announce for further information...


HEART & SLASH
A beat'em up roguelike.

Hi everybody, I am finally showing what is to be my first serious attempt at making a game. I have previously made serious attempts at film directing, screenwriting, and making a decent living, and failed miserably at all of them. Let's see how this one turns out, eh? I know I'm new to the community and posting a Devlog as one of my first posts. As something that maybe will redeem me somewhat, I have to say I am a looong time lurker, and that everything I know about indie gamemaking I owe to this community. I will honestly try to get involved with everybody here.

Anyway, Heart & Slash is a beat'em up roguelike-like (think Binding of Isaac meets DmC). Apart from permadeath and random level generation, roguelike elements will show up in enemy spawning (enemies are modular and hopefully I will obtain decent variety) and the random pick up system. Apart from 3 switchable weapons, the main character can equip and level-up up to four different pieces of equipment (head, arms, body and legs) which allow for new attacks and skills that I intend to heavily modify gameplay (for example, changing from a regular roll-evade to a Bayonetta style time stop).

It seems I will be making the game by myself unless I magically find funding or a pot of gold. Right now I have done programming (in Unity3D), art and animation. I will most likely require help with sound and music, since I do nothing about those fields and I am already trying to juggle too much. I have a couple of leads already in the indie Spanish community, but nothing solid yet.

See that 10% next to the topic name? Well, I think that is actually quite a fair assestment. I have been working on it for 4 months and most systems are in place (some, like spawning of enemies and collectibles will need rewriting to account for dynamic balance, but they work now). Hopefully by late August/mid-September I will have a playable Alpha comprising a somewhat content-scarce first level (out of five) of the game. That will bring the icon to 20%.

Right now I can't predict how much time I will be able to devote to the project in the July-December period, so plans are very unambitious until January. After that, the plan is to plunge into the project (and burn my savings so I can devote almost full-time to this) to *maybe* release the complete game around Sept-Nov 2014 (but this is a wild, wild guess). The purpose of the project was to create a portfolio piece that would enable a thirty-something with no industry experience to land a job in the industry in Spain. We'll see how that goes. I'll also write about that experience.

I´ll post an screenshot and shut up now. I will be updating this Devlog as I find interesting material to write about. I am working without a design document and I plan to make this thread the substitute of one.

« Last Edit: June 28, 2016, 03:16:27 AM by Juan Raigada » Logged

Juan Raigada
Level 3
***



View Profile
« Reply #1 on: July 01, 2013, 03:08:05 AM »

This is a video showing the basic land attack patterns for the fist (and only, for the moment) weapon I implemented into the game:





The system is quite versatile. Each attack has its own assigned animation, behavior and cancel points. Each attack is then triggered if there is a valid input from the current state the player is in. That allows quite a lot of flexibility and has thus far saved a lot of time in tweaking. The only caveat thus far is that the state matrix can get huge (currently I have more than 20 states and that's with little content, each weapon has its unique ~8 states), which means I will need to rewrite the editor to allow for trimming of the matrix for editing.
Logged

jmptable
Level 0
***



View Profile
« Reply #2 on: July 01, 2013, 04:46:39 AM »

The lofi graphical style is very pleasing to me. Looking forward to seeing more. Good luck.
Logged
Juan Raigada
Level 3
***



View Profile
« Reply #3 on: July 01, 2013, 09:46:19 AM »

Daily Update:

I'm not going to update every day, but I will do it every day I actually work in the game. It will double as a project progress tracker.

I spent all day coding the GUI and the underlying systems for the equipment and character leveling.


In this screenshot you can see a new character (nothing equipped) at Character Level 2 (you can tell that by the two "coins" on the bottom right part of the character HUD element and by the coloring of the text in the information window). This is all resolution independent, although not super-flexible (changing element positions requires imputing some numbers taken from looking at the PSD file).

I was thinking on making a more elaborate system, but:
1- I hate coding GUI, I'm too anal for it and spend far too much time on little details.
2- There are a grand total of 2 menus in the game (plus the main game options menu), so spending too much time in a complex system might not be worth it.

This might come back and hurt me further down the line. We'll see.

Still to do:

-Show current XP and XP cost of the upgrade.
-Provide indications for the control of the menu.
-Provide an element to confirm the upgrade and feedback for both upgrading and trying to upgrade an element that is too expensive.

Most of this should be done by tomorrow (although I won't be able to commit a full 8 hour day). Next step is plugging the experience system into the level generator and enemy spawner (at least do a first iteration on it) so the foundations for dynamic balance are set. That will take a day, I'm guessing.

The rest of the week (2-days) will be spent:
1- Bugfixing.
2- Implementing the different items behaviors at different levels.
Logged

SolarLune
Level 10
*****


It's been eons


View Profile WWW
« Reply #4 on: July 01, 2013, 09:50:29 AM »

The lofi graphical style is very pleasing to me. Looking forward to seeing more. Good luck.

I as well. This already is looking pretty sweet.

@Juan Raigada - Are you going to sell it?
Logged

Juan Raigada
Level 3
***



View Profile
« Reply #5 on: July 01, 2013, 09:56:05 AM »

@Juan Raigada - Are you going to sell it?

I have no idea yet. I guess it's going to depend on how things go. It started as a way to get a job, but maybe I can try to make it a job? I dunno, I'm completely new to this.
Logged

tanner bananer
Level 1
*


aspiring train conductor


View Profile WWW
« Reply #6 on: July 01, 2013, 12:53:19 PM »

Even though there's no gameplay yet, this looks really fun
Logged

Juan Raigada
Level 3
***



View Profile
« Reply #7 on: July 02, 2013, 02:10:25 AM »

Daily Update (1 of 2):

Finished the Upgrade GUI and the assorted functionality. Equipped parts now can be upgraded (what the upgrade does is not coded yet. That has to be done item by item).

This is the finished GUI:


NEXT STEP:

Now that we have an XP system, we need to do something with it. My plan is to implement some sort of dynamic balance, not to make the game fair to the player, but to make sure it is always somewhat unfair.

To achieve that I am thinking of a system with the following factors:

1-PLAYER DANGER FACTOR: This basically tells the game how powerful the player character is. Basically it's an addition of every equipped part accumulated XP plus any unspent XP the player has. This has the benefit of automatically balancing upgrade cost to perceived power of the weapon (balancing those numbers is a different story, though). Plus, every equippable item has a cost for it's level 0, hidden to the player, which can make some parts more dangerous (and maybe allow me to effortlessly implement cursed parts).

2-ENEMY XP VALUE AND DANGER FACTOR: Each enemy has an XP value that it's added to the player XP when defeated. There's also a danger factor that tells the game how difficult that enemy is. In this case the values are detached since I do not want them to scale linearly (harder enemies will give comparatively less XP than easier ones, thus making the game harder as it progresses).

3-ROOM DIFFICULTY: The level generator will start every level trying to generate rooms with a danger factor equal to the player XP (thus the very first rooms generated will be balanced). Then, every time a room with enemies is generated, that difficulty is increased by the cumulative XP value of the enemies multiplied by a factor (depending on level number and difficulty, I think. A good starting point will be 1.5).

This will create (hopefully, and given XP and danger values are balanced) a nice exponential difficulty increase per level. The player will start each level fighting rooms balanced for his/her XP, and slowly finding harder and harder rooms the player won't be able to level up to (unless a powerful pickup is found, but that can be included as extra level difficulty). This encourages exploration and a more careful approach to map completion.

The curve will be reset each new level, but since the starting difficulty (due to accumulated XP) and the rate of increment (due to the level difficulty factor) will increase, later levels will be harder than earlier.

I will code most of this today, but since the balancing will depend on having a good variety of enemies for good distribution of danger factors, it won't really impact anything until later in the development.
Logged

SolarLune
Level 10
*****


It's been eons


View Profile WWW
« Reply #8 on: July 02, 2013, 06:54:03 AM »

Sounds really interesting. I'm doing something with experience points and leveling as well, so it's interesting to hear about other approaches to enemies and maps with danger levels (never thought of that myself). Are you planning on having melee as well as ranged combat? I've always been a fan of straight fist fighting in RPG / rogue-like kinds of games, hah. Cheesy
Logged

Juan Raigada
Level 3
***



View Profile
« Reply #9 on: July 02, 2013, 07:03:05 AM »

Daily Upgrade (2 of 2):

Finished item number 2 above, which was definitely the hardest. Algorithms are planned for the changes of the level generator and enemy spawners, so tomorrow I will finish this system and hopefully find some time to kill some annoying (but easy to fix) bugs.

As a goodie, I have started toying with making animated GIFs. Here you can see a snippet of the small intro cinematic (it's really simple, though) currently in the game.


And a picture of two enemies generated with the new algorithm (same enemy, two variants).

Logged

Juan Raigada
Level 3
***



View Profile
« Reply #10 on: July 02, 2013, 07:04:25 AM »

Are you planning on having melee as well as ranged combat? I've always been a fan of straight fist fighting in RPG / rogue-like kinds of games, hah. Cheesy

Right now combat is all melee, although implementing ranged is both planned and straightforward. Did you see the video I posted earlier? It shows some basic melee attacks...
Logged

SolarLune
Level 10
*****


It's been eons


View Profile WWW
« Reply #11 on: July 02, 2013, 07:07:31 AM »

Ah, yeah, sorry, I did see it yesterday. The enemy generation's already looking pretty sweet.  Smiley Hand Thumbs Up Right
Logged

EaglEye
Level 0
***


Belgian Gamer and Youtuber


View Profile WWW
« Reply #12 on: July 02, 2013, 01:56:00 PM »

This game looks interesting. Would love to see how it plays.
Logged

Indie youtuber looking at new and upcoming Indie games. Being informative and entertaining at the same time
MY YOUTUBE - MY WEBSITE
Juan Raigada
Level 3
***



View Profile
« Reply #13 on: July 03, 2013, 05:52:48 AM »

Ok, here we go...

Daily progress update (1 of 2):

Spent a couple of hours finalizing the dynamic spawning system, only to hit one of those Unity Prefab bugs that are a hell to debug. Three hours later I emerged scarred, but victorious.

Take a look at this (and mind the typos!):


What you see is the output of the spawning system (running at level generation) to determine what to spawn in each room. Right now the starting value is 100 and the progress is SpawnedDanger/10*3. The 10 is the XP modifier (an enemy is worth 1/10 of it's danger in XP) and the 3 is the difficulty modifier(for different difficulty modes.

This is with one single room variation with 7 spawning positions and one enemy with 8 variations (ranging in danger from 50 to 550).

Here you can see some of the enemy groups that spawned:





There were bigger groups (like a 7-strong hammer wielding bunch), but I didn't have Fraps running at that time.

The currently implemented enemy can wield nothing, a hamme, a shield or both of those. It can also carry a heart (which gives you one unit of life when you defeat the enemy) which actually decreases the danger of the enemy (thus, they don't spawn as often the further you go)...

Right now I am exhausted of all the bugfixing, so I will most likely have a glass of wine and spend the afternoon with easy polishing stuff. I will post some goodies later today...

Tomorrow I will dive into hard bugfixing again, to stabilize all systems (not much to do) and optimize the game. Right now the thing eats RAM like it's nobody's business (up to 1.7 Gb. depending on level size), and I need to bring that down before releasing a playable. I think I can get it to 400-500 Mb, but I won't know for sure until the optimization is done.

Don't expect this game to have low requirements. The art style I'm using is a compromise between production speed and quality, and I sort of like it, but it is *not* cheap vertex wise. Lots of squares in there (the mesh is optimized, but there are too many hard edges).

Of course, I can always redo the graphics if it becomes too much of a problem. Only the models need work, the animations can stay...
Logged

jonbro
Level 3
***



View Profile
« Reply #14 on: July 03, 2013, 06:44:51 AM »

this is looking really really nice. I love that unfiltered (point scale) texture look! how are you doing level generation? are they 3d spaces with ladders and lofts and such? I am really interested in that.
Logged

Juan Raigada
Level 3
***



View Profile
« Reply #15 on: July 03, 2013, 07:21:00 AM »

this is looking really really nice. I love that unfiltered (point scale) texture look! how are you doing level generation? are they 3d spaces with ladders and lofts and such? I am really interested in that.

Ok, I just planning of writing an entry about this, and since I'm so tired, it beats coding...

PROCEDURAL GENERATION:

Since the game has full 3D movement, level generation has to be very simple or very complex. Very complex would mean for a tile based approach (like spelunky or ASCII roguelikes) with high variation, but hard to make it look good in this graphic style.

After brainstorming a little bit I set in the following room-based model.

Each room has a logic representation and a physical one. Level generation is only worried about the logic representation, but gameplay happens at the physical level. A room has a logic size in width*height*depth (levels are 3D and the algorithm supports different floors).

This is the external image of the "missile silo"room I'm working on. it has a 1 width, 1 depth, 2 height size:


LEVEL GENERATION:
Each room has a series of doors that can be place in the middle of each logic location unit (sizes are discrete, so a 1x1x1 room only has one logic position for foors, a 1x1x2 has 2 and a 3x3x3 has 9 (although the center one would be hard to use). Each of this doors looks into one of the four cardinal directions, and the level generator connects doors with hallways (of a fixed size) and makes sure there is no overlap in the logic representation.

Overlap can exist on the physical level (since rooms can be bigger in physical size that what the logic representation implies, but since only one room and the adjacent is ever active and draw, with a little care those cases can be avoided).

Every room has a series of rooms it can connect to, and those connections determine the (random) shape of the level (a long corridor will never connect to another long corridor, for example). Each room has an spawn weight to control rarity.

ROOM GENERATION:

Now, once we have placed the rooms, we need to randomize their appearance and behavior.

This is how the previous room looks from inside, only showing the main geometry (geometry that will always be present):


Now, each room has a series of alternate geometries that can spawn. See for example the following 3 versions of the same room:





One of the versions has scaffolding, another also has blastoff protectors, and another has a cargo elevator.

Each version has its own collision mesh and pathfinding nodes:


By combining enough of these variations, I hope I can generate enough meaningful gameplay (bear in mind this is just a small example with few variations, I'm looking at a goal of 10 different rooms per level with 10 variations each).

Finally, this is an example of a generated level: rooms are not snapped together because that happens in real time as they are being activated:

« Last Edit: July 03, 2013, 11:08:21 PM by Juan Raigada » Logged

Nicholas Lives
Level 1
*


Catch of the Day


View Profile WWW
« Reply #16 on: July 03, 2013, 12:55:11 PM »

Man, I'm really diggin' that art style. Not sure what it is about the TV-head guy, but the fact that he has a TV for a head makes him so lovable for some reason.  Kiss I suppose the heart might have something to do with that- makes him seem like a walking companion cube. I would love to know if you have some kind of limited story planned. This love-robot-hack-n-slash-em universe definitely seems like something I could get into.  Smiley Keep up the good work!
Logged
Juan Raigada
Level 3
***



View Profile
« Reply #17 on: July 03, 2013, 11:07:53 PM »

I would love to know if you have some kind of limited story planned. This love-robot-hack-n-slash-em universe definitely seems like something I could get into.  Smiley Keep up the good work!

There's a story, but it is still forming on my head. The game started as a very loose idea without any kind of pre-production done, and I've been improvising as I go. Right now NPC are a would-be-nice-to-have feature. They won't be very interactive, but I want to use them to provide structure.

The basic theme I am settling into is the love-robot trying to remain unique against the homogenizing hordes. First level, (what you see) is a military base/lab where the robot wakes up...
Logged

Juan Raigada
Level 3
***



View Profile
« Reply #18 on: July 04, 2013, 06:15:27 AM »

Aaaaaaand... I'm optimized!


Daily Progress report (1 of 2):

OPTIMIZATIONS:

This was easier than I expected. After slacking for a couple of hours doing easier things, I finally delved into the optimization for memory load. Basically, what I was doing was loading a level completely at level generation, and then stored in memory. That's not good and led to:

1. Great Memory consumption.
2. Too much variability depending on level size. Hard to spec out the sysreqs.

What I did today was to separated the meshes from the room logic. Because of the art style I'm using, 90% of the load is in the meshes, specially in terms of memory (VRAM consumption now caps at around 50 MB). Now, when a room is activated (when it becomes adjacent to your current room), the geometry is loaded.

Lets see a quick comparison between the optimized executable and the older one. I ran each 10 times, and in the case of the optimized one, navigated towards an area of maximum load. Numbers in Mb:

OPTIMIZEDNON-OPTIMIZED
4101124
3941352
390760
385972
3971000
363983
4111668
3631068
4071506
3611798

Optimized Average memory Load: 388.1Mb Maximum: 411Mb Variance: 5.9%
Non-Optimized Average memory Load: 1223.1Mb Maximum: 1798Mb Variance: 47%


Note that the non-optimized version has a minimum of 760mb and a maximum of 250% percent that. That's unmanageable as hell.

Soooo... The numbers are actually great, and the optimization has two good side effects. First, the loading time has been reduced from ~10 second on my (fast) system to basically unnoticeable. Second, now I have an optimized way of designing new content pieces (rooms) and therefore I don't foresee the need to recode any of this system, nor to redo the rooms (spent 2 hours changing the 5 rooms I had already built. I don't want to envision doing that with ~50 rooms).

Right now the only caveat is that there's a small (0.2 seconds) hiccup whenever new rooms are being loaded. I just need to move the loading into a new thread to avoid this problem...

Also, I discovered doing this that the CombineChildren script in Unity does not allow to prefab the combined mesh (which I need to do, my meshes are too heavy and the combining was too noticeable at runtime, way more than the hiccup I have now). I had to rewrite my own combine script (using CombineChildren as the base) to save the generated meshes as new assets.
« Last Edit: July 04, 2013, 10:08:44 AM by Juan Raigada » Logged

Juan Raigada
Level 3
***



View Profile
« Reply #19 on: July 04, 2013, 10:07:26 AM »

Daily Progress Update (2 of 2):

Ok, so it seems afternoons are for fun stuff. After the optimization in the morning, I have implemented all the level functionality for the main character (characters are just a collectible you start with, so they also have levels). I also did some bugfixing and some other fun stuff, like implementing a camera shake for extra punch when hitting enemies.

So behold the first gameplay video:





The quality is not very good, and Vimeo actually makes it look worse, so download to avoid pixelation...
Logged

Pages: [1] 2 3 ... 20
Print
Jump to:  

Theme orange-lt created by panic