PDA

View Full Version : Robogames 2018 Ideas and Suggestions



GhengisDhon
04-25-2017, 11:12 PM
7003

Post your ideas suggestions for Robogames 2018 here. No guarantees we will implement them, but we (R-Team) will try to take all ideas into consideration. If you supply good rationale reasoning behind the idea... better yet.

I'll start off with just of few of the items on R-Team's list:

1) Overhead cameras with displays in the corners of the arena for better audience viewing.

2) Return of some sort of mobility rule. Some of the matches were very static... either due to the less mobile mechs holing up in the corners or the mechs with the betters guns just setting themselves up as snipers. A better idea would be to come up with some sort of mechanism to encourage movement without having to have a "rule".

3) Target transponders with their own power sources. In a few of the matches, the mech lost power and the target system went down with them.

4) Rules clarifying what happens when a mech loses power... wasn't quite clear what to do to us judges. Is the match over? Should the mech be allowed to restart with some sort of penalty?

5) Better clarification in the rules on guns and gun velocity allowed so competitors have clear expectations of what's allowed. We want to allow competitors choice of design but want to limit damage to buildings, arena, and other competitors mechs.

6) A "reference" design mech. R-Team would like to make an open source mech design so the entry bar isn't so high for new competitors. It would include a gun design, turret, choice of controllers, body/leg layout, schematics, software, etc.. Competitors could use as is or modify as they like.

7) Explore options for jpieper/jwatte target filter card. The R-Team variant worked fine this year but had a lot of parts and was a pain to build a bunch of them (and it was a 4-layer board). The jpieper/jwatte board appears to be simpler and with the atmega processor on board we may be able to add additional functionality.

8) Earlier posting of the 2018 rules (by R-Team) so competitors have more time for comments.

tician
04-25-2017, 11:44 PM
Enforcing mobility: periodic long-range artillery/missile strikes against the location of each mech with ~20 seconds transit time and an effective blast radius of ~20cm (siren signaling the firing/launch, then 20 seconds to get at least 20cm away from the blast)? Damage would be limited to only the mech targeted at that location, so no effect on pursuers. Would require an IMU on each transponder or effective overhead position tracking to properly implement.

jwatte
04-26-2017, 11:21 AM
An IMU on the target/score boards was mentioned. It could potentially be used for other things, too (like detecting/enforcing 'disabled mech' status?)

Thoughts: I think the general movement rule could have been OK, but 10 seconds was maybe too short, and the enforcement was not consistent. Make the scoring board apply 1 HP every 15 seconds of "not enough movement" would perhaps be a good first start. Or combine the "healing" and "multiple plates" mechanisms, perhaps with a lowering of the overall hitpoints? This would lead to the winner having to pursue the target. Right now, a legitimate strategy is to score the first hit, then just stay hidden for 8 minutes until you win on points.

So, without IMU, and with new firmware:
- Each mech starts out with 15 HP total, with each panel capable of "taking" 10 HP damage
- Each 20 seconds of no damage taken anywhere, any panel with less than 10 HP heals one HP capability, and the total HP goes up by 1

The second rule means that, if I have taken hits on two panels, both panels increase their ability to "deliver" hits, but total HP only goes up by one, for each healing interval.

jwatte
04-26-2017, 11:24 AM
Another idea: Staging and scheduling on a fixed timer.

Each match has a time set out at the beginning (or, at least, the next 3-5 matches have a time set out.)
The match starts on that time. "Starting" means that the 10 minute staging time starts. (We may want to reduce this to 5?)
This allows audiences to know when the next match starts, and allows people to plan lunch, battery charging, bio breaks, frame re-builds, and so forth.
I'd be OK with a 5-8 minute staging time, and one 5 minute extension/time-out available during the competition. (I think 2 minutes is too little to effectively allow any kind of emergency fix.)
Presumably the scoring system server/laptop would know when the next match was, and could display a clock and such.
Rule is, if you don't have a mech on the starting square and are out of the arena at time Start+Staging, you forfeit. (Probably need a 15 second warning for people to clear the arena)

Benefits:
- audience knows when matches start
- no ambiguity about when the match deadline really is
- contestants can effectively plan smaller versus larger updates
- significant pressure to stay on schedule!

jwatte
04-26-2017, 11:38 AM
Another rule proposal that would put pressure on quick staging:

After staging time starts, and one competitor has staged their bot, left their arena, and declared "ready," the opponent loses one hitpoint per full minute before they, too, declare "ready."
Maybe we could have big red "ready" buttons next to the control stations or something :-)

Benefit:
- significant pressure to practice staging and stage quickly

GhengisDhon
04-26-2017, 09:25 PM
Another idea: Staging and scheduling on a fixed timer.

Agreed. We did a much better job of this in 2016 than this year. This year we let it slide. As we (hopefully) grow and get more mechs, this will be come much more crucial.

Maybe we can schedule "exhibition" slots where the mechs that get disqualified because they missed their start time can still have a match if they want too.

Expect the staging/scheduling to be on a time schedule next year.

h3x
04-27-2017, 09:58 PM
Here are the additional notes that I took:


