Progress was kinda slow previously, now it has gotten even slower thanks to a new hobby 馃し Only managed to add 'cursed' and 'unidentified' item properties and the way to identify them (free via the town guild, else uses scrolls). Also some bug fixes here and there. That's all for now 馃憢 #JSDungeon
JavaScript Dungeon
by @cocefi.bsky.social
Devlog for my JavaScript dungeon blobber project
Not much progress for this update. 馃悓 I went back to work on encounters a bit. Shrunk the mob sprites by 10% for better scale vs the environment. Also spiced up their skills a lil' with some effects and text pop up to make actions easier to follow. #JSDungeon
Started on the first campaign map. Just blocking out the areas and linking stuff together so the graphics are mostly temp art. Won't be showing much to avoid spoilery contents. Also, map now supports pillars! It was a pain to add in due to em not sharing the same coord system as tiles 馃拃 #JSDungeon
I bit the bullet and made directional sprites for the chest. Also did a bit of update to the encounter UI. The action meter now looks like two opposing forces clashing instead of all running in the same direction 鈿旓笍 #JSDungeon
Finally got around to this again. Trying out a variant of the EoB way. Feels better while turning, but the sprite is only visible from 3 directions while you're on it, which can be quite confusing if you happen to step onto the square from the wrong direction. Back to the drawing board! #JSDungeon
- Overhauled some UIs - Updated map editor - Updated text system & font - Encounter system ~60% done - Added status effects & skill system - Added full view map - Added containers and loot drops - Lotsa bug fixes (spotted another bug in the GIF, argh!) That's all for now 馃悾 #JSDungeon
So this has been buggin me for a bit. When you rotate around an object, the sprite remains facing you at all times. It feels odd somehow. What's a good solution without having to draw all sides of the object? 馃 Megaten or EoB way is a bit restrictive so might only use it as last resort. #JSDungeon
A bit of fun with the VHS image filter hiyameshi-retro-pack.web.app/apps/Heisei-... #JSDungeon
It took 10 months(!!), but I'm finally back to working on the battle system. Reused whatever code I could and linked it to the new dungeon event system. Still lots to do though... enemy AIs, sprites, action/skills, status effects, damage calculations, player deaths, loot drops... 馃ゴ #JSDungeon
Implemented a few dungeon events + actor support. NPCs won't be visible this way (probably more like Megaten where they suddenly pop in front of you). Just wanted to test the sizing first. #JSDungeon
Last update before the new year arrives 馃巻 Made a stairway while trying to figure out a workflow for the dungeon graphics. Looks like I've underestimated the amount of work required for the wall pieces 馃槗 #JSDungeon
Finally did some early art test for the dungeon after spending weeks refactoring a bunch of badly planned systems 馃拃 Things should be back on track now (I hope!) Have a great festive holiday, everyone! 鈽冿笍 #JSDungeon
For the curious, this is how the movement looks when transitions are slowed down to 3 secs (originally 0.1 sec). Looks pretty weird but tricks the brain when done quick. (Borrowed the idea from Lands of Lore) #JSDungeon
- Added basic dungeon saving/loading - Implemented map change events - Added minimap No time to do new graphics yet, unfortunately 馃様 #JSDungeon
- Fixed the wall depth - Added wall/floor flipping after each step - Added transitions to the steps to simulate movement 馃弮 #JSDungeon
Integrated dungeon into the game with some basic map loading and rendering. No collisions yet. Also the walls don't feel right... probably need to push the depth a lil' more? 鈿掞笍 #JSDungeon
Map editor is alive! Just bare minimum features to let me work on the game's dungeon rendering. Still haven't figure out how I should handle doors yet though 馃 #JSDungeon
Fun time with CSS #JSDungeon
Spent way too much time getting the mod compatibility checks in. It now warns you about compatibility issues if you have different mods loaded. It also safely turns undefined items into stone if you choose to proceed without the necessary data (totally stole that idea from Sorcerian). #JSDungeon
Just toying around with a modding system idea I had. Since it's HTML5 + JavaScript, I get to try the drag & drop file loading trick 馃檶 It's not perfect (images doesn't refresh automatically) and probably lots of edge cases to smooth out. So it'll remain as a proof of concept for now. #JSDungeon
Town area is ~80% done. Meanwhile dungeon is still... 0%!
Had to fire up Blender because I couldn't find the background I wanted for my game. It's good enough I guess! Been making lotsa tiny progress lately but I'm just too busy to post. Things are going to get even busier still, so I won't even have time to indulge in this for a while! Till next time 馃悢馃憢
Tackling all the important menus first since the code is still fresh in my mind. Game Settings is one of the tougher ones because mouse and keyboard/gamepad interaction differs slightly here, but it's done now! Just a couple of menus left before I jump back to the fun gameplay stuff 馃悢鉁岋笍
Menus, menus! Added a Manage Party menu + some other fixes. Might add in a class selection later. Was planning on doing modular characters w/ skills but I'm having second thoughts now. Also having a shared inventory means dismissing a party member would result in them unequipping everything. 馃樀
Nothing but menus (and color remapping post-effect)
Still working on this UI lol 馃樀 Will be changing the (shared) inventory flow so that it goes Manage > Select Character > Item List > Action, which I think makes more sense than the one seen in GIF (where you select a character AFTER choosing the action). Just a record of my misadventures 馃悢鉁岋笍
Status menu is still in progress. I went with a scrollbar in the end because it's just way more convenient UX-wise than separating inventory into multiple pages. I took me forever just to implement that scrollbar though... 馃拃 (It also supports a second party member now )
Been thinking about the game design lately, so there isn't anything cool to show. As for coding, all features have been reintegrated into new code base, except for combat. I have also updated the text system to support emoji/icons (in a hacky way because I don't wanna rewrite everything again 馃様)
Progress! (or regress?) Few days after the last dev update I decided to refactor the codebase as it's slowly getting messy with 'if' checks everywhere (miraculously held up by duct tapes and prayers). I restarted with a blank project and is now reimplementing the features in a more organized way.
UI troubles. The menu covering up the right enemy sprite feels kinda iffy, but repositioning the menu will make it inconsistent with the other scenes. Gonna sleep on it and hope some ideas pop up in dreamland 馃槾 (yes, it's a Grandia-inspired battle system)
Just mainly coding this week. Also researching into server stuff for leaderboard & database. Done: - basic main menu - save/load system - updated UI layout (more room for player stats) - player stats display - sprite instancing and pooling - improved inventory system - text queueing system
Some progress. Took me forever to just pixel the portrait (scope creep!) Done: - variable width font support - skippable typewriter text - mouse cursor interaction - scene navigation & event triggers - sprite fading with Bayer dithering - portrait support - name input system - basic inventory
My gawd... I still haven't gotten to any game logic yet... 馃ゴ Done: - state machine - FPS limiting (too lazy to do framerate independent) - 9-slice for popup menus - mouse hover detection (Bought a cheap RPGMaker bg pack for backgrounds)
Apparently JavaScript canvas text is blurry as hell and I'm forced to implement a bitmap font system instead (luckily there are lotsa online resources on it!) Done: - Bitmap font w/ word wrapping and overflow support - Basic sprite rendering I should just use Phaser but where's the fun in that? 馃お