Automation: passing script name as command line argument (demoing / testing / debugging) #1582
Labels
Developer Experience
Engine's programmer experience
Enhancement
Modmaker Experience
Modmaker experience with OpenXRay
Is your feature request related to a problem? Please describe.
A. Scripts literally are scenarios that we can schedule for execution. Starting the demo would be as easy as choosing the right script to pass as CLI argument.
B. Mods are buggy. Whether development teams lack time or experience, manual testing always leaves room to unexpected outcomes (a.k.a. "it was never supposed to happen like this!"). What if we could have actual system and integration tests to automate flow and save a bit of time and effort for other tasks?
Approximate possible test structure to confirm expected behaviour in game:
-- load actual gamesave file or create certain preconditions
-- simulate player's actions (activating interactable object, making dialogue choice, triggering quest condition by other means etc)
-- assert expectations to be reached
Very vague theoretical example without code:
This suggestion could just be borderline madness, but I strongly believe having the capability to automate certain aspects of quality assurance would drive the projects quality sky high.
Describe the solution you'd like
--headless
flag would start the game without GUI, allowing controlled conditional execution of lua snippets.Maybe a full fledged test framework is too much to even think about, but loading script on demand could definitely be very handy 😁
Describe alternatives you've considered
Doing the same from tilda menu in the game, although, that would not be 100% same experience.
Additional context
I got original inspiration from the principle how some gamedata extractors work (example: tool by xrLil Batya): lua injection through dll replacement that allows to execute script.
The text was updated successfully, but these errors were encountered: