NetLogo Changelog

What's new in NetLogo 6.3.0

Oct 2, 2022
  • Bug Fixes and Changes:
  • The models library will correctly display when NetLogo is set to a language other than English.
  • The log4j library has been removed from NetLogo. Logging is now configured from the NetLogo preferences dialog. The output is in JSON text file format. See the Logging docs for more information.
  • BehaviorSpace experiments can now also be run from a terminal or command console using the NetLogo_Console app with NetLogo’s bundled Java by using the --headless flag. See the BehaviorSpace documentation for more information and examples. This avoids the need to install and configure a separate Java runtime to use the netlogo-headless.sh script, which remains bundled for those who require it.
  • BehaviorSpace output files are now chosen directly during run setup instead of separate prompts at the run start. This simplifies the setup process and resolves a bug where the runs would not occur on macOS.
  • The System Dynamics Modeler UI has some small improvements.
  • Fixed a bug where slider widgets would allow initial values outside of their range when changing the limits.
  • Better handle asymptotic values for tan with a proper error message.
  • NetLogo will now correctly handle running map or foreach when no lists are given.
  • When an anonymous task that uses let variables is displayed as a string it will now include those variable names.
  • Reporters used in concise task syntax no longer give the wrong result when used with fewer arguments than their default.
  • The models library location will be correctly set when using GUI scripts.
  • Behaviorsearch now sets a flag to alert extensions that they are being run without a UI so that extension code can adjust appropriately.
  • Extension Updates:
  • GoGo: Improve newer GoGo board compatibility and improve the stability of the extension.
  • LevelSpace: Eliminate crashes when the controlling API is used to run NetLogo without a UI.
  • Profiler: The profiler:data results are now given in milliseconds instead of nanoseconds, matching the other primitives in the extension.
  • Python: Improvements in how the extension searches for the Python binaries when they aren’t specified via the configuration menu.
  • Vid: Update backing libraries to try to improve stability and usability on macOS and Windows.
  • Documentation Updates:
  • Update the system requirements to include Windows 11.
  • Fixed a bad link to the extension API version 5 to 6 transition guide.
  • Added a FAQ entry on how to save random seeds from runs.
  • Models Library Changes:
  • New Sample Models:
  • Slime Mold Network
  • Virus Using Discrete Event Simulator (cross-listed in code examples for time extension)
  • Distribution Center Discrete Event Simulator (cross-listed in code examples for time extension)
  • Hydrogen Gas Production
  • CA 1D-Squaring
  • Molecular Dynamics Lennard-Jones
  • New Curricular Models:
  • CT-STEM:
  • Habitat Preference
  • New Code Examples:
  • time: Logotimes Example
  • time: Discrete Event Whack-a-Mole
  • Sample Model Changes:
  • Taxi Cabs: Fixed Dongping Zhang’s name in the credits.
  • Turbulence: Cross-listed under CS/CA.
  • Tree Simple: Changed init-x slider min/max to -100/100. Before the range was -125/125, which caused an error.
  • Traffic Basic: Changed speed-limit and speed-min from agent variables to be globals.
  • Urban Suite - Cells: Renamed the go * 80 button to go * 40, reflecting its actual effect.
  • CA 1D Rule 30 - Improved the info tab to explain how Rule 30 has been used as random number generator.
  • Curricular Models Changes:
  • PNoM 4 Virtual Syringe Force Graph: fixed a bug that produced an error message.
  • Kidney Reabsorption: Some improvements to the info tab.
  • Newly Verified Models:
  • The suite of prisoner’s dilemma models have been in the models library for a long time but were previously “unverified.” They have been reviewed/verified and moved into the main Social Science folder.

