NetLogo 7.1 preview release

9 views
Skip to first unread message

Uri Wilensky

unread,
Aug 14, 2026, 1:26:03 AM (3 days ago) Aug 14
to netlogo-users 'Lucas Santana Souza' via
Dear NetLogo users,

The Center for Connected Learning and Computer-Based Modeling at Northwestern University is pleased to announce the preview version of NetLogo 7.1, available for download here. We are releasing a preview version before the beta because there are some major new features in this release we want tested by the community, including a new module system which enables users to create reusable code modules. All changes are listed below. We are feeling very excited after our first international NetLogo conference and look forward to building the community even more.

Please try out the preview and send your feedback to feed...@ccl.northwestern.edu and bug reports to bu...@ccl.northwestern.edu, or contact us on the NetLogo Forum.

We have a lot yet to build with NetLogo. Consider making a donation to support our work.
The NetLogo user community continues to experience much growth. Maintaining the large codebase, adding new products, adding features to support our users, and expanding the models library requires considerable resources. We are committed to providing NetLogo to our users at no cost. So, part of our efforts to ensure NetLogo’s long term sustainability is to diversify our funding sources. After years of support from government research grants, we are transitioning to a more sustainable model that draws more from philanthropic foundations and individual donations. Please consider making a donation. All donation sizes help. 

Donate here (donations are processed through Northwestern University, but 100% goes to fund NetLogo development).

Enjoy,
Uri Wilensky


Biggest new feature
  • NetLogo modules
    • Modules (.nlm files) can now be used to export procedures with the export keyword
    • In the current implementation, only procedures may be declared within modules, and they may not refer to anything that was defined in the main Code tab
    • Modules and the main Code tab can import procedures from my-module.nlm with the code import [ that-specific-procedure ] from my-module
    • More information can be found here
    • The models “Discrete Event Mousetrap” and “Distribution Center Discrete Event Simulator” also provide examples of the system in action


Major new features and changes
  • Improved Code Tab
    • The code completion functionality now gives smarter recommendations and appears without needing to invoke a key combination. This functionality can be disabled in the application preferences.
    • Dynamically generated terms (e.g., specific breed names) will now get syntax highlighted
  • Improved Info tab
    • Now supports LaTeX, as well as embedded videos and images
  • NetLogo can now be installed on macOS simply by dragging the icon into the Applications folder in the installer
  • There is now an online service for automatically updating old models to the latest version of NetLogo, which can be found here
    • The new online system covers more cases than the in-app auto-converter can
  • BehaviorSpace Improvements
    • BehaviorSpace runs in a separate process, preventing memory leaks from sustained use
    • BehaviorSpace displays in a separate window, allowing usage and editing of the model while experiments are running
    • BehaviorSpace can now be given an upper limit of how much memory to allocate to the process
    • The BehaviorSpace "Run" dialog now allows specifying desired behavior for when errors occur: Ignore them, abort the errored run, or abort the entire experiment

NetLogo Web Changes
  • The GIS extension now works in NetLogo Web and provides load-dataset-from-string, store-dataset-to-string, and store-dataset-to-strings primitives that provide a NetLogo Web-compatible way of reading and writing GIS data without needing to access the file system.
  • The NW extension now works in NetLogo Web and provides load-from-string and save-to-string primitives that provide a NetLogo Web-compatible way of reading and writing network data without needing to access the file system.
  • Ability to set model name for display in NetLogo Web (in View/Model settings)

Minor Features and Changes
  • NetLogo once again ships with a copy of the user manual in the form of static HTML files, and will open those when “Quick Help” is used without an internet connection
  • Monitor widgets now have a "Copy text" option in their right-click menu
  • Command Center input can now consist of more than one line of code with the standard Shift+Enter/Shift+Return key combination
  • Command Center input is now saved, per model, across NetLogo sessions
  • Improved experience for editing NetLogo files with third-party editors
    • After turning on the "Enable remote commands" preference, NetLogo can receive commands from external sources
    • Code and Info tab contents are always bounded by newlines and CDATA tags
  • Improved command-line interface for launching NetLogo (now much clearer about errors and available options)
  • The Models Library dialog once again has folder and file icons for distinguishing the different types of entries
  • .nls files are now forbidden to take on names that would be invalid NetLogo variable names
    • The “Distribution Center Discrete Event Simulator” and “Discrete Event Mousetrap” models now demonstrate the usage of the new module system
  • .nls files can be renamed within NetLogo by right-clicking their tab in the list
  • The "internal error" dialog now provides a simple button for directly reporting errors to the NetLogo team
  • Updated to Java 21
  • While the Scaladocs for the NetLogo API (e.g. for the Controlling API or authoring NetLogo extensions) will still be available on our website, they will no longer be distributed with each installation of NetLogo

