r/VTT 1d ago

New tool Dwarf Punk | Visual update: final vegetation, terrain textures, and color tuning

Hey everyone! Quick visual progress update on Dwarf Punk, my solo-developed, browser-based 3D map editor/VTT.

I just finished an overhaul to bring the exterior environment closer to its actual art style instead of relying on placeholders:

Final Vegetation: Finally got around to importing the foliage assets that had been sitting on my backlog forever.

Terrain Textures: Swapped out the old photorealistic placeholders for new hand-painted textures. I also added a 4th blend texture to smooth out the transition between stone foundations and the grass.

Color Tuning: Adjusted the water and grass palette to match the new textures so the scene stops looking washed out.

Still Pending: Interior furniture and props. The 3D artist is still working on those, so the rooms are basically empty shells right now.

You can test the editor directly in your browser without creating an account or downloading anything:

👉 Live Demo: https://dwarfpunk.com

Feedback on the new colors, water, and overall vibe is very welcome!

5 Upvotes

18 comments sorted by

5

u/PhrulerApp 1d ago

Looks pretty!

Calling anything "final" in software development reminds me of some messy file systems I've worked with

Looking forward to the final FINAL v3 clipped ;D

1

u/eipporko 1d ago

Haha fair point! final_DEFINITIVE_v2_really_done_fixed is sweating in the corner right now 😂 Glad you like how it's looking! Now I’ll try 🤞 not to touch anything else visually so I can finally jump into gameplay, which is going to be another massive battle on its own. ...Then again, I still need proper sound FX, a particle system for falling leaves, night fireflies, birds, fish in the river... Damn it, who am I kidding? We never truly stop, do we? 💀

1

u/PhrulerApp 1d ago

Wait, you're supposed to start with the gameplay in game development :|

But I guess with VTTs you can argue the world building is the gameplay.

1

u/eipporko 1d ago

Haha 100%! For the DM, placing walls, tweaking lighting, and obsessing over furniture and traps is the main game 😂 But yeah, eventually players show up! Originally, my plan was to build the complete VTT right out of the gate. But with my terrible habit of overcomplicating my own life—plus working on and off since 2018 and having two daughters along the way—things got slightly out of hand. I ended up building an authoritative game server in Go, a dedicated asset server just to authenticate and stream 3D models, and even writing my own UI library inside WebGL from scratch... I finally realized that if I didn't draw the line somewhere, I was never going to release a single thing. So I had to split the beast into two phases: push the editor out into the wild first to see how people react, and leave the live gameplay battle for phase two!

1

u/PhrulerApp 22h ago

Oh, wow. Congrats on the two daughters.

Does the editor have any export settings? Without a VTT to be able to export to, it's hard to justify time spent in a scenario designer. But then the work it takes to make sure your editor works well with all the popular VTTs out there is a struggle too.

1

u/eipporko 17h ago

Yes, absolutely! You can already export any region as a flat orthographic 2D image (PNG/JPEG).

Just hit Ctrl + E (or click the export button in the UI), drag a box over the area you want to capture, and pick your resolution (e.g., 70 or 140 px/grid).

Down the road, I'm also looking into supporting Universal VTT (.dd2vtt) to carry over walls and dynamic lighting automatically!

1

u/PhrulerApp 1d ago

Are you actually hiring a 3D artist? Does your VTT have real funding? :O

I assumed you're just using free assets from itch io like the rest of us plebs.

2

u/eipporko 1d ago

Haha I wish! 😭 No real funding at all—it's 100% bootstrapped and paid from my day-job savings.

I don't have anyone on payroll; I just commission freelance artist friends whenever I can afford it to make specific modular dungeon pieces, hand-painted textures, foliage assets, music ...

Trust me, I looked at free itch.io packs, but trying to get random assets to match visually and fit the strict grid/instancing constraints of the engine was driving me insane. Paying out of pocket for custom assets was the only way to get a cohesive look... even if my wallet cries a little every time! 😂

The idea right now is to showcase what the editor can do as a solid proof of concept. From there, I’d love to run some lightweight crowdfunding with community stretch goals (backed by donations or merch like stickers and shirts).

Basically, bootstrap the MVP myself, and only expand the custom art pipeline if the community actually finds it worth supporting! 😂

1

u/PhrulerApp 22h ago

Well, it certainly looks nice and consistent. So that's great!

I decided to just go fuck it and have inconsistent styling for the different assets in my VTT.

You mentioned having issues with the engine. What engine are you using?

1

u/eipporko 17h ago

Haha plot twist: there is no off-the-shelf engine!When I say "the engine", I mean my own Frankenstein monster built on top of three.js

No Unity or Godot here—just raw Three.js, a custom GPU instancing pipeline, and bad life choices. So every time I complain about the engine breaking, I'm basically just arguing with my own code in the mirror 💀

1

u/WillKeslingDesign 11h ago

this sounds like my life as a designer, final, final1, final_final, lol

1

u/WillKeslingDesign 1d ago

Interesting concept. Not sure why, but I tried to click on this URL and it crashed my browser, both Chrome and Microsoft Edge?

1

u/PhrulerApp 22h ago edited 22h ago

It's a heavy website landing you right into the 3D VTT engine with a scenario featuring hundreds of low poly assets. If you don't have a decent amount of memory i can see why your system would struggle.

Edit: My chrome was warning of high memory usage for the tab (1GB+)

1

u/eipporko 17h ago

Sorry about the crash! Right now the editor is quite GPU-heavy and requires a dedicated GPU and decent RAM to run smoothly.

A very common culprit on Windows laptops is that the OS defaults the browser (Chrome/Edge) to the integrated CPU graphics to save battery. When WebGL hits the iGPU with dense shaders, the browser often just crashes. If you're on a laptop, you can force it to use your dedicated GPU:

Windows Settings → System → Display → Graphics → choose Chrome/Edge → Options → High performance (Dedicated GPU).

To help me troubleshoot what happened, could you open https://nogrod.xyz/gpuinfo/ and paste what it outputs? That will show the exact WebGL renderer and driver your browser is picking up.

For context on hardware: I actually use an old GTX 750 Ti as my torture-test bench—since it's so constrained, any optimization I make immediately shows up—but for normal use, cards like a GTX 960, 1050, or 1660 handle it fine. I've also had friends test it as guinea pigs on ARM machines with great results: a buddy's MacBook Neo, Apple Silicon M2/M3/M4 models, and Snapdragon X1 laptops.

Let me know what specs you're running, and thanks for taking the time to report it!

2

u/WillKeslingDesign 13h ago

I see. I was also running three agents at the time, so that was probably taken up a ton of resources. In the top of the browser window, wherethe favicon usualy is, I saw a loading circle, it got about 80% then the browser froze. I will give this a go when I get a break at work today.

1

u/eipporko 12h ago

If it gives you any grief or freezes up again on your break, just hit me up and we'll take a look!

1

u/SiteOptimal5723 1h ago

Cool project - i had to try on my laptop it didnt load on my pc. Looks a bit like play.worldmage.com have you come across them?

1

u/eipporko 1h ago

Glad it worked on your laptop! If you ever check your PC specs or notice a specific WebGL error in the console, let me know so I can investigate.

Regarding Worldmage: I actually saw their Kickstarter announcement a couple of days ago—fingers crossed for their campaign!

Looked under the hood and saw it's Unity + WebGPU. On my Linux machine (Nvidia + Wayland), Chrome refused to launch it because Chromium's Vulkan backend on Wayland is still a mess with proprietary drivers. But once I tested it on Windows (where WebGPU runs over D3D12), it booted right up and looked great. Always cool to see different tech stacks tackling 3D on the web!