New in NetLogo 6.0.3 (Mar 22, 2018)

  • FEATURE CHANGES:
  • Improve the look & feel of Agent Monitor windows.
  • The procedures menu in the code tab now has a search field and actively filters procedure names as the user types. This should improve navigation speed for large models with lots of procedures. There is also now a hotkey to access this menu: Ctrl-G on Windows and Linux, and Cmd-G on MacOS.
  • Increase the speed of the diffusion primitive and make the diffusion operation symmetric.
  • NetLogo enforces that plot names are unique and that pen names are per-plot unique without taking capitalization into account. This avoids certain cases where set-current-plot and set-current-plot-pen primitives would set the plot or pen to something different than the user intended because names differed in capitalization only.
  • Models with existing plots and pens which have the same name without taking capitalization into account will be automatically converted on first open in 6.0.3.
  • We are planning on adding the ability to have multiple conditional branches to ifelse and ifelse-value. However, as this is a fairly substantial change to the core language, we have implemented it in the cf extension for testing. See the cf documentation for information about the new syntax.
  • DOCUMENTATION CHANGES:
  • Add a table to the Output section of the Programming Guide specifying how the various output primitives differ in whether they print the calling agent, whether they print a newline, and whether they can be read back into NetLogo.
  • BUG FIXES:
  • Anonymous procedures appearing inside ask blocks inside repeat blocks now close over unique copies of let-variables introduced in the repeat block.
  • Fix a longstanding HubNet bug in which HubNet would sometimes crash as a large number of users joined.
  • Fix HubNet discovery when the HubNet server is run on a Mac.
  • When switching from the code tab to the interface tab, the cursor switches to the command center. This prevents typed commands or copy/paste keyboard shortcuts from affecting the code tab.
  • Turtles draw trails when moving backwards (regression in NetLogo 6.0.1).
  • Smooth Code Tab scrolling.
  • BehaviorSpace now only applies standard CSV string escaping (doubling of double quotes) to string outputs in result files. It used to apply NetLogo style string escaping (backslashes in front of special characters) and then apply CSV escaping on top of that. The new behavior is consistent with the RFC 4180 specification and the current behavior of the csv extension.
  • The Behaviorspace dialog appears centered in the NetLogo window.
  • Due to changes introduced in Java, certain dialogs in NetLogo 6.0.1 would appear under the dialog that created them instead of on top. These dialogs now appear on top of the dialog that created them.
  • Non-code changes to the System Dynamics modeler are pulled in on every recompile (prior to this, changes like newly-disconnected flows were sometimes not taken into account on recompiles).
  • The system dynamics code tab adjusts itself to match the size of the system dynamics window.
  • NetLogo 3D loads and saves system dynamics.
  • Fixes an error raised in 3D when the world was cleared following setting a patch-color to an RGB list.
  • Miscellaneous small changes to the format of exported worlds. NetLogo 6.0.3 should be able to import worlds exported by older versions of NetLogo and older versions of NetLogo should be able to import worlds exported by NetLogo 6.0.3.
  • The “others” execute bit is set for the netlogo-headless.sh script in the Linux installer package.
  • EXTENSION CHANGES:
  • nw:generate-preferential-attachment accepts a min-degree parameter, specifying the number of links each new turtle preferentially creates to existing turtles.
  • The arduino extension (and the related sketch and model in the library) have been updated to allow the arduino to send strings back to NetLogo. Two new debug primitives have also been added to help troubleshoot interaction between NetLogo and the arduino.
  • The verbose cf extension conditional syntax as been replaced with straight-forward generalizations of the ifelse and ifelse-value primitives. The syntax is much simpler and these primitives run much faster than the old constructs.
  • The ls extension has much less overhead for calling out to single models, making constructs like ask turtles [ ls:ask my-model [ run-something ] ] much faster.
  • The ls extension now seeds the child model RNG based on the parent model RNG at model creation. Furthermore, and ls:random-seed primitive has been introduced, so an entire model system can be seeded simultaneously. This makes it possible to have reproducible runs when using LevelSpace.
  • The ls:let primitive now handles scoping properly.
  • ls:assign has been added to LevelSpace to make assigning globals of child models easier.
  • DOCUMENTATION CHANGES:
  • Clarify documentation around __includes by providing examples.
  • Fix a broken link in the dictionary.
  • Update the Windows unattended installation directions in the FAQ.
  • MODEL CHANGES:
  • New Sample Models:
  • Bidding Market
  • Blood Sugar Regulation
  • Rock Paper Scissors
  • Vision Evolution
  • New Curricular Models:
  • NIELS - Current in a Wire HubNet
  • New HubNet Activities:
  • Current in a Wire HubNet (same as above)
  • Revised Code Examples:
  • arduino Extension: The example model and sketch have been updated to reflect new features in the extension
  • sound Extension – Sound Workbench: Minor GUI updates
  • sound Extension – Percussion Workbench: Minor GUI updates
  • File Input Example: Fixed a bug in the save-patch-data template procedure
  • Lottery Example: Corrected Related Models from Preferential Attachment to the Rnd Example Model in the Info Tab
  • Info Tab Example: Corrected reference from pegdown to flexmark in the Info Tab
  • Revised Curricular Models:
  • BEAGLE Evolution - Fish Tank Genetic Drift: Update duplicate plot-pen names and resize plots
  • GenEvo - GenEvo 4: Replaced usage of cf:when with nested ifelses
  • Lattice Land - Lattice Land Explore: Fixed bug when deleting a segment that didn’t exist.
  • Lattice Land - Lattice Land Triangles Dissection: Fixed bug when deleting a segment that didn’t exist.
  • NIELS - Electrostatics: All turtles are now particles and each particle has a charge; Changed particle coloring; Updated Info Tab and some variable names to reflect later NIELS models
  • Urban Suite - Tijuana Bordertowns: Minor Info Tab updates.
  • Revised Sample Models:
  • Artificial Anasazi: Update broken URLs in Info Tab
  • Autumn: Update broken URLs in Info Tab
  • HIV: The AIDS model has been renamed to HIV†
  • Color Fractions: Removed direct reference to dead web page in Info Tab
  • Fairy Circles: Update URLs in Info Tab
  • Fur: Update broken URLs in Info Tab
  • Hex Cell Aggregation: Update broken URLs in Info Tab
  • Ising: Update broken URLs in Info Tab
  • Kicked Rotators: Update broken URLs in Info Tab
  • Language Change: Update URLs in Info Tab
  • Lennard-Jones: Added citation in the Info tab
  • Lightning: Update URLs in Info Tab.
  • L-System Fractals: Update broken URLs in Info Tab
  • Membrane Formation: Update broken URLs in Info Tab
  • Moth: Update URLs in Info Tab
  • Party: Fix incorrect comment on turtle headings.
  • PD Basic: Minor GUI updates
  • Segregation: Update broken URLs in Info Tab. Update color scheme for color blindness. Minor GUI updates. Minor Info Tab updates.
  • Sugarscape 1 Immediate Growback: Fixed “Wealth distribution” histogram bug (turtle with max sugar was not displayed)
  • Sugarscape 2 Constant Growback: Fixed “Wealth distribution” histogram bug (turtle with max sugar was not displayed)
  • Sugarscape 3 Wealth Distribution: Fixed “Wealth distribution” histogram bug (turtle with max sugar was not displayed)
  • Revised IABM Models:
  • Arduino Example: The example model and sketch have been updated to reflect new features in the extension (same as above)
  • Segregation Simple Extension 1: Update broken URLs in Info Tab
  • Segregation Simple Extension 2: Update broken URLs in Info Tab
  • Segregation Simple Extension 3: Update broken URLs in Info Tab
  • Segregation Simple: Update broken URLs in Info Tab
  • † - Models Updated to Correctly Reference the HIV Model:
  • Alternative Visualizations
  • Virus - Alternative Visualization
  • Virus - Circle Visualization
  • Curricular Models
  • epiDEM Basic
  • epiDEM Travel and Control
  • IABM Models
  • Spread of Disease
  • Sample Models:
  • Disease Solo
  • Virus
  • Rumor Mill

