Monday, February 17, 2025

Piko's Bubbles: Learning Pixel Game Maker MV

So on a Sunday night after dinner, I made a list of potential options on what I could do for the night. One of them was to learn a new game engine for fun (Pixel Game Maker MV). I ended up choosing that one and it turned into a night of about 5 hours of game dev and making a short game!

 

🎮 Play the game here:

 

 

🎥 Watch the playthrough video here:


I had previously looked at the engine and started a few projects using the template project, but never really did that for longer than an hour a a time. So I had a few test projects that were all the same of just the default assets and nothing really beyond a map with nothing playable.

So I decided to actually sit down and learn how to make the very basics of a game, similar to how I learn any game engine. And while doing that, I learned that this engine is not really widely used. Or if it is, there's not a lot of people talking about it or posting tutorials or documentation on how to use it.

I found a few YouTube videos and then there are the built-in tutorials, but it's pretty limited overall and some of the core features were missing or difficult to figure out how they worked.

So I started out by actually collecting art I had already made so I could easily import sprites without having to immediately create anything new. I unfortunately didn't get any screenshots while the assets were still in there, but I was using some of these placeholders to start.


So I was able to get some sprites into the Resources folder, which is how you store all of your images and other resources in PGMMV. It's similar to how RPG Maker has a Resource Manager, but I honestly never really use that. It's interesting that I couldn't find a way to just drop images into the folder itself, but they all had to be manually imported in.

Most tutorials started with lengthy descriptions on drawing/importing all of your animations and states before just getting a character moving on the screen, so I struggled at first to figure out the basics. I skipped around a lot to try and get that in there first with some basic sprites. I set up the object states in there using a sprite of Piko from my GGJ25 project for this.

I was using some placeholder platforms I made as the first platforms to jump on, and eventually replaced them with a new underwater-looking tile. I made a very small tileset to just have enough in there to have a playable game.

Once I had a player that could jump on platforms, I wanted to make a collectible item. It ended up being a bit more complicated than I was expecting. I was trying to find a simple player collision with an object event that I could use to detect if the player collides with the item, but the player would bounce off of them because there had to be a collision. I finally figured out that there's a field of vision feature that can be used for this type of collision, so I set that up for the item collision, and eventually for teleporting to the final scene.

Then I wanted to create a score for the collectible items to add to. So I learned about on-screen text, which is also a bit different from what I'm used to. You basically set up a resource in the Resources that's for text, and then reference it in your objects. And then to display it on the screen in a HUD, you create a new layer on a scene for the menu. It's an interesting method. So I turned the score into a variable and had it display after the "Score:" text.

Then I made a new scene for the credits because that displays text too. I reused sound effects and music from the GGJ project too, so I had those creators ready to add. I had the scene transfer there when the player reached the end of the level. I used a larger bubble in the level to show that.

From there, I wanted to make an enemy. The first thing I learned here was how to make the player attack the enemy and destroy them. I used some of the built-in tutorials for this, and so I had to actually make animations for my player to see if they were attacking or not because the enemy wasn't getting destroyed right away. So I just used some alternate views of the Piko sprite for this, but set up some basic states in the animation editor. I eventually got it all working though.

Then I wanted the enemy to be an obstacle that destroys the player when they collide. I had a hard time figuring out how to just restart the level. My temporary workaround was going to be teleporting between scenes. But then I discovered that some of the built-in switches are actually meant to be events. So I found the "Restart" switch that when it's on, it restarts the game. So that was exactly what I needed.

So because of this new discovery, I was able to create an end to the game. Once the player's on the end credits screen, they can press a button and it closes the game.

I also made the title screen. I decided to just make all of this in Photoshop because I was wrapping up this little project and wanted to do it quickly.

I ended up adding some slopes while I was playing around with the level design as well. And I made the level much smaller to only be 1 screen where the camera didn't even need to scroll. I was originally making it pretty large but then ended up just scoping it down as a little short test level.


I had a few weird gameplay bugs where the game would sometimes start and the player can't move or control anything. I still really don't know what causes that, but I found it works better with a controller. I tried the PS5 controller and the controls were pretty messed up though, so had to resort to trying with an Xbox controller for it to be fully supported. I tested along the way and eventually had a full level with art mostly replaced and made just during this.

