|Anonymous | Login | Signup for a new account||2019-03-25 18:02 UTC|
|My View | View Issues | Change Log | Roadmap | Zandronum Issue Support Ranking | Rules | My Account|
|View Issue Details|
|ID||Project||Category||View Status||Date Submitted||Last Update|
|0003578||Zandronum||[All Projects] Suggestion||public||2018-12-16 14:04||2018-12-29 08:07|
|Target Version||Fixed in Version|
|Summary||0003578: Make bot scripting function available in ACS|
|Description||TL;DR: make bot scripting functions (like go to nearest bot node or to nearest power up) available in ACS, so that users could write our own bots as script libraries or include them as part of their mods.|
Since bot script compiler is long time lost nobody can write new bot scripts.
And as we now have quite powerful ACS scripting engine with libraries, auto-loading and named scripts, I think we actually don't need a separate scripting engine just for bots.
This is why I propose adding support of bot scripting functions to ACS engine, so that anyone could write their own bots as acs libraries or add them to their mods. Also bot functions will probably allow implementing smarter AI for monsters.
In case there are no objections to this idea this request can be assigned to me. This should be relatively easily to implement, so even my limited free time should be enough.
Dusk wrote a new botscript compiler a long time ago. I think it's complete, but it's been way too long. See ticket 0001657.
I don't really have a comment on the rest of the suggestion. Given the state of the bot code I can't imagine it being an easy task to mix like you suggest.
Mixing the VMs is perhaps of slightly dubious benefit since it would prevent effective encapsulation of the bot code (and the reason that ZDoom didn't pull the bot code is because it's already too intertwined). Technically the VMs are very similar so it's not impossible by any means, and removing effectively code duplication is a good thing. I'm just not sure that giving them access to map global variables is a great idea.
edited on: 2018-12-17 20:47
That's a good point about global variables. I'll expand it a bit: probably you want bot script lumps to be not protected - i.e. wads with them are allowed to be optional (really, they just control player pawns, why anyone but the server have to have them).
But that doesn't eliminate the idea of using bot functions to enhance monster AI in mods. Not sure if there is high demand for it.
A bit offtopic, but I'm not sure where to talk about it: do you think it would be hard to write a decompiler for existing compiled bot scripts? And are we legally allowed to modify them?
|I don't think it would be particularly hard to write a decompiler. The original BOTSCRIPT compiler was likely based on the ACS compiler (if not literally, probably largely inspired by it). The reference ACS compiler is basically your text book compiler and nothing more, so the byte code it generates is pretty easy to find patterns in.|
|Only registered users can voice their support. Click here to register, or here to log in.|
|Supporters:||Michaelis eagle Korshun|
|Opponents:||No one explicitly opposes this issue yet.|
|2018-12-16 14:04||FConst||New Issue|
|2018-12-16 22:21||Blzut3||Note Added: 0020254|
|2018-12-17 20:46||FConst||Note Added: 0020268|
|2018-12-17 20:47||FConst||Note Edited: 0020268||View Revisions|
|2018-12-18 02:56||Blzut3||Note Added: 0020269|
Questions or other issues? Contact Us.
|Copyright © 2000 - 2019 MantisBT Team|