|
APM
In RTS esports the term APM means actions per minute, the term is being used to measure the number of actions a player is executing while playing. The type of orders that are counted as “actions” are selecting, Issuing attack orders, issuing move orders, issuing build orders. Very good Starcraft players used to have 200 APM or more when Starcraft was a trendy game. When a player has a high APM his gameplay method is being labeled with the term “micromanagement”. High APM is not just a skill, it’s a goal. In a esport RTS you always have to be doing something. You have to either assemble a rush and try to keep your enemy busy defending himself making him unable to expand or you should be using your APM elsewhere like explore the map, hunt creeps, build expansions etc. In other words you should be always doing something.
Freedom of will
The thing at stake is to make AI micromanage units. If you have a base made of a command center (we’re talking Starcraft now), six SCV’s, three buildings for training units and six marines, That’s 16 entities total that may have their status changed every second. Every second you can leave your units doing what they did a second before or you can make them do something new. 16 decisions you’re taking every second because omission counts as a decision too. If you treat the marines like a group that’s a single decision instead of six, same thing could be applied to the SCV’s. Now you’re left with 6 decisions per time step.
Building the prediction tree
When I said decisions I meant not a single decision but rather deciding about a unit or building. When a unit of yours is chased by the enemy to get away you can send it in up to 8 different directions, that means you have 8 options to consider ( OLA Option Level A) for each of the 8 OLA the chaser unit has 8 ways to counter (OLAC) we have 64 OLAC total until now. To each OLAC 8 ways to counter by chased, that’s 64 * 8 OLB, etc.
The problem here is that the tree of possibilities grows fast on the horizontal. To solve this you may use possibilities in high resolution for lower level branches ( OLA, OLB 8 leaves per branch) and less options per branch as you go up the tree ( OLC, OLD 4 leaves per branch, 2 leaves for the remaining branches) When one branch from the prediction tree is confirmed the other branches of the same level and their leaves are removed. After that you have to increase the resolution at each level of the remaining tree.
That’s it for now.
|
|
|
|
|
There's usually only "one" direction to counter being chased: the opposite direction.
(That would be a type of "pattern": avoiding)
I hear of some "great RTS" ... except when their troops "flee" in the direction of the enemy.
"Before entering on an understanding, I have meditated for a long time, and have foreseen what might happen. It is not genius which reveals to me suddenly, secretly, what I have to say or to do in a circumstance unexpected by other people; it is reflection, it is meditation." - Napoleon I
|
|
|
|
|
>There’s usually only “one” direction to counter being chased
Depends where the opposite direction is leading to. It could lead to a pocket made from map features or buildings, or a combination of both. Or it could lead to another group of enemy units waiting. If you end up in a place like that the only way to escape is running towards the chaser. Another problem is that you want to be running in the clear Usually you’re moving a group of units not just one, that means your units need lots of space to pass all at once if the chase is taking place in a base. If you don’t have enough space a queue is created and the enemy will catch up with you.
|
|
|
|
|
For that matter, there are more than "8" directions.
The part included in "avoiding", includes "threat assessment"; which then yields the most obvious line of retreat.
"Dispersed" troops do not move in an orderly manner, and based on the type of dispersion, are "out of command" for a particular amount of time.
And if the second is too close, they then too get dispersed when the first line breaks.
The idea that "they'll have lots of space" is counter to the whole concept maneuvering and how to pass defiles.
"Before entering on an understanding, I have meditated for a long time, and have foreseen what might happen. It is not genius which reveals to me suddenly, secretly, what I have to say or to do in a circumstance unexpected by other people; it is reflection, it is meditation." - Napoleon I
|
|
|
|
|
If you take the movement on two or three consecutive tiles and make an average you may get a direction that is none of the 8. I don’t think the number of directions is a stake with great value here.
>The part included in avoiding includes
Figuring out the behavior of the someone being chased is not as difficult as figuring out the behavior of someone trying to chase something into a corner.
On the other hand the chased might need the mind of the chaser to understand the danger spots.
|
|
|
|
|
|
When games like this are "free for a week", it's never clear to me whether that means you have a week to get it for free (and then keep playing whenever), or it means it stops working after a week.
I've seen both, and they never really make the distinction all that clear...
|
|
|
|
|
Epic has an ongoing "free game of the week" program. The games they feature are free to download for that week. The game does not have any time bombs, and will keep working after the week is up. At least, that's been the case so far.
Keep Calm and Carry On
|
|
|
|
|
With Epic, "Free" means "It's on offer for one week, but if you buy it and pay us nothing during that week, it's yours to keep and download when you want to".
I got GTA V that way some years ago.
"I have no idea what I did, but I'm taking full credit for it." - ThisOldTony
"Common sense is so rare these days, it should be classified as a super power" - Random T-shirt
AntiTwitter: @DalekDave is now a follower!
|
|
|
|
|
With Epic it works like Steam with offers like this. The offer is good for a week, and if you take advantage, you get the license indefinitely and can even redownload it later. It's added to your "Epic Games Library" and available for download to you in perpetuity.
There's smoke in my iris
But I painted a sunny day on the insides of my eyelids
So I'm ready now (What you ready for?)
I'm ready for life in this city
And my wings have grown almost enough to lift me
|
|
|
|
|
|
Pausing to highlight all the guards along the way is a nice touch, and should be a great help for the noobs.
When you're making your get-away, dive under the water, so you can swim faster and reach the trigger point more quickly.
|
|
|
|
|
I wonder how much money they are spending on this? I guess the point is to get people on the Epic store, but in my case its not really working, since I generally just take the key and unlock the game in steam 
|
|
|
|
|
NV is 13 years old and didn't have the 5 re-releases of Skyrim. I don't think they paid much, heck I bought it for 10€ in 2011, GOTY edition.
The huge amount of mods keeps it alive, my last playthrough has been two months ago. As far as gameplay goes it is still an awesome game.
GCS/GE d--(d) s-/+ a C+++ U+++ P-- L+@ E-- W+++ N+ o+ K- w+++ O? M-- V? PS+ PE Y+ PGP t+ 5? X R+++ tv-- b+(+++) DI+++ D++ G e++ h--- r+++ y+++* Weapons extension: ma- k++ F+2 X
The shortest horror story: On Error Resume Next
|
|
|
|
|
Call the little point I see obscured. (7)
cry call
pt little point
ic I see
cryptic obscured
Looks like IAUM
Software rusts. Simon Stephenson, ca 1994. So does this signature. me, 2012
modified 5 days ago.
|
|
|
|
|
In a closed society where everybody's guilty, the only crime is getting caught. In a world of thieves, the only final sin is stupidity. - Hunter S Thompson - RIP
|
|
|
|
|
Good one - I had nonthing!
"I have no idea what I did, but I'm taking full credit for it." - ThisOldTony
"Common sense is so rare these days, it should be classified as a super power" - Random T-shirt
AntiTwitter: @DalekDave is now a follower!
|
|
|
|
|
Nice clue Peter
In a closed society where everybody's guilty, the only crime is getting caught. In a world of thieves, the only final sin is stupidity. - Hunter S Thompson - RIP
|
|
|
|
|
I don't see an appropriate forum for this. I'll move it if there's one.
I'm brand new to CI with Github, so forgive my ignorance.
I'm trying to upload a file to AWS S3. Here's the script:
name: Deploy
on:
workflow_call:
jobs:
deploy-development:
name: Deploy to S3 Releases directory (client_builds)
runs-on: ubuntu-latest
timeout-minutes: 20
environment:
name: Development
url:
steps:
- name: Configure AWS Credentials
uses: aws-actions/configure-aws-credentials@v1
with:
aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }}
aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
aws-region: eu-west-1
- name: Create Output Directory
run: mkdir output
- uses: actions/download-artifact@v3
with:
name: MyUpload
path: ${{ github.workspace }}/output/
- name: Rename output files
run: |
cd output
for f in ; do mv "$f" "${f%.}-${GITHUB_REF/refs/tags//}.${f##*.}"; done
- name: Upload installer to s3
run: aws s3 cp output
The very last line:
run: aws s3 cp output
fails with "Unknown options: s3://client-builds/releases/".
This script has not changed, so I'm not sure what's wrong.
Can someone shed some light?
In theory, theory and practice are the same. But in practice, they never are.”
If it's not broken, fix it until it is.
Everything makes sense in someone's mind.
|
|
|
|
|
Quick Answers[^] is probably the right place.
"I have no idea what I did, but I'm taking full credit for it." - ThisOldTony
"Common sense is so rare these days, it should be classified as a super power" - Random T-shirt
AntiTwitter: @DalekDave is now a follower!
|
|
|
|
|
|
I don't understand. Isn't that was my script is using??
In theory, theory and practice are the same. But in practice, they never are.”
If it's not broken, fix it until it is.
Everything makes sense in someone's mind.
|
|
|
|
|
This is part of an actual production powershell script that I use for recursively uploading documents from a local directory to S3 using AWS CLI in Powershell (of course). I refactored it to use your variable values.
$localdir = output
$bucketname = "s3://client-builds/releases/"
& aws s3 cp $localdir $bucketname --recursive --profile YourProfileNameHere
modified 5 days ago.
|
|
|
|
|
Thanks. That looks like it's just doing the same thing.
One thing I think I figured out is that this part
steps:
- name: Create Output Directory
run: mkdir output2
<ul>
<li>uses: actions/download-artifact@v3
with:
name: Line2-Win-Next
path: ${{ github.workspace }}/output2/
doesn't seem to be creating the output folder.
When I removed the wildcard asterick from the last line, the error message changed to
upload failed: output/ to s3:
Question: In this step
steps:
- name: Create Output Directory
run: mkdir output2
Running on linux. From this script, is it possible to see if that folder exists, and if so, its contents?
In theory, theory and practice are the same. But in practice, they never are.”
If it's not broken, fix it until it is.
Everything makes sense in someone's mind.
|
|
|
|
|