User Tools

Site Tools


Lucas Nunno

The submission for my project is under the 12/6/2014 heading. I've also uploaded it to my project subdirectory on the wiki for your convenience.

Graduate student in the Computer Science program. Check out my personal website at .

Researcher presentation

Project information

This section contains information on the MFM project that I am implementing. Check out my fork of the MFM repo here.


Please navigate to the Tribal Warfare project introduction page to see an overview of the project that I am preparing.

Crit 2

Crit 3

Presentation Powerpoint PDF

News & Updates


Final project video demo:


Please email me with any questions or requests at thanks, and have a great holiday break!



  • Mucho experimento

Still experimenting with the video quality. The script would not work unless I resized the window to an even dimension. When the window is maximized I get a resolution of 1855 x 1056, not the native 1920 x 1080 that my laptop screen is capable of…

The blue tribe crushes the red tribe in 3kAEPS.

The red tribe puts up a fight and seems to hold off blue indefinitely. (90 kAEPS).



Figure 1 v2:


First run at figure 1:








  • Presented Crit 2
    • Highlights: More complex behavior! Things are actually coming together!
    • Things to focus on: From Ackley, “focus on creating MFM files for experimentation”.
      • Need an easy way to run experiments and collect the results. Then the behavior can be changed to focus on interesting behavior. Right now its hard to tell where the *interesting* behavior is.





  • Tribal elements are a go!

Mine element screenshots:


  • Successfully created the “Tribe Slider” for the AbstractElement_Tribal class. This is a good step forward, but I'm still trying to figure out atomic parameters and how they are inherited. Having some difficulty since C++ is not my strongest language.


  • Created a Mine Element and a Abstract Tribal Element with a Tribe enum.
  • I have a couple questions on the MFM implementation design, what would be the best way to ask these questions? Through a GitHub issue? On the wiki?


Egg drop challenge: "fish fingers"

Version 2.0: fish fingers with a hole in the middle. 30 kAEPS.

Version 1.0: “fish fingers jumbo size”. Burned out after 9kAEPS. This is due to the lack of a breeding pod / shark graveyard (see the above hollowed out version).

Egg drop challenge contd: Attempts using the "Stallings' Sludge"
Single column of Emitters

Lasted 39kAEPS.

Two columns of Emitters

Walled garden using data

The “walled garden” approach overall was somewhat of a failure. The sharks and fish seemed to not have enough space to try and control a single tile and make it stable. I played with varying ratios of shark, fish, and data, but it would not last very long with just the space of a single tile. My hypothesis is that there was not enough “empty” space which is vital for reproduction of both species, particularly fish.


Shark month challenge #3: Egg drop challenge

This is documentation on the results of the control run using only a single tile. Highest result was ~25kAEPS (pictured).

Initial configuration:


My best MFMS files

Below are a couple of MFMS files that I had success with if you would like to try and improve upon the results.


This semester has been killing me so far, so I haven't been able to update this site as much as I've liked. I played around with the MFM for Shark week challenge #2 and I've had some moderate success with using a pure wall setup.

I was able to get on the order of 150 kAEPS using my shark flow maze setup. This could be improved upon, it is difficult to say which patterns work the best. When watching the simulation it was beneficial for a small amount of fish to escape a giant wave of sharks, but then it was risky for the sharks to survive if the tunnel system was too elaborate. There must be some medium ground that both sharks and fish can survive in.

My initial design for a single hatchery. My hypothesis is that this state would run indefinitely with the creation of a fish valve. Would be interesting to try again after we create that atom. This one failed miserably since the sharks would overrun the hatchery and then it would be equivalent of an open world.

If you look closely you can see DRegs! I tried using these inside the hatchery to act as an effective valve with their destroy probabilities set very high. The issue was that this relied on luck and the fish breeding rate being much higher than the shark breeding rate. It worked OK in practice, but it depended too much on random rolls.

This is my initial “flow” design that is later expanded on. I had the idea that the fish and sharks should be in a zen state where I didn't wish to control either the fish or the sharks, but that the sharks would be constantly eating fish like a snake eating its own tail. There may be a way to make an infinite loop, but I have not found it yet. The shark's movement may be too random to have this work, if they were intelligent they would only go where they saw fish, but we only have dumb sharks available at our disposal.

Maximizing the local interactions tended to have the most success from my challenge #1 observations, so I wanted to create a system that would split populations of sharks and fish into their own local habitats.

You can see that I did this with thick walls that had a small opening, this way when there was a surge of sharks or fish a small amount would be filtered into their own environment providing a small cache of resources that could be used when the population exhausted the other environment of food.


Project Ideas

I made a blog post here to document what kind of alife projects I'm interested in.


  • This page was born.
  • MFM installed on Ubuntu Ultrabook and VM on main PC.
  • Watched some Ackley vids and played with virtual sharks and fish.
people/lucas_nunno.txt · Last modified: 2014/12/07 16:25 by lnunno