First I will finish the talos principle. Then I will fix a bug. Then I will release it. There may be sleep between any of these tasks, depends on their length.
all the above has been completed. Find the mod on pamm on the code on github. If you find bugs or issues feel free to report them.
Absolutely brilliant mod already. Something that I always wanted. I use it especially with grenadiers and its really effective. Such good work cola_colin. Thanks!
Always? Also they did change something about direct "move" commands in Titans, maybe that is confusing you (borked the mod somehow)
No problems for me either. Works perfect. I know its probably impossible / really hard to mod but I'd like to draw an arch shape and the units squeeze tightly into an arch shape. Now if you draw a slightly big arc for ten units they spread themselves too thin. Also formations out of factories would be nice.
It looks for attack commands to clear loaded and select next attacker in attack sequence mode. Code: // action left click var originalUnitCommand = api.Holodeck.prototype.unitCommand api.Holodeck.prototype.unitCommand = function(command, x, y, queue) { var selected = model.selection() && model.selection().spec_ids[specs.nuke_launcher] return originalUnitCommand.apply(this, arguments).success( function() {checkCommand(command, selected)}) } // drag command var originalUnitEndCommand = api.Holodeck.prototype.unitEndCommand api.Holodeck.prototype.unitEndCommand = function(command, x, y, queue) { var selected = model.selection() && model.selection().spec_ids[specs.nuke_launcher] return originalUnitEndCommand.apply(this, arguments).success( function() {checkCommand(command, selected)}) } // right click var originalTargetCommand = api.unit.targetCommand api.unit.targetCommand = function(command, target, queue) { var selected = model.selection() && model.selection().spec_ids[specs.nuke_launcher] return originalTargetCommand.apply(this, arguments).success( function() {checkCommand(command, selected)}) }
Hmm, I tend to just ignore prototype stuff in js, so only have a rough idea what it does, but I suspect your way of hooking unitEndCommand breaks my way: Code: var baseEngine = engine.call; var hookEngineCall = function(callName, handler) { var oldEngineCall = engine.call; engine.call = function() { if (arguments && arguments[0] === callName) { return handler.apply(this, arguments); } else { return oldEngineCall.apply(this, arguments); } }; }; ... hookEngineCall("holodeck.unitEndCommand", function(engineCall, hdeckId, cmd, x, y, queue) { if (cmd === "coverline") { if (model.hasSelection()) { previewActive = false; coverLine(locations, queue, hdeckId); setTimeout(cleanPreview, 500); } return { then: function(h) { h(false); model.mode("default"); } } } else { return baseEngine('holodeck.unitEndCommand', hdeckId, cmd, x, y, queue); } }); It's weird. Why does your hook cause mine not work anymore?
One issue is you return a fake promise which doesn't support the success method. But when I run them together, CTL works and an error goes the console, so MC would be the broken one.
Mod's API has been causing client crashes and freezes lately. Not even the use, just the presence of the mod
After you mentioned it to me i isolated the mod, and tried to change the procedure. Game insta-freezes upon entering the system with even minor changes in the API, which is a more severe form of what im experiencing day to day
But what I mean is how do you know it's the API and not the mod's implementation that's the cause of the issue? I know I mentioned that due to thinking Cover the Line and Ubermap using the same API, and both having issues, it could be the API, but that's not evidence that it *is* the API. Can you provide reproducible steps for the crash?