Bugs Fixed
  • NetLogo language
    • Improved error messages when a string or number is provided as a global variable name
  • Widgets
    • "Forever" buttons with "Disable until ticks start" enabled will now stop when clear-ticks is called
    • For display text of some particular widths, ellipses were wrongly being shown when creating new widgets
    • Plot widgets now reset the scroll level of plot pen editors after the dialog is closed
    • Plot pen editors now instantly recompile when you click away from them
    • Sliders now handle when widget editor fields are invalid-but-compilable more gracefully
    • Note widgets were showing excessive whitespace in margins when set to render Markdown
    • Output widgets now do a better job of importing long content with import-world
    • Output widgets now crop the text on a line-by-line basis
    • Reduced visual artifacts on some rounded borders
  • View
    • Drawings could previously be duplicated when combining world wrapping with large pen sizes
  • Command Center
    • Fixed a case where the font style was changing when zoomed
    • The "command history" button now matches the look and feel of the rest of the NetLogo 7 UI
  • Code tab
    • Error text can now be selected and copied
    • Missing characters (e.g., CJK characters) are now shown in a fallback font when the current font does not define them
  • Extensions
    • Fixed a crash with vid:camera-select on Windows when no camera was selected
    • Fixed an “in-use” error when opening multiple models in a row that use the vid extension
  • BehaviorSpace
    • The error messages about invalid world dimensions have been improved
  • HubNet
    • After importing a HubNet client interface via "File → Import → Import HubNet Client Interface", the widgets can now be edited properly
    • Client view widget height now updates correctly when set in the "Edit" dialog
  • NetLogo will now suggest using our external model-converter service, when opening a model created in a version earlier than 6.0.0
  • Auto-converter within NetLogo Desktop
    • Now knows how to remove the old hubnet-set-client-interface primitive
    • Will now run movie-/vid conversions, even if only movie-set-frame-rate is used in the model
    • Avoids producing syntactically invalid code when doing conversions
    • Can now relocate declarations that were defined in now-invalid places
    • Can now run on code in monitor widgets, even if that code is not wrapped in parentheses
    • Will not add extra parentheses around code in monitor widgets
    • Can now handle conflicting breed names
    • Can convert from the old breed [ xs ] syntax
    • Can install extensions automatically, when needed
  • Miscellaneous
    • The "Reload model on external changes" preference no longer leaves watch services running unnecessarily
    • The "Extension Manager samples" section of the Models Library is now far more organized and navigable
    • Uninstalling an in-use extension will no longer produce internal errors
    • Application icons were not being set properly on Linux
    • Reduced display of redundant announcement banners
    • The "About" dialog's text can now be selected and copied
    • The "About" dialog no longer shows a text input caret after being clicked
    • Loading an autosave from an old version of NetLogo used to sometimes lead to an unwanted and unnecessary "Save as" dialog
    • "Undo" and "redo" options were presented differently in the Code tab from how they are in the Interface tab
    • Error dialog now points people to the newer URL for downloading the latest NetLogo
    • The error message when loading a model from a version of NetLogo that is simply old no longer claims that the version is unknown
    • The Info tab "Help" links are now valid again
    • The Extension Manager now does a better job of handling registries of extensions from multiple different versions

Models Library Changes

New Sample Models

  • CA 1D General

New Code Examples

Sample Model Changes

  • Distribution Center Discrete Event Simulator, Discrete Event Mousetrap: These models now use the new module system instead of __includes
  • Bidding Market: Monitors no longer error when there are no agents, and instead simply display “<no agents>”

If You Encounter a Problem

We encourage users to report bugs to bu...@ccl.northwestern.edu , and give feedback and ask questions through emails to feed...@ccl.northwestern.edu. We also encourage users to send messages to the NetLogo Forum. We encourage users who encounter a bug to consult this wiki page which lists current problems as users report them to us and offers advice on how to alleviate or work around them. The NetLogo FAQ (Frequently Asked Questions) also contains valuable information.

Other Known Issues

