http://robowiki.net/w/index.php?title=Thread:Talk:RoboResearch/GitHub/reply_(4)&feed=atom&action=historyThread:Talk:RoboResearch/GitHub/reply (4) - Revision history2024-03-28T21:59:41ZRevision history for this page on the wikiMediaWiki 1.34.1http://robowiki.net/w/index.php?title=Thread:Talk:RoboResearch/GitHub/reply_(4)&diff=32608&oldid=prevVoidious: note about simpletourney2013-12-05T00:01:47Z<p>note about simpletourney</p>
<table class="diff diff-contentalign-left" data-mw="interface">
<col class="diff-marker" />
<col class="diff-content" />
<col class="diff-marker" />
<col class="diff-content" />
<tr class="diff-title" lang="en">
<td colspan="2" style="background-color: #fff; color: #222; text-align: center;">← Older revision</td>
<td colspan="2" style="background-color: #fff; color: #222; text-align: center;">Revision as of 00:01, 5 December 2013</td>
</tr><tr><td colspan="2" class="diff-lineno" id="mw-diff-left-l7" >Line 7:</td>
<td colspan="2" class="diff-lineno">Line 7:</td></tr>
<tr><td class='diff-marker'> </td><td style="background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>I'd like to also provide the flip-side, so you could easily write a stand-alone program that uses BerryBots. That's actually not far off from the binary in use for the web UI. The script hit by the web UI is a stand-alone program that runs a BerryBots match from the command line and processes the results.</div></td><td class='diff-marker'> </td><td style="background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>I'd like to also provide the flip-side, so you could easily write a stand-alone program that uses BerryBots. That's actually not far off from the binary in use for the web UI. The script hit by the web UI is a stand-alone program that runs a BerryBots match from the command line and processes the results.</div></td></tr>
<tr><td class='diff-marker'> </td><td style="background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"></td><td class='diff-marker'> </td><td style="background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"></td></tr>
<tr><td class='diff-marker'>−</td><td style="color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>Lastly, it might also be cool to write a Game Runner-ish API for Robocode, maybe on top of RoboRunner. Something like running a [[Twin Duel]] tournament couldn't really be specified as a challenge file, but it would benefit from the multi-threading and some of the score details stuff that RoboRunner already has.</div></td><td class='diff-marker'>+</td><td style="color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>Lastly, it might also be cool to write a Game Runner-ish API for Robocode, maybe on top of RoboRunner. Something like running a [[Twin Duel]] tournament couldn't really be specified as a challenge file, but it would benefit from the multi-threading and some of the score details stuff that RoboRunner already has<ins class="diffchange diffchange-inline">. Note that simpletourney offers the same tourney functionality as [[Twin Duel/Tourney Runner]], but it's less code, everything's configurable at run-time via a GUI, and matches run multi-threaded</ins>.</div></td></tr>
</table>Voidioushttp://robowiki.net/w/index.php?title=Thread:Talk:RoboResearch/GitHub/reply_(4)&diff=32607&oldid=prevVoidious: Reply to GitHub2013-12-04T23:14:50Z<p>Reply to <a href="/wiki/Thread:Talk:RoboResearch/GitHub/reply_(3)" title="Thread:Talk:RoboResearch/GitHub/reply (3)">GitHub</a></p>
<p><b>New page</b></p><div>Sorta off-topic, but some food for thought...<br />
<br />
I took what I think is a somewhat novel approach to the GUI for the automation API in BerryBots. As background, you're writing a program that is run by BerryBots, like a bot - as opposed to Robocode, where you're writing a stand-alone program that embeds the Robocode engine. A big reason for this is so you can write automation code in the same language as the bots. But it also lets me do some of the heavy-lifting needed by most automation code, like multi-threading and user inputs.<br />
<br />
So the Game Runner API provides the GUI/input functionality. You get a [http://berrybots.com/apidoc/modules/RunnerForm.html RunnerForm] object when your Game Runner executes. You set what inputs you want, you decide when to show the form to the user, and after that you can fetch the values. The engine dynamically creates the appropriate GUI, shows it to the user, blocks until they hit OK/Cancel, and then the Game Runner resumes execution. You can see an example in [https://github.com/Voidious/BerryBots/blob/master/runners/simpletourney.lua simpletourney], which lets you run a tournament. I could also present a fully text-driven form, like if/when I write an [http://www.gnu.org/software/ncurses/ ncurses] UI.<br />
<br />
I'd like to also provide the flip-side, so you could easily write a stand-alone program that uses BerryBots. That's actually not far off from the binary in use for the web UI. The script hit by the web UI is a stand-alone program that runs a BerryBots match from the command line and processes the results.<br />
<br />
Lastly, it might also be cool to write a Game Runner-ish API for Robocode, maybe on top of RoboRunner. Something like running a [[Twin Duel]] tournament couldn't really be specified as a challenge file, but it would benefit from the multi-threading and some of the score details stuff that RoboRunner already has.</div>Voidious