SFML community forums

General => SFML projects => Topic started by: umaruchan on March 19, 2021, 10:11:43 am

Title: [Workyrie] Ascii the Brave Cat
Post by: umaruchan on March 19, 2021, 10:11:43 am
Hi again everyone :)

You can think this is part two of this thread.
https://en.sfml-dev.org/forums/index.php?topic=27939.0

I use SFML for a long time but didn't notice this forum.
So today I would like to show my games made by SFML.
And share some interesting experiences with you.

In this part, I will introduce my new game that just released a few weeks ago.
Ascii the Brave Cat.
https://store.steampowered.com/app/1534930/Ascii_the_Brave_Cat/

(https://i.ibb.co/sbrz20z/1.jpg)

In 2019, my new team was planned to use Unity for the new 2D action platformer game.
But somehow, that plan is failing and I have to finish the project alone T T
"How long does it take to learn Unity for made this game?" I ask myself.
Unity can't help me in the core game logic part.
No matter or what I have to define it by myself.
Some Unity script or sub-engine may help, but I have to spend more time to find and learn about them.
And that still not include the risk of bug or glitch from 3rd party tool that I can't handle by myself.
So, I can answer immediately that it will use SFML again.

However, there is another big problem, what tool will I use to be a level-editor?
I try all level-editor tools on the internet but none of them suit me.
The reason is by somehow, I didn't use a traditional tile base.
I have to draw all sprite by myself and It is very difficult for me to make them tile correctly.
So, I draw a full sprite picture instead.
My full sprite pics have different sizes and can't fit the grid base of that tool.
But finally, I found there is one tool that I can use, Unity.
Unity is a good level editor for 2d and 3d.
And it is very flexible for custom.
So, I made a custom script to export the scene to my format.
And my game read the exported file and render, manage game logic by the SFML engine again.
This work! I can have both a good engine (SFML) and a good level editor (Unity) at the same time.
Without spending time to learn and practice Unity, I can finish this project in time.

(https://i.ibb.co/98F3Nyv/2.jpg)

Please feel free to discuss or ask any question :)
Title: Re: [Workyrie] Ascii the Brave Cat
Post by: eXpl0it3r on March 19, 2021, 10:38:44 pm
Awww this game is really cute! :)

I like the way you approach things. Too often people get hung up with their tooling, instead of realizing that tools are here to help us, not enslave us. Use the tools in a way that gets the job done.

Since I played it for a few minutes and I can't help myself noticing stuff, I thought, I provide you some feedback:

I saw that you ship both release and debug SFML libraries. I assume it's a release build, so the debug libraries aren't really necessary (unless you have a reason for them).
(https://i.imgur.com/4fxEj4S.png)

The menu elements aren't properly aligned. Don't forget to account for the local bounds (https://gist.github.com/eXpl0it3r/5f43b9d9aa3f279d77ab4c84451c7241) when aligning sf::Text objects.
(https://i.imgur.com/iv8m2i4.png)

The key bindings you can configure are not actually saved. So every time I start the game, I have to go and reset them. Is it because I close the game with ESC?

Closing the game with a single press of ESC is rather annoying. For example if you don't know how to navigate back from the sub menu, the natural instinct is to hit ESC, which closes the game...

A video mode change require a restart of the game, maybe it's an architectural issue, but you can just recreate and SFML window by calling create(..) on the existing window, so there shouldn't really be a need to restart the game manually.
Also, what's the difference between Borderlesswindow and Borderlesswindow2? :D
Title: Re: [Workyrie] Ascii the Brave Cat
Post by: umaruchan on March 20, 2021, 09:08:34 am
Hi eXpl0it3r,

Thank you very much for your feedback :)
I managed to fix some of them and update the game already.
They are precious information.
Since I have to do this project alone,
I accept that I'm lack user and tester feedback.


"both release and debug SFML libraries"
<-- Yes, I shouldn't do that.
The reason is I was wanted to test the performance of both debug and release versions on the user machine. And somehow, I'm lazy to remove the debug lib. Maybe I'm afraid that I want to use them again in the future.

"The menu elements aren't properly aligned."
<-- Wooaa I didn't notice this. It is a very small gap. How can you notice it? It causes by the font I use, but OK I will try to use local bound to manage it. (There is a lot of text like this.)

"The key bindings you can configure are not actually saved."
<-- I forgot to call the save function when you press save. The game will save it when you start the game on the world map. But I fix it already, will now save it immediately after the player finishes configuring it.

"Closing the game with a single press of ESC is rather annoying."
<-- Already fixed :)

"A video mode change requires a restart of the game...you can just recreate an SFML window"
<-- Well, this is a good point. I had tried to recreate the window already but somehow it gives a strange result. So I decide to skip this feature first.
I will try to investigate this issue again and ask the forum if I can't manage it.

"Borderless window and Borderlesswindow2?"
<-- Bordeless2 won't draw a black bar, please see this pic. https://ibb.co/q1gBXKL
You won't see the difference if your monitor screen aspect ratio is 16:9.
I made this option for users who use 4:3 monitor (like me) or who use ultra or super ultra widescreen.
They can select that they want the black bar or not.
I guess the player who uses a super ultra-widescreen may not want the black bar.

Thank you very much again for your feedback :)