Reach out to Rhiannon early to help with a smooth registration and setup
Introduce Pilots to the audience. The audience didn’t always know who was piloting the mechs.
Somehow show that the pilots are sitting behind the arena. Perhaps show the outline of the pilots (simple approach), or show their faces in an overlay of the FPV (complicated approach).
See what it takes to allow for a twitch stream of the matches.
Create a Slack channel to let people know when matches start
Bring handouts about the R-Team robotics club

Website
Github


Stickers (of the mechs) for kids
Parts lists to hand out (many people asked me for the parts list for Daisy, I emailed them most of it, a hand out would be helpful.)
T-Shirts (to hand out as swag) Maybe give one to Rhiannon
Assign tasks to team members in Tucson during the November Mech Brawl so that tasks can be complete and tested in Tucson
Use pics from pre-qual to start a video about the mechs and explain mech warfare at a high level. Revise the video as needed as people qualify.

GhengisDhon
04-28-2017, 03:15 PM
7011

Thought I would add a few items that I liked/worked well from 2017 Robogames...
1) Think its been mentioned elsewhere a few times but the bigger arena with roads
2) The new transponder scoring system worked nearly flawless this year. A thousand times improvement over 2016. Big thanks to artans and jwatte for the work they did on it.
3) The LEDs on the scoring plates. Visual feedback when your hitting is gratifying. I think its also good for audience viewing.
4) Most of R-Team upgraded their comm XBees to either the 60mW 2.4GHz XBee Pros or the 900MHz XBee Pros. Both seemed to work well in the noisy Robogames environment with few dropouts/lag.

giantflaw
08-27-2017, 07:12 PM
jwatte, you posted this suggestion a while back:

So, without IMU, and with new firmware:
- Each mech starts out with 15 HP total, with each panel capable of "taking" 10 HP damage
- Each 20 seconds of no damage taken anywhere, any panel with less than 10 HP heals one HP capability, and the total HP goes up by 1

The second rule means that, if I have taken hits on two panels, both panels increase their ability to "deliver" hits, but total HP only goes up by one, for each healing interval.

-----------------------------

We just started the process of editing the 2017 rule set into what will be the draft 2018 rule set. It is not clear to me what you are saying. Can you expound or explain in more words what you mean? Thanks.

jwatte
08-27-2017, 10:18 PM
Probably best to illustrate in code :-)

Here's a sketch for code that could run on the scoring board:



#define HEALING_TIME 20000
#define PANEL_HITPOINTS 10
#define TOTAL_HITPOINTS 15

bool panelWasHit[4]; // from interrupts
uint8_t panelHitpoints[4] = { PANEL_HITPOINTS, PANEL_HITPOINTS, PANEL_HITPOINTS, PANEL_HITPOINTS };
uint8_t totalHitpionts = TOTAL_HITPOINTS;
uint32_t lastHitTime; /* for limiting damage to 1/second */
uint32_t healingBaseTime; /* different from lastHitTime because it increments when healing */

/* each step through the loop */

uint32_t now = millis();

for (int i = 0; i < 4; ++i) {
if (panelWasHit[i]) {
panelWasHit[i] = false;
if (panelHitpoints[i] > 0 && (now - lastHitTime >= 1000)) {
panelHitpoints[i] -= 1;
totalHitpoints -= 1;
lastHitTime = now;
}
healingBaseTime = now;
}
}

if (now - healingBaseTime >= HEALING_TIME) { /* 20 seconds */
healingBaseTime = now;
for (int i = 0; i < 4; ++i) {
if (panelHitpoints[i] < PANEL_HITPOINTS) {
panelHitpoints[i] += 1;
}
}
/* crucially, total hitpoints only heal 1/20 secs, even if multiple plates heal */
if (totalHitpoints < TOTAL_HITPOINTS) {
totalHitpoints += 1;
}
}

if (totalHitpoints <= 0) {
dead();
}


Also, how to detect panel hits:



/* in setup */
attachInterrupt(PIN_PANEL1, panel1, CHANGE);
attachInterrupt(PIN_PANEL2, panel2, CHANGE);
attachInterrupt(PIN_PANEL3, panel3, CHANGE);
attachInterrupt(PIN_PANEL4, panel4, CHANGE);


/* interrupt functions */

void panel1() {
panelWasHit[0] = true;
}
void panel2() {
panelWasHit[1] = true;
}
void panel3() {
panelWasHit[2] = true;
}
void panel4() {
panelWasHit[3] = true;
}


Note that this is all asynchronous and state machine based, so the loop just keeps running, and rate limiting happens by measuring against time stamps, rather than using delay().

Separately, an intentional feature of this logic is that no more damage is taken once a particular plate has been reduced to 0, BUT keep hitting that plate will prevent the 'mech from healing.

jwatte
08-27-2017, 10:31 PM
Another way to think about it: Each panel regain the ability to subtract a hitpoint every 20 seconds, but the 'mech only regains one hitpoints' worth of health every 20 seconds.

giantflaw
08-28-2017, 07:47 PM
Yes, I like that. That does promote mobility.

