Devlog #1 - The Road Ahead
Greetings!
This is my first time making a devlog. Cheers to the first of many memories. Thank you for reading this, I'm writing this at 3am while listening to MapleStory BGMs. Hopefully you enjoy.
I hope you have tried the game demo of "Adventures of Nalem", if you have played it, please leave a comment about what you liked and dislike about the game. I would be very grateful about having feedback so that I can make a better game! For those who haven't tried it, you can download it for free here!
Let's Start from the Beginning,
"Adventures of Nalem" is just a prototype to the game that I'm trying to make. I can't make up a good name yet, so the current name is just a generic "Adventures of -", kinda boring but I'm sure I'll get something better soon. The reason I made this game is because I want more people to be exposed to the wonders of Shogi (AKA Japanese Chess).
I play a lot of Shogi in my free time as a hobby, I manage the Shogi Malaysia club as well, basically I'm a hardcore Shogi fan. As a super crazy fan, of course you would want more people to also play Shogi! In the last few years, I have been struggling with Shogi promotion because the game is not really well known. I have been making videos, do live streaming playing the game on Twitch and I moved to YouTube but there wasn't any tangible growth, so I got discouraged and stopped streaming for a while.
RPG in a Box,
Then one day I found that Epic Game store was giving out free copies of RPG in a Box, which is a Voxel based game development engine that lets you create 3D or 2D characters, maps, props, effects and assets all in one program! It's a great tool for a beginner like me who just wanted to try out making a game and it struck to me, there are many games about Chess, and people know how Chess pieces move because they have played it in their childhood or maybe they love playing Chess! So. what if I could make a game about Shogi?
The first idea of fully incorporating Shogi into an indie game would be too big of a challenge for a new game dev like me, so I thought it was best to break the game down into pieces. One of the most significant aspects of Shogi is the piece dropping mechanism where you can redeploy captured pieces back into the game. Another would be the Shogi checkmate puzzles or TsumeShogi which are important for Shogi players to improve their calculation in the game. Once I got the direction of the game I wanted to make, it was time to implement it in the engine.
While Building the Game,
After a few days of creating assets and maps, the big question came to me, can I even make the players place the pieces down onto the board? I panicked and started researching about the documentation of RPG in a Box to find the functions I needed, I even joined their lovely Discord server where the community is very helpful and gave me ideas about how to fix my scripts.
This was the first test I did with the program, which is to build a 9x9 board, and have the player click on a piece to place it on the squares of the board and not anywhere else.
I quickly made 3D voxel models and a simple battlefield map where I can test my code. This was one of the strengths of RPG in a Box where you can quickly jump into the Voxel Editor and create assets like Trees, Characters and Map tiles for your game.
For the scripting side, RPG in a Box uses Bauxite which is their proprietary language(?), I'm not sure about this but it's new coding language for me because I have no experience in coding. With the help of the documentation and friends at the Discord, I managed to come up with the code that works.
I assigned each Shogi tile to an entity ID, which I then used an array function to collect them and put into an array, then I used Request_entity and Request_coordinates for the player to select the piece and place it down on the coordinate/tile that they have chosen. It looks something like this:
function validate_entity($chosenpiece) begin $entity_type = $chosenpiece.type; return $entity_type == CHARACTER; end; $chosenpiece = request_entity("validate_entity"); assign_entity_id($chosenpiece, "chosenpiece"); //function for selecting the pieces// function validate_coord($chosensquare) begin $shogiarray = array[null]; for $shogisquare in group["shogisquare"] do $shogiarray.push_front($shogisquare.coord); //I grouped the tile IDs into a group and used the function to put them in the array// end; $valid_coord = $shogiarray; return $valid_coord contains $chosensquare; end; $chosensquare = request_coordinate(16, 16, 16, 0, "validate_coord"); //function to select the coordinates// put_entity($chosenpiece, $chosensquare); //command to place the entity selected on the selected square//
I needed to make sure that this action was possible before making any progress into the game and I was glad that I managed to get it to work. All thanks to @invaderSil, @Slayer, @obsurveyor, and lastly @Justin who is the creator of RPG in a Box!
Fleshing out the Story,
Once I managed to get the script to work, all that's left to do was to create a story that will hook the players to keep going. At this point, I did a lot of research like how to write a story, what makes a good opening scene, and etc on YouTube. I knew that I needed to figure out the troupes of the story, so I went with a reluctant "hero" trying to save his friend from danger, while being transported into a foreign land and his adventures start there. All of this came into my mind as I was writing in my notebook planning the game, very important to plan ahead.
With the story in mind, I imagined how the opening scene would capture the player's attention, so I wrote a scene about the "Rival" getting tired of the village he stayed and just wanted to go away. On that fateful day, a portal opened up in the forest that they were in, and everything was history.
Then somehow, I wanted to tie in the story with Shogi, so what else could I do when I can Isekai the player into a new world which is the Shogiverse! For those who are not initiated, isekai means transporting the main character into a different world via portal, reincarnation, etc etc ;D Next, I made all the different Shogi pieces to have their own body and look, I might change the designs of the characters but this was just a demo game so I just made something quick and easy.
Also, for those who are wondering, why are the main characters named Nalem and Knafeh? Nalem is a combination of Nasi Lemak (A local food in Malaysia) and Knafeh is a sweet treat in Lebanon. I was asking my friends about what I should name my characters and they gave me the suggestion of using food names and so I did. ;D
Villains!
What's a great story without villains? In Shogi you have the two King's namely Gyoku(玉将) and Osho(王将). They both technically the same piece, but Gyoku is generally known to be used by the Challenger and Osho is used by the Title holder or the higher ranked player. In "Adventures of Nalem", I tried to make Gyoku the villain succeeding Osho's throne and ruled over the lands and causing despair among the people. I hope to write a better story about the past of Gyoku and Osho and how everything came to be in the full version of the game.
Final Words,
Once again, I am thankful for the chance to be able to make this game, (albeit it has multiple bugs!) so easily achievable with some research and dedication and time with the help of the amazing engine which is RPG in a Box that I found by chance. I believe everything happens for a reason, and I'm glad that I came to know this and kickstarted my journey to develop my own game! Furthermore, I would like to thank everyone who has downloaded and played the demo, please let me know if you liked or disliked the project and why the reason for it, I would be utterly grateful. ;D
Til then, see you in the next devlog.
Jien.
Files
Get Adventures of Nalem (Demo) v0.1.1
Adventures of Nalem (Demo) v0.1.1
Shogi Puzzle Game
Status | Prototype |
Author | jienjien |
Genre | Adventure, Strategy |
Tags | Board Game, rpg-in-a-box, rpginabox |
Languages | English |
More posts
- Devlog #3 - Decided on the Character Art StyleDec 21, 2022
- Devlog #2 - Designing the Main CharactersDec 20, 2022
- V0.1.1 PatchDec 18, 2022
Leave a comment
Log in with itch.io to leave a comment.