RABBIT is a plug-in for McNeel’s Grasshopper that simulates biological and physical processes.

Rabbit provides an easy way to explore natural phenomena such as pattern formation, self-organization and emergence. The add-on gives architects and designers the opportunity to integrate these models of organization in their own designs.

Learn Rabbit

Cellular Automata

Cellular automata are simple computer programs that can generate complex behavior. Cellular Automata have been widely used to model city growth and urban sprawl.

RABBIT provides an easy way to run multiple types of Cellular Automata straight into Grasshopper & Rhino.

Learn More
Cellular Automata

Branching Structure using Rabbit by Morphocode


L-systems have been extensively used to model natural phenomena and plant growth. They find application in generative urban models, in generative art and music.

RABBIT can create 2-D and 3-D L-systems using the special Turtle & L-System components.

Learn More

Rabbit 0.3 - Now Available

What’s new in Rabbit 0.3.2?

  • Compatibility with Grasshopper 0.9.XXXX
  • New icon set
  • Cellular Automata: Support for 1D Cellular Automata
  • Cellular Automata: Support for Excitable Media Cellular Automata
  • L-Systems: Support for length scale
  • L-Systems: Support for angle scale
  • L-Systems: Support for Thickness of the skeleton
  • L-Systems: Support for custom tube profiles
  • L-Systems: Support for inserting geometry along the way of the turtle