Thalvus
09-26-2017, 09:42 PM
So Just a thought.
Because of how slow light mechs are, would some sort of shield be possible at all? (given that it won't cover the entirety of a target plate)

jwatte
09-27-2017, 11:06 PM
Giving slow light mechs less hitpoints doesn't seem fair, does it?
If there are plenty of light mechs, perhaps we will need two divisions?
Depends on how many show up.
I've just started a new job, which is taking a lot of time, so Onyx isn't gaining the gyro-stabilized turret I've been planning for ...

Thalvus
10-02-2017, 05:10 PM
Instead of basing light mech status on weight, wouldn't it make more sense to base it on speed? Light mechs in games are designed to move faster than their heavier counterparts, just a thought.

giantflaw
10-03-2017, 03:04 PM
Good input. We to are pondering changes for the light mechs to make them more practical. Also looking at changes to encourage more Bipeds. Currently there is only one light weight mech that we know of. There is a 2nd one that is under construction. The first draft of the 2018 rules are being reviewed in preparation for putting on the forums for additional input. The plan is to have it on the forums this year. There are multiple new items to make things better and fix shortcomings.

There are some changes for the light mech as well as introduction of the dreadnaught class mech. There are changes to starting rules that came from the forums as well as changes to the target system and software to encourage more mobility. Also some other new stuff.

Thalvus
10-03-2017, 03:39 PM
So, from what I understand, biped robots only require two full sized target plates. Hypothetically speaking, if someone were to create a light-biped mech, would they incorporate two half sized plates instead of the full sized plates, or would they just stick to the normal light mech rules. This is something that may need to be considered for future games.

giantflaw
11-18-2017, 11:19 AM
So Just a thought.
Because of how slow light mechs are, would some sort of shield be possible at all? (given that it won't cover the entirety of a target plate)

Perhaps the target plates could be smaller than the 1/2 size. This would be like shielding some of the plates. We will consider this. The current 2018 draft rules just have the 1/2 size plate currently.

giantflaw
11-18-2017, 11:21 AM
So, from what I understand, biped robots only require two full sized target plates. Hypothetically speaking, if someone were to create a light-biped mech, would they incorporate two half sized plates instead of the full sized plates, or would they just stick to the normal light mech rules. This is something that may need to be considered for future games.

The 2018 draft rules allow a light biped. All Light Mechs use the smaller target plates. The Light Biped would also have consistent HP for the combination of Light Mech and Biped.

giantflaw
11-18-2017, 11:35 AM
Instead of basing light mech status on weight, wouldn't it make more sense to base it on speed? Light mechs in games are designed to move faster than their heavier counterparts, just a thought.

Yes, this is a valid thought. The hope is the Light Mechs will get faster so we will see. They are more maneuverable and cheaper to build. The 2018 rule set mentions the option of being able to go inside buildings for cover and firing through windows. The draft size of the building opening could be adjusted down smaller to favor Light Mechs only and give them an advantage. The alleys are narrower than streets which the Light Mechs can use better than the other Mechs. Another option we have heard is lowering the HP on the Light Mechs and allow 2 Light Mechs to fight at once against either a Medium/Heavy Mech or another 2 Light Mech team. Currently there is only 1 Light Mech known of and another 2 that are half built. If 2 Light Mech pilots had working robots and advocated the teaming option then we could try it out and come up with an equitable HP count. Any thoughts?

giantflaw
11-18-2017, 11:47 AM
The buildings for the 2018 arena are undergoing a renovation and will be much improved over 2017 buildings. There will also be other details in the arena to improve audience appeal such as larger screens, more cars and plastic people milling around. We are also installing half a dozen video cameras high and low in the arena to record the combats from different views. This will allow editing and posting nice compilations of each combat. For 2017 we did not do a very good job in this area so we are trying to correct this. The 2017 target scoring system worked so well that no one was in the arena during the matches. When people tried recording the match from outside the arena it was found that the cameras kept focusing in and out on the screen material.

jwatte
11-18-2017, 07:55 PM
If we have windows in the builings, will there be a standard bottom/top height of them?
Kind of important to know when designing the gun mount (height above ground)

h3x
11-19-2017, 11:48 AM
I am working on my light mech Daisy. GhengisDhon printed some better legs for me a while back and I need to replace the old cracked ones with the new ones. This time I will practice more with target plates on. Need a second battery and a better weapon. Not sure if Daisy will be faster or slower with these mods. I learned a lot last year.

giantflaw
11-20-2017, 09:06 AM
If we have windows in the builings, will there be a standard bottom/top height of them?
Kind of important to know when designing the gun mount (height above ground)


Good point. In the final 2018 rule set we will put in the bottom/top heights. Obviously this is a constraint no robot was initially designed to be compatible with. Some will be able to use it while others not so much. Some of the new buildings are made but most still need to be made. There was some talk of having a few battle damaged buildings. Maybe instead of window openings there could be blown in brick wall sections. That would open up the usability for more existing robots.

GhengisDhon
02-05-2018, 08:57 PM
7159

We've been busy upgrading the arena with new buildings. The 2018 arena will have a new look. Also adding 5 new arena cameras to display/record video of the matches.

7160