TerminX, on 17 October 2017 - 09:31 AM, said:
This is really impressive. What can I do to EDuke32 to help you?
I guess the biggest thing right now would be making it possible for the bot to be fully controllable via the input structure, rather than relying on hacks to simulate input for some things. I mentioned the weapon switching problem a while ago, and that's still an issue. The use of inventory items falls into the same category.
Another issue is that it's sometimes very difficult to figure out what the bot is bumping into. Regular actors who use move commands can check htmovflag, but that never gets set on a player. I have to rely on hitscans from various angles and heights and try to piece it together, often very inaccurately. I wish that htmovflag would get set on the player sprite based on the player's movement. I've thought about making the bot send out "probes" that report back to him about his environment, but that will add a lot of overhead to manage and I'm trying to avoid that.
A minor thing that would be useful would be the ability to log array elements directly without putting them into a var first. For example:
addlogvar wallpath0[savednode]
Phredreeke, on 17 October 2017 - 10:09 AM, said:
Have you considered adding a slight delay to the bot reacting to enemies? As it is right now it appears to have superhuman reflexes
That's not one of my design goals. I'm not trying to make a bot that plays like a human, I'm trying to make a bot that can complete levels without "cheating". Cheating is defined as doing things that would be impossible to input with a mouse and keyboard. Imagine a speed runner who had played a level a thousand times -- they know where everything is and could hit enemies before they even appear on the screen, but that's not cheating.