The list below contains several issues known to us at the time of the release of 7.1. We aim to fix these issues in a future release.

  • The Arduino extension may not work properly in Windows 10 under 64-bit NetLogo. It does work properly running under 32-bit NetLogo. We recommend that Windows users who want to work with the Arduino extension install the 32-bit version of NetLogo.
  • Once a user opens a model that uses the Arduino extension, they must quit NetLogo before next opening a model that uses the Arduino extension.
  • Repeated zooming out can cause drawn lines to vanish from the view. 

Credits

NetLogo was designed and authored by Uri Wilensky, project leader and director of the CCL. The current core development team includes Jason Bertsche, Jeremy Baker, Omar Ibrahim and Isaac Brown. Kritphong Mongkhonavit implemented most of the new module system. Seungyeon Kim was the main graphics designer for the Graphical User Interface changes for NetLogo 7. Seth Tisue, Bryan Head, Esther Verreau, Robert Grider, Ben Shargel, Nicolas Payette, and Aaron Brandes have made major contributions in the past. Many others have contributed greatly. HubNet was jointly designed by Uri Wilensky and Walter Stroup.

We also gratefully acknowledge the contributions of: Dor Abrahamson, Fernando Alegre, Jason Alt, Gabriella Anton, Umit Aslan, Zeina Atrash, Gordon Bailey, Connor Bain, Eytan Bakshy, Matthew Berland, Stephanie Bezold, Paulo Blikstein, Silas Boyd-Wickizer, Dirk Brockmann, Meridith Bruozas, Rodrigo Cadiz, Ivan Ceraj, Charles Chen, John Chen, Eric Cheng, Jarva Chow, Sugat Dabholkar, Rumou Duan, Jared Dunne, Geoff Garen, Jeremy Glassenberg, Katie Goodrum, Steve Gorodetskiy, Bryan Guo, Can Gurkan, Eric Hao, Ed Hazzard, Arthur Hjorth, Carrie Hobbs, Nathan Holbert, Abbie Jacobs, Wendy Johnson, Nathan Jones, Jacob Kelter, Hyungsin Kim, Jayun Kim, Woo-young Kim, Daniel Kornhauser, Sergey Krilov, Dr. Setsuya Kurahashi, Eyal Landau, Victor Lee, Reuven Lerner, Sharona Levy, Silvia Lovato, Spiro Maroulis, Kit Martin, Geoff Mathews, Dhrumil Mehta, Kritphong Mongkhonavit, Nate Nichols, Ben Neidhart, Michael Novak, Kai Orton, Yevgeny Patarakin, Christina Pei, Daniel Perlovsky, Lorenzo Pesce, Francisco J. Miguel Quesada, Ben Rafshoon, Bill Rand, Charly Resendiz, Andy Russell, Phil Saltzmann, Andrei Scheinkman, Pratim Sengupta, Ben Shapiro, Gagandeep Singh, Firat Soylu, Mike Stieff, Scott Styles, Celina Troutman, Josh Unterman, Aditi Wagh, Akarshit Wal, David Weintrop, Baba Kofi Weusijana, Michelle Wilkerson, Julio Patron Witwytzkyj, Nate Wong, Philip Woods, Tianyu Xia, Christine Yang, Dr. Takashi Yoshida, Jack Zhu.

The CCL gratefully acknowledges three decades of support for our NetLogo work. The original support came from the National Science Foundation -- grant numbers REC-9814682 and REC-0126227. Further support has come from NSF REC-0003285, REC-0115699, DRL-0196044, NSF-ITR-0326542, DRL-REC/ROLE-0440113, SBE-0624318, EEC-0648316, IIS-0713619, DRL-RED-9552950, DRL-REC-9632612, DRL-DRK12-1020101, IIS-1441552, CNS-1441016, CNS-1441041, CNS-1138461, IIS-1438813, IIS-1147621, DRL-REC-1343873, IIS-1546120, DRL-1546122, DRL-ITEST-1614745, DRL-1640201, NSF STEMC-1745938, NSF STEMC-1842374, NSF STEMC-1842375, NSF DRL-1842374, NSF-BSF-2240216, and NSF-POSE-2303582. Additional support has come from the Spencer Foundation, Texas Instruments, the Brady Fund, the Murphy fund, the Northwestern Institute on Complex Systems, the Northwestern SESP Venture Research Fund. More recent generous support has come from the Yidan Foundation.


Enjoy,

—Uri


Uri Wilensky
Lorraine H. Morton Chaired Professor 
Professor of Learning Sciences, Computer Science and Complex Systems
Director, Center for Connected Learning and Computer-Based Modeling (CCL)
President, NetLogo Center
Northwestern University


Reply all
Reply to author
Forward
0 new messages