WAaaS is an API to zemke/docker-wa returning data from replay files in JSON format.
Screen shot from https://cwtsite.com/games/1602
Worms Armageddon as a Service
Home Page: https://waaas.zemke.io
WAaaS is an API to zemke/docker-wa returning data from replay files in JSON format.
Screen shot from https://cwtsite.com/games/1602
Due to limited machine resource it’s probably dangerous to have more than one container instance running to process replay files.
{
"timestamp": "00:04:16.02",
"user": "Siwy)",
"weapons": [
"Select Worm",
"Mine"
],
"damages": [
{
"damage": 99,
"kills": 1,
"victim": "NNN`Rafka"
}
],
"timeUsedSeconds": 26.74,
"retreatSeconds": 5.0,
"lossOfControl": false
},
Remove private messages from logs before processing.
This can be either done with my own processor waaas.py
or through the wa.exe
command-line option which is /sanitize
I think. The former is probably faster.
Currently reliant on there being a winner. What does it look like when the game is drawn?
For some reason this replay fails processing. This is not an error of processing the log, but creating the log. So the issue is in the Docker container.
2021-02-10 11:55:47,077 - ERROR - list index out of range
Traceback (most recent call last):
File "/Users/zemke/Code/waaas/endpoint.py", line 64, in POST
logjson = waaas.perform(log_file)
File "/Users/zemke/Code/waaas/waaas.py", line 102, in perform
handle_action(l)
File "/Users/zemke/Code/waaas/waaas.py", line 79, in handle_action
res["turns"][-1:][0]["damages"] = []
Should be reproducable with the following attached replay file.
Support color maps. Should be as easy as /getmap
. Do I know in advance that it’s not a monochrome map? If not I need to to /getmap
and see if it’s a PNG or not.
Wouldn’t this be a good fit for an AWS Lambda or similar service where the application only boots up when used? Also: Multiple instance could spin up to allow for parallelization.
Currently reliant on there being a winner. What does it look like when the game is drawn?
i.e. “herd of two”
{
"timestamp": "00:15:57.48",
"user": "Siwy)",
"weapons": [
"Ninja Rope",
"Mad Cow (herd of 2)"
],
"damages": [
{
"damage": 115,
"kills": 1,
"victim": "NNN`Rafka"
}
],
"timeUsedSeconds": 29.62,
"retreatSeconds": 3.0,
"lossOfControl": false
}
or “3 sec, min bounce”
{
"timestamp": "00:11:11.08",
"user": "Siwy)",
"weapons": [
"Select Worm",
"Ninja Rope",
"Grenade (3 sec, min bounce)"
],
"damages": [
{
"damage": 94,
"kills": 1,
"victim": "NNN`Rafka"
}
],
"timeUsedSeconds": 26.82,
"retreatSeconds": 5.0,
"lossOfControl": false
}
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.