ole1986 / vscode-arma-dev Goto Github PK
View Code? Open in Web Editor NEWArma Dev for Visual Studio Code
Home Page: https://marketplace.visualstudio.com/items?itemName=ole1986.arma-dev
Arma Dev for Visual Studio Code
Home Page: https://marketplace.visualstudio.com/items?itemName=ole1986.arma-dev
Suggest adding callback to fs.writeFile function:
Original: fs.writeFile(destPath, data);
Suggested: fs.writeFile(destPath, data, (err)=>{logger.logError(err)});
exports.getPrefixFromFile = getPrefixFromFile;
function addModInfo(modDir) {
let config = armadev_1.ArmaDev.Self.Config;
let destPath = path.join(modDir, 'mod.cpp');
let data = '';
data += 'name = "' + config.title + ' v' + config.version + '";\n';
data += 'author = "' + config.author + '";\n';
if (config.website) {
data += 'actionName = "Website";\n';
data += 'action = "' + config.website + '";\n';
}
logger.logDebug('Data: ' + data);
logger.logDebug('mod.cpp file location: ' + destPath);
fs.writeFile(destPath, data, (err)=>{logger.logError(err)});
logger.logDebug('Finished writing to mod.cpp');
}
I added some additional logging in this function to troubleshoot the issue. Not really needed, but it was a helpful checkpoint. When attempting to build the client mod, I would get a generic callback error. After tracing down the issue, I found that fs.writeFile(destPath, data) was not working. I'm not a java dev, but it seems similar to System.IO.File.WriteAllText in c#, so could be an issue with the java library itself. Anyway, after adding the callback function, the mod wrote mod.cpp as expected.
#10 - Would also help with these generic errors.
For some reason the VSCode plugin has stopped working with the error
Command Arma 3: Build resulted in an error (command 'armadev.packFolders' not found)
Reinstall does not help. What could be done to fix this issue?
Would be nice to be able to add -window
to client
[03:37:11.951][Error] TypeError: Cannot read property 'postProcess' of undefined
Get the above error when trying to use arma 3: Configure
I use multiple SteamLibraries and while Steam is installed on the D drive my Arma 3 installation is actually on the C drive. Unfortunately Code live currently makes an Arma 3 directory and places its junction in there, which doesn't actually work since Arma is not installed in that location.
Rather than trying to work it out on the basis of SteamLibraries and everything else it may be simpler to provide a config value that allows overriding the Arma 3 installation directory in the case where people (like myself) are doing something different than the norm.
**** My arma-dev.json *******
{
"title": "A3 Antistasi",
"name": "A3A",
"author": "Official Antistasi dev team",
"website": "https://antistasi.de/",
"version": "2.5.4",
"buildPath": "build",
"privateKey": "", //add the path to a private bikey for signing when building
"serverDirs": [],
"serverUse32bit": false,
"clientDirs": [ //should list all addons the mod provides
"A3A/addons/core",
"A3A/addons/Garage",
"A3A/addons/JeroenArsenal",
"A3A/addons/maps"
],
"clientMods": [],
"ftpConnection": {},
"steamPath": "D:\SteamLibrary" //arma 3 install steam library, arma 3 tools should be in the same folder
}
For Some reason I keep getting this error**
[18:17:02.326][Error] TypeError: Cannot read properties of undefined (reading 'postProcess')
[18:19:30.342][Error] TypeError: Cannot read properties of undefined (reading 'steamPath')
Rather than making hard junctions Code live ought to make soft ones. I deleted the junction and ended up blowing away all my code changes, not at all what I expected.
Hey! I just found your addon and it looks promising, but I have stumbled upon this issue. First when I run Configure on my existing project I got this:
[02:28:28.622][Error] TypeError: Cannot read property 'postProcess' of undefined [02:31:39.666][Error] Invalid steam path: E:\SteamGames\
I have corrected the Steam path, as your addon detected my Steam Games repository on another hard drive (I use D: for most games and that's where Steam is installed and E: for Arma). Anyway, I've filled the json properties and run Arma 3: Build, but then I got this error:
[Error] TypeError [ERR_INVALID_CALLBACK]: Callback must be a function. Received undefined
and I'm unable to solve this issue by myself :/
i am getting this A proper PREFIX (x\your_addonname) is required for life_server\addons\life_server(editado)
and i have a
i Try to put only life_server on
Thanks for all <3
The error I get when I try running the command is
"Command 'Arma 3: Configure' resulted in an error (command 'armadev.setupConfig' not found)"
I have installed it through Visual Studio if there is something I have done wrong or if it is better for me to install it via github or if you require more info let me know.
I might have misfiled this one. I found this in a search involving VSCode
. Looking more for modding VS Code extensions, tooling, than anything else.
Mainly I am interested in practical examples of this, if possible. That would be helpful.
This helps to streamline modding workflow? Can it be used in combination with extensions such as armake2
, etc?
Anyway, still have some questions I am not as clear concerning:
"clientDirs": {
"description": "A list of all client folders (usually one) a pbo file should be generated and signed for"
},
"serverDirs": {
"description": "A list of all server folders a pbo file should be generated for"
},
Not sure how client/server directories quite applies? Is there a particular protocol that A3 will use? I see, for instance, addons
, sometimes.
"clientMods": {
"type":"array",
"description": "Additional mods to include when starting the arma3 client"
},
As in mod dependencies
? How are they named? By whatever workshop ID was used, i.e. @MyMod
?
"postProcess": {
"type": "object",
"description": "Used to run additional scripts, once a commend has been executed",
"properties": {
"packFolders": {
"type": "string",
"description": "Define a script to run after all folders have been packed"
},
"transferFiles": {
"type": "string",
"description": "Define a script to run after all files are transfered to the remote"
},
"runClient": {
"type": "string",
"description": "Define a script to run after arma is started"
},
"runClientAndLog": {
"type": "string",
"description": "Define a script to run after arma is started (with logfile opened)"
},
"generateKey": {
"type": "string",
"description": "Define a script to run after a bikey has been generated"
}
}
}
Post processing sounds interesting. Q: to which remote? Does a bikey
always get generated? Or just running batch, PowerShell, or other scripts in a command shell?
Still not clear on the use of SFTP
vis-ร -vis A3 modding. I assume this is to publish to workshop, or any other resource?
Thanks!
I have a postProcess script for build:
{
//...
"postProcess": {
"build": "node ./bin/release.js"
}
}
``
But i see no logs of it trying to run, and I don't think it actually runs because its not doing anything
I'am having errors: command armadev.previewControl' not found
when i use option Dialog preview
or just nothing happens after i press that. That happens after i am trying to preview dialog second or xx time, sometimes it happen on first try
All dirrectorys are set. VS Code version 1.19.1
This is my first time using this extension and I'm having problems with building my addon. Every time I select Build I get a popup with an error message "FileBank not found".
Here is a screenshot of my directory:
Here is a screenshot of my arma-dev.json:
Both %PREFIX% and %PBOPREFIX% files in the PMC_Server Addon have this in them: x\PMC_Server
Both %PREFIX% and %PBOPREFIX% files in the PMC_Framework Addon have this in them: x\PMC_Framework
Both my ArmA 3 Directory and my P Drive have a folder named x from generating two Symbolic Links
Symbolic Links:
mklink /J "E:\SteamLibrary\steamapps\common\Arma 3\x\PMC_Server" "C:\Users\innov\Desktop\Projects\ArmA 3\A3-PMC-Framework\src\PMC_Server"
mklink /J "E:\SteamLibrary\steamapps\common\Arma 3\x\PMC_Framework" "C:\Users\innov\Desktop\Projects\ArmA 3\A3-PMC-Framework\src\PMC_Framework"
mklink /J "P:\x\PMC_Framework" "C:\Users\innov\Desktop\Projects\ArmA 3\A3-PMC-Framework\src\PMC_Framework"
If someone could help me out with getting this sorted that'll be greatly appreciated. I would really like to use this extension as my primary way of developing for ArmA 3.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.