119 thoughts on “RABBIT: Tools for Grasshopper by MORPHOCODE

  1. sdg says:

    Hi MC,
    Great work on this. However, the plugin will not load into GH version 06.019 (and crashes the assemblies in the process, so only half the functions load). I see you wrote the plugin for v06.043. I imagine the problem is with the version update. Just thought I’d send along the issue!

  2. Isak says:


    Great idea to create and produce the plugin. Will you update the ‘Rabbit’ to work with other GH versions? And when? 🙂


  3. morphocode says:


    At the moment Rabbit works with the latest build of GH. We do not plan to make it work with an Older release except for a good reason to do that…

    If there is an interest from the community we plan to extend it in the future and integrate it with the future releases of GH.

    Hope this answers the question 🙂


  4. Isak says:


    First time I installed the Rabbit, within the newest build of GH, most icons where gone inside GH! However, reinstalling GH (same build though) fixed the problem.

    Looking forward to using it! 🙂


  5. morphocode says:


    Hi there,

    Rabbit is still under development but it is not our top priority at the moment. Rabbit 0.2 is compatible with the older GH 0.6.XX series.


  6. Pingback: Of the year « Digital Morphogenesis | Evolving architecture through computation

  7. howking says:

    Rabbit .2 can not work @ Rh4sr8 gh.8.004
    when grasshopper loading , it’s noting:

    Assembly Resolver initialized
    An exception occured during GHA assembly loading:
    Path: E:\ArchCAD\Rhinoceros.4\Plug-ins\Grasshopper\Components\Rabbit.gha
    Exception System.TypeLoadException:
    Message: can’t from program“Grasshopper, Version=, Culture=neutral, PublicKeyToken=null”loading type“Grasshopper.Kernel.Types.GH_Goo”。

  8. hormigatomica says:

    sounds like a nice plug in, though it does not seem to run with GH 8.0004
    any way through it or an update coming soon?


  9. conorblack22 says:


    Its impossible to download the earlier versions of grasshopper, so is there a timescale for when rabbit will be updated for GH 8.0004?

    Thank you!

  10. morphocode says:

    Hi there,

    @howking Rabbit 0.2 is an obsolete version…it do not work with GH 0.8.XX

    @hormigatomica, @conorblack22
    Thanks for your interest….we have no exact timescale for the new version…it depends on the community support.


  11. Tim.Marjot says:


    I have Rhino 4.0 SR8 with Grasshopper 0.8.004. I have followed the installation instructions above for Rabbit, but it does not appear on my Grasshopper interface.

    Any ideas as to why not?

  12. lafricans says:

    cellullar automaton and L system are one my favorites algorithm !!! greats greats greats 😉 hope you will produce soon a compatible version for new GH users ..

  13. ramya2810 says:

    Tim.Marjot says:

    Ok, Does anyone know where I can download Grasshopper 0.6.0043?

    —————-well i have it….i can upload grasshopper 060059 on request!

  14. Lu]LG says:

    Hi, I downloded rabbit when it was already too late and i had GH.0.7 running. Does anyone know if u can get both the newst 0.8.xx version and the 0.6.xx running simultaniously?


  15. lichtwerk360 says:

    Regarding running more versions of GH simultaneously you should best save the whole folder of th ecurrent GH version somwhere on your computer, then you install th eold version and when you want to switch back you just copy back in the new version from th ebackup folder.

  16. Pingback: GH addons | PGD:EGP // Generativo

  17. kautzy77 says:

    i periodically have tried to install rabbit over the past several months and it is never up to date with grasshopper. still have never managed to open it. oh well.

  18. rickydoshi says:

    I downloaded grasshopper version 0.8.007, but rabbit doesn’t work with it? How do I make it work in the same version?

  19. Pingback: New Grasshopper « liveparameters

  20. zl says:

    There´s really a need for a compatible version with GH v.8… can´t wait to try it but the version still an issue…


  21. mikegarcia84 says:

    I wish this would load so i can apply it towards my school project. I had a very good idea for it. Hope a working update comes out soon.

  22. _aLinG_ says:

    People are very rude…this project is free but the people that develope it use their own free time to make possible this great tool. If you want a cellular automata quickly running in your GH canvas, code it…

    Don’t push morpho team in this way…think that they are giving you their work for free…

    Best Regards.

  23. bolaris says:

    Hello everybody,

    First of all, congratulations to Morpho team (again)!

    I am one of the funs of Rabbit, but I’ve lost a lot of data and software when my pc crashed.
    So I would like to know if someone can send me the grasshopper 0.6.0043?

    Thanx in advance

  24. amritbanerjee says:

    Hi Everyone,
    Thank you for such a useful tool that can be incorporated in grasshopper and give us such awesome ideas and designs.

    But recently i lost my older versions of GH due to a virus and had to format. So could you guys also upload the latest version of GH which rabbit supports. It would be great for everyone, or otherwise you could give a link where we could download older versions of GH.
    Once again congratulations for your work. Looking forward for a positive reply and a brand new Rabbit as well! ;). Thnx guys!

  25. morphocode says:

    It depends on how fast we finish some of the features that are still not implemented.
    Probably within a few weeks. Somewhere in the beginning of 2012.

    Happy holidays everyone!

  26. morphocode says:

    Hi there,
    We were busy with the preparation of our workshop in the last weeks. Now, that it is over, we are going to have some more time to polish Rabbit. Hopefully within a few weeks it is going to be available for download.

    Best Regards,

  27. dfenton says:

    I can’t believe I have to get a facebook account to download this O.o. You guys are killing me

  28. aawee says:

    Awsome guys, amazing work! Keep it up! Cant wait to mess around with the L-system components!

  29. HHH says:

    I definitely agree to above posts concerning facebook. Please release a download without the need for facebook, too. And if not, at least let us users know about this issue before asking for our registration information. DUH.

  30. schmex says:

    hey guys,
    i have the latest built version of GH and the latest Version of Rabbit (0.3) BUT it is not working al all. There is a runtime error. The problem is that there must be a newer version online. The licence is out of date – the L-system says…
    please help

  31. rmintzes says:

    Using Rhino 5 with the latest version of Grasshopper, Rabbit doesn’t work. Will this be updated soon?

  32. Pingback: Easter eggs – Daniel Davis

  33. stephen.moroz says:

    Facebook won’t let me download Rabbit. I’m registered with Morphcode, i like Rabbit on Facebook, but it won’t change the status past step one and give me access to the download. I’ve tried logging out and back in, un-liking and re-liking, but all to no avail. I don’t know what to do.


  34. xingjun2010 says:

    Hi Morphcode,

    I am having a trouble with installing Rabbit into Grasshopper. I did what installation tutorial showed, but nothing shows up in Grasshopper. My Rhino is 5.3.30426 and Grasshopper is 0.9.0066. Can you help me out? My email is xchen7@ltu.edu

    Thank you!

  35. jkruem-gmail-com says:

    Whenever I set the time parameter in the CA evolver to anything but 0, I get a run time error. How do I fix this? I am using Grasshopper 9.0072 on Rhino 5. I have tested out the sample downloads you have also provided for cellular automata and I still keep getting a runtime error once the time changes to a number other than 0. Please help!

  36. hassanykb@yahoo.com says:

    Thank you so much for the work you guys are doing at morphocode. I have followed the instructions to install Rabbit , i have grasshopper 0.9.0075 and rhino 5 yet i don’t see the rabbit tab. Please any help. thank you

  37. Logan says:


    I recently downloaded Rabbit 0.3 ( an awesome plug-in). I have Rhino 5 with Grasshopper version It successfully downloaded, however, some of the pieces are missing, such as “born”, “survive”, “c grid”, “c state”, and “r state”. I’m not sure why they did not come with the package (maybe they are obsolete and are combined with other components). Help?

  38. Logan says:

    Yes, the toolbar is there, as well as the icons from the reference image. I was basing my original post based off of the components reference on the website. I played around with it a little bit and it looks like some of those components have been combined together ( such as the “life cell” component now includes the “born” and “survive” components into it), which is sweet. I’ll just have to pay attention when I watch some tutorials as they may need three components and I may only have to use one.

  39. Omar says:

    thanks Morphocode for the very interesting plug-in.

    But I was wondering if it’s possible to create more complex CA models with this plug-in, like:
     creating a multi-state system (not just dead/alive)
     extending the neighbours affecting the cell beyond the immediate surroundings
     having other factors affecting the cell state other than the number of neighbours

    Many thanks

  40. Morphocode says:

    Hi Omar,

    Sorry for the late reply!
    Here are the answers:

    Q: creating a multi-state system (not just dead/alive)?
    A: right now, Rabbit can create 1D binary CA, Life-like CA and Excitable Media CA.
    It is not possible to define custom states. Defining custom states usually requires custom rules. Providing a good interface for rules and states would be tricky.

    Q: extending the neighbours affecting the cell beyond the immediate surroundings?
    A: This is easily done internally in the code: there are different types of neighborhoods, but we don’t provide an option/input to specify this through the Interface

    Q: having other factors affecting the cell state other than the number of neighbours?
    A: That would be cool, but again it may be tricky. We’ll need an interface to define the rules.

    Hope this answers your questions!

    Best Regards,

  41. Pingback: Rabbit 插件教学分享 - Rhino(犀牛)中国技术支持&推广中心

  42. Pingback: Fractal Trees – Basic L-System- Example 9.4 | Generative Landscapes

  43. flag_in_the_air@hanmail.net says:

    i was really impressed by the logic of cellular automata. but i was wondering if there is any way to process the logic in the 3D grid
    I found out that you guy’s 3d cellular automata is made by just stacking the generations over and over again
    Is it possible to process the live cell’s evolution starting in the 3D- grid?
    If it is possible, can I get the logic?
    Thank you

  44. Morphocode says:


    You are right – Rabbit currently supports 2D cellular automata.
    Currently there is no an easy way to create 3D cellular automata with Rabbit.

    We consider adding this feature to the next releases.

    Best Regards

  45. Pingback: Excitable meduim and vector fields

  46. Pingback: Fractals and branching structures | CAD – Scripting

  47. Pingback: Excitable meduim and vector fields | CAD – Scripting

  48. Fred says:

    Hi Mr Morphcode,
    Any idea when we can see the source? I need probabilistic / context-aware L-systems. Do you have any plans regarding these features?

  49. Morphocode says:

    Hi Fred,

    At this point Rabbit does not support probabilistic l-systems. It is a feature we would like to have but we are still not sure when it’s going to be implemented.
    The source code will soon be uploaded on github, but if you need it in the meantime, please get in touch with us via the contact form and we’ll be happy to send it to you.

    Best Regards,

  50. Fred says:

    Thanks for your answer. I just wanted to know if “soon” meant rather one month or six for scheduling… No hurry, though.
    As for probabilistic L-system, It’s pretty simple. I made my own jerky thing with gh and hoopsnake for now,
    Thank you again for all your work.

  51. Ars says:

    Great stuff and lot of fun!

    Two questions still:

    – is it possible to generate a real 3D cellular automata? I tried the CA script with a 3D grid and it works fine but the cell neighbourhood only happen on a planar way and not on the z axis.



  52. Ars says:

    forgot the second question

    – what kind of neighbourhood is taken into account by the components? Moore and/or Neumann?

  53. Rawrson says:

    Hi Morphcode team,

    Firstly great work! I’m using it for an architecture studio and its quite a fascinating concept, glad you have provided me with the tools to explore.

    Q. Is it possible to limit the grid’s boundary so that the CA growth is only limited to the grid? I want the edges to be like walls in which the growth bounces off, instead of an Infinite connecting plane. If so How?

    Thank you!

  54. Morphocode says:

    Hi Rawrson,
    Happy to hear you like Rabbit.
    A: Currently, it is not possible to limit the growth within the grid’s boundary.

    Best Regards,

  55. Pingback: Rabbit: Cellular automata, L-system – Tiago e Liliana | ftdigital

  56. Siyang Liu says:

    Hi morphocode,
    I am trying to create a tree structure with Lsystem, but I found that all the turning commands relate to only one default angle, and I haven’t figured out how to use dA (angle scale). So is it possible to create a script that turning, rolling, pitching up or down have different angles?
    Thank you!

  57. Martin Danler says:

    Hello Morphocode,
    do you still work on Rabbit?
    I’d like to know if you have implemented the Angle Scale function. I’m trying to build a structure in which the angle changes from generation to generation, but I’m having a hard time to do so.. I tried to write rules which uses multiple +++ and — but this method only changes the angles within a branch and not every generation.. I could write a rule for every generation by hand, but that would not be the point of it, would it?
    Did anybody else face this problem and could share their solution?

    Thanks a lot in advance,
    best regards!

  58. Nate Crosby says:

    Is there a way of slitting the list of resultant curves from the turtle component into the Internode and Apex segments?

    How could I go about doing this?

    Thanks for you help,

  59. Gonçalo Henriques, says:

    Hi guys,
    Congrats for the great work with rabbit.
    I wonder if it possible to use recursive L-systems introducing random variations in each generation.
    Guess this might be related with stochastic l-systems, but I wonder I there is another way to do it.
    Cheers any help is welcomed.
    Gonçalo Henriques, Rio de Janeiro Federal University, Brazil

Leave a Reply

Your email address will not be published. Required fields are marked *