#arma3_tools
1 messages · Page 18 of 1
oh well, you're a glutton for punishment.
i love pain
tbh ... my fix is going to be a fixed length and if it is above then fuck it ..
umm why not just rewrite that dll code in sbchar and be done with it?
mhh?
wchar_t* gen_wchar_string(const char input)
{
const size_t size = strlen(input) + 1;
wchar_t output = malloc(sizeof(wchar_t) * size);
mbstowcs(output, input, size);
return output;
}
this is wrong for two reasons:
strlen returns the nBytes, not, the nChars
mbtocws assumes local codepage.
if there's an umlat in the text, it's good night and thank you for playing.
is only used for console anyways
where it will be the local code pages
after my first riddle is solved by blank hate
#if defined(__GNUC__)
len = 2024;
buff = alloca(sizeof(wchar_t) * (len + 1));
vswprintf(buff, len + 1, format, args_bullshittery);
buff[len] = 0;
string_modify_append(vm->print_custom_data, buff);
#else
...
#endif```
i now have to find out why the method sometimes works perfectly fine and sometimes just copies one character -.-
probably because %s is not correct for wchar_t
this is the 'correct' version of above
static std::wstring bis_std_utf8_to_unicode(Utf8 *utf,unsigned from=CP_UTF8)
{
std::wstring unc;
int nChars= MultiByteToWideChar(from, 0, utf, -1, NULL, 0) ;
if (nChars)
{
unc.resize(nChars);
MultiByteToWideChar(from,0,utf,-1,(wchar_t*)unc.c_str(),nChars);
}
return unc;
}
such a great guessing game ...
yes ... never worked before with wchar_t for good
using only c @dawn palm
no c++
ok
the meat in the sandwich is MultiByteToWideChar
that's the only windows function that actually converts correctly.
oh shit duh!!!!!
i know
need to use it more or less regulary when interacting with winapi
but that piece of code is rly just a copy paste as i am a lazy fuckass ... was first result on stack overflow .. and already wasted the whole day with converting everything to wchar_t
because of all those bloody 'orrible L"whatevers" i assumed a windoze compile.
already wasted the whole day with converting everything to wchar_t
..... when shouldn't have bothered 😎
I actually can't follow why anyone would use wchar in linux
micro$soft did do a good job with the _T operator
my exes ARE wchar for windoze and char for linux
indeed ... horrible on linux ..
arma3p updated:
updated lappihuan scripts for his buldozer patch (editor.sqs) to work on drives other than p:\
added small pbo that corrects BI's 'export to terrain builder' in the 3den editor. You can now happily rotate skew and scale your objects and import them to TB without fuss.
All honor and glory to @toxic orchid and @dapper pivot for this fix that bis were incapable of doing. All credit to them, i am merely packaging their code.
fot this fix to work in map Builder/x-cam or SP contact them. mine only corrects 3den.
👌 💪
👍
mikero: I asked before but don't know if you ever saw it. But could you change the wording at the end of arma3p? At the moment it says something like buldozer.exe has been removed, adjust Object Builder AND Terrain Builder [k]. There has been a few people on the forums and terrain makers, who think pressing K, auto updates it for you. Maybe change it to YOU need to manually adjust Object Builder AND Terrain Builder or something 😄 You could link to Snakemans wiki page on it https://pmc.editing.wiki/doku.php?id=arma3:tools:buldozer
Yeah, that might help a lot. Thought that myself the first times too and wondered why nothing changed in TB. 🙄
@hard locust don't recall that conversation, but yes, I'll re-word it on next update. It's frustrating for me that I could do object builder automatically, but not Terrain builder becauise well because BIS!...............
.... but if someone clever here knows a fool proof way of editng the ini file for T/B i'll automate it. currently it's a wish and a prayer to discover where they put it. and, of course, it's a moving goalpost.
they've been unable to bugger up the windows registry or change the rules there, so object builder is 'easy' to automate. but t/b is a different story.
@dawn palm whats the problem with the ini specifically?
mikero: I tagged you in terrain makers once, so you most likely missed it. It's a very active channel sometimes lol. Thanks for changing it, hopefully it helps some new people out 👍
whats the problem with the ini specifically?
if you come up with a method of accurately locating it, and provide a regex to replace that part of the text that needs changing, i'll add it to arma3p
echo installing eden editor export patch
xcopy /sy "%_MIKEDLL%\addons*" "%_ARMA3PATH%\addons"
@dawn palm putting third party pbo in A3\addons is a BIG NO NO
you should really install your pbo into a modfolder
(stops ppl from joining MP servers essentially, may get deleted by A3 updates, etc)
k
my excuse was tiredness
i think i'll just supply it as a pbo that people can put where they like, if they want to. there does not seem to be as much interest in this topic as i had assumed. (despite the wailing and moaning that t/b didn't place their objects correcftly)
@dawn palm ty. terrain makers work in slower pace - you have to understand. otherwise they wouldnt survive arma modding ;)
i am sure many will make good use of it over time
@dawn palm - is there a way to disable external file checks in PboProject?
Its best off to just accept you need to setup a pdrive for arma modding
@smoky halo - I've it set up...
So what file is it complaining about you don't have for your addon you are trying to pack?
You should have those files in your pdrive. Just checked mine
Well I ran Arma3P from Mikero tools and it created an a3 folder inside P:, to which it started extracting game data.
I guess I missed a step during P: setup.
Meh, fuck this. I'm going back to Addon Builder, at least it works, and doesn't have me extract 170,000 files so I can build 50 lines of code...
most folks end up appreciating that it does go thru 170,000 files looking for common typos and errors that any author makes. The alternative is to keep starting arma3.exe 170,000 times to discover if you've fixed your errors. and extracting the full game data is not a big ask, it's do it once, it's done forever. Not just for a miserable '50 lines of code'
But why forbid explicitly disabling that for these folks that don't need it?
because there's no such as thing as not needing it.,
under the covers the dll checks that the items are error free, whether they need to be binarised, if the properties in a p3d are 'correct' and so on.
Neviothr - Today at 12:39 PM
Meh, fuck this. I'm going back to Addon Builder, at least it works, and doesn't have me extract 170,000 files so I can build 50 lines of code...```
🤦
And after that, you are wondering why AddonXYZ is not working...
I have 3 sound files in my Mod. I know they are there because I had the file check enabled the first time I built it.
Now several months later I want to get back and change something in a script completly unrelated to these sound files. And to rebuild my thingy I now need to completly extract Arma although I know that the files are there and everything is correct.
No and. That's it.
@glossy inlet Remember when certain files were moved?
Free disk space?
okey
i do accept that there;s issues with ssd
So just having one external reference to a file that I might not even need. Forbids me from making Mods because you want it to be like that?
use addon breaker.
ok.
after all, it will work because your mod is error free. or so you think.
I'm really happy that I keep backups of old versions of your tools.
me too. I must have proved helpful in the past
Uhm... Why not add a command line switch to disable those checks?
Tbh I do understand to have a fire and forget mode without checks
Yep. Your tools are a godsent compared to addon builder. But you keep making them so bad that they become unusable
There is an option. But newer tools versions ignore the option because people used it.
....anc then fillled forums with 'why doesn't it work'.
Why do you punish the good people for the idiocy of the idiots?
@nocturne basin
This option is now permanently set due to some authors releasing pbo's that have not been file-checked and causing pain and suffering to the user. If you don't want the power behind a professional tool. Stop using it.
More Idiots than "good" ppl
+I still not understand the prob here atm. Unpack A3, done. No further thing. The argument with "not enough space".. cmon... it's 2017... invalid af
That would also make your tools completly useless for my CI. I won't upload a full Arma unpack to the CI provider (Appveyor) everytime I do a build.
For one I don't have the bandwidth. Second I am not allowed to just upload Arma files to the Internet afaik
a headlessversion of pboPro would make sense to have no filechecks for buildmachines etc.
for your local version, you should always have a unpacked A3 in your pdrive
There is a headless version in the paid tools. Don't know if it ignores file check though
hence i say it would make sense if there would be the possibility to disable filechecks
pretty sure it also does not allow it atm
I always do a build with filecheck when I change anything on what external files I depend on. But 99% of my mod is scripts. If I change 1 line in some script there is no reason to do a full file check
BI sometimes decides to remove p3ds or move them to some other locations
or textures or sound files
What if I use a outdated p drive of some previous Arma version?
Why not just make something that looks inside Arma pbo's if the files are there?
Don't tell me Mikeros tools can't read pbo contents.
Would make everything easier. No one would have a reason anymore to disable file checks
Lower entry barrier for people that want to contribute to mods because they might not even need a pdrive
that would be neat, but afaik binarize needs those files in /temp anyway
don't remember all the necessarities tho
Well. Mikero knows which files are needed. So extract them if needed
But I don't see why I need to extract everything although I only need one or two files that mikeros tools could grab themselves
apart from the above i use the pdrive to grep over things frequently
You want a tool that can grep through all Arma PBOs?
Not hard. Just needs some time to make that
but yea i think mikero is definitly intrested in a light version of the P drive, he recently investigated some things like P:\a3 being a symlink to P:\temp\a3 but that turned out to not work
Problem is what happens when binarize update decides it wants access to more files.
Easier to just have a Pdrive, not to mention they are needed for object builder / terrain builder
If you just want to build pbo, use eliteness / makepbo etc
Also there are alternatives like armake / addon builder
no i need to grep over the contrent of those files
I didn't say that you can't grep over the content
honestly i don't want no P drive, i want one
the content is inside the PBO's so if you can grep through PBO's you can also grep through content
i use it all the time
as Torondesco says OB and TB use those files too
same with binarize
and me using them to look up things
But not if you don't have models or terrains in your mod
which I'd say most of the mods don't
i really don't get what you issue is :S
if a sqf or cpp references a file it should check if that file is avail
Yep. But it doesn't need a Pdrive for that. And it doesn't need all the other thousands of files for that
if it could check it inside the pbos that would even be better as one could use a outdated pdrive
but i don't want to get rid of the pdrive
and that would allow scripters to not need one if they don't want
Its prob not worth his time to maintain different methods of reading the files.
Pdrive works fine & works with arma tools
Plus its alot simiplier for users to look at extracted arma files versus referencing files that are in a pbo.
I understand that terrain makers and modelers need a pdrive. But scripters don't
but what errors do you get as scripter?
you don't want lintchecks?
Yeah I do.
so what errors do you get as scripter you would not want?
I want all errors.
what are we talking about then? 😛
Never said I don't want some error messages
what addon are you making that is sqf only?
It's a high entry barrier if people that want to contribute to a script mod need a comple pdrive just because that mods uses some soundfile in some UI config somewhere
Currently thinking about TFAR
hmm they can make dummyfiles
we use 2 Arma sound files
no need for the whole pdrive
exactly
pboPro lets itself fool via dummy files
so just provide those files including its dirtree in your repo and advise them to move it to P:\
But then.. What is the reason to disallow disabling file checks. And then telling everyone how to circumvent it while putting more work into it
you activly have to fool pboProject to get missing files
the noob will always be forced to have a "working" addon built
this is mikeros mentality we have to live with
i guess one could move his stance with a good enougt reason
the noob will always be forced to have a "working" addon built
Wich is way better than having 10000 Threads in the forums saying: "why dis no working!!111oneoenoen"
You don't need to know about this stuff though if you are a scripter that want's to contribute to an open source project
Its just sqf addon, you could just easily use addon builder / armake to built it.
I agree. That is all good stuff if you make the addon yourself.
But for contributors on OS projects that just change a script line. They don't include external files. There are not responsible if the mod they are contributing to might be broken
I agree, Deco
isn't it usual with OS projects that there are work env instructions or even scripts to set up the workenv?
yep
"I want to change that line of script how can I test if it is working? "
"Unpack your complete Arma install to pdrive"
"Wtf? Forget it then. Just wanted to make a little change"
☝🏻
That is what is happening. And that is what I complain about.
Torndeco - Today at 2:03 PM
Its just sqf addon, you could just easily use addon builder / armake to built it.``` ¯\_(ツ)_/¯
OS projects can solve this by disabling external file checks. Like was done before. But not possible anymore apparently
whats wrong with this? @glossy inlet
or make a script that creates the dummy files
yes @wind elm I use armake where I can, but does that mean we shouldn't want a better tool that we already use?
keeping track of all files that might be needed
it's unnecessary work
Personnally i take you are making it a bigger deal that is required.
There are other tools you could recommend to new users to build with.
And then give an advanced guide how to setup pboProject & pdrive
rename your A3 namespace and build with pboPro it will print you a list of missing files 😉 @glossy inlet
Make a guy on a big OS project such as ACE do that after anyone does a PR
postcommit script that greps over code with \a3\ and generates the workenv script automatically
You are assuming everyone checks stuff before they commit will bite you.
You setup a vps with automated bot to build using pboProject or armake
no one assumes that
the point is people don't want to commit/PR something they can't test
and then don't want to work on it anymore, because of the unnecessary setup required
for those ppl point them to AB as Torondesco said above
once they are more familiar guide them to pboPro
that's an even longer step when someone just wants to work on a project he wants to work on
Go try armake out its got some error checking in it. Dedmen has skills to add to it, if something is needed
Mikero Tools has a bat file to setup a pDrive aswell, really doesn't get to much easier
the point is P drive is not necessary, fight it all you want
🤦
And you arent required to use pboProject either. Noone is forcing that for a simple sqf addon
Anyway back to work
no, you are correct, no one is, just pointing out it could be better
who is that dedmem you're mentioning ?
typo 😛, always get it wrong.
dedmen doesn't know C btw, his own saying
the P drive is an archaic concept and everyone responsible for it should be put against a wall and shot. no modern compiler asks you to put your header files for your includes in a specific drive. that's pants-on-head retarded.
modelers don't need it either. it's just a way of finding files, and there are better ways to do it
You would need tools to virtualize the filesystem, before you could do away with the pdrive.
literally going through every file on your drive until you find one that works would still be more efficient than the P drive
Sure, but 99% of the beginner (incl. me) used it, cause it was "well documented"
That way arma tools would still work
@smoky halo armake doesn't need one. it doesn't handle terrains, but i'm sure you could work without it there too
oh, ok
same goes for modellers
That way people can use whatever tools they like without a pDrive. Until someone does that, people will need pDrive for some reason
@smoky halo I have binarized models without a P drive, AMA
afaik binarisation checks the texture and assigns diffrent properties to those faces
it's not even difficult
one example i know is alpha
binarize is using the arma engine in the backend. Theoretically it could just read from pbo
That's BI's fault though
yea
not saying the whole tool work env could be miles better
People will still want to browse / use there fav editor to read files from pbos
but what we have right now and what pboPro requires makes sense for the current setup
@smoky halo There is a PBO VFS that allows you to mount pbo files as a drive
Link?
Ughh... Gimme a couple minutes
It's not impossible to use BI's binarize.exe without a P drive, you just have to shuffle things around so it finds the files relatively. https://github.com/KoffeinFlummi/armake/commit/94b9b2d5e7a428027d42f2e79108c5bbde639f02
So even PBOProject could get by without one
it's annoying though
Man whoever made that file system thingy needs to do something so it's higher ranked on google -.-
i think the work required is not justifiable by the gain
YES
he need to do some SEO courses
😄
Need tiny tweaks for multiple pbos. But you update that and solves pDrive and all the tools / guides still work
There is also another file system that was somehow different. As easy to find as the other one tho
BI could relatively easily deprecate the P-drive. Just allow a command line parameter for binarize.exe to allow a list of folders to go through for includes, just like any other modern compiler. then add P: to that list internally and just try it, element for element, using the first one where you find something.
boom, done
Endusers still need to read the files at some point, or search inside pbos etc
VFS solves all that
some ppl dont use P: as drive letter 😛 but yea
iirc BI was talking about something like that in the A3 alpha/beta btw
i guess it was dropped at some point
could you imagine if you had to mount a filesystem to compile a C application?
you would be laughed out of the room
I use P as my ramdisk.. Was really nice when I used workdrive the first time ofcause disabling my ramdisk meanwhile.. Everything fine.. Next reboot bluescreen. and reoccuring bluescreen only fixeable by booting to rescue and removing my ramdisk from registry.
Talked to the vendor of the ramdisk software. Turns out workdrive didn't unregister itself properly. Was a really productive day looking at endless bluescreens and trying to find a way to fix it
not sure how valid those statements are still
but tom says it is possible without pdrive
Well. armake is packing without P drive.. so yes it is
There was a strong push for reintroducing the P: drive from community who was used to it
So once again, things were ruined by a community that just wants what it already has and the misguided pursuit of unnecessary backwards compatibility.
"Was der Bauer net kennt, frisst er net"
heh we have the same saying in the Netherlands
my biggest wish for next Arma is done with all backwards compatibility, it's just problematic trying to keep it with those antique non-standard systems BI is using, and that has shown with A3 the most
yea i hope for something similar
cough enfusion cough
but afaik its already known that all or most RV filetypes are still supported in enfusion
what's the big deal with the P drive anyway? Just set it up and be done with it? 🤔
its not very noob friendly
i actually would prefer they drop all the compatibilities, but thats my opinion 😃
hate legacy code
yea its probably one of the reasons RV is such a clusterfuck
gimme full blender support and im fine
there is no need for any backwards compatibility either tbh
all p3ds can be exported into Blender already using Alwarren's Toolbox
@hallow rapids try setting up a P drive on linux or a CI system. I'll wait...
and from there you can go anywhere
people that don't understand how to set up the P drive shouldn't be doing whatever "requires" the P drive anyway
but thats aonly models for blender. blender can be usd for a lot more
yes of course
@wide cedar good thing the official tools don't support Linux 😛
@hallow rapids that's stupid logic, you are literally asking someone to do something retarded
watch this video. im getting hyped watching this video 😄
@hallow rapids Maybe they would if they didn't use a P drive :p
miro is doing EVERYTHING in blender. so that looks promising
exactly, I know of quite a few people that wanted to do something for Arma, and saw it requires P drive for one or the other reason, just dropped everything
what, how is it common in the industry?
well it just is.. there's no "how"
well, show me 😛
@hallow rapids I'm sure many game development companies have things like network drives for their assets or something, but there's a difference between using an extra drive for something and having to use it
exactly that
that yes
worked in print and carwraps. whole lot of network drives, but never saw any special drive to compile or anything like that
yeah, nothing like Arma's required P-drive
it's for sharing, not wasting space, not requiring to build something 😄
I'm searching for a talk where he detailed the entire infrastructure they used
that was fairly close to how BI uses the P drive
BI might actually use it as a share I guess
If I remember correctly, compiling their leaked A3 code required an additional drive, so that might be where they keep their stuff
IIRC LordHeart's PC blue screened when he tried to compile it
dude works for Naughty Dog
don't know much about C++ or similar languages but isn't it usual to have build dependencies?
yes
from around 30 minutes he starts talking about mapped drives
@glossy inlet how handle C++ OS projects such build dependencies?
it's quite common to take a snapshot (i.e. some release version) of a dependency and include it in your project
if source is available anyway meh doesn't matter
Well.. Not good I'd say :D
There are projects that start package managers for C++. But they are not that far yet.
Microsoft has one.. forgot the name.
When C++ modules arrive that might get easier
On linux you basically have default folders the compilers search for includes, and the compiler can take other folders as arguments
so this seems to be a common OS problem
Getting dependencies on linux is easy if the dependency is popular. You just say install that. And the package manager will install it into these default folders
yea but even then it's sometimes quite tideous to get all dependencies
had to deal with some python and perl cms on our servers recently, was a pain to get them to run with all the dependencies
python is easy though. They have their own package system that is quite easy to use
i did it via apt iirc
Yeah you won't get all pythong stuff in there.
Dunno what it's called.. I think "pypi"
could have been easier then i guess if i knew python more 😛
pip
YES! As you can see I also don't know python
though .. pip is a client for pypi 😁
but so to say build dependencies can be compared to the pdrive in our current setup, so it is a overall OS problem to solve that
@glossy inlet wouldn't that be sufficent?
postcommit script that greps over code with \a3\ and generates the workenv script automatically
Not really. You just have to tell the tools how to look for them. As in. They should look in Arma directory inside the PBO's
to your first message.
Second one... To have it still conform with the file check as in really check if the files are there and not create dummy files.
It could generate a script that only extracts the needed files from the pbos
or just create empty dummy files
afaik that is enough
aah well maybe not, don't remember
It is.. But it would still be nice to have the file check. It won't be able to extract files from PBO's that are not there
and a postupdate hook that executes your envbuild script
so you can keep the file check without having a overkill pdrive with 99% useless stuff
👍
Enfusion even runs SQF.
There's an ExecuteSQF command in the Enfusion language.
As the name suggests it's pretty much everything from both engines.
Well at some points it was/is 2 different engines running as they slowly add stuff to the new engine.
executeSQF might be just stop gap measure (hopefully)
Will be interesting to see the modding tools when released how much you can do etc vs what is hardcoded
The issue will be if they abandon things like the vehicle controllers being written entirely in the scripting language.
Didn't they mention that everything related to SQF was dropped and all Script were rewritten in their new Language Enforce (or however it was called)
So i doubt, SQF will be a thing in Enfusion in the end
Hasn't happened, and it doesn't use FBX either.
FBX was used by an import tool to convert to a custom binary format.
What hasn't happend? The drop of SQF? Of course it did
In addition, our Producer Eugen wrote up a forum post covering the internal milestone we recently reached towards Beta, eliminating support and dependency on the old SQF scripting language that so much of the DayZ Alpha had throughout it.
February 2017
https://steamcommunity.com/app/221100/discussions/0/135509724376368675/
SQF with its rich API of commands built over years XD @dim phoenix
with its own IDE Does that mean we will get a scripting IDE?
They have a new animation system? Wasn't the new animation system one of the big things with Arma 3?
Dscha: ExecuteSQF is still defined in the scripting language and the DayZ binary still has all the string literals that you'd expect to see from the SQF engine.
so Enforce Script is the only scripting language which runs on our internal version
They say 0 SQF
The internal version mustn't have made it even to experimental yet, then.
They prob just left it in the engine, havent ripped it out yet. Pretty sure was similiar story with java & arma3
Is 0.63 already out? iirc they mentioned something there
(or however the Version was, where they introduce the new Anim System)
@glossy inlet afaik A3 has no new animationsystem over A2
the animaiton network is just more complex over the A2 one
@wind elm isn't beta the one that is free of sqf?
cough #arma3_tools
We're getting in early on DayZ^H^H^H^HArma 4 tool making.
@smoky halo Yeah, i am pretty sure i heard something like that.
@pliant lynx 😛
maybe we need a enfusion speculation channel ^^
@glossy inlet new animation system means proper blendspaces
there has been a video on it from DayZ
http://www.pcgamer.com/arma-3-video-gives-a-glimpse-of-new-animation-system-lighting/ @smoky halo That's what I meant
@glossy inlet thats just bad wording i think
0.63 can release this year but is very unlikely. they said something around 6 month for 0.63 once 62 released, but said also its just a estimate. so can happen in q2 2018
new animations is not new animation system
0.63 showcase and new animationsystem
still WIP tho
if the improvements are anything like the fps increase with 0.60 then they are on a good route to a awesome game
Ooo, different bits of trees moving in different directions.
that was introduced with 0.62 i think
trees and gras going with the wind
and i see your sarcasm, but my question is why. dayz is a actual improvement now over arma 3 and not just a rehashed mod anymore
The tree's moving look weird, they seem to act more like clutter when I last tried it
@wind elm - > +I still not understand the prob here atm. Unpack A3, done. No further thing. The argument with "not enough space".. cmon... it's 2017... invalid af
I've only a small 500 GB HDD, and cannot at the moment afford a new one. If you want to make my argument invalid go ahead and buy me a new one 😛
Ooo, different bits of trees moving in different directions.
Have game developers ever peeked outside, instead of sitting behind their computer their entire life?
Why do all trees, bushes and grass look like the wind force is a permanent 10 on Beaufort scale? 😦
Same goes for @dawn palm. Not enough disk space is a reason not to make mods? Fuck off.
Wasn't sarcasm, MyWay.
thats their new tree wind shader
tho it is a bit meh
@dapper pivot afaik thats a vertex shader thing but they don't seem to account for wind speed nor direction sadly
its alpha, soon beta and there is a possibility they change it later on. i still think its a positive development, cause before hand people jsut camped somewhere and looked for a moving pixel. now that isnt really as possible anymore cause pretty much everything moves
@hardy leaf yes it is a shader to represent wind, but it does not consider the simulated wind we already have
its just full windforce from all directions at the same time
oh ok
i wonder about the rivers they mentioned
such a shame that it's so hard for them to implement water above 0m..
dayz has ponds
but they are broken in a3
Apart from gusts can you normally tell where the wind is from anyhow, looking at a tree?
when fog is present
Because they use A2 fog and shader inputs that are no longer used in A3...
and ponds are here, but rivers :(
i know all about it myway, dug arround that subject for to long
rivers are coming. watch the video 😄
branches bend into direction X, leaves aswell
miro explains everything in blender
- you can see the windwave going through the trees
Fair 'nuff, trees here are so ugly you don't look at them.
😛
dude watch more then 10seconds after what i linked
miro is working for BI again
he shows a river in blender and then dayz
actually working on the enfusion terrain module
that whole talk is about him and terrains
river are a feature of terrains 😉
but don't expect enfusion features in dayzs version of enfusion
so where to expect them? :D
Arma 4 huh
enfusion at this point is for dayz and thats it. its very likely that arma 4 gets enfusion but thats a long time until then
i leave take on mars and all that out on purpose
and rivers are a feature missing on chernarus+ and namals is beeing developed currently too as far as i know
semi official
namalsk should be pure community made (which happens to be a dev)
they used it to test modding tho
im not really versed with the topic, but last info for me was hes getting the new modtools for dayz and is already working on the map
no new modtools for dayz
pretty sure there gonna be
at least for terrains and objects for now
the video i posted shows a whole lot tools for blender
Those are Miro's personal toys.
that is a personal project by Miro
don't interprete to much into this myway
all i see is no terrainbuilder and thats all i need
they use them internally for some generating processes, but they still use TB
why do the devs discuss modtools then even? they are saying we see modtools at one point. Why even say that when they are going to be the same as armas?
most likely packing tools
and some script debugger for enscript was mentioned
a binarizer supporting all the new features etc.
They'll need some of the Enforce tools too, the assets are a mix of Enforce/RV.
dont wanna sound to naive, but i actually think we see some actual open source tools coming. maybe its just false hope
not saying enfusion will never have new tools, but for now it is TB and OB
at least terrain building in enfusion should be written inengine with enscript afaik, but again, not dayz
and for objects they should only support fbx by the binarizer and no additional tool would be needed
but objects are not really my knowledge
@smoky halo btw, have you seen the windmask files?
ianbanks probably knows some more stuff there
Objects are still .p3d mainly
i really need to dig a bit 😛 no not yet
And a fairly old .p3d format too
a 2D fluidsolver would be neat for such wind wave effects in the tree shader 😮
well a tweaked fluidsolver to behave more like air but still same concept would apply
(Naturally the first comment is someone telling Naughty Dog how to do things correctly.)
haha yeah i dont read comments on artist pages or anything like that cause they are filled with salt. i got a saltmine in my town...dont need no more
@dapper pivot i guess you refere to the vertex shader vs physics comment 😛
for those ppl with diskspace limitations, use a3 server package as source for arma3p
It doesnt take up that much space, isnt it like 22gb for just A3?
@dawn palm old versions of depbo.dll would allow addons that didn't have a config.cpp in the root source folder. Is there a reason this was removed? Just interested if there's a technical issue with this or it's just best practice to have config in the root.
cant speak for mikero but I understood that every addon needs cfgpatches to indentify it, but yeah I think "needs" is more like practice. dunno.
True. Every PBO needs a cfgPatches.
But you can also have the config in any of the PBO's subfolders
as long as there is atleast one config in the PBO it's fine
Makepbo with the 6.44 depbo fails if there is no config in the root source folder I.e. Myaddon/folder/config.cpp. 5.24 was fine if there was myaddon/folder/vehicles/config.cpp
the architecture of pboProject has always been that the first detection of any config.cpp marks that folder as a pbo boundary. subsequent configs in subfolders of that pbo mark them as addons within addons. it is reasonably well described in the documentation for pboPro
to build separate pbo in pboProject architecture you would have:
mytanks\t80\config,cpp
mytanks\T72\config.cpp
mytanks\Abrams\config.cpp
you would pount pboProject to mytanks, and it would automatically create 3 pbo's
IF you had a config.cpp in mytanks, it would build a single pbo
the above architecture was implemented by Bis during the early days of arma two to provide what they called 'hotpatching'. the 'theory' at the time was release one big 'mytanks' pbo and patch it with a revised T80 pbo if required
re makepbo @mild kestrel , as far as i could ever recall, it always needed either a config a mission.sqm or a desc.ext in the target folder (what you call root)
Works fine with 5.24 but not with 6.44 just saying. Helping someone with their addon and they have a folder setup where config.cpp is in the "2nd" level set of folders. I.e p:\x\myfactionaddon\addons\vehicles\myvehicle\config.cpp
Sigh
in theory then, if they just pointed to vehicles (not myvehicles) then that would be the nameOf the pbo
to be honest here, i didn't know makepbo ever worked that way.
Yeah just moving everything up
Or just make a config in that folder with a cfg patches, no need to move anything then
Rog
Honestly would be nice if movefolder to fix this 😃 he has hundreds of config.cpp files across subfolders
well, if I understood you correctly:
a\b\c\config.cpp
all he has to do is makebpo 'C', not, makepbo 'B'
the only change of any consequence is his pbo name becomes C.pbo , not B, pbo.
'hundreds of config.cpp files across subfolders'
again, if i have undertood you correctly, he only wants one pbo for all those 'subfolders' this is quite normal. And ALL he has to do is now provide a cfgPatches class in the root folder.
assuming makepbo at some earlier revision let this pbo get made without a cfgpatches class, that is a straight out error on the part of makepbo to to let it happen.
that is a straight out error on the part of makepbo to to let it happen
This reminds me of an XKCD comic that said: "Every change breaks someone's workflow"
https://xkcd.com/1172/
...but I guess that it's a regular everyday conversation for Mikero 😉
Bet that comic sums up his life! 😂 I dread to think what the options menu would look like, in pboproject if everyone had their way lol
@mild kestrel just make them a new config.cpp with one level higher up and just add a cfgPatches class. nothing more needed
@dawn palm Fixed: Crash when using binarized SQM files in CfgMissions i remember you ranting about this
because of me 😉
It seems with 1.20 the A3 engine no longer can read rapified mission.sqm data.
https://feedback.bistudio.com/T77479
1.20. No activity on that issue report despite the fix.. I don't think they thought of your report while fixing that 😄
They were probably working on TacOps and someone noticed it is broken because he forgot to uncheck "binarize mission file" in eden
Oh.. Just read that on ACE Slack. Back to my rant about not being able to disable file checks.
Missing File Summary
CfgVehicles.hpp : a3\data_f_jets\logos\jets_logo_small_ca.paa
How will you fix that? Okey.. Dummyfile would be an answer I guess.
But even with perfectly correct P drive. This will error
It is in that path inside the jets ebo
yes
The path is completly correct and works
yea dummyfile
same needs to be done for terrains with apex assets
they are still in ebo even tho everyone including non owners have those ebos to play on community made maps using apex assets :3
BI must have been drunk when they decided that
@glossy inlet I have a "Windows" version to that does not use FUSE too, https://github.com/Dahlgren/DokanPbo
but it requires dokan to be installed instead, https://dokan-dev.github.io/
performance isn't that great if you have a lot of references though
CI for arma isn't that difficult either
we just trigger a job on all our build slaves that runs arma3p and changes the extracted data whenever a new patch is released
and another that downloads CUP Terrain from Steam Workshop and extracts that as ca data for our islands
then just some custom Gradle DSL stuff that we use to glue together our extracted data, our source files from SVN, runs pboproject on the files defined in the DSL and then finally ships everything to our Arma3Sync repository + uploads to private Steam Workshop items
That's easy if your build server can have Arma.
I'm running on Appveyor
then we run daily jobs that triggers test missions for Arma and checks models, code, islands etc
yeah, I guess if you just need a few files you can just create mock copies
or download arma 3 server from steam and check against that
it's not that much to download
isn't arma 3 server even available for anonymous login?
yes.. Think so.. Or maybe Non-anonymous account that doesn't have to own Arma
Can movefolder rename textures if there's a clash while moving folder with models that have different textures but same names? Yeah I know 😃
@mild kestrel otherwise use moveObject altogether, or for one of the duplicates and move that one file yourself
What is the path separator for directories inside PBOs? Is it /, \ or any/both of those?
What separator should i expect to be used by Mikero's tools or Armake when generated both from windows and linux?
I'm soon going to store python files inside PBOs (that I want to fetch from an extension, not from Arma's SQF itself) so I would like to know which separator i should use to address those files.
@dawn palm @wide cedar
I have an uneasy feeling that Arma's engine is treating file names as a stream of (utf8?) bytes without any hierarchy, based on what I remember from early obfuscation methods, by Mikero.
Would that mean that dir/file.py and dir\file.py will be completely different files, inside the game?
PBOs use \, so armake converts them on Linux. You can use "armake inspect PBO" to get a readable version of the PBO header.
I'm currently at work so I can't really check that right now. I was asking because I seem to remember having @dawn palm 's makepbo generate files with forward slashes on linux the last time I tried (around 2 weeks ago). Not sure if I remember correctly, though...
You can just fetch them using loadFile can't you? And \ is used everywhere I can think off
Yes and no.
- That could be slow, if there is lots of modules, but it's not the real big problem.
- If the file
directory/__init__.pyexists (even if empty!), then that means thatdirectoryis a package and doingdirectory.submodulerefers todirectory/submodule.py. Otherwise,directoryis a module itself andsubmoduleis actually a function or a variable inside that module.
And you can't check if a file exists inside a PBO, in SQF (not counting your Intercept function)
why even bother with pbo for that stuff if you use a dll anyways?
Because the dll is a mod that has a python interpreter and no real code to execute
And it will fetch python code from other mods
So right now, what I have is that you do a -mod=@Pythia;@Frontline and you have a directory
@Frontline\pythia\somemodule
in your mod (+ a $PYTHIA$ file with the text:DynamicFrontline inside)
...and afterwards, you can do a ['pythia.DynamicFrontline.somemodule', [args...]] call py3_fnc_callExtension
That will load the python code and execute the right function, etc...
We've been using that python mod for at least half a year for our game mode implemented completely in python and it works fine.
Now, I wanted to polish Pythia, add some functionality that arma modders expect from mods (like non-hardcoded source directories, laying directly in Arma 3\ 😄 ) and release it to the public
lemme repeat: why utilize pbos for that?
use zip files
fucking debian does not wants to install ...
on my vm
I don't need to use zip files, I could have them directly in the directory, unpacked (as it is right now in this WIP branch) but having them in PBOs would allow for making use of .bisign to sign them (if someone starts using it as a client-side mod one day) + they are locked by Arma so you can't write into them after the check is done (as I understand it)
- aren't all Arma modders expecting EVERYTHING to be in PBOs? (serious question - I'm not an Arma modder; I wrote myself a Python extension so I can do modding in python; I don't even know SQF, I leave that part to others in my community :P)
True, but why not do it the elegant way since it's possible (yes, of course, that much more work, I know).
because accessing the PBOs via a separate lib is not the elegant way
using intercept to access those would be though
cough ACE cough ACRE cough Intercept
They all access PBOs
Actually, maybe not intercept, but it uses the same routines as ACE and ACRE to list all loaded PBOs
though ... would not be that hard to actually create a extremly basic file system in a python thingy
in the end just a single file and an extra op
Thank you (no, seriosuly, it's nice of you) but I don't need those links 😃
if he wants to design it that way and it is possible, why not
file structure could look like this:
PATH\nBASE64FILEDATA\n...```
mapping the path then to a dict would allow for iterating through
and accessing via file name
problem solved without an extra lib needed
it would definitly make sense for clientside mods and verifySignature checks of the pbos
another alternative is auto-generating a file containing all python file paths
thus you just need to read that file
in the end all comes down to: no need to add new dependencies
only required to do extra step in the build chain right before packing
That's not what i call elegant. @nocturne basin
What's elegant is:
$PYTHIA$ <- put your module name here
pythia/ <- put your python source here
End of story.
Bonus round:
Convert both of those files to one PBO and store it along with other addons of your mod. End of story.
it is elegant ..
but it is your project
add as many dependencies as you want 🙈
just that what i proposed wont break that easy as reading PBOs
but that just brought up an idea for a new tool
kinda funny that all those things i create now actually get damn useful Oo
It boils down to implementing it well once. Then the lib should work for years.
Actually, using mikero's obfuscated pbos would probably be a good testing harness for such a lib :D
Mikeros obfuscated pbo's will break the filenames you are searching for. So probably not a concern
anyone using https://docs.microsoft.com/en-us/sysinternals/downloads/debugview with diag.exe for live debug.log (exteneded rpt) output (to a separate screen essentially)?
I just pop out the VS output window and move it to second screen.
how good is the filtering options there?
I don't think there are any 😄
SnakeTail seems more appropriate in the case of Arma
or any tail like program really ^^
For RPT I use bareTail.. It has highlighting. Don't know if it has filtering
Just checked. Quite sure it doesn't have filtering. Atleast I can't find it
no clue about filtering in SnakeTail either
doesn't seem like it, just highlighting
can't check for real though
all file references in the bis universe are \, not /.
the one exception is the roads/lib/folder/specification/
my dll does not care which\way/they\are/specified, it converts them, appropriately, to the OS's native slash when and then.
and btw, @karmic niche , I think it was you who wanted #includes to be CasEInsEnsitve. This has now been implemented for linux.
Yes that was me, thank you :)
to be more specific about 'when and then', it means actual access to files and folders. For the pbo itself, the references are always written as \
n1
also, I may easily have my facts wrong here, but I was told that contrary to all expectation, BI's linux server will accept / or \, but the windoze version only accepts \.
Oh my, look at this: http://www.rohitab.com/apimonitor
Arma3.exe CreateWindowExW ( WS_EX_APPWINDOW, "Operation Flashpoint", "Operation Flashpoint", ...
Guess they've forgotten to update that for the last few updates...
yeah, they can uipdated to dragon rising.
can someone do us a small favor please with the old leaked engine source - if the pattern from cfgSurfaces/files has a max length and if the path/folders are also case sensitive/lower case only, or just the texture name itself
Every PBO access is case insensitive afaik.
The complete internal filesystem is. Might be that there is some special function that searches case-sensitively
Pattern behaves compares the characters but has special handling for ? and .
But * just makes it match. Even if you do na*me it will only check till na and then quit.
If that doesn't match. and you have 6 or more ? at the end of pattern then it checks something again with 256 length limit
thank you
@dawn palm I had an extra "s" at the end of #include "commercial_shopss.hpp" and it made makepbo crash. Normally it just comes up can't find file in pboproject 🤔
yep. the crash was fixed in latest release of the dll
caused when i implemenented linux casEinSensITity
Every PBO access is case insensitive afaik.
that is almost universally correct (not just for pbo's but there contents too. 2 exceptions apply:
From the beginning of armatwo, bis has a history of needing lower\case\only file references for some highly specific needs. I think it used to be the now defunct island icon, it is now, currently the roadslib.cfg
mainStrTex = "cwr3\general\cwr3_roads\data\cwr2_a2_asf3_sandycobble_ca.paa"; // lowercase!
the other, is wherever bis use sqf to look inside config files, sometimes they remember to test with case insensitve functions and on wednesdays, they don't
oh yes, how could i forget
something_related_to_buldozer=
must/be/linux/slashes/and/have/trailing /
as a sidenote of interest for everyone, the engine only uses lower case internally. everything coming in is converterted tolower() before use.
i recall some casesensitivity with rtms
ah yes indeed. bis convert all bones to lower case in the p3d. when the skeleton is extracted back to a model.cfg, OR, an arma2 skeleton camera vs Camera is used. Oxygen/Object builder can't see it because of bad case.
It's generally accepted that if you always\use_lower\case\every_where, you're safe. But you just mentioned a problem where even that won't help.
CfgSurfaces file entry is also case sensitive
Hey mikero, have you ever considered making arma3p fix the buldozer lighting? Pennyworth has a working example. It's easy enough to do (make DefaultWorld have some of the config subtrees that come with Altis, in particular LightingNew) but requires you to edit the p:\bin\config.cpp manually to slot things in everytime you do a new arma3p.
@dawn palm
hmmmm
seems to me bis had no reason to break it in the first place. the cost was zero to retain the old classes.
It's the same in VBS apparently. It's possible they don't want to make huge changes to DefaultWorld because they might affect other maps in unanticipated ways. However there's nothing stopping them from creating a BuldozerWorld and using that in Buldozer with corrected lighting.
well, if @limber garden contacts me with the details i'll see what i can do.
I alsready supply a patch for 3den_functions. so not a biggie. Altho at a certain point it becomes our engine not their engine.
3den functions patch is now supplied as an @mod.rar and has been removed from arma3p
arma3p updated
buldozer is now automatically replaced by arma3.exe in terrain builder and object builder without further fuss. You no longer have to do this step manually.
nice, one newbie tripping obstacle removed.
Nice one mikero 👍
@dapper pivot
have you ever considered making arma3p fix the buldozer lighting
it serves no purpose to 'fix' this in arma3p. because the result is only useful to that user. for people playing on his map, they require the same fix.
penny's is the right solution, to replace the other person's bin.pbo, but it's only good till bis add new shaders
the real answer is for me to provide a patch.exe that bis can't wriggle out of. this exe is applied to anyone using or needing to use, or playing on, those maps.
for that to happen, i'd need to know the exact classes and vars that need changing, rather than penny's broadside cut 'n paste of an ingame config.
and that's not going to happen until someone's prepared to do the hard work
ermmm... i might actually have those details laying around somewhere. i'll check this weekend.
@dawn palm Pennyworth's changes take Buldozer from using lighting that no map ever uses and switches it to using the Altis/Stratis lighting that most maps adopt.
So typically the user doesn't need to do anything, the fix is just because BIS changed the Arma lighting without changing it in Buldozer.
When you are making objects (instead of terrain) it's important that the object looks good with Altis/Stratis lighting because there's a 99% chance the object will be used on those maps.
And even a third party map that uses different lighting won't use lighting that makes Altis/Stratis tested objects look bad. (Unless you're making every single object on your map from scratch)
aah, first mistake i made was assuming this is a map makers requirement.
so this is solely an oxygen requirement. the object being viewed will look 'ok' in both if adjusted using altis/stratis configs
(hope i got that bit right)
what i can do, is supply a patch.exe that applies lighting in exactly the same manner as the current penny pbo and to be used in the exact same circumstance. the difference between penny's already excellent fix, and a patch.exe is the patch.exe will remain current no mather how many new or altered shaders bis apply. or additions in their config. what i can't do is apply it as a universal patch to arma3p because arma3p must reflect the current engine for all users, not just model makers.
hope that makes sense.
if it does, then i'll rely on you/penny and hatchett to supply the details.
what do you think about optional clutter integration as well?
i dont understand the question win32.
it requires 3 lines of includes
getting written to specific classes in P drive's config.cpp
if you give an example , i'll understand the need better.
contact me private if that's easier for you.
and why would you want to add 'clutter' for every map, not just yours? the quick answer is yes, that can easily be applied to the bin\config.BIN
I think there is some confusion here. The whole point of modifying the bin config or the bin PBO is to update the lighting just for Buldozer. It should change nothing in game unless you were for some reason using the modified bin PBO, but that's not what it was made for. It was only made into a PBO because I couldn't get Buldozer to read the bin config directly from my P drive.
What @dusty imp is also suggesting is modifying the bin config to allow clutter to appear in Buldozer, through the same method I mentioned at the end of this post https://forums.bistudio.com/forums/topic/202774-clutter-buldozer-and-you/
The benefit of having it as an include in the bin config is that it's also more noob friendly. You, or some else, can give people a modified bin config which has includes that they just need to plug their surfaces and clutter into, rather than having them manually scroll through the bin config itself to find the right areas. What he showed in that image is a great example of how it could be setup.
k
thanks @limber garden, great explanation
only thing is it is only possible if you have separate cfgclutter cfgsurfaces and cfgsurfacecharacters
@limber garden My buldozer reads it from p:\bin\config.cpp for some reason.
And this is more for people making objects (O2->Buldozer); with maps you typically don't care what objects look like under lighting (since you can't change them as a map maker) and ground textures can't really be previewed in Buldozer (no working time of day controls, no clutter unless you mess around getting your specific clutter into the DefaultWorld)
same here
It might be that buldozer doesn't read from it when the working directory isn't P:\ in the buildozer start arguments.
@smoky halo with your findings/approach its possible to change daytime/weather settings in BD, no?
but it's only good till bis add new shaders
i would assume there is next to zero chance of this happening with A3 any more
with Lappihuans buldozer tools you can reset the time, dunno what time it will set it but yeah its doable already.
think it sets to midday and clears weather as well
You can change time/weather, I do it from my Modo plugin.
@dawn palm If youre going to integrate the lightinh changes I would hope it could be done with includes/separate files so that it would be easy to switch the default lighting configs to custom ones. For people like me who run very custom lighting.
yeah, we'd love to see GUI, with fields "path to cfgclutter.h" "path to cfgsurfaces.h" "path to cluttergrid.h" and "browse" buttons
well thats a bit excessive
if the files are just in the same folder its easy to edit them to your liking
i have separate pbo for config, for example
eliteness update:
added 'warnings are errors' for lintchecking and makepbo
pboProject update;
made choosing notepad++ as text editor, simpler. (credit @smoky halo )
'better' wrp error messages
dll update:
p3d: added pixel and vertex shaders for 'watersimple' (credit @vague shard )
wrp:
fixed silly error not checking for inherited clutter DUH! (credit @dusty imp )
missing clutter,cfgSurfaces or cfgSurfaceChars is now a warning, not an error.
if present they are validated, if not present they are assumed to be in 'some other config' (subject of course to 'warnings are errors')
what does made choosing notepad++ as text editor mean, how is pboproject using text editor?
via settings->
settings? you mean setup?
I think mine use to open in notepad++ anyway
that would surprise me, it was hardwired to notepad and remains the default because every1 has it.
yes, sorry snake, am tired.
dude doesnt know how his software works heh, I like it, you're just like me 😄
all kidding aside, I still dont know how pboproject uses text editor, it never done it on my use. is it opening like some log files or? so if user uses it from cmd line, does it still open log files?
You click open binlog etc
it opens the log files in an editor of choice. the default is notepad.
for wrps, there are TWO logs that are opened, the 2nd is a list of land_xx classses (if any)
roger. this must not be in free tools then or doesnt work in cmd line version as I never seen such, few times I thought it would be cool if you could just click open "error" log, always have to go look for it in huge p:\temp\ dir.
how could it possibly work in cmdline!!!!
cmdline is batch, and the very last thing anyone would want is a screen full of text pages. that' they'd have to close
There is a button to click open logs lol
view->output & view->binlog
back when I used the GUI that opened windows explorer to p:\temp\
that's because, there was no file produced, OR, nore likely you were crunching multiple pbo's. in which case how could it open just one of them?
instead, it opens the temp folder for you to choose.
no -one would thank me for opening 13 logs for 13 pbo's and no-one would thank me for asusming the first pbo was what they wanted to look at
I have to say however, that with notepad++ that option is a possiblitly.
it supllies a very nice multiple document interface.
cmdline is a differnt animal where the user is in total control, it's just as easy if not easier for him to say:
pboProject -options some_folder
if not errolevel 1 then { start notepad p:\temp\some_folder.log }
@glossy inlet does the leaked source contain also the internal exe source?
if so, is there a way to make the internal only diags available (like several related to AI, assets/LODs, etc)
ie: https://www.bistudio.com/assets/legacy/images/stories/blogs/developer/Pathfinding.jpg
You can use what the diag exe on dev-branch provides to you
the diags that are not available to you are also not included in the binary at all. You basically need to compile your own binary to enable them which is sooo not practical/possible.
yes i am aware of it
It's possible that there are a lot more diags than what the wiki lists for https://community.bistudio.com/wiki/diag_enable
my point is could the source be used create a lib to add it back it or similar means
yes i know. i had access to the internal exe in a2 days
there is many very useful tools among them
All of that diagnose stuff that isn't available to you is #ifdef'ed out of the binary.
You can theoretically hack the engine and inject that stuff back into it.
With weeks of work and it most likely breaking after a couple of new dev-branch releases
Everything is possible. In general.
back then BI didnt like to make them available for fear of abuse
but now with separate non MP exe, i dont really see the problem
Yeah. Same here. I don't see how that would be abused.
Maybe just bug Dwarden about it ^^.
Do you know if they are maybe already available in diag build? Just not listed on wiki?
last time i scanned the exe no additional/unknown were in there
imo the only chance is to get some pressure on BI to make them available via the premium DLC schema
after all they already mentioned some tools, help, docu whatever - imo just shouldnt be restricted to these partners, but made available to the general public
Yeah.. If you ask them to open it up because you are working on a DLC...
It's not really any hard work to enable them. Basically just setting one or two #define's in one file. You just have to get someone to do it
who can be bribed 😉
About the only thing I've ever found from .exe string snooping is a few undocumented animation controllers. I don't recall ever finding extra undocumented diag_ commands.
I see you found some undocumented ones 😄 @vague shard I didn't look yet
Mondkalb - Today at 11:39 AM
then use dbgView to track the output.
It should work still in A3.
Possibly also "LogAnimQueue"```
(didnt find the latter - the former exists)
@Dedmen#0689 much appreciated 🙇 will verify with diag.exe if some remained
@glossy inlet* 😄
@glossy inlet did verify it:
-
non of the drawmodes work :(
"!shadowPossible","!rainOccluder","Buoyancy","drwFlrs","Paths","prpFlrs","Roadway","ShadowBuffer","ShadowVolume","ViewGeometry","Wire" -
only the diag_list "toggle" work
["Force","Animation","CursorTargetObject","Mines","HitPoints","AnimSrcUnit","AnimSrcTarget","Suspension","EPEForce","EPEVehicle","ParticleNames","Particles","SurfaceUnder","AISkill","AIDriving","AIAiming","AIBrain","AIDynamicError","AISuppression","DynSimGrid","DynSimEntities","DynSimGroups"]
the other options are in the exe, but trying to use them diag_toggle returns:
Diag mode "XXX" not valid!
😡
CursorTargetObject
https://i.imgur.com/JTtFyZ8.jpg
Did you try the weather stuff? temperature/rain and such? I guess that's one of the not valid ones
yeah did try all to see if diag_list "toggle" might be incomplete
maybe the functionality is actually still there but there is this whitelist..
could be that they are diag_enable commands?
from what i remember enble is just on switch, vs toggle is on and off - will double check though
They are all in the same place. Being passed to the same function.
Seems weird that not all of them work...
Could be that that's just the enumToString function though.
well somewhere a whitelist or blacklist has to be
Functionality is contained in ifdefs so it's most likely not present
Same with ie additional scripting commands
😭
#Intercept to the rescue 😄
I could probably do soo much stuff if I had endless free time and energy and wouldn't need sleep.
But also the hardest I guess
There is a special Debug UI kinda like the debug console that has buttons for all that stuff :o
That would be neat too..
diag_drawmode doesn't accept any of these? It throws errors when you try to?
It would actually be kinda easy to just circumvent the Diag mode "XXX" not valid! and just enable it.. Not sure if that would actually do anything. And not sure if it's worth the effort
"Normal","Roadway","Geometry","ViewGeometry","FireGeometry","Paths","ShadowVolume","ShadowBuffer","Buoyancy","Wire",
Those are the view modes. Dunno where you got drwFlrs or prpFlrs or rainOccluder from
Those are actually quite easy to enable if game doesn't want you to.
same context in the exe
They are not in same context for me 😄
Context as in "the strings are close together"?
yep. its generally works out that way
ofc could be not the case, but its worth a try and the names fit too
True.. If all strings are only used once in the same place.
its not valid too when you try any and the list returns empty array
I can enable any besides Geometry
as reyhard says the diag.exe probably has the engine code removed though
probably most havent changed since though
the UI is to easily toggle them
otherwise its annoying to use with all the different strings and you can make the interface too cluttered too - thus there is a "disable all" (or was back then)
I can enable all draw modes besides on 2 types.
And I don't think UI objects (3D models in UI thingymabob) would be needed.
But the draw modes don't sound that useful to me
you can debug AI and model issues for example
performance also to some extent i think
I don't know how likely that is to break with updates of the binary. I don't think that area changes much..
If you keep that idea in my head for long enough I might do it some day
I have some time on.. Eh.. Tuesday or Thursday? in 2 days.
i can be dedicated if you want 😉
Remind me Donnerstag nachmittag around 1400 for best chance to catch me while I have some free time
is there any research and development done to generate wrp and layers from a TB project (with armake for example or otherwise)?
(to avoid the horrid TB interface, slow speed and limitations)
There was a bit of research into TB project file format. But AFAIK no.
"you guys" are so cruel to let the poor terrain designers remain in their eternal suffering 👹
I'm sadly a scripter and not a terrain maker ._.
that is the problem - no programer is sane enough to get into terrain making
or you end up making X-Cam, MapBuilder or other tools to avoid BI tools as much as possible
mikero had very good support with Visitor 3 (pew) but gave up on TB ..
Pretty sure you mean insane
Generating WRP without launching TB would be very nice
is WRP format documented?
only what people reverse engineered and afew different formats
like pbo format is documented from Mikero on biki.
That's what I mean. If the reverse engineered information is available without being the guy that reversed it
not sure if any looked at TB project files etc i.e so you can export a wrp from it
nice bit of work for limited use, prob be less than 10 people that might use it
I did and someone else did too.
I'm quite sure we have enough info to read TB projects.
I don't know if there is already some code with that or if it's just knowledge inside some brains
wrp is pretty well researched and documented as far as i can tell
also not sure how you think only few ppl would use that
basically anyone would use anything half decent over TB
Looks like version stops on Arma 2
no change since
You need to read project files aswell, if you want standalone tool to export wrp
Otherwise you need to make a tool to edit the wrp
Well.. There are only a few terrain makers. Compared to the rest of Arma users.
So saying only a few people will use it is kinda true
yes of course. this is what i said torndeco, did i not?
documentation is only for wrp. tb project files as far i know aren't documented at all = will require some work
given the insanity of the effort there is actually loads of terrain designers
Dedmen, 4d4a5852 and a few others have looked into the TB file formats already
We already have some non-public research of tb files as I said.
Will still require a little more work to get finalized.
Looking at the wrp format I'm already failing on the peakPositions because I didn't study in university and don't know about that stuff 😄
the only relevant for this is the project file anyway
i am sure @dawn palm is happy to assist with wrp format 😉
But.. If I think about it we don't need to care about wrp format. If it really didn't change
If you are talking about replacing TB altogether
You still need away to edit hightmaps etc, which will require abit of work etc
If its just a tool so you can export wrp & layers on your GSP box. I think thats limited number of users that will use that
as said no change at all in wrp format
still the same as in A2 and as documented
6 colors only affects rvmat (slightly) - nothing special
road shp is also just a config reference and nothing to the wrp itself
So basically you want a tool to generate layers from an already exported wrp?
People also wanted other stuff. like mass placing objects.. That would also need completly reversing tb format.
And if we reverse it already.. Why not do that other kinda simple thing too ^^
one can do a lot already on wrp and pew with mikeros tools
if you have from tv4p to wrp (and back), i doubt there is much to be made for tv4p itself
I think your all insane ;P
Arma3 is reaching end of life, why spend time reversing engineering TB File formats for limited use etc
¯_(ツ)_/¯
people will want to port their stuff to Enfusion
terrains are generic to be easily able to do that
Automatic port to new format if there is one.
And if there won't be a new terrain format.. Then there is still use for that stuff
i doubt ppl will stop now and wait 3-4 years
Don't need to reverse engineer TB file formats for that
Just need wrp formats which is basically done
Anyway like i said your insane. Would be interesting project back 3-4 years ago
@vague shard Why don't you like TB?
as said, do you see sane people doing modding or tools with Arma? why would anyone waste so much time on it 😉
Are you saying I'm insane? :u
DRY - a normal programer cant just accept a process like TB has
its natural to get away from that and do it better/properly
Cant reinvent every wheel out there, will never get any work done 😃
for fun kju
i am playing with the idea to release most of my BIS file format code to Open Source. Would there be any interest by guys like you in working and contributing with that? Code is in C#, mostly using .net Standard 2.0 which makes it sorta platform independend
and each file format lib could be provided as Nuget Package to be easy to use in Visual Studio projects
What file formats you talking about?
RTM, RTMB, Configs, PBO, OPRW, PAA and so on
maybe MLOD
but probably not ODOL
Yeah.. Don't ODOL...
But the others.. I guess that's useful
I atleast don't see how that could hurt
armake already has PAA MLOD and I think Config too.
so they are already kinda open source. Just not as nice to use like a C# package
Could see afew people interested in that for automated builds etc, no harm releasing it etc
Shame its c# been messing around with armake
IMO C# is probably easier to read than C. Right? (totally not a C# fan btw)
depends who you ask. You get a yes from me ^^^
it's just that my code is a little incomplete at a lot of places
and not consistent coding style as this is work from a lot of years
but it basically contains all the info on the format of the files
well, I will see what i can do
If Visual Studio would support inline ASM in x64 I would do more x64 stuff... Having to specially enable masm and move to a seperate file is just a chore :/
Streaming Arma dev now.. Should that go into #videos_arma ? I'm devving tools so that is kinda #arma3_tools isn't it?
@vague shard 's diag binary draw modes first. Some ACE Intercept stuff later.. Boring stuff.. Probably mostly scribbling some assembly.. But maybe someone likes the music
@smoky halo I’d be interested in contributing to C# code base at least
😃
C# ❤
hmm...what license to use...
@glossy inlet are you going to be a daily streamer now?
no
Heh
one easily can make armake do the whole stuff in c# btw.
c is fairly easy to get into .net 😄
c++ however is ... more complicated
@vague shard https://dedmen.de/sharex/Discord_2017-11-10_21-49-38.png please confirm. ViewGeometry?
pathway please
I need a building for that right?
Those trees would fit perfect on a life map, with there bright green grass lol
LOL
no pathway should be also all surfaces and any objects
Roads?
its not (just) about building path
I looked at a Soldier model and it seemed to not have a path lod
its should be a grid view of colors
like the eval of movement for AI
you need an AI soldier/vehicle and having it move
not 100% if thats your _path mode
VR world may or may not work with it
Pathway lod really ? can look at that in object builder.
But if you are going to add pathway you need to really see the roadway lod aswell at same time etc to catch any errors
Ah no I see others
let me see if i can find the screenshot again
I can't draw 2 LOD's at the same time though.. I could just flip every frame and use persistence of vision... Kinda
but yeah that looks like a pathyway for a building thats hidden
The building is just not visible because I'm overwriting the LOD that's drawn
Yep i just copy/paste in object builder to find pathing issues.
https://dedmen.de/sharex/arma3_x64_2017-11-10_22-00-29.jpg roadway looks neat...
do you want script commands with string like it works now or with numbers? A number for each mode
That's what path should look like?
That also has Wireframe
i guess strings are a bit more convenient
not sure what BI calls it, and this is a mix yes
however this is path eval for AI
to classify what is good path choice
That might be a different mode.. Than the plain draw modes
the actual one is even more complex
That is not the draw mode.. Do you know the diag_toggle string for that? Or which one that might be
I can try if that's easilly possible
the skybox is an actual sphere in arma?
or is that inside a building?
because that looks a hell lot like an actual sphere
Oh gosh 😄
https://dedmen.de/sharex/arma3_x64_2017-11-10_22-08-00.jpg Flipping every frame doesn't really work that well XD
nah to hard to see the pathlod is above the roadway
If you give me the name of the diag_toggle that might be doing that I can try. But the drawmodes themselves obviously don't
is the AI debug dialog still in a3?
in a2 there were leftovers at least i think
let me check
setDrawMode "hitpoints" -> Uh.. bad example.. Invisible :D
setDrawMode "shadowVolume" -> https://dedmen.de/sharex/Discord_2017-11-10_22-27-01.jpg
setDrawMode "geometryPhys" -> https://dedmen.de/sharex/2017-11-10_22-28-17.jpg
So I'm done with drawmodes then
diag_toggle "path" then. kk I'll look into it
a3 paste has no interesting parts though
https://github.com/dedmen/interceptTest/blob/master/interceptTest/diagStuff.cpp#L128 All OS. Can compile it yourself if you want.. Only works on current diag binary. Might break on next update
so shorter dump
`action = """all"" diag_enable true";
action = """all"" diag_enable false";
action = "diag_toggle ""combat""";
action = "diag_toggle ""costmap""";
action = "diag_toggle ""transparent""";
action = "diag_toggle ""collision""";
action = "diag_toggle ""path""";
action = "diag_toggle ""force""";
action = "diag_toggle ""animation""";
action = "diag_drawmode ""Normal""";
action = "diag_drawmode ""FireGeometry""";
action = "diag_drawmode ""ViewGeometry""";
action = "diag_drawmode ""Geometry""";`
I have all draw modes. And even more than normal diag has available
Looking into path now
What happens when you try to diag_toggle "path" ? Error?`
the not available hint
Checks for if "path" is enabled are in the binary
and the code writing the diag texts for path is also there
so I guess just the diag_toggle function forbidding you to set the flag is the problem
possible
TKOH had these more in the debug UI
action = "diag_toggle 'model';";
action = "diag_toggle 'animation';";
action = "diag_toggle 'UIControls';";
action = "diag_captureFrame 30";
UIControls is quite useful from what i recall
you can see the class of the highlighted UI element
Looks good. I think they are in
Why can't they just default enable Zeus in Eden preview -.-
How can I get into zeus in Eden preview? setting module with me as owner doesn't work ...
https://www.youtube.com/watch?v=yu00twuFOdg
UIControls is not useful at all...
It just prints a message about where some control is on screen
screenshot?
yup. can be convenient to check 3rd party stuff
That's it.
https://dedmen.de/sharex/arma3_x64_2017-11-10_22-52-23.png Ouh... Weather? I just randomly enabled flags 😄
Randomly poking at things is probably not the best method to do this.. 😄
https://dedmen.de/sharex/arma3_x64_2017-11-10_23-10-30.png Scene complexity
Okey "PathFind" is also one of the disabled ones. That's probably the one you wanted
scene complexity, wow. Why aren't these things documented for us, would be so useful.
Yey! First one that draws something! Waypoints: https://dedmen.de/sharex/arma3_x64_2017-11-10_23-41-13.png
Or.. That might be Formations... Looks more like waypoint to me though
ParticleNames... Tiny https://dedmen.de/sharex/arma3_x64_2017-11-10_23-42-51.png
https://dedmen.de/sharex/arma3_x64_2017-11-10_23-56-48.png Surface under your feet
Okey.. Done.. I checked all diag modes now.. Nothing really useful.. Dynamic simulation stuff maybe. That's one of the things that work
there you go: https://github.com/Braini01/bis-file-formats
I started it
only contains BIS.Core for now that contains some basic math types and the reading stream I always use for BIS files and code to read binarized configs
I will have to check how I do nuget package out of it. Would be a piece of cake to integrate the lib then into a project
you need a write side as well. easy for you to create, not so easy for others 1st understanding your code, then doing same.
but, but but, an excellent release for those knowing c# vs c++. everyone benefits
write side?
based on comments above i assume it's (mostly) decode not encode? changing string names eg.
most of my code is basically reading, yes
doesn't (really) mattter, many people will benefit from this. congrats
I managed to "enable" wireframe mode... https://dedmen.de/sharex/Discord_2017-11-11_00-44-13.jpg Kinda..
That's all were gonna get probably...
Is there a tool that can create string tables by scanning configs for specified attributes / values?
wingrep is your friend tupolov
Yep. Tripple checked now. AI pathing diag is missing huge parts in the binary. Can't just reenable that..
Pushed a list of all diag bits to my repo. I commented the ones I found working.
Tell me if you need anything of that @vague shard
As most things you wanted aren't possible it's probably all not that useful
also added BIS.PAA
@smoky halo @Dedmen#0689 very much appreciated 🌟
@Dedmen#0689 did you test all ~160 diag toggle modes?
hm weird
there should be several more useful ones
did you try ProfileScripts for example?
or all the various xxMap
or these
SoundControllers
SoundEnv
SoundMap
particles, phsyx or AI modes?
I skipped all the AI ones
you lost all hope in AI? 😄
Didn't wanna test them 😄 because then I'd have to do stuff with ai
https://github.com/dedmen/interceptTest/blob/master/interceptTest/diagStuff.cpp#L186 you can test them yourself 😄
like one at least is useful to find areas badly usable for AI (movement) or if they get stuck
whats the basic process?
run intercept and some exe/memory patcher?
I only run Intercept. and my test plugin
For testing I set the bytes in reclass because I was too lazy to write a C++ thingy to set them
I'll add a sqf func for that quick
ty
Added.
You will probably have a lot of fun trying to compile that 😄 It's a mess
You also need Intercept develop branch
copy
@glossy inlet anyway to trigger ”cheats” such as exportnogrid from sqf or intercept?
no. Not by default
My only solution so far is an extension that fakes keyboard input
Can just call the function from extension if you know where it is
I have added BIS.ALB lib. ALB is the file format used for tv4p, tv4s,tv4l
I'm trying to get ExtractPbo to behave after a Windows reinstall. I can drag and drop-extract a file with the GUI, but can't seem to add it back into the PBO. I don't receive any error messages and the mouse cursor changes when I drag the file back over the window. Not sure what I'm doing wrong here.
(If I'm in the wrong channel please point me in the right direction)
you might not be doing anything wrong. I haven't looked or tested that code for over 2 years and it might be incompatible with latest dll. that should not be the case but it does happen. Will test it here. What file.typ specifically are you extracting/putting back.
I did have the Fall Creators Update installed prior to the format and it was working then, so that's kind of weird. Right now I'm just trying to pull out a config.sqf file from an Arma 3 PBO to my desktop, make a few changes in Notepad, then stick it back in.
Yes, the full file is kp_liberation_config.sqf and is associated with regular Windows Notepad. I'm a simple man and perform simple tasks. 😛