Does anyone still do this? [Core Wars]

A place to discuss the science of computers and programs, from algorithms to computability.

Formal proofs preferred.

Moderators: phlip, Moderators General, Prelates

User avatar
Mach1ne
Posts: 35
Joined: Tue Feb 24, 2009 5:20 pm UTC
Location: This exact location but 3 minutes from now

Does anyone still do this? [Core Wars]

Postby Mach1ne » Mon Mar 02, 2009 4:25 am UTC

I was looking at a book the other day and I read a bit about Core Wars and I read a bit more about, ended up downloading a Core War system and looked into an online beginner. I thought it would be fun to polish my skills on assembly language (they are very basic at the moment). But anyways I was wondering if anyone still competed or played Core Wars, it sounds pretty interesting.

Shriike
Posts: 127
Joined: Mon Jan 26, 2009 3:27 am UTC
Location: Ohio

Re: Does anyone still do this?

Postby Shriike » Mon Mar 02, 2009 5:01 am UTC

I had never heard of this, but this seems awesome! Next week is my spring break, I'm going to try to read up on this over break.
Image

User avatar
Mach1ne
Posts: 35
Joined: Tue Feb 24, 2009 5:20 pm UTC
Location: This exact location but 3 minutes from now

Re: Does anyone still do this?

Postby Mach1ne » Mon Mar 02, 2009 2:39 pm UTC

Yeah it was new to me to. The whole fighting through programming sounds interesting.

User avatar
quintopia
Posts: 2906
Joined: Fri Nov 17, 2006 2:53 am UTC
Location: atlanta, ga

Re: Does anyone still do this?

Postby quintopia » Tue Mar 03, 2009 6:04 pm UTC

I never bothered to write one of my own, because it seemed as if all the best strategies had already been created.

User avatar
Mach1ne
Posts: 35
Joined: Tue Feb 24, 2009 5:20 pm UTC
Location: This exact location but 3 minutes from now

Re: Does anyone still do this?

Postby Mach1ne » Tue Mar 03, 2009 10:20 pm UTC

Hmm well i wonder if that has to do with that fact that theres only like 16 commands or maybe there are more waiting to be found?

User avatar
bratwurst
Posts: 73
Joined: Fri Dec 19, 2008 11:37 pm UTC

Re: Does anyone still do this?

Postby bratwurst » Tue Mar 03, 2009 10:45 pm UTC

Is it turing-complete?

User avatar
quintopia
Posts: 2906
Joined: Fri Nov 17, 2006 2:53 am UTC
Location: atlanta, ga

Re: Does anyone still do this?

Postby quintopia » Wed Mar 04, 2009 3:43 am UTC

bratwurst wrote:Is it turing-complete?


Very much so.

Random832
Posts: 2525
Joined: Wed Oct 10, 2007 4:38 pm UTC

Re: Does anyone still do this? [Core Wars]

Postby Random832 » Fri Mar 06, 2009 6:14 pm UTC

If control of program A flows into code that was written by program B, does the process still belong to program A? If so, what would be interesting would be to introduce a "takeover" instruction that either takes control, or (for game balance) swaps control of two programs.

User avatar
quintopia
Posts: 2906
Joined: Fri Nov 17, 2006 2:53 am UTC
Location: atlanta, ga

Re: Does anyone still do this? [Core Wars]

Postby quintopia » Fri Mar 06, 2009 7:21 pm UTC

the word belongs to the last person who wrote it, but any program's instruction pointer can execute any word. i think your "takeover" function is achieved by other means in the game.

Shriike
Posts: 127
Joined: Mon Jan 26, 2009 3:27 am UTC
Location: Ohio

Re: Does anyone still do this? [Core Wars]

Postby Shriike » Sat Mar 07, 2009 5:33 am UTC

If you are knowingly giving the opponent an instruction, just give them the data instruction, that kills them.
Image

User avatar
Mach1ne
Posts: 35
Joined: Tue Feb 24, 2009 5:20 pm UTC
Location: This exact location but 3 minutes from now

Re: Does anyone still do this? [Core Wars]

Postby Mach1ne » Sat Mar 07, 2009 6:15 am UTC

Shriike wrote:If you are knowingly giving the opponent an instruction, just give them the data instruction, that kills them.


Yep, thats "bombing" them technically

User avatar
quintopia
Posts: 2906
Joined: Fri Nov 17, 2006 2:53 am UTC
Location: atlanta, ga

Re: Does anyone still do this? [Core Wars]

Postby quintopia » Sat Mar 07, 2009 9:30 am UTC

Actually, more clever things have been done. for instance, "vampire pits," codes that include an infinite loop that is not executed by the code. The vampire pit code then bombs memory with a jump to that infinite loop. Due to the way cpu time is allotted, this can be far more effective than just terminating a process. For instance, imagine the opponent is a super-paper (who remembers what they actually call these), where it starts creating a copy of itself, and then immediately forks to the new copy even before it's finished copying. These replicate incredibly quickly, but each new fork uses some of the program's allotted CPU time. Now imagine if most of these forked processes were now trapped in their opponent's "vampire pit" infinite loop. . .the few copies that are still successfully running will not be able to multiply nearly as quickly as they once did, since most of their processing time is being eaten up by a useless infinite loop.

Another possibility is that a program could create a copy of itself and then start bombing with jumps to that copy (bombing everywhere except in its own space and any space its copies should be occupying by now). Eventually, of course, one of its copies will bomb it, but there will always be at least two copies not being bombed. Moreover, the opponent is bound to get forked into executing one of the copies, and therefore participate in the bombing of its own codespace! If enough of the opponent's processes get diverted into the bombing of itself, then you stand a chance for your paper to eventually take over the entire space and win.

But it's just an idea. . . .


Return to “Computer Science”

Who is online

Users browsing this forum: No registered users and 6 guests