New in NetLogo 6.0.1 (Apr 1, 2017)

  • Feature Changes:
  • Brackets are required around anonymous procedure reporters only when there are two or more arguments. For instance [ [x] -> x ] can now be written [ x -> x ]. Note this change makes it possible to create models in NetLogo 6.0.1 that will not run in NetLogo 6.0. If you plan to use your model in NetLogo 6.0, be sure to include brackets around anonymous procedure arguments. For a short period after the release, models which use unbracketed lambda arguments may not work on netlogoweb.org.
  • Bug fixes:
  • The NetLogo code editor navigates and indents models much more quickly and efficiently than in NetLogo 6.0.
  • The NetLogo 5-to-6 autoconverter now ignores commented-out code.
  • The behavior of layout-radial in NetLogo 6 did not match the 5.3.1 behavior. This has been corrected and layout-radial should be identical between NetLogo 6.0.1 and NetLogo 5.3.1
  • NetLogo 6 raised a NullPointerException when numbers became too large for NetLogo to handle. This is now properly displayed to the user as a number out of bounds error.
  • Improved performance of models which use let and anonymous procedures together.
  • Reloading a model now clears global variables.
  • Clearer warning dialogs when opening an older version of a NetLogo 2D file in NetLogo 3D.
  • Using foreach improperly in the Command Center will display the same error as it would if used improperly in the code tab.
  • Extremely long anonymous procedures no longer cause an exception when compiled.
  • in-radius is no longer pathologically slow on agentsets created using with.
  • Extension Changes:
  • A new primitive, table:values has been added to the table extension.
  • The R extension has been updated to take full advantage of the JavaGD R library using r:setPlotDevice.
  • Users can now supply a path to the R extension by configuring the value of r.lib.paths in the user.properties file.
  • Fixed a LevelSpace bug preventing interactive models from using nls files.
  • Fixed a LevelSpace bug causing NetLogo to lock up when trying to load a nonexistent file as an interactive model.
  • Documentation Changes:
  • The system dynamics tutorial now instructs the user to set the dt to a value which gives stable behavior
  • The documentation for follow, ride, and watch has been clarified to indicate that calling one undoes highlights and perspective changes caused by the other
  • The documentation for = and != indicates that they work with extension objects.
  • Several examples have been added to sort clarifying the behavior of sort on lists featuring different types of objects.
  • A new section on User Interface primitives has been added to the programming guide which discusses the behavior of the "Halt" button in the various user interaction dialogs.
  • Incorrect example code for foreach and reduce has been corrected.
  • Models:
  • All models have been updated to reflect the new optional nature of brackets for zero/one argument anonymous procedures. This resulted in changes to 108 models.
  • All models have been updated to reflect the availability of the new range primitive. This resulted in changes to 12 models.
  • New Sample Model:
  • GenJam - Duple
  • New Curricular Model:
  • Lattice Land curriculum:
  • Lattice Land Explore
  • Revised Sample Models:
  • PD 2 Person Iterated: info tab updates and extensive fixes for the code.
  • Party: fixed bug where a monitor covered a plot.
  • Signaling Game: info tab updates.
  • Revised Curricular Models:
  • GenEvo curriculum:
  • GenEvo 1 Genetic Switch: info tab updates and new graduated method of displaying lacZ concentration.
  • GenEvo 2 Genetic Drift: info tab updates and interface tweaks. New model preview.
  • GenEvo 3 Genetic Drift and Natural Selection: info tab updates and interface tweaks.
  • GenEvo 4 Competition: info tab updates.
  • Genetic Switch - Synthetic Biology has been renamed and is now Synthetic Biology - Genetic Switch. It also received info tab updates and a few interface changes.

