anthes@geocub.UUCP (Franklin Anthes) (06/22/87)
Robot war Tournament There were about 10 people interested in holding a robot war tournament, so the "great event" will take place. I'm posting the rules, in case anybody missed this the first time around. ------------------------------------------------------------------------------- ROBOT WAR TOURNAMENT RULES -------------------------- All robots must be sent by the 10th of July in source code format. On the 15th of July, I will down load ( with KERMIT ) the robots who have arrived. All participants must be willing to allow the distribution of the source code to the other participants in the tournament. If there are any errors in the robots I receive, I can't guarantee that they will be corrected, so please be very careful if you are typing the source code in manually ( more on this later ). All robots I receive will automatically be considered as participants in the duel and melee categories unless they are explicitly signed up for the doubles tournament. The composition of the teams who are to participate in the doubles tournament should be explicitly stated. If you want your doubles robots to enter the duel and melee categories please say so. After each round of the tournament I'll send out the results to all the participants. At the end of the tournament I'll send out the final results and the source code for the robots to the participants. ------------------------------------------------------------------------------- The duel tournament ------------------- The idea is to have a round robin tournament between a group of robots. In each group there will be 6 robots, of which 3 will be qualified for the next round of the tournament. The number of robots in the tournament will be a multiple of 6, I will add robots I have in reserve to ensure this. The first round groups will be made up by distributing the robots from each participant randomly into a group where there isn't already a robot from the same participant (as long as possible). The groups for the second round on will be made up of two first-place finishers, two second place finishers, and two third place finishers (from different groups as far as possible). Within a group each robot will play a match against the 5 other robots in the group. A match will consist of 5 battles (10 from the semi-finals on). The winner of a battle is awarded 2 points, the loser 0 points. If there is a tie both robots are awarded 1 point. Among the 6 robots in the group the 3 who have the most points will be qualified for the next round. If there is a tie, between 2 or more robots, for 3rd place then a round robin will take place among the tied robots to determine which robots qualify for the next round. (I don't think this will happen, but one never knows...). The robots who are in the final group will be ranked according to their score in the final. The others will be ranked by how far they get in the tournament ( first round, second round, quarter-finals, etc. ) ------------------------------------------------------------------------------- The melee tournament -------------------- The number of robots in the melee tournament will be a multiple of five. As before I will add reserve robots to ensure this condition. The initial groups will be made up in the same manner as for the duel tournament. From the second round on the same 'seeding' principle will be used as in the duel tournament. Among the five robots in a group, the top 3 are sure to be qualified for the next round of the tournament. Wild-cards will be given to the robots who finished fourth with the best score, so that the number of robots qualified for the next round will be a multiple of five. For example if 55 robots participate (11 groups of five) then 33 will be automatically qualified for the second round and 2 wild-cards will be given to the robots who finished fourth with the best scores. So in the second round there would be 7 groups left. Up until the semi-finals 10 battles will take place in each group. In the semi-finals only the top 2 robots in each semi-final are qualified for the final. The robots with the 5th through 9th scores form a group which will battle it out for the last place left in the finals. The robot with the worst score of the semi-finals is eliminated. From the semi-finals on 20 battles will take place in each group. ( maybe more if I have the time ) The ranking will be done in the same manner as the duel tournament. ------------------------------------------------------------------------------- The doubles tournament ---------------------- Doubles consists of 2 teams of 2 robots, the team which has the last surviving robot wins the battle. In other respects the doubles tournament will be identical to the duel tournament. The only exception being the length of each match, which will be 3 battles. ------------------------------------------------------------------------------- The 'all-around' ranking ------------------------ This ranking will take into account the results of the duel and melee tournaments. The robots will be ranked by the sum of their rankings in the duel and melee tournaments. For example the robot who finished 3rd in duel and 8th in melee (3+8) would be ranked before the robot who finished 2nd in duel and 10th in melee (2+10). Robots having lost in the semi-finals in the duel tournament, will be considered as having finished 7th in that tournament. Robots having lost in the quarter-finals will be considered as having finished 8th etc. The same principle goes for the melee except that semi-finalists will be considered as having finished 6th, quarter-finalists 7th etc. ------------------------------------------------------------------------------- Recommendation: For those of you who are going to type in the robots by hand, I _strongly_ recommend that you type in this simple basic program, which will give you a checksum for each line of your program. Once you've typed in the program on your host run the C (or other equivalent) program and compare the checksums. If the checksums agree on all of the lines then you can be pretty sure that no typos. slipped in. 10 INPUT "ROBOTWAR FILENAME?";A$ 20 F$ = "S:" + A$ 30 FOR I = 768 TO 768 + 24 40 READ A 50 POKE I,A 60 NEXT 70 DATA 169,16,133,61,169,0,168,133,60,169,0,145,60,200,208,251,230,61 ,169,48,197,61,208,241,96 80 CALL 768: REM ROUTINE TO CLEAR MEMORY 90 PRINT CHR$ (4)"BLOAD ";F$;",A$1000" 100 I = 4096:CS = 0:NL = 0:A = PEEK (I):NC = 1 105 PRINT "LINE CHECKSUM" 107 REM CALCULATE SIMPLE CHECKSUM, IGNORING SPACES AND END OF LINE 108 REM CHARACTERS 110 IF A = 0 THEN GOTO 170 120 IF A = 221 THEN PRINT NL,CS:NL = NL + 1:CS = 0:NC = 1: GOTO 140 130 IF A < > 160 THEN CS = CS + (A - 128) * NC:NC = NC + 1 140 I = I + 1 150 A = PEEK (I) 160 GOTO 110 170 PRINT NL,CS ------------------------------------------------------------------------------- #include <stdio.h> main() { unsigned long cs,nl,nc; int c; cs=nl=0; nc=1; printf("line checksum\n"); while( (c=getchar()) != EOF ) { switch(c) { case '\n': printf("%d %d\n",nl,cs); nl++; cs=0; nc=1; break; case ' ': case '\t': break; default: cs+=(c&0x7f)*nc++; break; } } printf("%d %d\n",nl,cs); } Newsgroups: comp.sys.apple -- Frank Anthes-Harper ( alias the Robotwar Phreak ) Usenet: ....!ucbvax!decvax!seismo!mcvax!inria!geocub!anthes Mail : Res.Formanoir T.9 Apt.1017 33600 Pessac France
stevem@hpvcla.HP.COM (Steve Miller) (06/26/87)
A long time ago I bought Robot War when I had an Apple //. I recently upgraded to an Apple IIe and am now having trouble using Robot War. I can't exactly remember but I think the problem was with typing in the file name of the robot you wanted to assemble or load and it would now print the characters out in inverse video (Different then on the Apple II) and it would then never recognize the filename. It makes the program useless. Has anyone else experienced this, and have found the solution? Does Muse still exist and have a number I can call? -Steven Miller
langbein@topaz.rutgers.edu.UUCP (06/29/87)
Muse, unfortunately, has ceased to exist about 2 years ago. I am still looking for 2 programs for the apple by them (Form letter Module & The Adress Book). As for the problem, newer 2e's have a different inverse video mode. Not much can be done. That's why I still have a Vintage 2+. John Langbein The Apple Man
lwv@n8emr.UUCP (Larry Virden) (07/01/87)
I am curious about the case where a company or companies go out of business. I assume (perhaps naievely) - boy is my spelling bad! - that the rights to the software revert to the author. Anyone know if that is true? If not, to whom? If so, anyone know the author of software like Robot Wars or Visidex (which I feel is a very nice quick index db which needs updating to ProDos)... I suppose that there are hundreds of other such software which would be GREAT to get the source into the public domain or at least published... -- Larry W. Virden 75046,606 (CIS) 674 Falls Place, Reynoldsburg, OH 43068 (614) 864-8817 cbosgd!n8emr!lwv HAM/SWL BBS (HBBS) 614-457-4227.. 300/1200 bps
stevem@hpvcla.HP.COM (Steve Miller) (07/06/87)
I am writing a version of Robot War for the Mac. The language will be identical to the Apple ][ version but I am open to any ideas to enhancements. One area that I will be improving will be the speed of execution of instructions. One problem I always encountered is that the number of instructions per second executed on the Apple ][ was so low that it limited the variety of algorithms and strategies that could be effectively used. In other words, robots had to be more like Rambo, mostly shooting but very little thinking (just simple cleaver strategies). I have completed the editor (multi-window, multi-file), compiler (200 lines per second!), file system, and CPU interpreter so far. Now comes the hard part, the battlefield simulator and graphics. Steven Miller