Here’s an in-depth explanation of what I’m working on with BASTON, since I’ve noticed a lot of misinformation floating around.
Everything I'm going to summarize is fully documented here:
https://www.txori.com/tag/baston
GENESIS
I started working on BASTON around 2015 because Flash was on its way out, and no one knew what would happen to Flash games. The goal was to remake Dragon Ball Devolution in a new language, HaxeFlixel, to ensure it could survive the end of Flash.
While developing BASTON, I discovered HaxeFlixel allowed loading user images and data. This inspired me to add a fighter editor, so players could create their own characters instead of constantly requesting me to “add this, do that.”, something impossible in DBDEV.
GOLDEN AGE? (not for me)
However, this introduced new challenges. As more people joined the community around 2018, it was fun to see all those little fighters come to life. But soon, the requests shifted to massive “add powers and features to BASTON”, and the code quickly became bloated and unmanageable, while the core gameplay still wasn’t where it needed to be.
At the same time, Dragon Ball Super was airing, which brought another surge of requests for new characters. On top of that, some people were modding DBDEV with poor-quality sprites, all while removing credits and backlinks, which was horrific.
STRANDED
So when the Ruffle emulator proved that Flash could survive, I spent a lot of time adapting DBDEV to work with it. However, while Ruffle worked great for older Flash games, it wasn’t compatible with Flash games made in HaxeFlixel. As a result, I had to release a downloadable version of BASTON instead. Building an executable takes several minutes, whereas building a Flash file only took seconds... No great surprise there.
All the programming knowledge I gained from working on BASTON was poured back into DBDEV. Since DBDEV was almost the first game I ever programmed, much of it was poorly structured. Over time, I adapted it bit by bit to better handle the ever expanding massive amount of content.
REWORK
Last year, after thinking about it for a great while, I resumed work on BASTON but decided to change the gameplay entirely to avoid remaking DBDEV yet again. After 25 years of doing this, I can’t overstate how exhausting that repetitive process has become.
I decided to shift BASTON into a turn-based game while keeping user content compatible. This new approach would have offered several benefits:
However, last summer, I received an aggressive but anonymous petition from so-called “bastoneros,” accusing me of killing their game and spouting other nonsense, all while failing to see the bigger picture. That was the last straw. I stopped working on BASTON entirely. The moral of the story? Be kind to your developers. We’re human too, with real lives to navigate. And right now, life has been especially tough on me.
REBIRTH
Now that the next version of DBDEV is nearly complete, and awesome new BASTON fighters are appearing in the forum, I’ve started revisiting BASTON. It’s a huge mess at the moment, combining elements from the old DBDEV-based version and last year’s tactical version, including platforms and teams. The gameplay is back to real-time, not turn per turn, but I’m struggling with button functionality and the UI layout. More about that in my next post.
Debugging it will also be challenging, as it requires two to four players simultaneously, unlike the turn-based system. For now, AI and online modes are completely out of scope.
That said, since I stopped using Twitter, I plan to host a small workshop here, where beta users can test and provide feedback on the new engine. This way, everyone should be happy.
Lastly, BASTON Rebirth is a codename. It's not the name of the game. It's simply BASTON.
Hey Txori, es un gusto saber que de nuevo estás volviendo a trabajar en BASTON, en nuevas mecánicas y en su jugabilidad. Es un juego con mucho potencial, así que su resultado podría ser increíble. Me agrada mucho la idea de qué abrirás un taller para mostrarnos tu progreso y mantener a la expectativa a la comunidad, con lo que estás construyendo, estoy muy entusiasmado en participar activamente.
¡La comunidad estará más que lista para hacer nuevos luchadores! 😎
Por cierto, probablemente esa petición anónima que recibiste a nombre de los “bastoneros” no fue más que un tipo tonto que quería desquitar su frustración y descontento con lo que estabas haciendo para el juego.
El contexto real de la palabra bastoneros se debe a que en nuestro grupo de discord, nos hacemos llamar así de irónica buscando añadirle un nombre a nuestra profesión/pasatiempo como spriters, pero de forma chistosa, por ser creadores de contenido para el juego y su estilo que lo llamamos “BASTON style” valga la redundancia.
Por último, quería preguntarte al respecto sobre el editor de proyectiles, ya que alguno de otros miembros tiene la duda ¿Tienes en mente retomarlo luego de que termines en lo que trabajas ahora?
Una lástima esa persona que se hace llamar "bastonero", incluso creo saber quien es de hecho...
Bastoneros también nos hacemos llamar la mayoría de usuarios presentes desde hace años en el juego, pero esa persona no nos representa ni tampoco tenemos contacto con él.
Me alegra mucho que que hayas decidido revisar nuevamente este juego, tengo muchísimas ansias de saber cuál será el resultado de tus ideas.
De momento lo único que puedo hacer por ahora es desearte la mayor suerte de todas en este proyecto. 😉
Thanks for the support, guys 🙂
¿Tienes en mente retomarlo luego de que termines en lo que trabajas ahora?
Too early for that. Like... Way too early. I'm currently struggling to find where and how I programmed the gravity 🤔
There are real basic things to work on in order to make a game. That's exactly what I was talking about in my last tweet regarding BASTON, last june:
Right now, it's not fun to play.
But yeah, once the basics will be set in stone, the Bullet Editor should be an important part from the start, instead of having to retroactively modify the complete mess that was the code with all the "add this do that" of the 2018's era...
For starters, adding platforms for the tactical version of BASTON introduced some frustrating issues in the current version. Fighters who can’t jump end up stuck on the ground. To address this, I gave everyone the ability to jump directly in the game. And if I decide to keep this, I'll need to add a function in the engine to automatically patch fighters and remove one jump power from their existing abilities.
Initially, we used the up direction for jumping, which carried over from DBDEV, where most fighters could move freely on all directions. However, jumping with the up direction feels terrible in a platformer. So, I had to add a dedicated button for jumping. Now there are five buttons just for basic actions (attack, protect, charge, fire, jump).
This change also made the double-tap on the up direction to fly feel awkward. Now, flight mode is triggered when a fighter jumps mid-air after using all their jumps... and so on. What was once super simple in the tactical, turn-based version has become a complicated puzzle.
So yeah, it’s going to take some time to sort all this out.
The jump button seems like a really good idea, have you planned how you are going to change the inconvenience of jumping power to existing characters or will they have to be changed manually?
You could leave the jump power in the character edit menu exclusively for double jumps, or even allow adding more jumps depending on the fighter.
I have a question. I apologize if this feels like complaining or demanding, I'm just trying to raise a concern. If all fighters are now being forced to have at least a single jump, won't that mess with currently-existing fighters? It just feels like the character creation will become limiting.
I understand jumping being a requirement for a platformer, but sometimes a character is specifically designed so they aren't able to jump. Or, some characters are designed so that they can fly, but can't jump: they DO have an upward mobility option, but they are supposed to feel more like they can just move themselves anywhere. In both of these situations, forcing a jump onto the character would make the game lose important customization options, and might make characters feel more generic and similar. For example, one of the recently-created characters I made for BASTON is "Gyokko" from Demon Slayer. He absolutely wouldn't work if he was forced to jump. He even has a transformation which specifically gives him a jump and makes him more mobile.
BASTON is made entirely up of community-created characters, right? So if somebody is truly annoyed that the character they created can't jump... then they could just add a jump, right? I think users should have the option of making characters who can't jump. Sure, those characters couldn't do platforming, but that would be the creators choice. After all, the characters don't have to be balanced or fair. This isn't a global game with a competitive leaderboard. I think we should be allowed to make characters who won't work in all situations. I mean, if a character had to be able to navigate the entire stage, then everyone would need to be able to fly, right? Just like a character can be super overpowered (the One Punch ability for example), I think characters who are underpowered and limited are equally important.
Plus, if maps are community-created too, some people can just make flat maps that don't require jumping. Some people might specifically make flat maps for with their characters who can't jump, to be used in a custom story mode for example. I suppose I understand the logic that "jumping is much more necessary, so it shouldn't take up an entire power slot". But in that case, I think a "no jump" power should be added, so it's at least an option if the player WANTS to do it.
That's a very interesting question, Cairns. But right now, I need to focus on programming the game: setting the gravity, defining different movement speeds... The non-jumping fighters are causing issues during playtesting when I jump, and a fighter doesn’t move, and I believe it’s due to the changes I just made in the code... 😛
You’re totally right, though. Once everything is sorted, I’ll set the base jump count back to 0.
With the dedicated jump button in place, flying could simply be triggered by pressing up. Here's how it would work:
This approach should work better. It also avoids having to patch fighters during the loading screen—either by suppressing one of their jump powers or adding a "no jump" power. But that's not a priority right now.
Edit:
And it's working great. Now I'm going to plug a few things I developed for the tactical version, such as starting on the ground, instead of randomly falling in a hole right from the start.
Just wanted to come and say that I'm very happy you're not giving up in this game that is very special for us. It's great to hear that this development is going well so far too. I wish you the best of luck, we got us all, the real "bastoneros" rooting for you 😁
I also completely forgot to post something that could give you a bit of an uplift. I'll be sure to post it today so you can get more inspired on this project 😉
It's great to hear that this development is going well so far too.
Going well? Well... It's mostly going.
Dark magic of development strikes again: HaxeFlixel just upgraded to version 6.0.0 🙄
Now, a few things in my project are broken, but they should be easy to fix. On the bright side, so many things are much easier to manage now compared to when I first made the game, like freeing memory, which used to be a nightmare.
And I already learned a few things that I'm going to reproduce in Renju.
With the latest version of HaxeFlixel, several small things were broken, like the exact positioning of FX (aura, beam, etc.), centered texts, and even the HUD. To focus on getting things back on track, I’ve deactivated a lot of features to concentrate on the basics: the CAMERA, CONTROL, and CHARACTER. Just as in this other project. Though nothing much can be done on the character, since it is user made... 😛
I'm planning to run small workshops focusing on topics like jumping, collisions, and other key gameplay elements.
GOLD users can already download this early version of the game:
Please keep in mind that this is a VERY EARLY beta. Be patient with it. Instead of asking me to add new features to something that's still being fixed, focus on understanding how to improve the core gameplay.
I cleaned the bug section of BASTON. Please post your finding there. One bug per topic.
Thanks for your understanding 🙂
CONTROL
Let's start by focusing on the core gameplay.
As I told before, I had to add a jump button. It's currently on the W key. But you can change that in the setup screen.
I really don't like how the direction can be changed during the jump and how it behaves: a simple click will launch a complete jump, even if you release the jump before reaching the highest position. So I'm going to check how they handle the jump in the goats of platformers: Celeste and Spelunky.
MAP
In the data/maps folder, you'll find the image map.png
It's a temporary way of creating a map. I’m not sure yet if I’ll keep it as is, but it’s interesting because it’s visually simple and easy to use. However, it only allows for empty or plain spaces. If you want to experiment with it, you can adjust its size and draw using black and white.
Txori, you mentioned that so far, nobody had offered any feedback to the current version of BASTON, so I will do that now.
I am unable to use the new version of Baston at all. Every time I try to load it, immediately upon clicking the "versus" button, the game crashes. For now, the entire game is a menu with two buttons, and a menu to assign controls. So there is nothing more I can comment on, and I am unable to reach any gameplay. The reason I did not offer feedback on this before is because of this post:
https://www.txori.com/forum/viewtopic.php?id=4693
When you mentioned BASTON "Crashing after versus screen" I assumed that the crash I was experiencing was entirely normal and would not be addressed. It confused me, but I didn't want to complain about it if it was something you were already aware of. Also, I wasn't sure exactly where to post feedback for the new BASTON. Unless I've missed something, every topic about the rebirth is either a bug report post, or is this thread, which is more of a development post. I suggest making a dedicated thread to BASTON feedback, unless this one can be used for that.
That's an essential feedback! It means that the path to at least one file needed for the fighting part was a relative path only working on my computer... I've checked and corrected it. Please redownload the game; it should work now (I hope).
And the bug I already listed has nothing to do with that 😁
It doesn't seem to work still. Upon clicking the "Versus" option, it closes the game after freezing for a few seconds.
EDIT: Okay, I was able to get it to work: I had to clear my data first. Now, my questions is: are we just testing for bugs and glitches and general game feedback, Txori, or are we allowed to make gameplay suggestions based on the current version? I know that you get annoyed by constant demands and "do this, do that" things, so I want to make sure I'm not doing something wrong.
That being said, here's a couple things I've noticed:
First of all, your character never actually aims towards the opponent, they just fire straight ahead. Personally, I think making some sort of "lock on" would make sense. You are already using the Z, X, C, S, and D keys, so perhaps the A key could work for this, to round out that set of keys. Something that would make your character constantly face a specific opponent, until they leave the visible screen. That way, walking backwards and flying backwards animations could also be preserved from the old characters, instead of you always turning around. Maybe it could lock onto the closest opponent in your characters field of view, and pressing the button again could lock onto the next furthest way, etc.
Second of all, about firing beams. I notice that they keep firing until they hit a wall. However, the player can move before the beam has disappeared. This leaves an awkward floating energy beam that lasts for a few seconds, if the beam doesn't hit anything until it goes out-of-bounds. However, the player character shouldn't be stationary until the beam finishes, as that could keep them in one place for far too long. Maybe, once the beam travels far enough offscreen, the beam trail should disappear when the player can move again? And only the beam head, the projectile, would keep moving.
Third, the jumping is always the exact same height, as opposed to the previous BASTON version where it depended on how long the button was held down for. I think variable jump heights are even more important when you have a platformer-type of game, with different kinds of terrain.
Allí reporte un par de Bugs que serían los más "mortales". 😉
Me fascina la forma que está tomando esto. 😁
You are absolutely welcome to test, find bugs, and share suggestions about the core gameplay, so it feels perfect. Starting with the jump, as I mentioned in my previous post. What I don't need is things like "finish the bullet editor". That is totally out of scope at this state of development.
FOCUS. CORE. GAMEPLAY. 😁
So I don't recall the old version of BASTON having that kind of jump. I really thought it was a fixed Street Fighter 2-style jump. I'll check why it's not working in the new version, as it should be using the exact same code 😛
As for firing, you can already fire in any direction by pressing a direction while releasing the fire button. However, I agree that it’s not very intuitive on the keyboard. It works much better with a gamepad. This was something super simple in the tactical version, but it has become a rather annoying issue now. As for adding yet another button, I’m not really into that idea. But let’s discuss aiming once I fix the jump, so I don’t end up juggling too many workshops at once 😉
I just uploaded a new alpha release with powers like Spirit Ball and Destructo Disc fixed, as well as an improved jump mechanic that stops going up when the player releases the jump button.
This is still far from the final version of the jump:
I played a bit of Celeste yesterday, and I think I’ll aim for something similar. The Celeste jump prevents players from abruptly flipping directions midair. If you press the opposite left/right direction of your initial momentum, it slows your movement in that direction instead of instantly reversing it.
Me parece una excelente idea la de agregarle mejores físicas a los saltos, hará que pienses 2 veces tus movimientos para no caerte del mapa o no pasarte de dónde quieras caer. 😮
Por otro lado, probando las mecánicas de combate cuerpo a cuerpo se me ocurrió la idea de darles un nuevo tipo de sentido a los golpes.
Actualmente, los golpes Hacia Delante, Hacia Atrás, Hacia Arriba y Hacia Abajo aparecen únicamente por aleatoriedad y tienen prácticamente la misma función.
Estaba pensando que, ahora con la nueva función de las direcciónes, estos ataques puedan ejecutarse en sentido a ellas:
Up + Attack = Golpe Hacia Arriba que envía al enemigo a cierta distancia arriba del suelo.
Down + Attack = Golpe Hacia Abajo que tumba al enemigo en el suelo, pero tiene un efecto menos duradero que las técnicas como "Relámpago".
Left + Attack = Golpe Hacia Atrás que es una forma de atacar al oponente rápidamente cuando se encuentra en la espalda del jugador (mecánica debatible)
Right + Attack = Golpe Hacia Delante que empuje al enemigo a cierta distancia delante del jugador.
Y luego el Ataque Rápido me parece que se sigue viendo bien como está actualmente dentro de mí idea. 😉
Quiero aclarar también que ésto solo es una idea para el Gameplay y que no quiero parecer un usuario exigente de "ADD BLACK FREAZ". Si es que mí idea no es de tu agrado lo entiendo perfectamente. Muchísima suerte y ánimos para usted.
Quise experimentar con la creación de mapas y salió esto, el método de edición es bastante sencillo de entender
Estoy muy expectante de ver cómo se sigue desarrollando el juego 😁
Mapa:
Textura:
Txori, you mentioned figuring out aiming after you figured out jumping, which is fair. I just wanted to go over some more aiming-related issues since I just found out some during testing, for whenever it is addressed.
Using the arrow keys to aim is unintuitive like you said, especially since you already use the arrow keys to choose which projectile to fire. However, additionally, there are certain "instant projectiles" like lasers, bullets, glue, etc. Anything that doesn't have a charge time, and just fires instantly. It's impossible to aim these with the arrow keys. If it's set to the basic blast, than it will always fire forward, as pressing any direction would trigger a directional blast. If it's set to a directional blast, then it will always only fire in that direction, as pressing a different direction triggers a different directional blast. I think some auto-aiming might be necessary in the future (and could preserve walk/fly back sprites from old characters).
About the jump not allowing you to change directions, I think it might be a good idea to allow changing directions when bouncing off of a character using the "stomp" ability? Since it's sort of like landing for a second, and allows for more acrobatic characters.
Finally I played around with transforming characters. It seems like the transforming no longer centers the player by the bottom of their sprite. This means, if you power-up into a character who's smaller or larger than your current form, it will put them into the air or into the ground.
Oh, and while testing giant characters, I noticed that where the projectiles fire from are totally misaligned now. In the old BASTON, when characters got large, the alignment was off by a few pixels, but it seems even more exaggerated now.