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

Login with username, password and session length

Advanced search

1391886 Posts in 66873 Topics- by 59646 Members - Latest Member: BMB

May 11, 2021, 09:04:53 PM

Need hosting? Check out Digital Ocean
(more details in this thread)
TIGSource ForumsCommunityDevLogsRoguelike Devlog | Saikyou
Pages: [1] 2
Author Topic: Roguelike Devlog | Saikyou  (Read 2730 times)
Level 0

View Profile
« on: July 22, 2020, 07:21:43 PM »

Devlog #1 | The Beginning of Saikyou

The Start
This is the first Devlog for the game "Saikyou". Saikyou is a fast paced 2D roguelike. You play as a samurai fighting robots in a futuristic arena.

I have been working on this for over a year now. With the little time I had at start, I worked on short Protoypes which focused on the concept of "having many enemies surround you". Those enemies could attack you any time, theoretically all at the same time. First I thought you should be able to control their behaviour. But with 20 to 30 enemies planned for endgame fights, that is not a manageable task for the player. I made enemies more counterable. They got long windup animations for their attacks which you can react to. The player would therefore be able to react to their attacks BUT this also meant I needed to give the player a lot of control over their character. (edit 2021 April, in Hindsight that was a smart move. Especially that endgame fights now have 50+ enemies on screen at the same time  Cheesy I back then didn't expect that many enemies on screen at the same time)

The Last 6 Months

In January I started to work on this full time. The player now has a lot of abilities to express themselves with. They can 3 hit attack combo, triple dash, shield with which they block enemy attacks, parry, counter, roll, heal, IAI draw and more abilities are planned for the future. I made the player as expressive as I could. I want a lot more but I also have to be realistic and work on more important things.
I created a lot of code and it works really well. I can now create enemies and give the player new abilities really fast. Also a lot of groundwork has been dealt with, so future updates will be a lot about design instead of coding.

The Last Month

A month ago I finished the first playtest and got a lot of really helpful feedback! Here is what I worked on since then.

The trello board I use is now public, I also update it constantly while trying to keep it readable.

Art updated. New shader is used which allows us to draw over the spritesheet in values. The brighter the value the more that pixel will
glow with the HDR using shader. Also everyone has their own material now. TLDR Everything looks a lot cleaner and more appealing now.

Movement felt weird in specific situations so I worked over it.

Added "Energy" as a ressource.
Over time it empties while your shield is active otherwise it fills up over time.
The counter and the roll have energy costs.
When the energy is below 0 the shield breaks and you can no longer shield.
The shield is no longer broken once your energy is full again.

New Abilities
already existed and I really liked it. So I made it into a triple dash like marios triple jump.
With the right timing after dash 1 you can do dash 2.
Dash 2 has more range and is a little bit faster.
Dash 2 can do the same and go into dash 3 with the right timing for a really long dash

is a movement ability similar to dash. It covers the same distance in about the same time.
To do it you need to shield and then press the dash button.
It costs energy.
You can go in any direction though! Also you will face the direction your going now.

IAI Draw
While holding down the Y button you can aim in any direction.
When you release the button you fastly move in the direction you are looking at.
During this quick movement you are invincible and damage anything that you touch.
Costs Mana

Abilities Overworked
was possible at any time and everywhere. This lead to a behaviour of "running and healing". I really disliked this as it wasn't fun.
Now healing is only possible inside of the red circle in the center of the map.
Healing costs mana

Old Ability Removed
360 Attack
This attack is possible when countering an enemy attack. You do that when blocking an attack, and after it quickly press the x button.
But you were also able to do this by holding down the x button for long enough. Once you released it, the 360 attack would come up.
This existed before the counter move, but the counter is almost the same and just better in any way. Apart from having energy costs. Therefore I removed it.

is a new ressource I addded.
Mana is gained when killing enemies.
It is used for healing and strong abilities like the IAI draw. I will create more of them in the future.

Wave / Spawning Sysyem
I never intended to make healing free. This game will become a roguelike so healing being a free thing doesn't make any sense to me. I do want healing to be a constant possibility which is hard to pull off. At the same time I want to give time in which healing is possible. Because of that I added breaks after a wave ends.
I wanted it to be possible to heal in these breaks because there are no enemies which would stop you from healing.

The problem is that I never intended to show the player when a wave "ends". I made them end while enemies are still alive, with that I was able to give them a nice pacing. For instance I could say "End this wave when 15 enemies are still alive and spawn another 15 in -> The intensity never goes down and never allows the player to calm and instantly gives him another big amount of enemies. I really like this pacing but for this to be possible and the waves to have breaks, I will need to recode the Wave system in the future a little. I wanted to do this anyways as I now clearly know what I want from the spawning system and how I want to structure the waves.

Waves will have x amount of enemies in them. They will not spawn them all at once, they will have certain conditions "strong enemies are all dead -> Spawn y more enemies".  " only y enemies alive -> spawn z more" "keep y enemies alive, as soon as one enemy dies, spawn another one" ... and so on. This way I can give waves different paces and give my best at structuring this game in a way that it keeps being engaging, while not just getting you out of breath with nonstop action, followed by you killing the remainder of the enemies. I think that is boring and I can do better. (edit 2021 April, Wow I can't believe I back then knew exactly what I wanted from the wavesystem and that it now works exactly like that!)

For now a six seconds long break when a wave ends is a thing. The enemies that are still alive get "deactivated". This means you can kill them. I like the choice I give you here. Either kill someone strong, or heal up. But in the future there will be no enemies in this and I will play around with healing and make this break a pure "breathing" time after a lot of action.

Particle Systems
Shield breaking is an important thing and we created multiple particle systems that make sure that you know what just happened.
I also added a particle system for healing.

Reflecting Bullets is now a thing. Hit them or block them to do so.

Enemy Design
I thought a lot about the current and future design of enemies. What makes the game what it is and what I want it to be. After doing all this I came up with some rules for enemy design. The most important ones are:

At first enemies had been really complicated with lots of different behaviours and left players confused. I now limit each enemy to one type of behaviour. Either they run away from you, chase you, wait for you to come to them or something else. They have one behaviour and not even one more! On the other hand bosses ... we talk about that in some months!

Annoying Enemies
They are annoying but still important. Enemies that you want to focus and feel good to kill. But to many of them and its just frustating! So I learned to not have to many of them in the scene at the same time. They should be powerful and a threat to you. But if you play it well or at least decently, you can always kill them really fast.
The rule is essentially, the more enemies are alive at the same time, the less enemies can be alive that are annoying

Counter mechanics
Every enemy should be countered by a specific ability of the player.
You can also beat them with other abilities as well BUT there should be one ability enemies get beaten by the fastest. That way might be easier or harder than others but it should always be the fastest or most convenient.
This way I can backwards engineer enemies. I can first think of an ability they should be countered by and then what they therefore should be able to do.
Enemy Changes
has his kamikaze attack removed. He now sticks to one behaviour! Run away and shoot.
Now that bullets can be reflected he is countered by it. So hitting his bullets or reflecting it with your shield is the fastest way to kill him.

is removed for now. To complicated and weird!
Might come back in the future but would be completly different

are now more coherent. They stick to the sides more and wait for you to come close. I will add some more to this as it is weird by itself. They currently just wait for you no matter what. So if you never get close to them, they never attack you, ever.
Best countered by the counter attack.

New Enemy
Has a long ranged weapon and uses it in a lunge attack in which he has his long weapon in front of him
His attack has more range than yours. You need to sidestep him which is the best counter mechanic against him.
In the future I will make his windup longer -> You can also dash into him really fast and punish / kill him when he starts his windup
If you block his attack or get hit by it, you will be knocked back far. It is a safe way to kill him, but consumes more time.

New Sounds
have been added. They are mainly there to test the waters. We see what works and which direction we should take.
Any thoughts on the sounds? Let us know!
The Story will be a long work in progress, in this update we did another starting story / cutscene. Let us know what you think about it!

Thats it folks!
Thank you so much for reading this to the end it really means a lot to me! I put so much time into this so you guys know what is going on. I hope you find this informative and interesting. We will do more devlogs in the future to keep you updated! If you don't like text, we also make videos and put them on

There are a lot of the things we did. Of course we did a lot more but mentioning them all ... this already has become really long. But if you want more you watch me make the game live on twitch
There you can also ask me anything about the game. give me feedback, tipps or suggestions. Anything that is on your mind!

If you feel so inclined please play the game and share it with your friends. It means the world to us!
Have a good day! (Moon)
« Last Edit: April 05, 2021, 11:15:26 PM by MissingTheMoon » Logged
Level 0

View Profile
« Reply #1 on: August 10, 2020, 03:19:02 AM »

Devlog #2 | Mana / Enemies / Wave System Update 0.3.1

I removed it because people didn't see a reason to use the offensive ability “IAI Draw” when they then will not be able to heal then. The tradeoff was just not interesting.

IAI draw now has a 5s cooldown and costs nothing.

Healing is changed and will be subject to more changes in the future.When you stay in the red circle for 5s it is activated. Once activated it becomes bigger and heals you constantly while inside. When you leave the circle it stops growing. After 3s of you being outside it starts shrinking to its original size. Even if you reenter it now, it will keep shrinking. Especially this last part will be changed a lot.

I really like this change. It allows casual players a different playstyle. It has its own difficulties. You have less space and need to hold your ground, while not being able to leave the circle to focus priority targets. Instead you are passively fighting enemies as they come to you. In the future I will work on a playstyle for an aggresive / active playstyle. It will be a something like a combo system.

I always slowed time when you hit or get hit. That felt kinda off. Screenshake was dependend on how fast the time is. So if I slowed it down, the shake would also slow down. This made it feel like the game is lagging. I made screenshake not care about the speed of time and timeslows slow down time completly. This feels a lot better and not anymore like the game is lagging. Even though in some situations it can be to much. I might try out smoothing that out in the future.

Unity 2020

The old project was buggy. WebGL and Analytics woulnd't work. Other things been weird. The game itself had no problems but I didn't want to wait until it does. So I set up a new project with the newly released 2020 Unity Version. Its really stable and the problems I had with 2019 are gone. I took the opportunity to work over the Post Processing and emission maps the enemies use. I hope the game looks clearer and better now.

Enemy Update

Duelist is now a lot simpler with a lot of states removed.Is also now a lot slower. Meaning he is ignoreable but still there to take your attention and force you to ignore him and focus stronger enemies.
Ranger now has infinite range. He still tries to stay at a specific distance.
Wolfs now work as intended. When you get close to one, he will growl at you. If you ignore the warning he will howl. All other wolfs join in on the howling. Once they are done they will all jump at you. When your not close a wolf, they will circle around you. Over time they will come closer and closer. This distance is reset when they attack you.
Rapiernow works as intended
he will now always get behind you unless that is impossible.

Wave System Update

The old Wavesystem was outdated. It didn't allow me to do all the things I wanted to do. I updated it, made things better and even added some. There is a new Wave Type in which enemies keep spawning until the end of the wave. Then they all explode. This is meant for future updates in which there will be something like gold which you would get for killing enemies. But if they explode in the end, and keep spawning and overwhelm you, then what do you choose to do? Be greedy and  kill as many as possible to make lots and lots of money? Run away and stay alive? Stay in the center to heal up while fighting them off? I hope this wave type will be challenging but a lot of fun.

Thats it folks!
If you want to watch me make this game you can do so on Twitch https://www.twitch.tv/missingthemoon
If you feel so inclined please play the Game https://missingthemoon.itch.io/the-colosseum and share it with your friends. It means the world to us!

Thank you for your time and have a good day! (Moon)
« Last Edit: April 05, 2021, 10:14:45 PM by MissingTheMoon » Logged
Level 0

View Profile
« Reply #2 on: September 20, 2020, 08:50:12 AM »

Devlog #5 | Items Update 0.5.0

Hey there, Im working on this Roguelike game for almost a year now. This devlog is about the last 2 weeks of development.
In case you prefer videos:

The main thing that this update contains are items!
I updated the shop to let it display items from an item pool. There is a shop after each level in which you can pick from 3 different items. Once you buy an item it is displayed at the bottom left.

There are 15 items to choose from and they have 3 cool synergies that I know about.
This is the first set of items that I added so far, and it's all about the heal circle, healing and buffing.

New Item sets will come in the future, and they will all center around some mechanics.

I added a new asset which gives me a lot of shaders to pick from. The glow effect now looks slightly different, and the hit effect is now a lot better and not bothersome to create. For future enemies and abilities I plan to use more of the shaders so stay tuned.

I also added a new level and tried to make the older ones faster paced, quicker and more interesting.

Making the items took really long but the groundwork for future items is done therefore this is it.

I hope you have some time to play the game and give me some feedback, it really means a lot to me! And I hope you enjoy your time playing the game Smiley

Have a good day!
« Last Edit: April 05, 2021, 10:13:33 PM by MissingTheMoon » Logged
Level 0

View Profile
« Reply #3 on: October 05, 2020, 08:27:22 AM »

Devlog #6 | Boss and Items Update 0.6

Version 0.6 is out! This devlog took me quite some time,  but here we are! If you prefer video as a format here is the link to the youtube video:

Boss “Raijin”
The first Boss is called Raijin and has a thunder Theme.
He has 3 stages and 5 different attacks. They ramp up in difficulty each time you get into the next stage.
Also he only starts with 2 attacks, and the attacks he has change a little bit for more variety


The first set and the first iteration of them was put into the last update and since then I've been thinking about them a lot.

Most importantly, more cheap “common” items should exist at the start. You will unlock new items for your next run after finishing one. This means you start with affordable but weak items. The game gives more gold, the better you play. Since the stronger items are unlocked when playing more you should be more skilled at that point. So even though they cost more, you should now be able to buy them. If you play well. A lot of the items from the first iteration can stay, even if we need to change them a bit.

For instance “Rage” gives you a “deal more damage” and a "take less damage" buff. And this stacks each time you get hit, until you have not been hit for 5 seconds. The playstyle this forces is boring and feels like exploiting the game instead of being a new fun way to play.  So instead the new plan is to just give the player a 50% less damage buff for 5 seconds after taking a hit. This would be a useful Item by itself and it can also synergies with another Item “Angels Book”. That one heals you for 20% missing health each time you get hit inside the active healing circle.

This is the new Style with which I want to design the items. Items should by themselves be useful and possibly synergies with other items.


Smaller things
The moving tower (big blue guy) now has a weakpoint at his back and therefore more health as well to balance that out.

IAI draw now uses a shader effect on runtime. With it I learned how to do that and will do more of them in the future when we start polishing the game.  

Alright thats it folks! Next update will be more about feedback and making things more understandable. After that one we rework the items! If you have any suggestions for the game please let me know! Have a good day
« Last Edit: April 05, 2021, 10:12:51 PM by MissingTheMoon » Logged
Global Moderator
Level 10

View Profile WWW
« Reply #4 on: October 05, 2020, 02:53:36 PM »

I've merged these posts together and updated the progress bar on the thread to match the latest post. Please keep future posts about this game to a single thread.

Level 0

View Profile
« Reply #5 on: October 05, 2020, 05:43:48 PM »

Omg I just got so confused what happend and thought I somehow posted it 4 times  Cheesy Thank you, I will post it under the same one next time!  Smiley
Level 0

View Profile
« Reply #6 on: October 15, 2020, 05:17:13 AM »

Devlog #7 | Player Update 0.7

Welcome everyone, my name is Missing The Moon, Im working on a fast paced 2D roguelike and this is what Ive been working on in the last week. This update was all about the player! I was thinking about giving you more control over things, make everything feel faster and more responsive. All that finally came together in this beautiful update! Honestly I really like how this turned out, even though Im aware of the fact that I probably work over it another time to perfect it.

Player Update

Basic and Empowered Abilities
First I changed the way I look at all the abilities the player has. On an Xbox controller you have the X, Y, A, B buttons. Now 4 basic moves are located on them. They are: dash, swing attack, stab attack and heal. If you use the shield (LB or RB) and do a basic move, the basic move becomes a stronger version of itself. There are 3 empowered moves yet.
Swing → Tatsumaki
Stab → Dragon Strike (no one knew what an IAI draw is so we renamed it)
Dash → Roll
Heal → Not yet added

These empowered abilities cost energy. Energy is refilled over time and is used for having the shield active. The shield lets you block any attack and is therefore really useful.

The Dragon Strike used to have a cooldown. The cooldown was shown below the health and hype at the top left. Therefore it was hard to see while being really important. Energy is shown unless its full. It is right next to the player and therefore really easy to see at all times. It needs to be since it it really important. Therefore making dragon strike cost energy instead makes a lot of sense for the UI. But it also makes the energy an even more interesting ressource. Because now there is more choices to make with it. Do I turtle and defend myself? Do I dragon strike myself into safety as a last resort? Do I dragon strike to fastly kill enemies?

Before the tatsumaki was a counter, which you triggered by attacking right after blocking an attack. This was really similar to the parry for which you have to shield right before you get attacked, therefore I wanted to change it for a while to make both more distinct from each other. Making it that the tatsumaki costs energy and can be done at any time makes the player a lot stronger but also feels more expressive. I can now just dash into a lot of enemies and just kill them all with one tatsumaki. Before I needed to wait for one of them to hit me. That slowed the pace down though and was also not really effective for the same reason.

Roll was always like this and made sense from the start. For coherency having other abilities like this makes so much more sense though! Now basic moves have stronger versions and you trigger them all in the same way. Simple to understand and hard to master. I love it!

Stab Attack
The stab attack is new and works similar to the swing attack. You have 3 stabs. The first one is really fast, in its recovery you can press the Y button again and do the stab chain attack. Holding the Y button keeps you in this state in which you constantly stabbing in front of you. This does constant damage but you can not stay in this forever. You can stop it by releasing the Y button. In the stab chain attack's recovery you can press the Y button to do the stab lunge attack. Similar to the dragon strike you move forwards fastly and damage enemies in a straight line.

I wanted some faster move and I wanted a basic move for the Dragon strike for we already had that as a cool ability. The interesting thing in this comes here: If you do stab 1 you can do stab 2 after and then stab 3. The same goes with the swing attacks. And if you do swing 1 and then stab, you do stab 2 not stab 1. Meaning you can mix stab and swing in any way.

The slow effect when parrying an attack is now a lot more juicy. Enemies are more effected by the timeslow than the player. Also they dont just instantly go back to 1 from their slow, they lerp back to it.

After a dash you can do another one which is a bit longer and faster. This skips the dash's recovery time and can be really useful. The timing felt off though so I adjusted it to be more around when the recovery starts instead of only when after it starts.



Animate Importer / Workflow
All the art we have right now is fill in. We will not even do pixel art, but the workflow with aseprite is so god damm good and fast that I use it for the fill in regardless. So for the future I wanted a similar workflow.

I checked out Adobe animate (flash) and it is as good as I hoped it would be. Here and there I need to understand some more things but overall it is really powerful! BUT the animation importing into Unity normally is a pain the ass. I dont want to create each animation in Unity. Therefore I wrote a copy of the “Animation importer” script that I have from github.

Now all I need to do is export the png sequence from adobe into a folder for each animation. Put these folders into Texture packer pro. In Texture packer I create a spritesheet and put it into Unity and voila, the script I wrote automatically does its magic. The spritesheet needs to be in the right folder, then the script will create a animation folder inside, creates the animation clips with the sprites from spritesheet and puts them into the folder. Then it creates an animation controller and puts the animations in there too.

It also updates when the spritesheet is changed. So if we change animations we just export into the same folder. Texture packer updates and we export and bam! Its taken over in Unity and we need to do nothing since its already done.

A thing no one had noticed yet, but was really obvious in this update was that the players timeScale is different from all other timescales. Meaning everyone updates at the normal framerate multiplied by 1. Unless I slow the time by 40% then they update by framerate * 0.4 … Well the player doesnt.

Sometimes I want to slow the enemies and not you, because it feels great! So the player has their own framerate multiplier or as its called in unity timeScale. The problem with this is that the animations update at the normal framerate / timescale with the multiplier everyone else uses which is fine for everyone else. So I set the players to just ignore any timeslow. The player therefore was often slowed in the state, but the animation was running at normal speed. Therefore the last frame of an animation was often longer than supposed to.

There is a timescale multiplier in the Animator as a parameter. And all animation clips inside can be set to use this. Simple, yet I had no idea about that until recently and was finally able to fix this!

We did a bunch of small things that Im quickly gonna run you through:
Screenshake on boss shooting attack is softer and feels a lot better now
Remaining time gold bonus is bigger to give more reward for faster playing
IAI strike is now called Dragon Strike because no one knows what an IAI strike is. If you do, I tip my fedora for you.
Settings are now safed when pressing “Restart Run”
Gold is smaller -> less eye catchy. And there is 3 sizes now instead of just 2
I set up a Level System to prepare for the next update. We use scriptable ojects for this.
Boss health now disappears after beating him and also the hp is not above the items anymore
Screenshake overworked because I felt that it gets to strong when hype is full. Yes the hype influences the screenshake and makes it 3.5 times stronger. It was 4 and I felt that was a bit to much.

Well thats it, I probably still didnt mention everything. Often things come up on the spot, but this time I tried to write down more of the things I do to make this more transparent. If you read so far I guess you liked it or skipped to the end, regardless thank you for taking your time to read this! Also if you feel so inclined this update feels god damm good and you can give it a try right now Smiley

Have a good day everyone!
« Last Edit: April 05, 2021, 10:07:20 PM by MissingTheMoon » Logged
Level 0

View Profile
« Reply #7 on: October 22, 2020, 08:08:02 PM »

Devlog #8 | Procedural Level Generation Update 0.8.0

Welcome everyone, we are working on a fast paced 2D roguelike in which you hype up the crowd to get more gold while fighting waves of robots in a futuristic colosseum. I also make DevLogs on youtube in case you prefer a video:

Up to this update this roguelike wasnt feeling that much like one. You fought in one circle and inside it enemies would spawn in waves. While there is randomness in their spawning it is still mainly me who decides how they are spawned. I want this control to control the pacing of each wave. I can make them fast and give you no room to breath, just to calm down the fight and let you breath right after. Playing around with different pacing is really fun and adds a lot to how the game feels.

With this update I added the randomness to the game which roguelikes are loved for, procedural level generation!

The Algorithm

I started with a test scene in which I created circles (I call em bubbles) “randomly”. First I spawn the start bubble, then I give it one to four children. These children can have one to three children themselves. Their children cant be where there already is a bubble. This algorithm is cool because it creates a random level without circles. This makes the next step a lot easier!

I order the list of all bubbles by their distance to the start bubble. I measure distance in bubbles not in space. The furthest bubble becomes the exit. The shop is the bubble that is rather far from the start and is far (this distance is measured in space) from the shop. That way the exit is always far and the shop isnt right next to the exit and neither is next to the start bubble. So wherever you go there is something and you wont feel like you wasted your time.

So now we have randomly generated levels in which there are bubbles. Each bubble has a randomly picked, hand crafted wave. Some just spawn x to y enemies, some have multiple waves. But I want more!

The Future

I haven't done everything that I want for this update yet, but I already need to see how people play it. So these are the things I will do in the future:

The more hype you have the more gold you make per kill, but hype goes down constantly. The paths between bubbles will have all kinds of traps in them. So you want to get through the paths as fast as possible to keep the hype going but it is dangerous as well. I will experiment a lot with buttons, timing based platforms, shooting towers, gaps and more. They should provide some form of a pause and breather between the high paced combat inside the bubbles.
A good minimap which shows the whole level layout. It will only show the bubbles you have been to. Also the minimap should allow you to teleport from one bubble to another. So you can skip the paths which you already ran through.
The shop inside the level. The shop bubble currently is just empty. And the old shop after a level still exists.
I will add obstacles and traps into each bubble to give it more context and content. Every bubble should feel more distinguished in each run.
Really important is that I will figure out what to do with the healing circle. Will you be able to spawn it wherever? Will I remove it? Will I iterate over it once again? I have no idea, I will see how people play this version and how I feel about the way healing works in this game.

Thats it folks!

If you feel so inclined the game is online on itch and I would love to get feedback on this update!

Have a good day everyone!
« Last Edit: April 05, 2021, 10:06:02 PM by MissingTheMoon » Logged
Level 0

View Profile
« Reply #8 on: October 30, 2020, 01:32:56 AM »

Devlog #9 | Minimap / Hype / Heal 0.9.0

Welcome everyone, we are working on a fast paced 2D roguelike in which you fight robots in a futuristic colosseum and hype up the crowd to get more gold.

Here is the link to the video version of the DevLog in case you prefer that:

now shows the level but only room you've been to. For now we placed it at the bottom left. But the UI will be reworked in the future. When pressing select or tab you can pull up the big minimap. It shows more since it's zoomed out more. You can nagivate it and teleport to any room you've been to before. Unless you are in combat.

I've been updating / rewriting old code since we will need to work over it more in the future. The camera now does exactly the same as before BUT now it is really easy to add different behaviour to it. Which we will use this a lot more in future updates. For instance on one of the boss's attacks the camera zooms out to emphasize the impact.

The hype code has been updated. The hype was weird before. When doing something "cool / skilled" the hype goes up. It used to go up over time which I thought was smart. It stops the flow though. Instant feedback, with the bar just slamming up is a lot more helpful. And it is faster just like the game.

So now the hype instantly goes up and freezes there for a little while. Then It goes down, first slowly and then after two seconds at max speed. So the information about what is going on is instant and easier to understand. Gameplay wise its the same.

The hype now also better shows where it is at. It now fills up five times. So each gold multiplier is shown by a filled up bar. In the future we will do a lot more with this!

Heal Circle
The heal circle now can be placed wherever and whenever. You have 100hp. It heals 20hp over 10 seconds. I learned my lesson about Simplicity therefore it no longer shrinks or grows. Its just at max size for the whole 10 seconds.  

So here comes the catch: 20hp is not a lot. That is becuase there is another way to heal. Each enemy killed inside the heal circle, gives you 3hp back. This means if you want to heal, you want to play aggressive instead of defensive. You can kill about 5 to 15 enemies in 10 seconds on average. That means you can heal 15 to 45 hp extra for playing aggresive.

Electric Traps
The levels should have more context and variety than only enemies. So the last thing I've done is add the first Trap / Obstacle into the game!

The Electric trap gets triggered when you step on it. It then explodes after a little delay. If you are still in its range it will damage you.

Thats all folks!
If you feel so inclined the game is online on itch! You can play it and share it with your roguelike loving friends https://missingthemoon.itch.io/the-colosseum

Thank you for reading, have a great day!
« Last Edit: April 05, 2021, 10:05:20 PM by MissingTheMoon » Logged
Level 0

View Profile
« Reply #9 on: November 06, 2020, 03:37:24 AM »

Devlog #10 | An Update 0.9.1

Welcome everyone, we are working on a fast paced 2D roguelike in which you fight robots in a futuristic colosseum and hype up the crowd to get more gold.

This week is a smaller update and its followed by me taking care of myself. I've been working hard in the last weeks, because I really love this game! I loved working on it, but I now will take a week off to recharge.

If you prefer watching a video here is the video version of this

Lets get into the changes from last week:
The Item shop bubble is no longer empty. It now is the shop and we removed the shop at the end of the level which was just UI. So if you find it early, you can buy yourself some items early on. For now there are no descriptions of items anymore as I want to experiment with that.

There are rooms with paths to connect them. It took me some time to set up a system which allows me to put the obstacles into the paths. Now I can handcraft the paths however I want. Then a random handcrafted path is picked. In the future I want to make the handcrafted objects partially randomized. That way they will feel fresh, new and different for longer. The first obstacle that has been added is a simple hole. You can dash over it, if you dont you loose some health and get reset.

We iterated over the heal circle once more. The heal for killing an enemy inside the heal circle, now depends on the max health of that enemy. The heal is higher the higher the max health of the enemy is.

The Electric traps are now invisible most of the time. With that they are a lot more interesting. The Damage radius is smaller though to compensate for the added difficulty.

Wolf now once more work as intended. They no longer just afk after an attack to never do anything again.

I worked over the sprite layers, adjusted them and wrote down every single one. That way in the future it is easy to add new sprites into the right layer without being scared that it might be in the wrong layer.

Boss room is now always above the start room (instead of left, right or below). I feel that that feels a lot more epic!

I finally added a disclaimer “Controller Recommended” so everyone knows that the best way to play the game is with a controller. Keyboard works as well, but it feels the best with a controller for it is created with a controller in mind.

Teleporting now teleports you to the center of the room without giving you some weird offset. This was not intended in the first place but was also dangerous. Electric traps don’t spawn in the center to avoid you teleporting into them. But with the offset you still teleported into them. Well its fixed.

More range for healing from enemy kills inside the Heal circle. Meaning if they are on the line, they usually are still counted as inside (unless they biiiiiig)

Thats all folks!

If you feel so inclined the game is online on itch! You can play it and share it with your roguelike loving friends https://missingthemoon.itch.io/the-colosseum

Thank you for your time! See you in 2 weeks with the next update!

« Last Edit: April 05, 2021, 10:04:50 PM by MissingTheMoon » Logged
Level 0

View Profile
« Reply #10 on: November 20, 2020, 12:24:29 AM »

Devlog #11 | Obstacles 0.9.2

Welcome everyone, we are working on a fast paced 2D roguelike.
You fight in a futuristic colosseum as a samurai while hyping up the crowd to get more gold.  

If you prefer a youtube video, oh boi we have something for you! We have a link to a youtube video!?!

This update was focused on adding more content. I created static (non moving) obstacles that fill the paths between rooms with a lot of challenges.

Fighting Rooms
There are electric traps in the fighting rooms. These activate when you step on them. After a little delay they will damage you if you are still in them. This Update added that they also damage enemies so you can enjoy some Schadenfreude.

The new obstacle I added to the fighting rooms is the shooting trap. Everytime you step on it, the closest wall will shoot projectiles at you. This trap does not disappear like the electric trap though!

Whats up with those other Obstacles?
To get from one room to another you need to go through a path (long corridor). Meanwhile you have a hype resource that fills up when you fight enemies but depletes over time. The more hype you have the more gold you make! Meaning you want to get from one room to another as fast as possible to make more gold. But the paths are filled with obstacles and make moving fast risky!

The mechanics the new obstacles in this update use are highly inspired by platformers. First because I love platformers and second because I believe the mechanics synergies well. Platformer mechanics make it hard to just rush through the paths between rooms. Nonetheless they allow it if you are skilled enough.

So what are those obstacles?
We had holes in the last Update. You can dash over them. But walking into them would make you “fall” and your position was reset to infront of the hole. That took continuity out of these parts and was therefore changed. Now they are electric holes. So if you dont dash over them, you get damaged every second while your inside of the hole. You can just walk or dash out of them. And most importantly, your position is not reset!

Electic gates
They have two parts. One is on each side of the wall. Every 1.5s the two parts connect to each other with an electric shock. If you stand between them you get damaged. Its easy to walk past this, but it synergises well with other obstacles and makes them harder.

Jump Pads
When standing on top of it for 0.5s, it moves you forward super fast for a short time. This can be used to make huge holes that can be crossed with this. Or to make a faster way that is also hard though. For instance place the jump pad just infront of an electric gate. Boom you need to time it correctly or you get zapped.

Button Ground
When you step on the button it will activate ground in front of you. But after two seconds the ground disappears. So you need to hurry to get over.

Flipping Ground
There is a red and blue ground. While red is active, blue is not and vice versa. Everytime you dash they flip. So if red was active then blue is active now. Yes. I hope this will break your brain!

Its hidden until you pass by it, then it reveals itself. It now shoots at you every 0.8s. I love the suprise this trap gives and how crazy it makes even a otherwise simple path.

Thats all folks!
Next update will focus on iterating over the obstacles we created this update. Maybe I will add more, but I think we have enough for now! I will try to make them better in any way possible. Also I will fix some things that do work, but not yet as intended.

If you feel so inclined the game is online on itch! You can play it and share it with your roguelike loving friends https://missingthemoon.itch.io/the-colosseum​

Thank you for your time and have a good day everyone!
« Last Edit: April 05, 2021, 10:03:50 PM by MissingTheMoon » Logged
Level 10

View Profile
« Reply #11 on: November 20, 2020, 02:15:06 AM »

I haven't noticed this devlog until now, subbing to read through it all later but it's clear that you're putting a lot of heart into this so  Coffee
Level 0

View Profile
« Reply #12 on: November 27, 2020, 03:20:39 AM »

Devlog #12 | Randomized Platformer Levels Update 0.9.3

Welcome everyone, we are working on a fast paced 2D roguelike. You fight in a futuristic colosseum as a samurai while hyping up the crowd to get more gold.  

Last update added platforming elements to the paths and it worked out really well! So this update I focused on it more.

​We also make video versions of this if you prefer that!

Why Randomize Paths?
The problem with the platforming elements is that people die often in roguelikes and ours is no exception. So even if we create a lot of paths, at one point, people will recognize every path. Than the paths feel boring and stale. And I dont want that! So this updated we focused on randomizing paths.

So whats the pros and cons?
- Mediocre paths are better than stale paths that everyone remembers. Also the challenge in roguelikes should never become less just because you remember the layout. They should become easier because you become better at them.
- The randomness changes the difficulty. The difficulty therefore is never exactly above or below you. Its usually around your skill level.
- The problem is that these paths take way longer to build and I talk about that in a bit.
- But the biggest problem is, even though the randomization makes it that people take longer to get accustomed to the same path. The path still uses the same mechanic. And the mechanic in itself will become stale at one point.
So we want to walk a tight rope between building enough levels with the same mechanics so people dont recognize the same paths. That way paths have longevity.
MEANWHILE we want enough mechanics in these paths so people dont become bored of the mechanics.
BUT lets also not forget that this is a roguelike about fighting and not about platforming. Its a secondary part of it. So we don't want to many mechanics with it and make this part harder to master than the primary part of the game.

So how do we randomize?
Whoever knows me, knows that I hate randomizing in games. At least fully randomizing things. I love platformer games. Handcrafted levels. Perfectly positioned traps with thoughts put behind every single element and decision. The level is as good as it can be. When randomizing, the level is sometimes good and sometimes bad. I hate that. So we don't fully randmize the paths!
We use several techniques and steps:
1. First I pick a mechanic / trap to use in this path and make a simple half of the path. This should stand on its own and be fun by itself.
2. Now I test it. Is it fun? Is it hard? Impossible? Different from already created paths?
3. Now we randomize the shit out of this!
 1. Randomize the size of holes and platforms.
 2. Add extra elements / obstacles. When the path is picked, each element has a 50% chance of actually being there. So sometimes there will be no extra elements, sometimes eight. This creates a range of difficulty and makes recognizing the path way harder.
 3. Randomize the position of traps between two points.
 4. Switch around the position of traps to another position. Again this has a 50% chance to happen for each.
4. Repeat step 2 (testing)
5. Now I create the second part of the path the same way WHILE keeping in mind that the first and second part have a 50% chance to be switched around. This again helps to make the path different and less recognizable
All this randmizing takes a long time, but it makes it really hard to get used to any path. After all they are different each time. Its a lot of small differences but together they make a big difference.

That's all folks!
This week I came up with this algorithm and used it to create paths. This was a lot harder and more time intensive then expected!
Next update I will focus on iterating over the obstacles more. You will be able to destroy some traps to make the path easier but you will get less rewards that way!
Thank you for your time and have a good day everyone!
« Last Edit: April 05, 2021, 10:02:52 PM by MissingTheMoon » Logged
Level 0

View Profile
« Reply #13 on: December 04, 2020, 01:23:02 AM »

Devlog #13 | Trap Update 0.10.0

Welcome everyone, we are working on a fast paced 2D roguelike. You fight in a futuristic colosseum as a samurai while hyping up the crowd to get more gold.  

We finally finished this update and now move on to 0.10.0! We added a lot of traps and obstacles to bring live into the paths between the rooms.These traps and obstacles are inspired by platformer and add a brand new layer of skill to the game. Last update a lot of you been worried that the paths became harder than the rooms. I heard you!

So whats new?
This update I changed the difficulty by finishing the traps. They used to just damage you but now you can destroy electric gates and the statue. You can also reflects it projectiles back at it.

Now it is a lot easier to traverse safely and slow through paths. But if you want to make sure you keep the hype alive, you better go fast!

But even more than just destroying them, you can now block their damage! The collision System was overworked for that! With that you are now invincible during your power moves (Dragon Strike, Roll and Tatsumaki) inside the paths. This was supposed to be like this from the start, just took some time to do everything.

Whats going to happen?
This week was filled with me doing lots of small improvements, finishing this and doing more with the team! Nothing comes out of it yet, but its stuff to be excited about, because we have some cool people working on this!

The next updates up to 0.11.0 will focus on the enemies! We will add two new enemies and a miniboss. Also we will overwork the current boss. Nothing wrong with the boss, I just want more from him!

Thank you for reading!
« Last Edit: April 05, 2021, 10:00:25 PM by MissingTheMoon » Logged
Level 0

View Profile
« Reply #14 on: December 11, 2020, 08:16:25 AM »

Devlog #14 | Enemy Update 0.10.1

Welcome everyone, we are working on a fast paced 2D roguelike. You fight in a futuristic arena as a samurai while hyping up the crowd to get more gold.

Renaming the game
In the last weeks we worked more on the story. We never quite liked the name "The Colosseum". It just didn't fit the game that much.

First of all the game is japanese themed and not roman.
Second with the story it doesn't make sense either.
Then some updates ago, we changed the game from being inside one circle (a colosseum), to a dungeon'ish multiple room layout thingy. So now it's no longer like a colosseum and more like a dungeon.

For those reasons we changed the name to "Saikyou" which is japanese for "strongest". It fits the japanese theme and the story for the game a lot. We love it and we hope you do as well!

Last week
Lets get into what I've been doing in the last week. I started by finally fixing the wolfs. They've been doing weird stuff for a while now. They now always attack together (as intended) and have a global attack cooldown. Also I prepared them for the miniboss Smiley

I rewrote a bunch of code. Various enemy data was scattered on every enemy object. That I disliked strongly. It makes adjusting damage, health hard. So now its all on one script.That was great since I created two new enemies. It made Balancing their stats a lot easier and faster.

New Enemies
The first enemy has a shotgun. When it's attack is ready, it walks close to you and charges it's shot. After half a second it releases a powerful barrage at you.The second enemy is a loot enemy. You get gold every time you damage it! If you are able to kill it, you get even more gold. But if you let it run away for to long, it will disappear.

Fighting rooms and paths
The code I rewrote also made it easier to rework all the fighting rooms. Which I happened to do. I hope you enjoy them as much as I do! I readjusted the difficulty, made them faster paced and just be more fun. I will create some more next week.I also redid the easy paths and made them a lot easier so you can rush through them more. Next week I will also redo the other paths to make them easier and faster as well. And of course make them more fun!

That's all folks!
This update focuses a lot on enemies. This is the first of three parts. The two weeks will continue this update with a miniboss and reworking the boss and plenty more cool things to get excited about!

Thank you for your time and have a good day everyone!
« Last Edit: April 05, 2021, 10:01:43 PM by MissingTheMoon » Logged
Level 0

View Profile
« Reply #15 on: December 17, 2020, 11:51:24 PM »

Devlog #15 | Update Miniboss "Big Wolf" 0.10.2

Yes! The name is super creative. I know. You're probably like "holy cow, how did you get to that name".

Anyways, big wolf is only appearing once in a run (if he appears, it's around a 50% chance).
After spawning he will walk to the closest wall. There he will spawn wolves and wait for them to be ready to charge at you.
Once they are, he howls. They are wolves. If one howls they all have to howl. Thats simple first grade astrophysics.
After howling, the small ones charge at you, followed by the big wolf. Their velocity is buffed by him, so be careful. They fast as hell!

The big wolf is nothing huge (other than his size). Just a simple and cool miniboss. Easy to understand but still a big threat. Im excited to see how you guys do against him! I want the boss to be more complex as a contrasting piece.

Most stuff this week was "hidden" stuff.
Meaning I do it so the project can proceed. Future things will be easier to do and have a lower chance to cause bugs. But YOU will see no difference in the game at all. Let me mention them briefly.

First I updated the Knockback code. It was really old and bad. Data was scattered all over the place, removing or adding an enum value was catastrophic. The amount of work for that ... just terrible. We fixed it. So now we good.

I also worked over collision code. Really happy to finally have done that. In the last months I stopped going over code. I accept that I can fix potential bugs, but don't need to double check for them before they appear anymore. We are just in that part of the development, in which the code is solid enough to no longer double check.

Next I created a system to spawn enemies in the middle of combat for the miniboss and the boss. Yes the boss will spawn shit! Spawned enemies can be marked as "hollow". Meaning they don't give gold. They do give you hype though. So you cant farm the miniboss wolves that he keeps spawning.

Next a bunch of small good stuff
Tatsumaki is a move that makes you invincible during it. It used to negate knockbacks. So you would just stand in place if you get attacked during it. That mechacic made miniboss a lot easier than intended. Same with the boss. So now you get knocked back during the tatsumaki. No more cheesing the boss!

Then some juice stuff. The projectiles of the shotgun enemy, which we added last week, are now slowing down over time. Looks cooler. Feels better.
ALSO you can now reflect all his projectiles back at him! It used to be that the reflected projectile would get destroyed by his other projectiles, in the same frame it was created AND in the same frame the other projectiles would also be reflected. I think. Idk. To be honest I just fixed it, and didn't try to fully understand the problem. Less energy used, more more important stuff done.

Like working over the Hype. It goes down when being hit. That't nothing new. But now the amount it goes down, depends on the base damage the enemy deals. Meaning if the enemy deals 10 damage, it goes down by 10. If an item would decrease or increase the damage, the hype would still go down by 10. This way being attacked by 2 wolves and almost taking no damage, will not get your hype down all the way.

I almost forgot, I finally switched out the broken item. Items will be completly reworked in about 3 weeks. For now the broken one is switched with an item that gives you 50% more damage.

That's all folks!
This update focused on the miniboss. Next update will be all about the boss!!! Im super excited about that, and got a lot planned. Lets hope I can do all that in a week!
Thank you for your time and have a good day everyone!
« Last Edit: April 05, 2021, 10:00:40 PM by MissingTheMoon » Logged
Level 10

View Profile
« Reply #16 on: December 18, 2020, 03:06:32 AM »

Will mini-boss Big Wolf be followed by big boss Mini Wolf?
Level 0

View Profile
« Reply #17 on: January 09, 2021, 12:59:54 AM »

Devlog #16 | Enemy Update 0.10.3

Welcome everyone, we are working on a fast paced 2D roguelike. You fight robots in a futuristic arena as a samurai while hyping up the crowd by playing fast.

This update took quite a while. One reason was that it was christmas and new years and ... a lot of stuff was going on. I also took it easy to recharge some energy.

The other reason is that it actually took a lot more work to rework the boss than expected. But the time spend was definetly worth it! The next update aims to finish the boss and this enemy update all together. Now lets talk about how I reworked the boss

The boss fight lacked something and I couldn't tell what it was. I sat down and thought about boss fights I do like. What do I like about them and I can I add these things to my boss fight?

I loved playing splatoon 2. The boss fights been great! In it you dodge attacks by shooting yourself a path to fastly move in it and climbing the boss works the same way. You climb the boss to get to its weakpoint and damage it. That is only possible after the boss did it's attacks though. Essentially this is like a puzzle in which you need to find the path to dodge attacks and then the path to get up on the boss to finally damage him.

Putting it into work
I incorparated this by adding a generator. It's an enemy that teleports around every now and then. While the generator is alive, the boss has a shield. The shield damages you if you touch it and makes the boss invincible. So you destroy the generator to be able to damage the boss.

This way the boss fight has 2 parts.
Part 1: Generator is alive -> Boss invincible and attacks you with (mostly) ranged attacks
Part 2: Generator is dead-> Boss gets stunned and is no longer invincible -> Boss fights you with close combat attacks

After some time the boss creates a new generator and summons thunderstrikes. This restarts the cycle.

Once the boss takes enough damage he enters Stage 2 which is mostly the same with these differences:

  • The generator now moves and teleports, making it harder to destroy.
  • Boss Projectiles now reflect off the wall.
  • When you destroy the generator the boss is not stunned. Instead he does his final and super flashy move. After it he is stunned.
  • Almost all (working on it) of his attacks are stronger
  • During thunderstorm the boss now also summons rapier eggs. After 12 seconds they become rapiers. Which is a rather strong enemy

No one sees it
If its bad, everyone notices. But when done well no one cares. With all the new attacks and more targets to follow, the camera became quite the challenge... until I remembered that I'm using cinemachine.

I switched from a normal virtual camera that tracks one object to one that tracks a group. Now I can just add a new target to the target group or take it out whenever I like. So it normally focuses on the player. When the boss spawns it focuses on both while the main focus is on the player. The generator can be added and taken out as well. When the boss does a big attack for which the whole fighting arena needs to be visible I can do that easily!

Camera is really hard to get right, so this is more like a first draft. It works and is effective, but I want it to also be pretty and smooth!

That's all folks!
This update focused on reworking the boss and as I said, this has been a lot of work. Next update will wrap this whole enemy update up by finishing the boss and doing some other cool stuff!

Thank you for reading and have a great day!
« Last Edit: April 15, 2021, 10:36:23 PM by MissingTheMoon » Logged
Level 0

View Profile
« Reply #18 on: January 16, 2021, 02:37:53 AM »

Devlog #17 | Enemy Update 0.11.0

Welcome everyone,
we are working on a fast paced 2D roguelike. You fight robots in a futuristic arena as a samurai while hyping up the crowd.
Finally the enemy update is finished! This means the enemies of the first world and the boss are done! I might revisit the boss after getting feedback of course, but that won't take long! So the next weeks will be about creating the hubworld and progression systems so I can finally make the items!

The Boss Fight
This update finalizes the boss by giving him his final attack. He covers the whole ground of the arena with electricity, only leaving you a small box to hide in.
In stage 2 the boss now moves during his 360 attack.
Now there is more visual clarity for what is happening. For instance the generator now lights up before he teleports and the Rapier eggs also light up shortly before they turn into rapiers.
And last but not least a bunch of bugs got fixed. This took the longest but it's so many different small things that I will spare you the details.

After that
I worked on a lot of smaller things. For instance the screenshake beeing smoothed out on big screenshakes. When the boss dies for instance there is a huge screenshake. Now with it first being strong and then fading down it feels really good!
I also worked on something that is hidden for now. It's called "Enemy Introduction". Once you fight the boss or the miniboss they get introduced and once you beat them ... let me say it like this. The story isn't out there yet but here is a little teaser. You are a crazy psycho samurai girl that ... ehm likes heads. So when the boss dies you ...
Anyways in the future we want to expand this system for any enemy! So when you encounter an enemy for the first time, you will see some cool illustration or some gameplay footage. Below that there will be some text explaining the enemy and strategies to fight the enemy. The game shouldn't be hard because you don't know what to do, but because it is hard to do it.

That's all folks!
I mean there is a lot more but I don't want to bore anyone with all the tiny things I do. But if you want to see them or chat you can watch me make the game live on twitch, my name is MissingTheMoon.
If you have any suggestions please put them in the comments!
Thank you for reading and have a great day!
« Last Edit: April 06, 2021, 12:58:20 AM by MissingTheMoon » Logged
Level 0

View Profile
« Reply #19 on: February 19, 2021, 06:14:36 AM »

Devlog #18 | Hubworld / Progression System 0.11.1
​Welcome everyone,
we are working on a fast paced 2D roguelike. You play as a samurai fighting robots in a futuristic arena.

The last month was crazy.
Ive finally done so many things that I wanted to do for so long but couldn't. Those things just have to wait for later. Now it feels like the game is so close to being finished, but there is still so much to do.

The game was always overwhelming to new players
There was only one difficulty that you get thrown in right at the start. You have around 15 abilities and as a new player you wont know about many. But the difficulty is for you utilizing all of them. Therefore new players never stood a chance and obviously were overwhelmed. This Update I worked on a saving system which allows me to track your progress in many ways.

So now you start with the ability to walk and a 2 hit swing combo. Thats it. Left joystick and X button is all you have. The game no longer starts with the run. Instead you have challenges which ramp up in difficulty. So you don't need more abilities than the ones you have at the time, but steadily unlock new ones. Essentially that's a hidden tutorial. Abilities that are unlocked are explained with a little video and the Input. Real fast real simple and straightforward. Once you unlock 4 new abilites you can jump over the gap that was keeping you apart from the run and more challenges. In those challenges you can get 1 more ability.

The run is the main mode but
the challenges also exist. They are fun and short levels that give you some reward. So if you ever struggle with the main mode, you can just do a challenge. Or if you just want a quick round for a minute. In the future I will add many more challenges and more rewards for them. Currently the game only has six items that are the leftovers from my first attempt at items. The code works and can be used but most of the items were bad and got therefore removed. Now I have a clearer view on them and they will be created in the next update!

The hubworld is huge
Well size wise not yet, BUT it is easily expandable! But the point is, the hubworld has so much to offer! More challenges will come with more platforming elements in them in the future. You can buy items in the hubworld which are added to your item pool. Those show up in the shop during your run so you can buy them. If you don't like an item you can just remove it from your pool or bring it back into the pool. The hubworld also lets you see how often you killed which enemy. Maybe in the future I will add more stats that people are interested in. For now Im really happy with the hubworld and the saving system that I worked on in the last month. Now the game is approachable for new players, so lets create some dope items for them next!

Thank you for reading all of this. If you have any thoughts to share please let me know!
Also the new version is out! Please play it if you feel so inclined <3
« Last Edit: April 06, 2021, 12:59:47 AM by MissingTheMoon » Logged
Pages: [1] 2
Jump to:  

Theme orange-lt created by panic