Genuine question to you as someone who's been building in this space, what would you want / need to play a game as a programmer?
An API? An SDK? An in-game editor? Tutorials? Or is this more a "I want a factorio-like"?
I've been building economic engines and simulations for the last few years now and over the last 3 months in my off time I've been getting increasingly in the weeds about how to design a game that fits this
I've specifically been exploring using a voxel game as a base (think minecraft-like) however because I'm deeply interested in minion management / design I've been looking at how to create a programming / play experience that actually is fun and makes sense
What I'm trying to understand is what is the fun overlap between these
I have some opinions / ideas of my own and what I've been trying to do, however I'd be really interested in what other people are looking for to see where the overlap is and whether it fits the shape of what I'm building and whether I want to really commit the time to prototyping some things to see if there is interest to support this type of playstyle
Just to be super clear, what I've built so far specifically is targeting multiplayer
Not OP but for me the appeal would be in botting a game that's made for humans, and not a game made specifically made for botting. Let me use autohotkey, or modify the client, or do any of the things real botters do, don't worry about providing an API. Just let me register a character as a bot and restrict it to a separate server that can't interact with the main game servers/economy, and disable anti-botting protection. Maybe make it require something like CURLing an endpoint so that regular users can't accidentally create a character on the bot world.
But this would probably never fly because it would become a training ground for people who make malicious bots.
There is some prior art of this nature, such as screeps, that you might find useful as reference material (if you aren't already aware of it).
Other people have described Factorio-style game, or idle RPGs. I think for a Factorio-style game, Desynced might be a better programming game. I haven't play it for quite some time, but last I remember it has a visual editor and automation bots in early tech tree. In Factorio, if you craft a green circuit board it automatically craft all the precursors from iron/copper plates in your inventory. In Desynced you have to do all that manually, which force you to use the automation system right up front. However, it's not fun repeating code blocks to build different simple things, and it's not fun that you have to solve both gaming problems (eg. I need to build my base, what should I build next) and programming problems (eg. write flood fill bot to explore for resources) at the same time.
The problem with these kinds of game is at some point you'll run into tech debts - your factory layout is not optimal, and the game optimize your starting zone so migrating out means you may lose simple access to starting resources. I tried optimizing for large factory up front, but it's like a startup with a monolith running on a Kubernetes.
Satisfactory solved this by having a fixed map and 3D, but it comes with its own challenges. Good Company partially solved this by replacing belts with humans who can walk anywhere you want, and introduce belt at a late game stage (which I quit around that stage - the game already gets repetitive by that point).
Anyway, what I was describing was not those kind of automation games. RuneScape is an RPG game with over 20+ skills. What make it interesting is that RuneScape bot engines (which exists, but is illegal) do provide all the high level primitives for you in Java. You could provide a world coordinate and a walking script will do all the walk for you even if it is the other side of the world map. It should felt like making games in Scratch instead of reinventing serialization in Screeps.
Other games with scripting also often don't allow human-in-the-loop. If a bot in an automation game get stuck because you forgot to program how to restock teleports, you have to stop it and reprogram. RuneScape bots don't block inputs - if you forgot to make the bot handle stamina exhaustion just click the run button yourself without stopping the script.
RuneScape also comes with strategizing for the human, while the solution space is quite fixed and well discussed by the community if you don't want to find out yourselves. If your Slayer task is green dragons, do you go to a spot that is far from a bank and lose efficiency or give up the loot, or do you go to PvP zone and use cannon (multi target auto turret)? If I write a bot, I probably will write a Wildy Green Dragon script instead of a generic fight-anything script so that it will know to bring cannon and place it at the optimal spot to target all spawns at once. Same goes for many other skills - if I train crafting or construction do I sink millions and go for the highest XP rate or do I go very slowly and get a slight profit out of it.
I'd also add that having a community marketplace would also helps. RuneScape have underground marketplace for bots, with free scripts that probably get you banned, and paid "private" scripts that supposedly undetected. I also have played Mars First Logistics where you build a vehicle Lego-style, then deliver weird cargo like a block of ice or a crate of oranges without a lid. The game have Steam Workshop support where you can just skip building your own vehicle and try to drive someone else's vehicle to destination. I got an ice block pusher, which I need to figure out how to put the ice in (just surround the block, close gate so the block cannot escape), then the map has hills that make your ice fall over the bottom anyway.
As a programmer I'd be happy with an API, so I can keep working in the environment I'm accustomed to. Programmers can get very picky when it comes to their ergonomics, so it would be wise to let them handle this part.
This, however, would be a significant obstacle to non-programmers. You might consider offering an in-game editor similar to Scratch or BYOB for people who want to dip into programming. It'd be a fun way for them to learn