So then I decided to just record a gameplay video and upload it to itchio! This was a fun little Sunday night project that I completed in about 5 hours. I love learning new game engines and just new things in general, so I had fun with this side project.

Overall Thoughts

While this engine is very cool that you can do everything without code and that I was able to make a short game in a very short time, there were a few things that I didn't enjoy and are reasons I likely won't be going forward with this engine.

I've always really wanted something as easy to use as RPG Maker, but for action games like action RPGs or platformers. But I don't think this was quite there. It's possible it gets easier with using it more, but the complex animation and state system made it fairly difficult to really find everything and make simple interactions quickly. After I found where things were, I was able to understand more how it works, but I do feel like there's a lot of setup until you can get something moving and playable, which is a big downside for me.

I've recently been learning GDevelop, and while this does have more complex features built-in, I do think that GDevelop is overall a lot easier to get started right away with. Because GDevelop is free and open-source, I'd also overall recommend that over PGMMV for someone starting out and looking to get an action game made quickly. I understand GDevelop came out after PGMMV, so PGMMV was really the easiest you could get at the time. But now there are other alternatives!

Something I didn't try out was that there seem to be built-in dialogue boxes and choices, using plugins, similar to RPG Maker. So that could be a big plus though. I still haven't played around with how GDevelop handles it with the Yarn plugin yet either, but that's always something I'm looking for easier methods to do, after being so used to how easy RPG Maker makes dialogue.

I might see what's possible with a top-down action game at some point in PGMMV, but I'll probably look to other engines in the future for creating this type of game. I had fun making this and trying it out though!

Sunday, February 16, 2025

Nay Saga Devlog 7: Card Redesign & Character Art Sorting

This is a smaller update in terms of visuals on the cards themselves, but I made a lot of progress in terms of organizing and sorting a lot of the images I need for the final cards and drawing some new images.

So I started out by printing a card that had strengths and weaknesses on there to see how it looked. I don’t think it’s too distracting when it’s printed out, which is good.


Then I asked my friend Jinny for some feedback and she gave me some useful feedback to implement! We looked at some of my inspirations like Root, Tic Tac KO, Stardew Valley, Wrong Party, and Pokemon TCG. Something we assessed was how those games make use of type colors, but it’s just the card theme color and not the symbol itself. The symbol is usually black or white against the card color to make it stand out and not have as many clashing colors. Some of them have additional borders or gradients too, to help make them feel more polished.

I started with a few ideas having more absolute black or white values, but I wasn’t really liking how they were coming out.


Then I started fresh in a new PSD and just laid things out based on some of my inspirations to try and start fresh so I didn’t feel as boxed in to my current designs. I started to like the direction a bit more of having a more angular design overall to some of the features.


I also tried out a few with more borders, but not super sure about how these came out either. I’m still trying to figure these out, but it’s helping me break out of the original design I was stuck in at first.

I got more feedback from my friends on the overall direction, and landed on this one (below) where there’s an accent color that’s lighter for the color and it overall has a more angular and clean design. I’m still not 100% sure on the white and accent colors for the strengths/weaknesses but it’s starting to come together a bit more.


So I iterated a bit more and came up with some more slight alterations. I experimented with swapping the strength and weaknesses colors and then bringing the lighter accent color back into the bottom traits to help them stand out more. I also tried stylizing the borders a bit more so they’d fit better with any shape (including some of the more angular ones). I also removed the gradient because I’m not sure if adds a lot and is just an extra step for creating the card itself.


Then took a break from card layouts to go back to the character art itself. I was continuing to save out PNG files of all of the characters I’ve drawn. I finally finished the first pass of this! So I saved out about 700+ character drawings. There are still some that I want to redraw or finish drawings of, but this was great progress for now. I’ll now have a much easier time saving out the final images when I’m ready for it.


Then I continued to work out this process. I started to collect drawings I had sketches of but not finished color and lineart and decided to finish some of those up or draw characters from scratch that I wanted to be in the final version so I could have even more of them included.

