This member has provided no bio about themself...

Comment History
werejew02
werejew02 - - 13 comments @ Warfare ALife Overhaul 1.4.2

Yo, new account here as I used my university email for my original account. Not sure if there is interest for this as things seem to be slowing a bit, but would there be any interest in a patch to this overhaul that I can throw up on mega or something that includes offline combat AI? Before my hiatus I had a ton of people collect data for me on online combat between NPCs.

After taking a hiatus from the stalker community I focused on building my machine learning skills up and sought to understand actual AI. I have a simple offline combat neural network I coded a bit back and trained on a bunch of data, however the data is a bit old so wouldn't align 100% with modern Anomaly as it is a couple years old and the data collected from online combat would have used older values and thus not 100% correlate to online combat, but if there is any interest I plan on recollecting data in a more meticulous manner and creating a neural network to predict the damage via offline combat. I'm thinking I'll probably just have a max damage value defined for offline combat and then quantize collected data on a normalized scale into a set of 32 classes which represent varying damage levels and then can train a neural network using categorical cross-entropy loss to pick up on statistical elements from the online combat data in order to more accurately replicate the online combat outcomes in offline combat. The system works and replicates online combat fairly well but I have learned a lot since I made the initial prototype and can easily increase accuracy of offline combat dramatically. The network has to run on CPU right now so it's not a huge neural network but the results feel good even with the outdated data to me at least.

I guess I'll check back here in case anyone is interested. Not sure how active the Anomaly discord is nowadays but I may try there next.

There is a real possibility that if the community works together and use my data collection script (which is just a lua script so security can be verified, it just writes to a text file which anyone who knows lua can verify) we could perfect offline combat. Data collection would require players sending me the generated txt files manually, however, as I obviously don't use any networking to send data automatically.

Good karma+3 votes
werejew02
werejew02 - - 13 comments @ S.T.A.L.K.E.R.: Call of Chernobyl

Awesome, thanks!

Good karma+4 votes
werejew02
werejew02 - - 13 comments @ S.T.A.L.K.E.R.: Call of Chernobyl

Here is a link for a little demo of 1.5r7 warfare, should work with 1.5r6 as well: Mega.nz

But what version of 1.5r7 are most people working off of? I downloaded the 1.5r7 linked in the announcement but stcop doesn't seem to work with that.

Good karma+5 votes
werejew02
werejew02 - - 13 comments @ S.T.A.L.K.E.R.: Call of Chernobyl

Pretty sure everything is updated, need to run through in 1.5r7 a bit today but will likely be posting the addon tonight.

Good karma+2 votes
werejew02
werejew02 - - 13 comments @ S.T.A.L.K.E.R.: Call of Chernobyl

Oh wow, I forgot the coolest part actually and one of the biggest reasons I made the async work system:

I have also trained a simple deep neural network to take over the offline combat predictions (trained with TensorFlow.js and using a custom exporter I wrote to export the model to a lua script; something around 90% accurate at recreating the results of online combat), allowing warfare to move away from random and incredibly inaccurate offline combat to offline combat that actually replicates the same results you'd expect when NPCs were fighting each other near the player. The neural network currently works off of 19 features: squad 1 position (x,y,z) (y is kinda pointless I guess), squad 1 power, squad 1 count, squad 1 health, squad 2 position (x,y,z), squad 2 power, squad 2 count, squad 2 health, current level encoded in binary (6 features), and the distance between the squads. I am adding new feature inputs that also represent the squad type encoded in binary (neural networks handle binary just as well as one hot encoding from what I understand, at least based off of the results of a couple papers I've read).

Ultimately what this means is that you won't get frustrating results where a novice squad somehow gets lucky and kills an entire group of veteran squads. Instead, offline combat will progress a little more slowly and realistically with damages being around 0%-10% health more frequently with little bits of 100% damage thrown in representing an NPC getting the upper hand. I will be changing this neural network to use a convolutional neural network with an "image" constructed from the collected data ('pixelating' the level via spatial hash). The neural network offline combat actually didn't cause any performance decrease in the synchronous version of warfare, but just to be safe it will be using the async system as well of course.

Good karma+5 votes
werejew02
werejew02 - - 13 comments @ S.T.A.L.K.E.R.: Call of Chernobyl

