Hello, all.
Very very new here. I'm an experienced programmer with a specific idea. As such a lot of the design work has been done for me, and I'm confident in my programming skills. What I'm not confident in is my game development skills, and I'm smart enough to realize it's a very different beast than what I've done in the past. I'll detail more of what I want and my skillset and I'm asking for advice on language and toolkit and such to use.
My Desire
Many of you may have heard of the old 1990's Microprose game, Darklands. I'd like to make a… sort of clone of it, but more like a toolkit that people can use to make games LIKE it. I have a pretty clear idea of what I want the final product to look like. I also think that, as game designs go, this one is pretty simple. It's just an itch I want to scratch so I'm doing it myself.
What It Looks Like
Basically there are four different parts of the game:
- Character Creation/Updating. Yeah, this sounds pretty normal, but Darklands had a bit of a unique one so I'm separating it out, even if it'll probably share a lot of code and canvas design with the next one.
- Story Interface. Kind of like a Visual Novel in many ways, this was basically static text over static images which offered various choices. These choices would be affected by your various stats and such. A good comparison for modern games is Long Live the Queen, but these choices could also take you to another part of the game.
- Overworld Map. Pretty self-explanatory, you wander around in a 2d top-down map to go from place to place.
- Combat Screen. Isometric combat screen. Think very very primitive X-Com Classic, though it was Real-Time with Pause instead of Turn-based(so, more like X-Com Apocalypse with awful graphics)
I'd like to be able to basically clone Darklands if necessary, but allow others to make their own storylines etc. by working with some sort of format.
My Experience
I'm pretty experienced as a coder, mostly with C++ and Python. More Python of late, but I've used plenty of other languages, from Perl to Javascript to Lisp to Clojure to Java, etc. Mostly systems programming with some dabbling in web UI and WSGI stuff.
Very little Gamedev or toolkit experience. I've dabbled in Unity and would prefer not to use it for this unless there's a compelling reason. I've actually made a game in RPG Maker MZ, though not for sale and it's pretty rough around the edges, but that's fairly boilerplate. I've used various toolkits, most notably Qt for C++, and even published an app for helping with a tabletop game before. Finally, my current project at work involves basically making a hex-based strategy game in PyGame and using Tiled to make the maps, but I hesitate to call this true gamedev since the purpose is to demonstrate some AI routines, and not to be a ‘fun game’ to play, but it has given me experience with Tiled and things like grid maps. I have NOT used Unreal Engine, Godot, or other tools before but would be open to any of these if people think it would work well.
What I'm Asking
Basically, what would be a good, maintainable way to get this rolling. I'm obviously going to do baby steps and do one piece to prototype first, and not get too ambitious at first, but a good basis would be great. I was thinking of just using C++ and Qt since Tiled integrates well with that and it can be compiled cross-platform(I work on a Mac mostly, but do game on Windows), but I could use PyGame if it's a serious option, or whatever you more experienced folk think would be a good toolkit to match with my experience.
Basically, what would be the recommended toolkit for this, and are there any major gotchas to watch out for? Not worried about art and music at this moment that's something I will have to handle, but beyond the scope of this.
Thanks!