Devlog No.038
Added 2025-03-21 08:08:54 +0000 UTCWhen I was a kid, I remember buying a pack of space marines. The plastic kind you assemble. And I went through a great deal of trouble with assembling and painting them. First using the wrong glue, then using the wrong paint. In the end, I figured out the correct glue and right paint and I assembled all of them. But it was only after I'd put them together that I realized I had put on their shoulderpads wrong.
It seems whenever I learn something new I always mess something up and have to take it apart and put it back together again. Usually only once though!
So these past couple weeks I focused on working on two things mostly. The first was a new currency that ties into NPC tfs and the second is the map. I also fixed up the in game menu a bit and now there is a new inventory option. For now it just shows the new currency, gems, and also lets you access your map.
In the next build you'll be able to find gems within nodes with gems inside them. If the node has rainbow colored stones in it, then it'll be random what you get. If it's a solid color then you're guaranteed that specific color. The amount you get from each node will vary of course. I can control all of this on a per node basis. By default, when I set a node down it has a random chance of being a gem node when you load the room it's in. Otherwise it'll just be dirt. But I'll be modifying these spawn chances a bit on a per node basis. So sometimes you'll find gems more often in a specific spot than others.
Also there will be a small chance of finding a node or two in earlier segments of the game. So even if you are new, you might find some before you reach this coming up area.
Speaking of, Kirizimi will have a gem mine in it that you can explore. It'll be pretty small and the number of gems you can find will be fairly low, but it should act as a nice introduction to them. One of the quests will involve you going in and grabbing a specific type of gem. I'll make it so that specific gem type is guaranteed to spawn so you won't have to keep going in and out and hoping you get it.
As far as what kinds of gems there are, right now there are six types. Eneralds, Silfires, Raspers, Zerkawns, Torazes, and Kyrakysts. (I'm sure if you use your imagination you can figure out what they're supposed to actually be)
As for what purpose they serve, partially as a way to buy a few unique items, but also mainly used as a catalyst for tfing NPCs. You'll also need to buy a special tf item from a vendor.
I may add more gem types later on, but for now, these should cover things.
And as for the map. Well it was much harder to implement than I thought.
I said I was just going to keep it simple, but when I got an idea in my head for it, I couldn't get it out and so naturally I went to the trouble of making things harder on myself than I should. I didn't want the map to be overly simple to the point you would look at it and go 'I forget what is actually there'. So naturally I included a little thumbnail of the area appearance and have some text at the top which tells you 'what' you're looking at. You can also move through the map very easily.
Right now it's just a bit rigid and only detects direct paths so it won't go up right, down right, etc if a node isn't directly next to it. I'm going to fix that up and smooth it out. Also I would kind of like it so when you switch nodes that it doesn't just 'snap' to the next node and instead the screen drifts rapidly over. Should be less disorienting.
I'll post a video showing off both the map and gems after this.
Making the map was really time consuming actually. Though that's really just cause I have to add entries. But now that I have most of the entries in there, it should be easy enough to just update it as I go every time I add a new area.
It's also worth noting, but I had quite a bit of trouble with saving the map. I was getting some errors as I had been trying to store the map data in with the rest of the data. (Stack overflow stuff. I believe this has to do with using base64 encode in GML. I am actually a bit worried it might come back if I keep trying to add more save data, but I will avoid using that encoding for everything else since the only extra stuff would be just a bestiary.)
I managed to get it to work by just adding a new save file for your map data. So now you'll have a save file for your normal save and also a map data save file inside the save folder. Nothing to really worry about at all. I had to save it as plaintext though and I am a bit worried someone might stumble onto it and mess it up, but ehn. If you're going into save files and modifying them then it's an assumed risk.
I'm actually not at all opposed to anyone seeing/modifying their raw save file info and such, I just worry that accidents might happen is all.
Either way, I started out with a map array which was just way too big anyway and I think that was probably the cause. I shrunk it down significantly. Though even with doing that the game lags a bit when saving and loading. Which I honestly wondered if my game would ever get to the point that I needed a 'loading' 'saving' screen. I'm hoping to avoid that if I can.
If after the next update anyone is having saving/loading delays which are significant, please let me know so I can figure something out. As of right now it's just a small delay, but you never know. It will also take a bit when you first load your save because the game will be making a new file for the map data. So no need to worry if it only happens the first time you load your game. Though I do always recommend making a backup of your previous save of course.
The one problem with the new map system is that it's not dynamic. When you load your save game, you will have to revisit all the areas to unlock them in the map. Unfortunately I didn't have the foresight to implement any mapping points in rooms. I honestly didn't even think the game would get this big really.
If everyone would like though I can add a trigger to the game in the next debug build to allow you to touch it and it will unlock all the main path nodes. (I assume people don't want me to spoil them by unlocking all the hidden paths for them)
And I think that's really it for now! Check out the video and give me feedback on how you feel about it! I'm willing to modify it more if it's not great.
Comments
Oh good! I was worried that the map might not look great. I will probably still make some small changes here and there, but it will mostly remain the same. Just stuff to make things more clear or smoother. Plus I'll likely change the SFX it makes swapping nodes just to differentiate it. Lots of little changes still left. As far as the 'unlocked items' list goes, it probably won't be too hard to implement since I don't have to add anymore info saving. Just base the menu on your unlocked items vs items that can be unlocked. Only issue there is deciding on how to treat locked items. I feel like I should make it so you can highlight any you haven't unlocked and have a clue at the top on how to unlock it. Ranging from 'progress the story to unlock this' to 'talk to a dark figure'. Also I feel like people would enjoy being able to select an already unlocked object to get information on what it does. So probably just a lot of data entry. Time consuming, but not really hard to do exactly. Though I am going to wait to implement it. The bestiary though I am still a little bit iffy on. That one would require a good bit of work and time. Likely that will come closer to the end since I imagine configuring it would take quite a while. Plus I think I'd like to make it so you have to unlock entries by defeating the enemies a few times. Then have things like letting you view some animations and such. Either way though, lots of work to go, but it'll be worth it in the end I am sure!
Mitatell
2025-03-22 01:35:53 +0000 UTCThe map function is pretty solid in showing the general pathways, also is super neat and ls nearly exactly what I'd want out of a map system in a game like this. If anything I'll take that debug trigger to allow us to touch a thing to unlock all the main path nodes, would also just be a useful back up tool I think for it as well, and maybe an extra one to show hidden paths that the player has to deliberately interact with to unlock the hidden paths. The inventory option in the UI is going to e so useful for me at the least, just to help keep track of items the player has anyways XD The gem nodes is going to be intriguing I'll say, almost one of those "Have to get hands on first to give feedback" sort of things, but I'm liking what I'm reading of these being used to get npc tf items and other unique items.
AlextricBunyip
2025-03-21 20:53:51 +0000 UTC