Little update on this:
Finished the async system and it seems to offer significant performance boost for Warfare to the point where the game is as fast as if it weren't running, but also lets people configure performance if its still not good enough by setting how many worker functions warfare will execute per actor update. The system is similar to the Promise system in javascript though not exactly (and while moving to the actor update work queue system I found some pretty glaring bugs that were probably causing super weird issues and the obnoxious not enough ids issue; the not enough ids issue should be more difficult to encounter now, as I also have added in the ability for squads to be recycled rather than just collecting in huge quantities at a single point)

Warfare will now have all computationally intensive calculations scheduled with a work system in order to spread its calculations out over time rather than executing immediately when a smart/faction/level/squad updates. This mimics, in a loose sense, the Promise system from javascript. By default, I have it limited to 7 worker functions per actor update which seems to have boosted performance to the point where it would be if warfare weren't even installed while still offering reaction times that are equivalent with the synchronous version of warfare.

I will likely release this work system as a separate modders resource as this will benefit any other script heavy mods greatly as well, even if they use their own work queues. Using this you can take a complex function and split it into chunks of worker functions that carry out portions of the larger calculation over time; as an example, the new smart terrain update function for warfare pushes a work entry onto the queue with a worker function which calls process_manaul_capture only; the receiver function for this work entry will then push its own work entry onto the queue with its own work function calling process_squads. This leads to an asynchronous smart_terrain_on_update defined in smart_terrain_warfare.script which carries out the various calculations like targeting etc over time, meaning you won't get noticeable stuttering from warfare. Definitely wish I had done this sooner, the performance increase is very noticeable for me.

Anyways, working on merging these changes from my 1.5r6 install to 1.5r7 now, don't have much more left. Will release a new warfare mod for 1.5r7 under this new account this weekend.

Good karma+5 votes
werejew02
werejew02 - - 13 comments @ S.T.A.L.K.E.R.: Call of Chernobyl

Resurfacing, although lost access to my old account. Will be posting a new version of warfare with an async system, bug fixes, and other additions for the COC 1.5r7 addon in the next few days.

Good karma+6 votes
werejew02
werejew02 - - 13 comments @ Warfare 1.4.22 - v2 (updated 3/1/17)

There is no chance in hell I can respond to all the comments I missed, sorry to everyone who felt ignored; had lost steam on development and lost access to my account here but interest in coding AI for my new game I'm working on has rekindled my interest, and stalker gives me a great sandbox to prototype in.

Good karma+2 votes
werejew02
werejew02 - - 13 comments @ Warfare 1.4.22 - v2 (updated 3/1/17)

I certainly understand the frustration as faction war mods not working was what drove me to making this mod in the first place; the version here is quite old, I'll be releasing a new version in the next few days which is far more performant and stable. Shouldn't encounter any of these issues after its released.

Good karma+1 vote
werejew02
werejew02 - - 13 comments @ Warfare 1.4.22 - v2 (updated 3/1/17)

I got a full time job which ended up sucking up a lot of my time, though things are a bit different now due to working from home.

I will have a new version released in the next few days which is far more performant and far more stable, but it will be for CoC 1.5r7.

Good karma+1 vote
werejew02
werejew02 - - 13 comments @ Warfare 1.4.22 - v2 (updated 3/1/17)

This is an issue with initial spawning most likely, I will have a new version released in the next few days which will not encounter this issue (although its possible it was caused by another mod, I suspect something is breaking in this older version of warfare).

The new version of warfare is far more stable and performant so once released crashes shouldn't be an issue.

Good karma+1 vote
werejew02
werejew02 - - 13 comments @ Warfare 1.4.22 - v2 (updated 3/1/17)

It shouldn't interfere with it, but the version uploaded here is quite old so I'm not entirely sure it'll play nicely with things. I will be uploading a version updated for 1.5r7 in the next day or two most likely.

Good karma+1 vote
werejew02
werejew02 - - 13 comments @ Warfare 1.4.22 - v2 (updated 3/1/17)

Ok wasn't logged in...

Hey guys, lost access to my last account so posting with a new one.

I have a new version of warfare about to be released, I've added a new async system to alleviate any performance issues (all of warfares demanding computations will be spread out over time rather than immediately executing), as well as with a lot of bug fixes and behavioral changes that make the mod a bit more dynamic.

Had disappeared for a while because of work and getting a little demotivated, but I've decided to start working on warfare again as a precursor to a VR game I'm working on that will use similar AI.

Good karma+1 vote