And then I drew some more characters that I hadn’t drawn before or that I wasn’t happy with any of the drawing I had of them.


With this, I drew a couple of full body drawings so I decided to turn those into Nay-A-Day drawings that I posted online during the summer on their birthdays.


I decided to start planning out some of the physical aspects outside of the cards like the scoring cards and tiles. I also came up with the idea that each person plays as one of the characters so a new tie breaker rule for who starts each round can just be determined based on the character.


So overall, I made a lot of progress on sorting all of the character drawings and cleaning some of those up for the final version. I fell a little behind on the final card layout, but I know I do need to make a decision soon on what that will look like so I can get some final test prints through. Next time I’ll have one less week due to some upcoming travel, but hopefully I’ll be back on schedule after that.

Sunday, February 9, 2025

Nay Saga Devlog 6: New Gameplay, Card Layout Updates, and Digital Game

I’ve been doing a lot more bringing things together with how I want this game to play out. I’m trying out new game styles, working on the layout of the cards, and the overall flow of it all.

So to start things off, I came up with yet ANOTHER new gameplay style. So I tested it out and it was pretty fun! So I’m up to 5 potential ways to play this game. It’s cool that it’s turning into something that can be played multiple ways, so I’m excited to see which ones people enjoy the most when I play with real people.

 For this new gameplay style, there’s one card in the middle that’s the active card and everyone plays a card face down from their hand. Whoever has the most matches wins the round and gets to play the next active card. It’s pretty simple but can have some strategies because of who plays next.

Then I came back to thinking about the digital version of the game. I drew some of these sketches earlier, but started to think about how the screen would look with all of the cards laid out and how it could play digitally.


I came up with a few quick sketches for the dialogue portions of the digital game and also what the intermission menu would look like where you can access your menu between Eventure chapters.

Then I was thinking about how a lot of these variations to the games have strengths and weaknesses for the types come into play. Originally I was going to have a mini-card that has this information, but then I started to think that it might be helpful to have that information directly on the card too. So I sketched some ideas for trying to figure out where I could put strengths and weaknesses on the cards without making it too crowded. I’m not sure if these will distract too much from the other details, so I still need to do some tests in Photoshop to see how I could fit this in effectively.


I mocked up a quick type card to get some layout ideas. I’m not intending this to be final, as I still need to work on the colors a lot more, but I wanted something rough that I could reference for the types.

Then I tested adding the type to the card and I think it turned out well and isn’t too distracting. I tried out using + and - symbols and arrows to indicate strengths and weaknesses. I asked my friends for feedback and they helped me decide that I’m leaning towards the + and - symbols. I also played around with different coloring, but I think overall I liked them using the type color. I tried a few different variations with white or type colors but overall the + and - are so small that it just works better with them matching colors.

I brought back an old style of maybe cutting the type out of the top part, trying to figure out if that’s what I want them to look like. I used some feedback I got last time to try and make the top part match the bottom a little better.

Then I started thinking about the logo for the game. I want this to be centered around how it’s Mr Dude’s project that he’s making for Izumi (as that’s where the original idea came from). So I was first thinking about making the logo echo the “Nay-A-Day” style of a scribbled background and handwritten logo. Then I started to incorporate elements of Mr Dude into it so like the shape of his hat and sunglasses, his hammer, or even putting his face or silhouette in there somehow (to kind of get inspiration from older Final Fantasy logos or Romancing Saga). I think I like some of the bottom concepts more, but I’m still thinking through these!


Then I had a breakthrough moment! I’ve been making so many different ways to play that I finally found a way to connect them all. It can be one massive game that you play 1 of each phase and it’s all leading up to 1 final collaborative game. So the cards you win in each round end up being your massive hand in the final round. I tied each round to a different character related to time travel to represent each of the games. So then after planning all of that out, I played it all together! It took about 3 hours for me to play 5/6 of the games in a row. I’m not sure if that’s accurate or longer/less time than it would take, but I’ll find out when I try with real people I suppose.