New in NetLogo 6.0 (Jan 4, 2017)

  • FEATURE CHANGES:
  • The NetLogo code editor now offers autocompletion support. Simply press the Control key and the spacebar at the same time while typing a word and you will see a list of similar NetLogo primitives as suggestions.
  • The NetLogo code editor offers the option to "fold" procedures to make navigating large models simpler.
  • NetLogo supports multi-level agent-based modeling with the LevelSpace extension
  • Line numbering can be enabled in the NetLogo code editor by choosing "Show Line Numbers" from the "Preferences" dialog. This dialog can be opened by selecting "NetLogo" > "Preferences" in Mac, or "Tools" > "Preferences" on Linux or Windows.
  • The view resizing arrows have been removed and the tick counter has been relocated under the speed slider.
  • When editing NetLogo code, users can right-click a variable name or primitive and choose "Show Usage" to see all usages of that name in the file.
  • When editing NetLogo code, users can right-click a variable name and choose "Jump to Declaration" to see where in the file that variable is declared.
  • The NetLogo interface editor now supports "Undo" for widget addition, deletion, and movement.
  • NetLogo can export code to HTML with code-colorization by choosing "Export Code" in the "Export" section of the "File" menu.
  • The look and feel of NetLogo on Mac OS X has changed significantly. NetLogo is now using the Oracle-supplied Java look and feel as opposed to a third-party look and feel used in prior versions.
  • Plots use a random number generator independent of the main-model random number generator.
  • Model Preview Commands can be edited through the GUI by choosing "Preview Commands Editor" in the "Tools" menu. Those commands generate the preview image that appears when you upload your model to the Modeling Commons.
  • NetLogo displays a more helpful error message when a program fails due to an "out of memory" error.
  • NetLogo and its bundled extensions are now compiled against Java 8 and Scala 2.12.
  • NetLogo has upgraded the ASM bytecode library to enable generation of Java 8 bytecode.
  • BUG FIXES:
  • *-link-neighbor? primitives now work the same way for breeded and unbreeded links.
  • Resizing the world in NetLogo 3D no longer causes a black view.
  • Fixed error caused by right-clicking a widget while dragging.
  • Improved error message when a user-defined procedure shadows a breed procedure.
  • neighbors4 and neighbors no longer report agentsets containing the same patch more than once.
  • LANGUAGE CHANGES:
  • Support for plural-only breed names (e.g., breed [mice]) has been removed. Write breed [mice mouse] instead.
  • Tasks have been replaced by anonymous procedures. Tasks made use of ? variables which were confusing for novices and difficult to read for experts. Additionally, tasks could not refer to the task variables of a containing task. Anonymous procedures may have named arguments which can be accessed by inner anonymous tasks. Upon first opening a NetLogo 5 model in NetLogo 6, tasks like task [ ?1 + ?2 ] will be automatically converted to [ [?1 ?2] -> ?1 + ?2 ]. See the the transition guide for more information.
  • Link reporters have been overhauled to be more consistent and flexible
  • The task primitive is no longer supported.
  • Breed names that conflict with language primitives are now disallowed. For instance, breed [strings string] is now disallowed since it makes is-string? ambiguous.
  • The compiler errors on duplicated breed singular names.
  • The compiler detects a greater number of type errors, for instance not pxcor now raises a compiler error instead of erroring at runtime.
  • set-plot-pen-color now accepts RGB lists as arguments.
  • The hubnet-set-client-interface primitive has been removed.
  • The various primitives starting with movie- have been removed, as has the movie encoder. They have been replaced with the new vid extension. The transition guide provides more details and information.
  • The __change-language primitive has been removed. You can now change the User Interface Language through the preferences dialog, which can be found by choosing "Preferences..." in the "NetLogo" menu (Mac OS X) or in the "Tools" menu (all other platforms).
  • The string representation of anonymous procedures displays the body of the anonymous procedure.
  • EXTENSION CHANGES:
  • NetLogo 6.0 comes with three new, bundled extensions: LevelSpace ls, the vid extension for video manipulation, and the enhanced visualization extension view2.5d.
  • ls enables multi-level agent-based modeling in NetLogo.
  • The Extensions API has been updated from 5.0 to 6.0. This means that all non-bundled extensions will need to be updated to use the new API. Extensions written for NetLogo 5 will not work in NetLogo 6. If you're an extension author, see the extension author transition guide for 6.0 for more information. If you regularly use extensions you may want to contact their authors to inform them a new version of NetLogo is on the way and they may want to update their extensions.
  • arduino:get (in the arduino extension) correctly reports values from Windows 64-bit machines. In prior versions it would only report some values correctly.
  • The qtj extension is no longer bundled with NetLogo. Users are encouraged to make use of the new vid extension.
  • The new vid extension is now bundled with NetLogo, combining features of the late qtj extension and the movie primitives.
  • The network extension is no longer bundled with NetLogo. Users are encouraged to use the nw extension (https://ccl.northwestern.edu/netlogo/docs/nw.html), which has been bundled with NetLogo for some time.
  • The gogo-serial extension is no longer bundled with NetLogo. Users are encouraged to transition to the newer gogo extension, which uses HID to communicate with the GoGo board.
  • Several new features have been added to the new extension:
  • Added community detection using the Louvain method
  • Added modularity measurement
  • Added Watts-Strogatz small-world network generation
  • Made other network generation algorithms easier to layout
  • Weighted primitives now take symbolic variable names instead of strings. See the transition guide for more information.
  • OPERATING SYSTEM SUPPORT:
  • NetLogo will now be used to open .nlogo links in PowerPoint and other programs on Microsoft Windows.
  • The NetLogo binaries on Mac OS X are installed as runnable by any user.
  • NetLogo in Mac OS X will not use "App Nap" while running. This keeps simulations running at full speed when NetLogo is in the background.
  • The NetLogo controlling API has changed since NetLogo 5. Programs that rely on the controlling API (such as BehaviorSearch) will not work until they have been changed to match the new API.
  • DOCUMENTATION CHANGES:
  • New documentation for anonymous procedures
  • The NetLogo tutorial screenshots have been updated to correspond to the new Mac OS X Look and Feel.
  • The NetLogo dictionary displays the version in which each primitive was introduced next to that primitive.
  • A Spanish translation of the NetLogo dictionary is available here
  • INTERNATIONALIZATION CHANGES:
  • A new Spanish translation of the NetLogo dictionary is available as part of the NetLogo manual.
  • Language preferences can be changed by using the new "Preferences" menu instead of the __change-language primitive.
  • A Japanese localization for NetLogo is now available and included with the standard download.
  • The Chinese translation for NetLogo has been updated.
  • MODELS:
  • New Sample Models:
  • Kicked Rotator
  • Kicked Rotators
  • Mammoths, a legacy StarLogoT model, has been converted to NetLogo.
  • New Curricular Models:
  • GenEvo 1 Genetic Switch
  • GenEvo 2 Genetic Drift
  • GenEvo 3 Genetic Drift and Natural Selection
  • GenEvo 4 Competition
  • New Code Examples:
  • Movie Playing Example (vid extension)
  • Movie Recording Example (vid extension)
  • Video Camera Example (vid extension)
  • Network Extension General Demo (nw extension)
  • Model Interactions Example (ls extension)
  • Model Loader Example (ls extension)
  • Model Visualizer and Plotter Example (ls extension)
  • Promoted Models (improved and no longer "unverified"):
  • ProbLab Genetics
  • Traffic 2 Lanes
  • Revised Sample Models:
  • Giant Component: added text in the info tab.
  • Team Assembly: removed unused switch widget.
  • Traffic Basic, Traffic Grid, Traffic Intersection: revised info tab.
  • Voting: stopped the model when voting stabilizes.
  • Wealth Distribution: fixed typos in info tab, improved code formatting.
  • Revised HubNet Activities:
  • Bug Hunters Competition HubNet, Critter Designers HubNet, Fish Spotters HubNet: removed unnecessary call to hubnet-set-client-interface.
  • Gridlock HubNet, Gridlock Alternate HubNet: revised info tab.
  • Revised Curricular Models:
  • DNA Replication Fork: fixed a a monitor and runtime error when using a time limit.
  • Revised IABM models:
  • Agentset Efficiency: clarified description of go-2 in info tab.
  • Agentset Ordering: fixed typos in into tab.
  • Arduino Example: improved model to demonstrate both directions of communication with the Arduino.
  • Heroes and Cowards: removed extra text in info tab.
  • Preferential Attachment Simple: removed extra pen in plot and extra "layout" button.
  • Random Network: made sure that the number of links is never too big for the number of nodes.
  • Segregation Simple Extension 1, 2 and 3: fixed number-of-ethnicities slider to avoid runtime errors.
  • Traffic Basic Adaptive Individuals, Traffic Basic Utility, Traffic Grid Goal: revised info tab.
  • Traffic Basic Adaptive: revised info tab, clarified comment in adaptive-go procedure.
  • Voting Component Verification: stopped the model when voting stabilizes.
  • Voting Sensitivity Analysis: improved code for stopping the model when voting stabilizes.
  • Revised Code Examples:
  • GoGoMonitorSerial, GoGoMonitorSimpleSerial: removed the models, as the gogo-serial and qtj extensions are no longer bundled.
  • Random Network Example: made sure that the number of links is never too big for the number of nodes.
  • Since the QuickTime extension (qtj) has been replaced by the vid extension, the following models have been converted to use the vid extension:
  • Movie Example, replaced by Movie Recording Example
  • QuickTime Movie Example, replaced by Movie Playing Example
  • QuickTime Camera Example, replaced by Video Camera Example
  • Demoted model:
  • El Farol Network Congestion, a previously "unverified" model, has been moved to the NetLogo User Community Models

New in NetLogo 5.3.1 (Aug 15, 2016)

  • Feature Changes:
  • Mathematica Link is now included and has been tested to work with Mathematica 10.
  • A link to Introduction to Agent-Based Modelling has been added to the "Help" menu.
  • Extension Changes:
  • The gogo extension now prompts the user for the location of Java upon opening. This version of Java is used to launch the gogo hid daemon.
  • The correct version of the network extension is now bundled, which will open properly
  • Bundles the cf extension, which adds match, case, and select primitives.
  • Bug fixes:
  • Corrects a bug where turtles wrapping around a torus-shaped world with pen down would sometimes cause NetLogo to loop infinitely.
  • Fixes a bug where buttons would appear to remain pressed after a right click on Mac.
  • Fixes a bug where pressing the right mouse button while dragging would confuse the mouse-down? primitive.
  • Fixes agent type-checking of tasks (bug appeared in 5.2.1).
  • link-neighbor? now returns true if and only if the neighbor is connected through an undirected link.
  • Documentation fixes for my-links and mean primitives.

New in NetLogo 5.3.0 (Dec 16, 2015)

  • Feature Changes:
  • Java 8 is now bundled with all versions of NetLogo, this removes the need for a separate Java 6 installation on Mac OS X
  • The Windows installer is now an msi instead of an exe
  • javax.media.opengl is no longer supported in Java 8, it has been replaced by com.jogamp.opengl
  • Mathematica Link is not distributed due to Java version changes
  • Extension Changes:
  • A minor update to the `nw` extension makes `nw:weighted-path-to` behave as documented.
  • Most extensions should continue to work without change unless they rely on javax.media.opengl, which was renamed in the updated version of JOGL.

New in NetLogo 5.2.1 (Nov 19, 2015)

  • Extensions:
  • An included Arduino extension for use with Arduino boards
  • New features:
  • New file menu item to export models to NetLogo Web
  • Bug fixes:
  • BehaviorSpace output type preference is now remembered
  • Output widget font is now saved at the proper size when zoomed
  • Reporter tasks are now evaluated in variable context
  • runresult arguments now only get evaluated once
  • The last used directory is now remembered on Linux
  • Whitespace is now stripped from models when saving
  • New Sample Models: Artificial Anasazi, Bacteria Food Hunt, Bacteria Hunt Speeds, BeeSmart - Hive Finding, Bug Hunt Disruptions, Bug Hunt Environmental Changes, Bug Hunt Predators and Invasive Species - Two Regions, Hydrogen Diffusion 3D, Lennard-Jones, Paths
  • There are 46 new models in the new IABM Textbook folder: Turtles Circling Simple, Ants Simple, Heroes and Cowards, Life Simple, Simple Economy, 4 DLA extensions, 4 El Farol Extensions, 4 Fire Extensions, 4 Segregation Extensions, 5 Wolf Sheep Extensions, Agentset Efficiency, Agentset Ordering, Communication-T-T Network Example, Preferential Attachment Simple, Random Network, Traffic Basic Adaptive, Traffic Basic Utility, Traffic Grid Goal, Spread of Disease, Voting Component Verification, Voting Sensitivity Analysis, Arduino Example, Disease With Android Avoidance HubNet, Example HubNet, Run Example, Run Result Example, Simple Machine Learning, Simple Viral Marketing, Ticket Sales, Sandpile Simple
  • New models in the new Alternate Visualizations folder: Ethnocentrism - Alternative Visualization, Flocking - Alternative Visualizations, Heat Diffusion - Alternative visualization, Virus - Alternative Visualization, Virus - Circle Visualization
  • Promoted models: Honeycomb, Minority Game
  • Many other bugfixes and upgrades
  • Model changes:
  • Improved Sample Models: Altruism, Ant Lines, Artificial Anasazi, Cooperation, Daisyworld, Divide the Cake, Heat Diffusion, Hydrogen Diffusion 3D, Lennard-Jones, N-Bodies, PD Basic Evolutionary, Sandpile, Robby the Robot, Segregation, Simple Kinetics 2 and 3, Traffic Grid, GridLock HubNet, GridLock HubNet Alternate
  • Revised Curricular Models: 4 Block Stalagmites, 4 Block Two Stalagmites, Bug Hunter Competition HubNet, Fish Spotters HubNet, Ising, Tijuana Bordertowns, Urban Suite - Tijuana Bordertowns,
  • Revised Code Examples: Lottery Example, self Example, Network Import Example
  • Revised IABM Textbook models: Simple Economy, Fire Simple Extension 2 and 3, Segregation Simple, 1, 2 and 3, Agentset Efficiency, Preferential Attachment Simple, Random Network, Traffic Basic Adaptive, Run Example, Traffic Grid Goal,
  • New IABM Textbook model: Traffic Basic Adaptive Individuals

New in NetLogo 5.2.0 (Apr 11, 2015)

  • EXTENSIONS:
  • An included CSV extension to read and write CSV files
  • An included Palette extension to map different values to colors
  • The previous gogo extension has been removed. It has been replaced with two different gogo extensions, gogo and gogo-serial. The extensions work with different hardware. The gogo extension works with the new style HID-interface gogo boards and the gogo-serial extension works with the old-style serial-interface gogo boards
  • Upgrade to the network extension including the following changes:
  • Support for many more file types, including GEXF, GDF, GML, Pajek NET, UCINET DL, and Netdraw VNA
  • Fixed bugs with GraphML support
  • Improved documentation
  • NEW FEATURES:
  • New primitive netlogo-web? added to test whether you are currently running in NetLogo Web
  • New primitive behaviorspace-experiment-name added allowing you to get the name of the currently running experiment
  • New primitive stop-inspecting to stop inspecting agents
  • New primitive stop-inspecting-dead-agents and menu item to stop inspecting dead agents
  • __includes keyword now enables the Includes button when given an empty
  • hooks added for extensions to write custom log messages
  • BUG FIXES:
  • user-one-of will now signal an error earlier when provided an empty list of choices
  • hsb, extract-hsb, and approximate-hsb have been updated to represent true hsb conventions
  • new deprecated primitives __hsb-old, __extract-hsb-old, and __approximate-hsb-old work as the old hsb primitives did when older models using the hsb primitives are opened in NetLogo 5.2, they will be auto-converted to use the deprecated primitives
  • extract-hsb -- fixed bug where it didn't work correctly on rgb lists
  • MODEL CHANGES:
  • New Sample Models: Artificial Anasazi, Bacteria Food Hunt, Bacteria Hunt Speeds, BeeSmart - Hive Finding, Bug Hunt Disruptions, Bug Hunt Environmental Changes, Bug Hunt Predators and Invasive Species - Two Regions, Hydrogen Diffusion 3D, Lennard-Jones, Paths
  • There are 46 new models in the new IABM Textbook folder: Turtles Circling Simple, Ants Simple, Heroes and Cowards, Life Simple, Simple Economy, 4 DLA extensions, 4 El Farol Extensions, 4 Fire Extensions, 4 Segregation Extensions, 5 Wolf Sheep Extensions, Agentset Efficiency, Agentset Ordering, Communication-T-T Network Example, Preferential Attachment Simple, Random Network, Traffic Basic Adaptive, Traffic Basic Utility, Traffic Grid Goal, Spread of Disease, Voting Component Verification, Voting Sensitivity Analysis, Arduino Example, Disease With Android Avoidance HubNet, Example HubNet, Run Example, Run Result Example, Simple Machine Learning, Simple Viral Marketing, Ticket Sales, Sandpile Simple
  • New models in the new Alternate Visualizations folder: Ethnocentrism - Alternative Visualization, Flocking - Alternative Visualizations, Heat Diffusion - Alternative visualization, Virus - Alternative Visualization, Virus - Circle Visualization
  • Promoted models: Honeycomb, Minority Game
  • Many other bugfixes and upgrades

New in NetLogo 5.1.0 (Feb 27, 2015)

  • bundle new network extension
  • extensions API changes to support new network extension
  • File menu now includes recently opened files
  • deprecate applets
  • support retina display on new MacBooks
  • make globals inspector more visible
  • new Computer Science model: K-Means Clustering
  • various bugfixes

New in NetLogo 5.0.1 (May 31, 2012)

  • many bugfixes
  • new social science model: Hotelling's Law
  • new BEAGLE Evolution models: Bird Breeders, Bug Hunters Competition, Critter Designers, Fish Tank Genetic Drift

New in NetLogo 4.1.3 (May 9, 2011)

  • Improvements:
  • the GIS extension now works in applets
  • new Code Example: Label Position Example
  • Fixes:
  • fixed bug in diffuse primitive causing it to fail in vertical cylinder worlds
  • fixed bugs where aborting a BehaviorSpace experiment could cause an error or memory leak
  • fixed bug where a turtle forever button could fail if multiple buttons were pressed quickly
  • fixed bug in scale-color primitive where rounding could cause an out-of-range color to be reported
  • fixed matrix extension bug where matrix creation primitives didn't sanity check their inputs
  • fixed GoGo extension bug where failed initialization of GoGo led to subsequent errors
  • fixed intermittent plotting bug
  • for Windows users, bundle Java 6 Update 24
  • API changes:
  • controlling API now allows a new model to be opened in an existing InterfaceComponent
  • controlling API now supports attaching listeners to receive notifications of user actions

New in NetLogo 4.1.2 (Jan 19, 2011)

  • Fixes:
  • Windows installer now adds NetLogo 3D to the Start menu
  • fixed BehaviorSpace issue where compile errors in experiment setups caused exceptions
  • fixed regression in 4.1.1 where extension-defined data types could cause errors in the GUI (e.g. in agent monitors)
  • fixed extensions issues where NetLogo could get confused about what extensions are active
  • fixed NetLogo 3D so the stamp command works for links
  • fixed bug where pow primitive could give NaN result
  • fixed bug where the F1 key didn't work on several primitives
  • fixed bitmap extension so importing works in applets
  • fixed bugs where typing certain combinations of keys or characters in the Command Center caused exceptions
  • fixed agentset building primitives to give correct error messages on invalid inputs
  • fixed bug where logging of global variables didn't work under Java Web Start
  • fixed matrix extension issue where matrix:dimensions was incorrectly typed
  • HubNet clients now limit the rate at which they send messages, to conserve bandwidth
  • for Windows users, bundle Java 6 Update 22
  • GIS extension now includes license information
  • API changes:
  • extensions API: deprecated runCommand and runReporter methods
  • controlling API: added possibleViewUpdate() and tickCounterChanged() methods to NetLogoListener
  • logging: changes to the tick counter are now logged (exactly as if ticks was a global variable)

New in NetLogo 4.1.1 (Sep 15, 2010)

  • additions:
  • new matrix extension for matrix manipulation
  • new behaviorspace-run-number reporter
  • new biology model: Flocking Vee Formations
  • new Donate item on Help menu
  • fixes:
  • fixed models: Dining Philosophers, Sandpile 3D, Shepherds, Connected Chemistry 8 Gas Particle Sandbox
  • on Windows, bundle Java 6 Update 21
  • fixed embedding API bug where two models could not be embedded in the same window
  • fixed bug where in worlds with certain unusual combinations of settings, passing specific unusual inputs (involving patch boundaries) to primitives including patch-at and patch-at-heading-and-distance could cause a Java exception
  • fixed bug causing some models with plots to intermittently produce spurious error messages
  • fixed (we hope) intermittent bug where editing code in the procedures tab or command center could cause spurious ArrayIndexOutOfBoundsException errors
  • fixed bug in 2D view where partially transparent turtles were sometimes rendered incorrectly in some sizes
  • fixed bug where saved applets that used extensions didn't load additional jars used by the extension
  • fixed bug where closing a browser window containing applet could cause a spurious error dialog to appear
  • fixed bug where the link primitive could fail when given a non-existent turtle number
  • fixed bug where the mini views in agent inspectors could have incorrect appearance with very small patch grids
  • fixed bug where the context menu on the view in applets contained some non-working items
  • fixed bug where movie primitives didn't fail gracefully when used in parallel BehaviorSpace runs
  • fixed bug where changing a plot pen's mode on the fly didn't refresh the plot
  • fixed bug causing models using links not to work in the NetLogo Logging application
  • fixed bug where new-seed primitive could theoretically return duplicate seeds in a parallel BehaviorSpace experiment
  • fixed sound extension bug where the wrong instrument sometimes played
  • fixed bug where using follow could cause turtle labels not to be drawn
  • fixed bug where the remove primitive didn't fail gracefully if given incorrect input
  • fixed HubNet bug where the drawing layer wasn't always mirrored to clients
  • fixed GIS extension bug where clipping of coordinates to user's GIS envelope was causing errors saving link datasets
  • fixed bitmap extension so it works in applets
  • on Mac OS X, always force use of the Quartz renderer not the Sun renderer

New in NetLogo 4.1 RC4 (Aug 27, 2009)

  • Is a release candidate featuring parallel BehaviorSpace, web-based HubNet clients, automatic code indenting, searchable models library, embedding API, and more.

New in NetLogo 4.1 RC3 (Jul 14, 2009)

  • Parallel BehaviorSpace.
  • Web-based HubNet clients.
  • Automatic code indenting.
  • Searchable models library.
  • Embedding API and more.

New in NetLogo 4.1 Beta 3 (Jun 9, 2009)

  • 4.1beta3 is a BETA release featuring parallel BehaviorSpace, web-based HubNet clients, automatic code indenting, searchable models library, embedding API, and more. Here's a complete list of changes.

New in NetLogo 4.1 Beta 1 (Mar 13, 2009)

  • Features web-based HubNet clients, automatic code indenting, searchable models library, embedding API and more.

New in NetLogo 4.0.4 (Jan 20, 2009)

  • Fixed Mac-only bug where up and down arrow keys stop working after Java update.
  • The speed slider now disables when view updates are disabled.
  • Fixed bug where applets were sometimes not wide enough.
  • Fixed bug where sort-by sometimes didn't report the proper error when passed invalid inputs.
  • Fixed extensions API bug where an extension couldn't access the drawing when running headless.
  • Fixed extensions API bug where user-defined primitives didn't work on links by default.
  • Fixed HubNet bug where input boxes didn't work in clients.
  • Various fixes to HubNet plot mirroring.
  • Fixed Gini index calculations in Wealth Distribution model.
  • GIS extension fixes:
  • Property name input to gis:property-value is now case-insensitive.
  • Underscores are now allowed in dBase field names.
  • Fixed bug in matrix element order for gis:convolve.
  • Fixed bug in hemisphere clipping during inverse projection.
  • Fixed parsing of float field values.