The final mode ended up being pretty challenging when I played it with 3 “players” (on my own). Because you have to stack 6 characters on 3 piles (18 cards in total), the last pile was challenging to get. It could be because I’ve made the majority of the cards M or S Nays, so they have more in common, while the others have a much lower chance. I might end up changing some of the numbers so you don’t lose if you have to discard 6 in a smaller player game, but instead something like 10 might be easier to win.


I continued to iterate and make some variations on the new games I came up with. For the final one, I added some more type advantage actions and I think it really added a lot more to the game. I’m still playing around with the difficulty level and collaboration aspects of it so I’ll need to do some more testing to fully figure all of that out.


I then realized that I needed to focus back on the priorities for this project. I created a Notion calendar of tasks months ago but haven’t really been referencing it or prioritizing tasks. So I sat down and updated the calendar and added priority systems. I felt so much better and more organized after spending some time doing that! Now I know what I should focus on to get things done for this project (outside of playtesting) so I can focus more!

So one of the first big tasks I’ve been working towards after organizing what needs to be done is finding the best drawing I’ve done of every character. Because I have about 500-1,000 characters that I’m planning to make cards of, this ended up being a long process. I’m almost at the 400 character mark, but there are still a lot more left to go through. I’m saving out a high res PNG with no transparency of the character so I can then just save those into my final layout to match the final size when I have that ready. Right now it’s just a matter of finding the best drawings, saving them out, and then making notes of characters that I plan to redraw or draw for the first time if I want to include them in the game.


So now that I’m planning things out more and knowing what’s left, my main struggle is just having the time to do it. My life has gotten so busy lately that it’s really hard to find the time to work on my own projects anymore. I’ve been struggling with balancing my social life with my personal projects and often prioritizing socializing over projects lately. I really want to get back to having a healthy balance before the two, but it’s just something I need to work on in the future!

Sunday, February 2, 2025

Nay Saga Devlog 5: Additional Cards & Tabletop Simulator

I took about 1-2 months break from working on this project while my personal life was busy. But now I’m getting back into it!

When I got back to it, I started by adding 64 new character cards in the sheet so I could try and balance things a little more and have more variety, especially for playing with a bigger group. I found some placeholder art and threw them into images within a few hours. There are a few characters I definitely need to draw new ones of or at least clean up old drawings that I found before I’m comfortable using them in the final version though.

I decided that I wanted to try them out in Tabletop Simulator to even more quickly prototype and test without having to print them. So I made a quick card back so I could at least import it in for this step. This is super rough and very placeholder right now, so I’m not intending to use it at all in the final version. I still need to brainstorm and sketch some ideas for what it’ll look like.

Then I exported all of my cards as a large png to be used in Tabletop Simulator! I discovered though, when I was importing it in, that you can’t actually have a deck of more than 69 cards in Tabletop Simulator. I did some tests with a smaller deck of like 10 cards for work previously, but I didn’t realize this limitation until now. So I realized I need to cut down and make multiple decks to even test this aspect.

After looking in the documentation for nanDECK, I figured out I could just type more lines in the DISPLAY command to specify how many cards are in each row/column and then specify the start and end cards. So I just had to run 2 different commands to save out 2 image files to use for the decks.

Then I imported my two decks into Tabletop Simulator! It was pretty easy once I had the correct sizing figured out. So I started to draw the cards and lay them out for testing.

Then I decided to prototype and playtest a game in there. It was a little more manual than using physical cards, but was a pretty quick way to test it out, especially with adding new cards and not needing to print them out. I used some default marbles for tracking the order cards were played in and then checkers pieces to track the points. I think I prefer the methods I was using when playtesting physically by using colored tiles with numbers on them and the numbered tokens for points (temporarily borrowing from other games), but it was good to test with these to figure out what I prefer most.

Then I printed the new cards out so I could use them for testing! The printer was out of ink though, so it took a couple of weeks before I could do this. But I now have a lot of cards and a lot more variety (with 108 total)!

Now that I’m back into working on my projects more, I hope to have more updates and test with real people at some point soon. I have some other game types floating around in my head that I might try out too, but I also have been thinking more about the digital version of the game. So there’s still a lot that I want to look at when I get fully back into this, but the great news is that adding new characters is fairly easy to do with all of the systems set up!